Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Rocket.API.Collections;
- using Rocket.Core.Logging;
- using Rocket.Core.Plugins;
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using Steamworks;
- using SDG.Unturned;
- using Rocket.Unturned;
- using Rocket.Unturned.Player;
- using Rocket.Unturned.Chat;
- using Rocket.Core.Permissions;
- using Rocket.Core;
- using Rocket.Unturned.Events;
- using System.Linq;
- using System.Text;
- using System;
- namespace Token_Shop
- {
- public class TokenShopManager : RocketPlugin<Configuration>
- {
- public static TokenShopManager Instance;
- public int buy1 = 0;
- public int buy2 = 0;
- public int buy3 = 0;
- public int buy4 = 0;
- public int buy5 = 0;
- public int buy6 = 0;
- public int currentPage = 1;
- int pageSize = 6;
- protected override void Load()
- {
- Instance = this;
- Rocket.Core.Logging.Logger.Log("--------------------------------------------");
- Rocket.Core.Logging.Logger.Log("Token Shop V " + Assembly.GetName().Version + " Made by: Eiromplays#1446");
- Rocket.Core.Logging.Logger.Log("--------------------------------------------");
- EffectManager.onEffectButtonClicked += (Player player, string buttonName) =>
- {
- UnturnedPlayer Player = UnturnedPlayer.FromPlayer(player);
- if (buttonName == "CloseButton")
- {
- EffectManager.askEffectClearByID(12861, Player.CSteamID);
- EffectManager.askEffectClearByID(12862, Player.CSteamID);
- EffectManager.askEffectClearByID(12863, Player.CSteamID);
- EffectManager.askEffectClearByID(12864, Player.CSteamID);
- EffectManager.askEffectClearByID(12865, Player.CSteamID);
- EffectManager.askEffectClearByID(12866, Player.CSteamID);
- EffectManager.askEffectClearByID(12860, Player.CSteamID);
- player.disablePluginWidgetFlag(EPluginWidgetFlags.Modal);
- }
- if (buttonName == "Buy1")
- {
- UnturnedChat.Say(Configuration.Instance.Shop[buy1].name);
- UnturnedChat.Say(Configuration.Instance.Shop[buy1].Type);
- }
- if (buttonName == "Buy2")
- {
- UnturnedChat.Say(Configuration.Instance.Shop[buy2].name);
- UnturnedChat.Say(Configuration.Instance.Shop[buy2].Type);
- }
- if (buttonName == "Buy3")
- {
- UnturnedChat.Say(Configuration.Instance.Shop[buy3].name);
- UnturnedChat.Say(Configuration.Instance.Shop[buy3].Type);
- }
- if (buttonName == "Buy4")
- {
- UnturnedChat.Say(Configuration.Instance.Shop[buy4].name);
- UnturnedChat.Say(Configuration.Instance.Shop[buy4].Type);
- }
- if (buttonName == "Buy5")
- {
- UnturnedChat.Say(Configuration.Instance.Shop[buy5].name);
- UnturnedChat.Say(Configuration.Instance.Shop[buy5].Type);
- }
- if (buttonName == "Buy6")
- {
- UnturnedChat.Say(Configuration.Instance.Shop[buy6].name);
- UnturnedChat.Say(Configuration.Instance.Shop[buy6].Type);
- }
- if (buttonName == "Next")
- {
- currentPage++;
- var totalPages = (int)System.Math.Ceiling((decimal)Configuration.Instance.Shop.Count / (decimal)pageSize);
- if (currentPage < 1)
- {
- currentPage = 1;
- }
- else if (currentPage > totalPages)
- {
- currentPage = totalPages;
- }
- int startPage, endPage;
- if (totalPages <= Configuration.Instance.maxPages)
- {
- // total pages less than max so show all pages
- startPage = 1;
- endPage = totalPages;
- UnturnedChat.Say("work3");
- }
- else
- {
- // total pages more than max so calculate start and end pages
- var maxPagesBeforeCurrentPage = (int)System.Math.Floor((decimal)Configuration.Instance.maxPages / (decimal)2);
- var maxPagesAfterCurrentPage = (int)System.Math.Ceiling((decimal)Configuration.Instance.maxPages / (decimal)2) - 1;
- if (currentPage <= maxPagesBeforeCurrentPage)
- {
- // current page near the start
- startPage = 1;
- endPage = Configuration.Instance.maxPages;
- }
- else if (currentPage + maxPagesAfterCurrentPage >= totalPages)
- {
- // current page near the end
- startPage = totalPages - Configuration.Instance.maxPages + 1;
- endPage = totalPages;
- }
- else
- {
- // current page somewhere in the middle
- startPage = currentPage - maxPagesBeforeCurrentPage;
- endPage = currentPage + maxPagesAfterCurrentPage;
- }
- // calculate start and end item indexes
- var startIndex = (currentPage - 1) * pageSize;
- var endIndex = System.Math.Min(startIndex + pageSize - 1, Configuration.Instance.Shop.Count - 1);
- // create an array of pages that can be looped over
- var pages = Enumerable.Range(startPage, (endPage + 1) - startPage);
- UnturnedChat.Say(pages.ToString());
- EffectManager.askEffectClearByID(12861, Player.CSteamID);
- EffectManager.askEffectClearByID(12862, Player.CSteamID);
- EffectManager.askEffectClearByID(12863, Player.CSteamID);
- EffectManager.askEffectClearByID(12864, Player.CSteamID);
- EffectManager.askEffectClearByID(12865, Player.CSteamID);
- EffectManager.askEffectClearByID(12866, Player.CSteamID);
- for(int i = startIndex; i < Convert.ToInt32(pages); i++)
- {
- EffectManager.sendUIEffect(12861, 12861, Player.CSteamID, true, Configuration.Instance.Shop[i].price.ToString());
- EffectManager.sendUIEffectImageURL(12861, Player.CSteamID, true, "Box1", Configuration.Instance.Shop[i].Image);
- EffectManager.sendUIEffect(12862, 12862, Player.CSteamID, true, Configuration.Instance.Shop[i++].price.ToString());
- EffectManager.sendUIEffectImageURL(12862, Player.CSteamID, true, "Box2", Configuration.Instance.Shop[i++].Image);
- EffectManager.sendUIEffect(12863, 12863, Player.CSteamID, true, Configuration.Instance.Shop[i++].price.ToString());
- EffectManager.sendUIEffectImageURL(12863, Player.CSteamID, true, "Box2", Configuration.Instance.Shop[i++].Image);
- EffectManager.sendUIEffect(12864, 12864, Player.CSteamID, true, Configuration.Instance.Shop[i++].price.ToString());
- EffectManager.sendUIEffectImageURL(12864, Player.CSteamID, true, "Box6", Configuration.Instance.Shop[i++].Image);
- EffectManager.sendUIEffect(12865, 12865, Player.CSteamID, true, Configuration.Instance.Shop[i++].price.ToString());
- EffectManager.sendUIEffectImageURL(12865, Player.CSteamID, true, "Box6", Configuration.Instance.Shop[i++].Image);
- EffectManager.sendUIEffect(12866, 12866, Player.CSteamID, true, Configuration.Instance.Shop[i++].price.ToString());
- EffectManager.sendUIEffectImageURL(12866, Player.CSteamID, true, "Box6", Configuration.Instance.Shop[i++].Image);
- }
- }
- }
- if (buttonName == "Back")
- {
- }
- };
- }
- protected override void Unload()
- {
- Instance = null;
- }
- public override TranslationList DefaultTranslations => new TranslationList()
- {
- {"hmm", "hmm" }
- };
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement