Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
241746fdf0 | ||
|
|
37932f570e | ||
|
|
1c834a480f | ||
|
|
6a0d74f400 | ||
|
|
feed85d9bb | ||
|
|
f9b4adf342 | ||
|
|
a04b9b996d | ||
|
|
4992c547ed | ||
|
|
d5c1f3bf11 | ||
|
|
b82736e933 | ||
|
|
d0d1e262c2 | ||
|
|
0b0dea8f51 | ||
|
|
48e1298b73 | ||
|
|
8d850dde7e | ||
|
|
963ff8b5f2 | ||
|
|
5a871656c5 | ||
|
|
011e18ff9d | ||
|
|
53f9b2c9f8 | ||
|
|
fe488158df | ||
|
|
699bb1bdf6 | ||
|
|
f9c8b8a719 | ||
|
|
242eceda2c | ||
|
|
98cd79684e | ||
|
|
5b4f73dadf | ||
|
|
a8113aa941 | ||
|
|
f741dbf6a7 | ||
|
|
f589817301 | ||
|
|
27874ecb70 | ||
|
|
73726123ae | ||
|
|
0a7637f04b | ||
|
|
c4d3068895 | ||
|
|
c497d338f9 | ||
|
|
9140466e02 | ||
|
|
2d6b1ebd33 | ||
|
|
d0ff76e9c4 | ||
|
|
6ff6b14c2d | ||
|
|
198dffe5df | ||
|
|
868a755d86 | ||
|
|
9f4c6bf250 | ||
|
|
655cec2bac | ||
|
|
9fc0b2c9a3 | ||
|
|
5aa396cc67 | ||
|
|
d11b90fabd | ||
|
|
bc85b88c27 | ||
|
|
a9e110f21f | ||
|
|
aa4622437f | ||
|
|
46eb548962 | ||
|
|
25b3494dc5 | ||
|
|
33602b3ed2 | ||
|
|
36662ab18d | ||
|
|
40473b14a2 | ||
|
|
6ca6529f2c | ||
|
|
a6b2945b14 | ||
|
|
b5fc7da7c9 | ||
|
|
41104be50f | ||
|
|
e2dabbb8c1 | ||
|
|
5f37262a48 | ||
|
|
efd48a1005 | ||
|
|
a813172c43 | ||
|
|
0f8f190a21 | ||
|
|
0f87222709 | ||
|
|
518ecfc42b | ||
|
|
d02c4a4b70 | ||
|
|
9359b4fb05 | ||
|
|
4f3ba5b1c4 | ||
|
|
600287e9c5 | ||
|
|
a05114e277 | ||
|
|
5449038cfd | ||
|
|
853cdd0a13 | ||
|
|
3cd36d3fd7 | ||
|
|
bd3abaae76 | ||
|
|
a9a70a20ee | ||
|
|
2fc2067bc5 | ||
|
|
2e6e3617a3 | ||
|
|
c590ca5a93 | ||
|
|
2772db23b8 | ||
|
|
ee3217b942 | ||
|
|
b1dfe6a14b | ||
|
|
222a3824af | ||
|
|
5f5d3dd2c5 | ||
|
|
84ba523233 | ||
|
|
1da224ff6b | ||
|
|
e2efe2b289 | ||
|
|
9cf044aa64 | ||
|
|
eac8078a65 | ||
|
|
2cf97ba408 | ||
|
|
23ffc18289 | ||
|
|
2152a6688f | ||
|
|
c3220392eb | ||
|
|
fec401485b | ||
|
|
2b2a6385b4 | ||
|
|
9937f3d9c0 | ||
|
|
b276d516a6 | ||
|
|
d6a336e9b9 | ||
|
|
b356cb1794 | ||
|
|
4b0a2ee384 | ||
|
|
8dab62124e | ||
|
|
a7df1a0150 | ||
|
|
f2d7e24400 | ||
|
|
fa74bdcb3c | ||
|
|
80a4cb8f78 | ||
|
|
f16aef16d4 | ||
|
|
e7a1a1241b | ||
|
|
0ee002e3fb | ||
|
|
69ab9df8b3 |
No files matched your search
@@ -23,6 +23,8 @@ MySQL:
|
||||
# -1 for no limit
|
||||
# Affecting this value may affect performance
|
||||
MaxSize: -1
|
||||
# Table name prefix, for use with mutliple servers
|
||||
Prefix: ''
|
||||
|
||||
# Let players who never joined before vote
|
||||
# Recommend: False (Will prevent creating random user data files)
|
||||
@@ -108,12 +110,6 @@ Commands:
|
||||
# Set Message to '' (2 ') to disable message
|
||||
|
||||
Format:
|
||||
# Message when player tries to run command without required permissions
|
||||
NoPerms: '&cYou do not have enough permission!'
|
||||
|
||||
# Message when player types a command but does not input a number where needed
|
||||
NotNumber: '&cError on &6%arg%&c, number expected!'
|
||||
|
||||
# CommandHandler help message
|
||||
HelpLine: '&3&l%Command% - &3%HelpMessage%'
|
||||
|
||||
@@ -160,7 +156,7 @@ Format:
|
||||
# If there is an error finding out time until next vote
|
||||
Error: '&cCould not caculate time until next vote!'
|
||||
# For sites that have this, requires votedelaydaily to be set to true in the site
|
||||
VoteDelayDaily: 'Tomorrow'
|
||||
VoteDelayDaily: '%hours% Hours and %minutes% Minutes'
|
||||
|
||||
# Format for /vote last
|
||||
Last:
|
||||
@@ -266,7 +262,22 @@ Format:
|
||||
|
||||
# Shop messages when using the /vote shop
|
||||
ShopPurchase: '&aYou bought the %Identifier% for %Points% Points!'
|
||||
ShopFailed: '&cYou do not have %Points% points to purhcase this!'
|
||||
ShopFailed: '&cYou do not have %Points% points to purchase this!'
|
||||
|
||||
# User not exist message, from commands such as /vote next (player)
|
||||
UserNotExist: '&cUser does not exist: %player%'
|
||||
|
||||
# Text for page buttons in inventories
|
||||
PrevPage: '&aPrevious Page'
|
||||
NextPage: '&aNext Page'
|
||||
|
||||
# Display text
|
||||
# Used in /vote top (GUI)
|
||||
TopVoter:
|
||||
Daily: 'Daily'
|
||||
Weekly: 'Weekly'
|
||||
Monthly: 'Monthly'
|
||||
AllTime: 'AllTime'
|
||||
|
||||
# ------------------------------------------------
|
||||
# GUI Options
|
||||
@@ -332,15 +343,6 @@ GUI:
|
||||
Amount: 1
|
||||
Name: '&4Vote Shop'
|
||||
Slot: 6
|
||||
# /vote Reward gui item
|
||||
# Uncomment to use, most likely will be unused
|
||||
#Rewards:
|
||||
# Item:
|
||||
# Material: 'DIAMOND'
|
||||
# Data: 0
|
||||
# Amount: 1
|
||||
# Name: '&4Voting Rewards'
|
||||
# Slot: 7
|
||||
|
||||
# GUI for /vote url
|
||||
# And /vote if enabled in Config.yml
|
||||
@@ -375,6 +377,7 @@ GUI:
|
||||
Material: 'EMERALD_BLOCK'
|
||||
Data: 0
|
||||
Amount: 1
|
||||
URLText: '%VoteUrl%'
|
||||
# Customize /vote reward
|
||||
# Show players what you get when you vote on each site
|
||||
VoteReward:
|
||||
@@ -474,7 +477,7 @@ GUI:
|
||||
Lore: '&c&lBest: &c%Best%'
|
||||
Amount: 1
|
||||
VoteStreak:
|
||||
Name: 'VoteBest: %player%'
|
||||
Name: 'VoteStreak: %player%'
|
||||
BackButton: false
|
||||
CurrentDayStreak:
|
||||
Item:
|
||||
@@ -524,6 +527,7 @@ BackButton:
|
||||
Amount: 1
|
||||
Name: '&8Back to VoteGUI'
|
||||
|
||||
VoteShopBackButton: true
|
||||
Shop:
|
||||
# Identifier
|
||||
# Used in placeholders for formats
|
||||
@@ -596,12 +600,16 @@ VoteParty:
|
||||
GiveAllPlayers: false
|
||||
# If true, the vote count will reset each day
|
||||
ResetEachDay: false
|
||||
# Reset at the end of the month
|
||||
ResetMonthly: false
|
||||
# Count votes from /av vote?
|
||||
CountFakeVotes: true
|
||||
# Number of user votes that apply to vote party total the user needs to get rewards
|
||||
UserVotesRequired: 0
|
||||
# Broadcast when vote party reached
|
||||
Broadcast: '&cReached the vote party amount!'
|
||||
# List of commands to execute, these only execute once.
|
||||
Commands: []
|
||||
# Reward files to give
|
||||
Rewards: []
|
||||
|
||||
@@ -624,6 +632,7 @@ VoteStreak:
|
||||
Day:
|
||||
# Number of days in a row
|
||||
# Each day requires one vote
|
||||
# Add a - to give a reward for every multiple (e.g. 2-)
|
||||
'2':
|
||||
# Enabled or not
|
||||
Enabled: false
|
||||
@@ -657,6 +666,7 @@ VoteStreak:
|
||||
# IT WILL ONLY RUN ONE TIME FOR ANY NUMBER OF OFFLINE VOTES
|
||||
# Any reward files listed here are ran on vote of any site
|
||||
# It is recommended to add rewards to each site instead of here
|
||||
# Using forceoffline won't work here
|
||||
AnySiteRewards: []
|
||||
|
||||
|
||||
@@ -740,9 +750,13 @@ DailyAwards:
|
||||
# Set to 0 to give no points
|
||||
PointsOnVote: 1
|
||||
|
||||
# Wether or not to check on world change
|
||||
# Should only be used if you do per world rewards
|
||||
CheckOnWorldChange: false
|
||||
# Set this to false to disable the plugin adding totals
|
||||
# Not really recommended
|
||||
AddTotals: true
|
||||
|
||||
# Disable checking on world change
|
||||
# May improve performance
|
||||
DisableCheckOnWorldChange: false
|
||||
|
||||
# Debug
|
||||
Debug: false
|
||||
@@ -785,6 +799,7 @@ ClearCacheOnUpdate: false
|
||||
|
||||
# Set to true to disable no service site message on voting
|
||||
# You should never have to touch this if everything is setup properly
|
||||
# Will also disable a few other warnings about vote sites
|
||||
DisableNoServiceSiteMessage: false
|
||||
|
||||
# Used in special cases
|
||||
@@ -793,3 +808,18 @@ AlternateUUIDLookup: false
|
||||
|
||||
# Shouldn't need to change this
|
||||
AutoKillInvs: true
|
||||
|
||||
# Count fake votes
|
||||
# If true fake votes will give points and totals
|
||||
CountFakeVotes: true
|
||||
|
||||
# Give VotingPlugin.Player by default
|
||||
# Requires restart to take affect
|
||||
GiveDefaultPermission: true
|
||||
|
||||
# Remove old player files
|
||||
# Happens on startup or /av purge
|
||||
PurgeOldData: false
|
||||
|
||||
# Minimum number of days offline in order to purge
|
||||
PurgeMin: 90
|
||||
@@ -31,18 +31,26 @@ VoteSites:
|
||||
# Reset vote delay each day (for certain sites that do this)
|
||||
VoteDelayDaily: false
|
||||
|
||||
# If true, rewards can be executed offline (required ForceOffline to be true in the reward)
|
||||
GiveOffline: false
|
||||
# If true, rewards can be executed offline (requires ForceOffline to be true in the reward)
|
||||
# Setting this to true will execute the reward offline, NOT WHEN THE PLAYER IS OFFLINE
|
||||
# This basiclly disables offline voting if set to true, don't misinterpret this option
|
||||
ForceOffline: false
|
||||
|
||||
# VoteSite Material for GUI's
|
||||
# Removing this may result in an error, required on each site
|
||||
Item:
|
||||
Material: 'DIAMOND'
|
||||
Amount: 1
|
||||
|
||||
# List of reward files to give to voter
|
||||
# Rewards to give
|
||||
# https://github.com/Ben12345rocks/AdvancedCore/wiki/Rewards
|
||||
Rewards:
|
||||
- 'ExampleReward'
|
||||
Commands:
|
||||
- 'say hello'
|
||||
Messages:
|
||||
Player: 'You voted'
|
||||
|
||||
# Reward for any site
|
||||
# Similar to AnySiteReward
|
||||
# This requires the site to be configured in order to get the reward.
|
||||
EverySiteReward: []
|
||||
@@ -156,10 +156,36 @@ commands:
|
||||
adminvoteClearCache:
|
||||
description: Command Alias
|
||||
aliases: avClearCache
|
||||
adminvoteConvertFrom:
|
||||
description: Command Alias
|
||||
aliases: avConvertFrom
|
||||
adminvoteRemovePoints:
|
||||
description: Command Alias
|
||||
aliases: avRemovePoints
|
||||
adminvoteServiceSites:
|
||||
description: Command Alias
|
||||
aliases: avServiceSites
|
||||
adminvoteSetVotePartyCount:
|
||||
description: Command Alias
|
||||
aliases: avSetVotePartyCount
|
||||
adminvoteClearOfflineVotes:
|
||||
description: Command Alias
|
||||
aliases: avClearOfflineVotes
|
||||
adminvoteGiveAll:
|
||||
description: Command Alias
|
||||
aliases: avGiveAll
|
||||
adminvoteGiveAllOnline:
|
||||
description: Command Alias
|
||||
aliases: avGiveAllOnline
|
||||
adminvoteForceTimeChanged:
|
||||
description: Command Alias
|
||||
aliases: avForceTimeChanged
|
||||
adminvoteplayername:
|
||||
description: Command Alias
|
||||
aliases: avplayername
|
||||
permissions:
|
||||
VotingPlugin.Player:
|
||||
description: Allows basic access player commands
|
||||
default: true
|
||||
VotingPlugin.Mod:
|
||||
description: Allows mod access player commands
|
||||
VotingPlugin.Admin:
|
||||
@@ -173,4 +199,7 @@ permissions:
|
||||
description: Allows access to create signs
|
||||
VotingPlugin.TopVoter.Ignore:
|
||||
description: Allows you to be exempt from top voter
|
||||
VotingPlugin.NoRemind:
|
||||
description: Ignore vote reminding
|
||||
default: false
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>com.Ben12345rocks</groupId>
|
||||
<artifactId>VotingPlugin</artifactId>
|
||||
<version>5.10.1</version>
|
||||
<version>5.12</version>
|
||||
<packaging>jar</packaging>
|
||||
<name>VotingPlugin</name>
|
||||
<properties>
|
||||
|
||||
@@ -6,6 +6,7 @@ import java.util.List;
|
||||
import java.util.Map.Entry;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.OfflinePlayer;
|
||||
import org.bukkit.command.CommandSender;
|
||||
@@ -16,6 +17,8 @@ import org.bukkit.inventory.ItemStack;
|
||||
import com.Ben12345rocks.AdvancedCore.AdvancedCoreHook;
|
||||
import com.Ben12345rocks.AdvancedCore.Commands.GUI.UserGUI;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.TabCompleteHandle;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.TabCompleteHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.UserStorage;
|
||||
import com.Ben12345rocks.AdvancedCore.Report.Report;
|
||||
@@ -24,24 +27,26 @@ import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory.ClickEvent;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventoryButton;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Item.ItemBuilder;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.PlayerUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Updater.Updater;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.ValueRequest;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.Listeners.BooleanListener;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.Listeners.NumberListener;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.Listeners.StringListener;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.Executers.CommandAdminVote;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.Executers.CommandAliases;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.Executers.CommandVote;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.GUI.AdminGUI;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.GUI.PlayerGUIs;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.TabCompleter.AliasesTabCompleter;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.Config;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
|
||||
import com.Ben12345rocks.VotingPlugin.Data.ServerData;
|
||||
import com.Ben12345rocks.VotingPlugin.Events.PlayerVoteEvent;
|
||||
import com.Ben12345rocks.VotingPlugin.Events.VotiferEvent;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.User;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
|
||||
import com.Ben12345rocks.VotingPlugin.TopVoter.TopVoterHandler;
|
||||
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
|
||||
import com.Ben12345rocks.VotingPlugin.VoteParty.VoteParty;
|
||||
import com.Ben12345rocks.VotingPlugin.VoteShop.VoteShop;
|
||||
@@ -148,6 +153,7 @@ public class CommandLoader {
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (Bukkit.getServer().getPluginManager().getPlugin("GAListener") != null) {
|
||||
sender.sendMessage("Starting to convert");
|
||||
Table<String, Integer, Long> totals = GAL.p.db.getTotals();
|
||||
for (Cell<String, Integer, Long> entry : totals.cellSet()) {
|
||||
String name = entry.getRowKey();
|
||||
@@ -248,7 +254,36 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandAdminVote.getInstance().help(sender, 1);
|
||||
int page = 1;
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendJson(Commands.getInstance().adminHelp(sender, page - 1));
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().convert(
|
||||
ArrayUtils.getInstance().comptoString(Commands.getInstance().adminHelp(sender, page - 1))));
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
plugin.adminVoteCommand.add(new CommandHandler(new String[] { "ServiceSites" },
|
||||
"VotingPlugin.Commands.AdminVote.ServiceSites|" + adminPerm,
|
||||
"See a list of all service sites the server got") {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
sendMessage(sender, "&cEvery service site the server has gotten:");
|
||||
|
||||
for (String serviceSites : ServerData.getInstance().getServiceSites()) {
|
||||
boolean hasSite = plugin.hasVoteSite(serviceSites);
|
||||
if (hasSite) {
|
||||
String siteName = plugin.getVoteSiteName(serviceSites);
|
||||
sendMessage(sender, serviceSites + " : Current site = " + siteName);
|
||||
} else {
|
||||
sendMessage(sender,
|
||||
serviceSites + " : No site with this service site, did you do something wrong?");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
@@ -258,7 +293,14 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandAdminVote.getInstance().help(sender, Integer.parseInt(args[1]));
|
||||
int page = Integer.parseInt(args[1]);
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendJson(Commands.getInstance().adminHelp(sender, page - 1));
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().convert(
|
||||
ArrayUtils.getInstance().comptoString(Commands.getInstance().adminHelp(sender, page - 1))));
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
@@ -275,12 +317,31 @@ public class CommandLoader {
|
||||
});
|
||||
|
||||
plugin.adminVoteCommand.add(new CommandHandler(new String[] { "Perms" },
|
||||
"VotingPlugin.Commands.AdminVote.Perms|" + adminPerm, "List perms") {
|
||||
"VotingPlugin.Commands.AdminVote.Perms|" + adminPerm, "List permissions") {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandAdminVote.getInstance().permList(sender);
|
||||
sender.sendMessage(Commands.getInstance().listPerms(sender));
|
||||
}
|
||||
});
|
||||
|
||||
plugin.adminVoteCommand.add(new CommandHandler(new String[] { "Perms", "(OnlinePlayer)" },
|
||||
"VotingPlugin.Commands.AdminVote.Perms.Other|" + adminPerm,
|
||||
"List permissions from the plugin the player has") {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
Commands.getInstance().listPerms(sender, args[1], 1);
|
||||
}
|
||||
});
|
||||
|
||||
plugin.adminVoteCommand.add(new CommandHandler(new String[] { "Perms", "(OnlinePlayer)", "(Number)" },
|
||||
"VotingPlugin.Commands.AdminVote.Perms.Other|" + adminPerm,
|
||||
"List permissions from the plugin the player has") {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
Commands.getInstance().listPerms(sender, args[1], Integer.parseInt(args[2]));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -289,8 +350,10 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandAdminVote.getInstance().reload(sender);
|
||||
|
||||
sender.sendMessage(ChatColor.RED + "Reloading " + plugin.getName() + "...");
|
||||
plugin.reload();
|
||||
sender.sendMessage(
|
||||
ChatColor.RED + plugin.getName() + " v" + plugin.getDescription().getVersion() + " reloaded!");
|
||||
}
|
||||
});
|
||||
|
||||
@@ -299,8 +362,27 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandAdminVote.getInstance().version(sender);
|
||||
if (sender instanceof Player) {
|
||||
Player player = (Player) sender;
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
player.performCommand("bukkit:version " + plugin.getName());
|
||||
}
|
||||
});
|
||||
|
||||
} else {
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(),
|
||||
"bukkit:version " + plugin.getName());
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -343,7 +425,24 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandAdminVote.getInstance().uuid(sender, args[1]);
|
||||
sender.sendMessage(ChatColor.GREEN + "UUID of player " + ChatColor.DARK_GREEN + args[1]
|
||||
+ ChatColor.GREEN + " is: " + PlayerUtils.getInstance().getUUID(args[1]));
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
plugin.adminVoteCommand.add(new CommandHandler(new String[] { "PlayerName", "(uuid)" },
|
||||
"VotingPlugin.Commands.AdminVote.PlayerName|" + adminPerm, "View PlayerName of player") {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
try {
|
||||
sender.sendMessage(ChatColor.GREEN + "PlayerName of player " + ChatColor.DARK_GREEN + args[1]
|
||||
+ ChatColor.GREEN + " is: " + PlayerUtils.getInstance().getPlayerName(
|
||||
UserManager.getInstance().getVotingPluginUser(new UUID(args[1])), args[1]));
|
||||
} catch (IllegalArgumentException e) {
|
||||
sendMessage(sender, "&cInvalid uuid");
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
@@ -367,6 +466,25 @@ public class CommandLoader {
|
||||
}
|
||||
});
|
||||
|
||||
plugin.adminVoteCommand.add(new CommandHandler(new String[] { "ClearOfflineRewards" },
|
||||
"VotingPlugin.Commands.AdminVote.ClearOfflineRewards|" + adminPerm, "Reset offline votes/rewards") {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (sender instanceof Player) {
|
||||
sender.sendMessage(
|
||||
StringUtils.getInstance().colorize("&cThis command can not be done from ingame"));
|
||||
return;
|
||||
}
|
||||
|
||||
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
|
||||
user.clearOfflineRewards();
|
||||
}
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cCleared totals for everyone"));
|
||||
}
|
||||
});
|
||||
|
||||
plugin.adminVoteCommand.add(new CommandHandler(new String[] { "ConvertFromData", "(userstorage)" },
|
||||
"VotingPlugin.Commands.AdminVote.ConvertFromData",
|
||||
"Convert from selected user storage to current user storage") {
|
||||
@@ -449,8 +567,7 @@ public class CommandLoader {
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
VotiferEvent.playerVote(args[1], args[2], false);
|
||||
PlayerVoteEvent voteEvent = new PlayerVoteEvent(plugin.getVoteSite(args[2]),
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
PlayerVoteEvent voteEvent = new PlayerVoteEvent(plugin.getVoteSite(args[2]), args[1]);
|
||||
plugin.getServer().getPluginManager().callEvent(voteEvent);
|
||||
}
|
||||
});
|
||||
@@ -460,18 +577,21 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandAdminVote.getInstance().createVoteSite(sender, args[1]);
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cCreating VoteSite..." + args[1]));
|
||||
|
||||
ConfigVoteSites.getInstance().generateVoteSite(args[1]);
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cCreated VoteSite: &c&l" + args[1]));
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
plugin.adminVoteCommand.add(new CommandHandler(new String[] { "Config", "SetDebug", "(boolean)" },
|
||||
"VotingPlugin.Commands.AdminVote.Config.Edit|" + adminPerm, "Set Debug on or off") {
|
||||
"VotingPlugin.Commands.AdminVote.Config.Edit|" + adminPerm,
|
||||
"Set Debug on or off, effective until reload/restart") {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandAdminVote.getInstance().setConfigDebug(sender, Boolean.parseBoolean(args[2]));
|
||||
|
||||
AdvancedCoreHook.getInstance().setDebug(true);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -481,8 +601,11 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandAdminVote.getInstance().setVoteSiteServiceSite(sender, plugin.getVoteSiteName(args[1]),
|
||||
args[3]);
|
||||
String voteSite = plugin.getVoteSiteName(args[1]);
|
||||
String serviceSite = args[3];
|
||||
ConfigVoteSites.getInstance().setServiceSite(voteSite, serviceSite);
|
||||
sender.sendMessage(StringUtils.getInstance()
|
||||
.colorize("&cSet ServiceSite to &c&l" + serviceSite + "&c on &c&l" + voteSite));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -492,8 +615,11 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandAdminVote.getInstance().setVoteSiteVoteURL(sender, plugin.getVoteSiteName(args[1]),
|
||||
args[3]);
|
||||
String voteSite = plugin.getVoteSiteName(args[1]);
|
||||
String url = args[3];
|
||||
ConfigVoteSites.getInstance().setVoteURL(voteSite, url);
|
||||
sender.sendMessage(StringUtils.getInstance()
|
||||
.colorize("&cSet VoteURL to &c&l" + url + "&c on &c&l" + voteSite));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -503,9 +629,11 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
|
||||
CommandAdminVote.getInstance().setVoteSitePriority(sender, plugin.getVoteSiteName(args[1]),
|
||||
Integer.parseInt(args[3]));
|
||||
String voteSite = plugin.getVoteSiteName(args[1]);
|
||||
int value = Integer.parseInt(args[3]);
|
||||
ConfigVoteSites.getInstance().setPriority(voteSite, value);
|
||||
sender.sendMessage(StringUtils.getInstance()
|
||||
.colorize("&cSet priortiy to &c&l" + value + "&c on &c&l" + voteSite));
|
||||
|
||||
}
|
||||
});
|
||||
@@ -516,9 +644,11 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
|
||||
CommandAdminVote.getInstance().setVoteSiteVoteDelay(sender, plugin.getVoteSiteName(args[1]),
|
||||
Integer.parseInt(args[3]));
|
||||
String voteSite = plugin.getVoteSiteName(args[1]);
|
||||
int delay = Integer.parseInt(args[3]);
|
||||
ConfigVoteSites.getInstance().setVoteDelay(voteSite, delay);
|
||||
sender.sendMessage(StringUtils.getInstance()
|
||||
.colorize("&cSet VoteDelay to &c&l" + delay + "&c on &c&l" + voteSite));
|
||||
|
||||
}
|
||||
});
|
||||
@@ -534,7 +664,30 @@ public class CommandLoader {
|
||||
@Override
|
||||
public void run() {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cChecking for update..."));
|
||||
CommandAdminVote.getInstance().checkUpdate(sender);
|
||||
plugin.updater = new Updater(plugin, 15358, false);
|
||||
final Updater.UpdateResult result = plugin.updater.getResult();
|
||||
switch (result) {
|
||||
case FAIL_SPIGOT: {
|
||||
sender.sendMessage(StringUtils.getInstance()
|
||||
.colorize("&cFailed to check for update for &c&l" + plugin.getName() + "&c!"));
|
||||
break;
|
||||
}
|
||||
case NO_UPDATE: {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&c&l" + plugin.getName()
|
||||
+ " &cis up to date! Version: &c&l" + plugin.updater.getVersion()));
|
||||
break;
|
||||
}
|
||||
case UPDATE_AVAILABLE: {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize(
|
||||
"&c&l" + plugin.getName() + " &chas an update available! Your Version: &c&l"
|
||||
+ plugin.getDescription().getVersion() + " &cNew Version: &c&l"
|
||||
+ plugin.updater.getVersion()));
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -547,9 +700,12 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
String voteSite = plugin.getVoteSiteName(args[1]);
|
||||
boolean value = Boolean.parseBoolean(args[3]);
|
||||
|
||||
CommandAdminVote.getInstance().setVoteSiteEnabled(sender, plugin.getVoteSiteName(args[1]),
|
||||
Boolean.parseBoolean(args[3]));
|
||||
ConfigVoteSites.getInstance().setEnabled(voteSite, value);
|
||||
sender.sendMessage(StringUtils.getInstance()
|
||||
.colorize("&cSet votesite " + voteSite + " enabled to " + value));
|
||||
|
||||
}
|
||||
});
|
||||
@@ -559,9 +715,18 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
|
||||
CommandAdminVote.getInstance().checkVoteSite(sender, plugin.getVoteSiteName(args[1]));
|
||||
|
||||
String siteName = args[1];
|
||||
if (!ConfigVoteSites.getInstance().isServiceSiteGood(siteName)) {
|
||||
sender.sendMessage(StringUtils.getInstance()
|
||||
.colorize("&cServiceSite is invalid, votes may not work properly"));
|
||||
} else {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&aServiceSite is properly setup"));
|
||||
}
|
||||
if (!ConfigVoteSites.getInstance().isVoteURLGood(siteName)) {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cVoteURL is invalid"));
|
||||
} else {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&aVoteURL is properly setup"));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -618,10 +783,10 @@ public class CommandLoader {
|
||||
String[] args = cmdHandle.getArgs()[0].split("&");
|
||||
for (String arg : args) {
|
||||
try {
|
||||
plugin.getCommand("vote" + arg).setExecutor(new CommandAliases(cmdHandle));
|
||||
plugin.getCommand("vote" + arg).setExecutor(new CommandAliases(cmdHandle, false));
|
||||
|
||||
plugin.getCommand("vote" + arg)
|
||||
.setTabCompleter(new AliasesTabCompleter().setCMDHandle(cmdHandle));
|
||||
.setTabCompleter(new AliasesTabCompleter().setCMDHandle(cmdHandle, false));
|
||||
} catch (Exception ex) {
|
||||
plugin.debug("Failed to load command and tab completer for /vote" + arg);
|
||||
}
|
||||
@@ -635,10 +800,10 @@ public class CommandLoader {
|
||||
String[] args = cmdHandle.getArgs()[0].split("&");
|
||||
for (String arg : args) {
|
||||
try {
|
||||
plugin.getCommand("adminvote" + arg).setExecutor(new CommandAliases(cmdHandle));
|
||||
plugin.getCommand("adminvote" + arg).setExecutor(new CommandAliases(cmdHandle, true));
|
||||
|
||||
plugin.getCommand("adminvote" + arg)
|
||||
.setTabCompleter(new AliasesTabCompleter().setCMDHandle(cmdHandle));
|
||||
.setTabCompleter(new AliasesTabCompleter().setCMDHandle(cmdHandle, true));
|
||||
} catch (Exception ex) {
|
||||
plugin.debug("Failed to load command and tab completer for /adminvote" + arg + ": "
|
||||
+ ex.getMessage());
|
||||
@@ -825,14 +990,21 @@ public class CommandLoader {
|
||||
sites.add(site.getKey());
|
||||
}
|
||||
|
||||
for (int i = 0; i < plugin.voteCommand.size(); i++) {
|
||||
plugin.voteCommand.get(i).addTabCompleteOption("(Sitename)", sites);
|
||||
TabCompleteHandler.getInstance().addTabCompleteOption(new TabCompleteHandle("(Sitename)", sites) {
|
||||
|
||||
}
|
||||
@Override
|
||||
public void updateReplacements() {
|
||||
}
|
||||
|
||||
for (int i = 0; i < plugin.adminVoteCommand.size(); i++) {
|
||||
plugin.adminVoteCommand.get(i).addTabCompleteOption("(Sitename)", sites);
|
||||
}
|
||||
@Override
|
||||
public void reload() {
|
||||
ArrayList<String> sites = new ArrayList<String>();
|
||||
for (VoteSite site : plugin.getVoteSites()) {
|
||||
sites.add(site.getKey());
|
||||
}
|
||||
setReplace(sites);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -845,8 +1017,13 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
CommandVote.getInstance().help(sender);
|
||||
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendJson(Commands.getInstance().voteHelpText(sender));
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().convert(
|
||||
ArrayUtils.getInstance().comptoString(Commands.getInstance().voteHelpText(sender))));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -903,11 +1080,25 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUILast()) {
|
||||
CommandVote.getInstance().lastOther(sender, args[1]);
|
||||
} else if (sender instanceof Player) {
|
||||
PlayerGUIs.getInstance().openVoteLast((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
if (com.Ben12345rocks.AdvancedCore.UserManager.UserManager.getInstance().userExist(args[1])) {
|
||||
if (!Config.getInstance().getCommandsUseGUILast() || !(sender instanceof Player)) {
|
||||
String playerName = args[1];
|
||||
if (sender instanceof Player) {
|
||||
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance()
|
||||
.voteCommandLast(UserManager.getInstance().getVotingPluginUser(playerName)));
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().colorize(Commands.getInstance()
|
||||
.voteCommandLast(UserManager.getInstance().getVotingPluginUser(playerName))));
|
||||
}
|
||||
} else {
|
||||
PlayerGUIs.getInstance().openVoteLast((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
}
|
||||
} else {
|
||||
sendMessage(sender, StringUtils.getInstance()
|
||||
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -919,7 +1110,12 @@ public class CommandLoader {
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUILast()) {
|
||||
CommandVote.getInstance().lastSelf(sender);
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance().voteCommandLast(user));
|
||||
} else {
|
||||
sender.sendMessage("You must be a player to do this!");
|
||||
}
|
||||
} else if (sender instanceof Player) {
|
||||
PlayerGUIs.getInstance().openVoteLast((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(sender.getName()));
|
||||
@@ -932,11 +1128,25 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUINext()) {
|
||||
CommandVote.getInstance().nextOther(sender, args[1]);
|
||||
} else if (sender instanceof Player) {
|
||||
PlayerGUIs.getInstance().openVoteNext((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
if (com.Ben12345rocks.AdvancedCore.UserManager.UserManager.getInstance().userExist(args[1])) {
|
||||
if (!Config.getInstance().getCommandsUseGUINext() || !(sender instanceof Player)) {
|
||||
String playerName = args[1];
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance()
|
||||
.voteCommandNext(UserManager.getInstance().getVotingPluginUser(playerName)));
|
||||
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().colorize(Commands.getInstance()
|
||||
.voteCommandNext(UserManager.getInstance().getVotingPluginUser(playerName))));
|
||||
}
|
||||
} else {
|
||||
PlayerGUIs.getInstance().openVoteNext((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
}
|
||||
} else {
|
||||
sendMessage(sender, StringUtils.getInstance()
|
||||
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -946,8 +1156,19 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
|
||||
CommandVote.getInstance().pointsOther(sender, UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
if (com.Ben12345rocks.AdvancedCore.UserManager.UserManager.getInstance().userExist(args[1])) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser(args[1]);
|
||||
String msg = Config.getInstance().getFormatCommandVotePoints()
|
||||
.replace("%Player%", user.getPlayerName()).replace("%Points%", "" + user.getPoints());
|
||||
if (sender instanceof Player) {
|
||||
UserManager.getInstance().getVotingPluginUser((Player) sender).sendMessage(msg);
|
||||
} else {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize(msg));
|
||||
}
|
||||
} else {
|
||||
sendMessage(sender, StringUtils.getInstance()
|
||||
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
@@ -959,8 +1180,10 @@ public class CommandLoader {
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
|
||||
if (sender instanceof Player) {
|
||||
CommandVote.getInstance()
|
||||
.pointsSelf(UserManager.getInstance().getVotingPluginUser((Player) sender));
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
String msg = Config.getInstance().getFormatCommandVotePoints()
|
||||
.replace("%Player%", user.getPlayerName()).replace("%Points%", "" + user.getPoints());
|
||||
user.sendMessage(msg);
|
||||
} else {
|
||||
sender.sendMessage("Must be a player to use this!");
|
||||
}
|
||||
@@ -974,7 +1197,13 @@ public class CommandLoader {
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUINext()) {
|
||||
CommandVote.getInstance().nextSelf(sender);
|
||||
if (sender instanceof Player) {
|
||||
String playerName = sender.getName();
|
||||
User user = UserManager.getInstance().getVotingPluginUser(playerName);
|
||||
user.sendMessage(Commands.getInstance().voteCommandNext(user));
|
||||
} else {
|
||||
sender.sendMessage("You must be a player to do this!");
|
||||
}
|
||||
} else if (sender instanceof Player) {
|
||||
PlayerGUIs.getInstance().openVoteNext((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(sender.getName()));
|
||||
@@ -999,7 +1228,13 @@ public class CommandLoader {
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
Player player = (Player) sender;
|
||||
PlayerGUIs.getInstance().openVoteGUI(player, UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
if (com.Ben12345rocks.AdvancedCore.UserManager.UserManager.getInstance().userExist(args[1])) {
|
||||
PlayerGUIs.getInstance().openVoteGUI(player,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
} else {
|
||||
sendMessage(sender, StringUtils.getInstance()
|
||||
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
@@ -1010,7 +1245,66 @@ public class CommandLoader {
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUITopVoter()) {
|
||||
Commands.getInstance().voteTop(sender, 1);
|
||||
int page = 1;
|
||||
String str = Config.getInstance().getVoteTopDefault();
|
||||
if (str.equalsIgnoreCase("monthly")) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterMonthly(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterMonthlyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterMonthly(page));
|
||||
}
|
||||
} else if (str.equalsIgnoreCase("weekly")) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterWeekly(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterWeeklyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterWeekly(page));
|
||||
}
|
||||
} else if (str.equalsIgnoreCase("daily")) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterDaily(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterDailyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterDaily(page));
|
||||
}
|
||||
} else if (str.equalsIgnoreCase("all")) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterAllTime(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterAllTimeScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterAllTime(page));
|
||||
}
|
||||
}
|
||||
|
||||
} else if (sender instanceof Player) {
|
||||
PlayerGUIs.getInstance().openVoteTop((Player) sender, null);
|
||||
}
|
||||
@@ -1023,7 +1317,65 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
Commands.getInstance().voteTop(sender, Integer.parseInt(args[1]));
|
||||
int page = Integer.parseInt(args[1]);
|
||||
String str = Config.getInstance().getVoteTopDefault();
|
||||
if (str.equalsIgnoreCase("monthly")) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterMonthly(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterMonthlyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterMonthly(page));
|
||||
}
|
||||
} else if (str.equalsIgnoreCase("weekly")) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterWeekly(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterWeeklyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterWeekly(page));
|
||||
}
|
||||
} else if (str.equalsIgnoreCase("daily")) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterDaily(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterDailyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterDaily(page));
|
||||
}
|
||||
} else if (str.equalsIgnoreCase("all")) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterAllTime(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterAllTimeScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterAllTime(page));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
@@ -1033,8 +1385,20 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
int page = Integer.parseInt(args[1]);
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterMonthly(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
CommandVote.getInstance().topVoterMonthly(sender, Integer.parseInt(args[1]));
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterMonthlyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterMonthly(page));
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
@@ -1045,7 +1409,19 @@ public class CommandLoader {
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
int page = Integer.parseInt(args[1]);
|
||||
CommandVote.getInstance().topVoterAll(sender, page);
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterAllTime(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterAllTimeScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterAllTime(page));
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
@@ -1055,11 +1431,19 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (StringUtils.getInstance().isInt(args[1])) {
|
||||
CommandVote.getInstance().topVoterWeekly(sender, Integer.parseInt(args[1]));
|
||||
int page = Integer.parseInt(args[1]);
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterWeekly(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterWeeklyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(
|
||||
StringUtils.getInstance().colorize("&cError on " + args[1] + ", number expected"));
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterWeekly(page));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1070,13 +1454,20 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (StringUtils.getInstance().isInt(args[1])) {
|
||||
CommandVote.getInstance().topVoterDaily(sender, Integer.parseInt(args[1]));
|
||||
} else {
|
||||
sender.sendMessage(
|
||||
StringUtils.getInstance().colorize("&cError on " + args[1] + ", number expected"));
|
||||
}
|
||||
int page = Integer.parseInt(args[1]);
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterDaily(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterDailyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterDaily(page));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1095,9 +1486,22 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUIToday()) {
|
||||
CommandVote.getInstance().today(sender, Integer.parseInt(args[1]));
|
||||
} else if (sender instanceof Player) {
|
||||
if (!Config.getInstance().getCommandsUseGUIToday() || !(sender instanceof Player)) {
|
||||
int page = Integer.parseInt(args[1]);
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance().commandVoteToday(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendVoteTodayScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(Commands.getInstance().commandVoteToday(page));
|
||||
}
|
||||
} else {
|
||||
PlayerGUIs.getInstance().openVoteToday((Player) sender);
|
||||
}
|
||||
|
||||
@@ -1109,9 +1513,22 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUIToday()) {
|
||||
CommandVote.getInstance().today(sender, 1);
|
||||
} else if (sender instanceof Player) {
|
||||
if (!Config.getInstance().getCommandsUseGUIToday() || !(sender instanceof Player)) {
|
||||
int page = 1;
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance().commandVoteToday(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendVoteTodayScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(Commands.getInstance().commandVoteToday(page));
|
||||
}
|
||||
} else {
|
||||
PlayerGUIs.getInstance().openVoteToday((Player) sender);
|
||||
}
|
||||
|
||||
@@ -1123,9 +1540,12 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
|
||||
CommandVote.getInstance().totalAll(sender);
|
||||
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance().voteCommandTotalAll());
|
||||
} else {
|
||||
sender.sendMessage(Commands.getInstance().voteCommandTotalAll());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1134,11 +1554,24 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUITotal()) {
|
||||
CommandVote.getInstance().totalOther(sender, args[1]);
|
||||
} else if (sender instanceof Player) {
|
||||
PlayerGUIs.getInstance().openVoteTotal((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
if (com.Ben12345rocks.AdvancedCore.UserManager.UserManager.getInstance().userExist(args[1])) {
|
||||
if (!Config.getInstance().getCommandsUseGUITotal() || !(sender instanceof Player)) {
|
||||
String playerName = args[1];
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance()
|
||||
.voteCommandTotal(UserManager.getInstance().getVotingPluginUser(playerName)));
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().colorize(Commands.getInstance()
|
||||
.voteCommandTotal(UserManager.getInstance().getVotingPluginUser(playerName))));
|
||||
}
|
||||
} else {
|
||||
PlayerGUIs.getInstance().openVoteTotal((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
}
|
||||
} else {
|
||||
sendMessage(sender, StringUtils.getInstance()
|
||||
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1149,9 +1582,15 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUITotal()) {
|
||||
CommandVote.getInstance().totalSelf(sender);
|
||||
} else if (sender instanceof Player) {
|
||||
if (!Config.getInstance().getCommandsUseGUITotal() || !(sender instanceof Player)) {
|
||||
if (sender instanceof Player) {
|
||||
String playerName = sender.getName();
|
||||
User user = UserManager.getInstance().getVotingPluginUser(playerName);
|
||||
user.sendMessage(Commands.getInstance().voteCommandTotal(user));
|
||||
} else {
|
||||
sender.sendMessage("You must be a player to do this!");
|
||||
}
|
||||
} else {
|
||||
PlayerGUIs.getInstance().openVoteTotal((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(sender.getName()));
|
||||
}
|
||||
@@ -1163,7 +1602,7 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUIBest()) {
|
||||
if (!Config.getInstance().getCommandsUseGUIBest() || !(sender instanceof Player)) {
|
||||
sender.sendMessage(Commands.getInstance().best(sender, sender.getName()));
|
||||
} else {
|
||||
PlayerGUIs.getInstance().openVoteBest((Player) sender,
|
||||
@@ -1173,15 +1612,20 @@ public class CommandLoader {
|
||||
});
|
||||
|
||||
plugin.voteCommand.add(new CommandHandler(new String[] { "Best", "(player)" },
|
||||
"VotingPlugin.Commands.Vote.Best.Other|" + playerPerm, "View someone's best voting") {
|
||||
"VotingPlugin.Commands.Vote.Best.Other|" + modPerm, "View someone's best voting") {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUIBest()) {
|
||||
sender.sendMessage(Commands.getInstance().best(sender, args[1]));
|
||||
} else if (sender instanceof Player) {
|
||||
PlayerGUIs.getInstance().openVoteBest((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
if (com.Ben12345rocks.AdvancedCore.UserManager.UserManager.getInstance().userExist(args[1])) {
|
||||
if (!Config.getInstance().getCommandsUseGUIBest() || !(sender instanceof Player)) {
|
||||
sender.sendMessage(Commands.getInstance().best(sender, args[1]));
|
||||
} else {
|
||||
PlayerGUIs.getInstance().openVoteBest((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
}
|
||||
} else {
|
||||
sendMessage(sender, StringUtils.getInstance()
|
||||
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -1191,7 +1635,7 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUIBest()) {
|
||||
if (!Config.getInstance().getCommandsUseGUIStreak() || !(sender instanceof Player)) {
|
||||
sender.sendMessage(Commands.getInstance().streak(sender, sender.getName()));
|
||||
} else {
|
||||
PlayerGUIs.getInstance().openVoteStreak((Player) sender,
|
||||
@@ -1201,15 +1645,20 @@ public class CommandLoader {
|
||||
});
|
||||
|
||||
plugin.voteCommand.add(new CommandHandler(new String[] { "Streak", "(player)" },
|
||||
"VotingPlugin.Commands.Vote.Streak.Other|" + playerPerm, "View someone's voting streak") {
|
||||
"VotingPlugin.Commands.Vote.Streak.Other|" + modPerm, "View someone's voting streak") {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUIStreak()) {
|
||||
sender.sendMessage(Commands.getInstance().streak(sender, args[1]));
|
||||
} else if (sender instanceof Player) {
|
||||
PlayerGUIs.getInstance().openVoteStreak((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
if (com.Ben12345rocks.AdvancedCore.UserManager.UserManager.getInstance().userExist(args[1])) {
|
||||
if (!Config.getInstance().getCommandsUseGUIStreak() || !(sender instanceof Player)) {
|
||||
sender.sendMessage(Commands.getInstance().streak(sender, args[1]));
|
||||
} else {
|
||||
PlayerGUIs.getInstance().openVoteStreak((Player) sender,
|
||||
UserManager.getInstance().getVotingPluginUser(args[1]));
|
||||
}
|
||||
} else {
|
||||
sendMessage(sender, StringUtils.getInstance()
|
||||
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -1218,7 +1667,7 @@ public class CommandLoader {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sender, String[] args) {
|
||||
if (!Config.getInstance().getCommandsUseGUIVote()) {
|
||||
if (!Config.getInstance().getCommandsUseGUIVote() || !(sender instanceof Player)) {
|
||||
if (isPlayer(sender)) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance().voteURLs(user));
|
||||
@@ -1226,9 +1675,7 @@ public class CommandLoader {
|
||||
sender.sendMessage(Commands.getInstance().voteURLs(null));
|
||||
}
|
||||
} else {
|
||||
if (sender instanceof Player) {
|
||||
PlayerGUIs.getInstance().openVoteURL((Player) sender);
|
||||
}
|
||||
PlayerGUIs.getInstance().openVoteURL((Player) sender);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -25,7 +25,6 @@ import com.Ben12345rocks.AdvancedCore.Util.Misc.MiscUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Scoreboards.SimpleScoreboard;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.Executers.CommandVote;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.Config;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.User;
|
||||
@@ -188,32 +187,105 @@ public class Commands {
|
||||
return ArrayUtils.getInstance().convert(msg);
|
||||
}
|
||||
|
||||
/**
|
||||
* List perms.
|
||||
*
|
||||
* @return the string[]
|
||||
*/
|
||||
public String[] listPerms() {
|
||||
public String[] listPerms(CommandSender sender) {
|
||||
ArrayList<String> msg = new ArrayList<String>();
|
||||
msg.add("&c&lCommand : Permissions (seperated by |)");
|
||||
|
||||
for (CommandHandler handle : plugin.voteCommand) {
|
||||
msg.add(handle.getHelpLineCommand("/vote") + " : " + handle.getPerm());
|
||||
if (sender instanceof Player) {
|
||||
if (handle.hasPerm(sender)) {
|
||||
msg.add("&a" + handle.getHelpLineCommand("/vote") + " : " + handle.getPerm() + " : true");
|
||||
} else {
|
||||
msg.add("&c" + handle.getHelpLineCommand("/vote") + " : " + handle.getPerm() + " : false");
|
||||
}
|
||||
} else {
|
||||
msg.add(handle.getHelpLineCommand("/vote") + " : " + handle.getPerm());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
for (CommandHandler handle : plugin.adminVoteCommand) {
|
||||
msg.add(handle.getHelpLineCommand("/av") + " : " + handle.getPerm());
|
||||
if (sender instanceof Player) {
|
||||
if (handle.hasPerm(sender)) {
|
||||
msg.add("&a" + handle.getHelpLineCommand("/av") + " : " + handle.getPerm() + " : true");
|
||||
} else {
|
||||
msg.add("&c" + handle.getHelpLineCommand("/av") + " : " + handle.getPerm() + " : false");
|
||||
}
|
||||
} else {
|
||||
msg.add(handle.getHelpLineCommand("/av") + " : " + handle.getPerm());
|
||||
}
|
||||
}
|
||||
|
||||
for (Permission perm : plugin.getDescription().getPermissions()) {
|
||||
msg.add(perm.getName());
|
||||
if (sender instanceof Player) {
|
||||
if (sender.hasPermission(perm)) {
|
||||
msg.add("&a" + perm.getName() + " : true");
|
||||
} else {
|
||||
msg.add("&c" + perm.getName() + " : false");
|
||||
}
|
||||
} else {
|
||||
msg.add(perm.getName());
|
||||
}
|
||||
}
|
||||
|
||||
msg = ArrayUtils.getInstance().colorize(msg);
|
||||
Collections.sort(msg, String.CASE_INSENSITIVE_ORDER);
|
||||
|
||||
return ArrayUtils.getInstance().convert(msg);
|
||||
}
|
||||
|
||||
public void listPerms(CommandSender sender, String player, int page) {
|
||||
Player p = Bukkit.getPlayer(player);
|
||||
if (p != null) {
|
||||
|
||||
ArrayList<String> msg = new ArrayList<String>();
|
||||
ArrayList<String> text = new ArrayList<String>();
|
||||
|
||||
for (CommandHandler handle : plugin.voteCommand) {
|
||||
if (handle.hasPerm(p)) {
|
||||
msg.add("&a" + handle.getHelpLineCommand("/vote") + " : " + handle.getPerm() + " : true");
|
||||
} else {
|
||||
msg.add("&c" + handle.getHelpLineCommand("/vote") + " : " + handle.getPerm() + " : false");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
for (CommandHandler handle : plugin.adminVoteCommand) {
|
||||
if (handle.hasPerm(p)) {
|
||||
msg.add("&a" + handle.getHelpLineCommand("/av") + " : " + handle.getPerm() + " : true");
|
||||
} else {
|
||||
msg.add("&c" + handle.getHelpLineCommand("/av") + " : " + handle.getPerm() + " : false");
|
||||
}
|
||||
}
|
||||
|
||||
for (Permission perm : plugin.getDescription().getPermissions()) {
|
||||
if (p.hasPermission(perm)) {
|
||||
msg.add("&a" + perm.getName() + " : true");
|
||||
} else {
|
||||
msg.add("&c" + perm.getName() + " : false");
|
||||
}
|
||||
}
|
||||
|
||||
msg = ArrayUtils.getInstance().colorize(msg);
|
||||
|
||||
int pagesize = Config.getInstance().getFormatPageSize();
|
||||
|
||||
int maxPage = msg.size() / pagesize;
|
||||
if ((msg.size() % pagesize) != 0) {
|
||||
maxPage++;
|
||||
}
|
||||
|
||||
text.add("&c&lCommand : Permissions (seperated by |) " + page + "/" + maxPage);
|
||||
|
||||
for (int i = pagesize * page - pagesize; i < msg.size() && i < pagesize * page; i++) {
|
||||
text.add(msg.get(i));
|
||||
}
|
||||
sender.sendMessage(ArrayUtils.getInstance().convert(ArrayUtils.getInstance().colorize(text)));
|
||||
} else {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cPlayer not online: " + player));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Player info.
|
||||
*
|
||||
@@ -586,13 +658,13 @@ public class Commands {
|
||||
LocalDateTime lastVote = LocalDateTime.ofInstant(Instant.ofEpochMilli(time), ZoneId.systemDefault());
|
||||
|
||||
if (!voteSite.isVoteDelayDaily()) {
|
||||
int votedelay = voteSite.getVoteDelay();
|
||||
double votedelay = voteSite.getVoteDelay();
|
||||
if (votedelay == 0) {
|
||||
String errorMsg = config.getFormatCommandsVoteNextInfoError();
|
||||
info = errorMsg;
|
||||
} else {
|
||||
|
||||
LocalDateTime nextvote = lastVote.plusHours(votedelay);
|
||||
LocalDateTime nextvote = lastVote.plusHours((long) votedelay);
|
||||
|
||||
if (time == 0 || now.isAfter(nextvote)) {
|
||||
info = config.getFormatCommandsVoteNextInfoCanVote();
|
||||
@@ -612,7 +684,17 @@ public class Commands {
|
||||
}
|
||||
} else {
|
||||
if (lastVote.getDayOfYear() == now.getDayOfYear() && lastVote.getYear() == now.getYear()) {
|
||||
info = config.getFormatCommandsVoteNextInfoVoteDelayDaily();
|
||||
LocalDateTime midnight = LocalDateTime.now().plusDays(1).withHour(0).withMinute(0);
|
||||
Duration dur = Duration.between(now, midnight);
|
||||
|
||||
int diffHours = (int) (dur.getSeconds() / (60 * 60));
|
||||
long diffMinutes = dur.getSeconds() / 60 - diffHours * 60;
|
||||
|
||||
String timeMsg = config.getFormatCommandsVoteNextInfoVoteDelayDaily();
|
||||
timeMsg = StringUtils.getInstance().replaceIgnoreCase(timeMsg, "%hours%", Integer.toString(diffHours));
|
||||
timeMsg = StringUtils.getInstance().replaceIgnoreCase(timeMsg, "%minutes%", Long.toString(diffMinutes));
|
||||
info = timeMsg;
|
||||
|
||||
} else {
|
||||
info = config.getFormatCommandsVoteNextInfoCanVote();
|
||||
}
|
||||
@@ -700,9 +782,9 @@ public class Commands {
|
||||
boolean requirePerms = config.getFormatCommandsVoteHelpRequirePermission();
|
||||
|
||||
for (CommandHandler cmdHandle : plugin.voteCommand) {
|
||||
if (sender.hasPermission(cmdHandle.getPerm()) && requirePerms) {
|
||||
if (cmdHandle.hasPerm(sender)) {
|
||||
unsorted.put(cmdHandle.getHelpLineCommand("/vote"), cmdHandle.getHelpLine("/vote"));
|
||||
} else {
|
||||
} else if (!requirePerms) {
|
||||
unsorted.put(cmdHandle.getHelpLineCommand("/vote"), cmdHandle.getHelpLine("/vote"));
|
||||
}
|
||||
}
|
||||
@@ -735,19 +817,6 @@ public class Commands {
|
||||
return ArrayUtils.getInstance().convert(msg);
|
||||
}
|
||||
|
||||
public void voteTop(CommandSender sender, int page) {
|
||||
String str = Config.getInstance().getVoteTopDefault();
|
||||
if (str.equalsIgnoreCase("monthly")) {
|
||||
CommandVote.getInstance().topVoterMonthly(sender, page);
|
||||
} else if (str.equalsIgnoreCase("weekly")) {
|
||||
CommandVote.getInstance().topVoterWeekly(sender, page);
|
||||
} else if (str.equalsIgnoreCase("daily")) {
|
||||
CommandVote.getInstance().topVoterDaily(sender, page);
|
||||
} else {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public String[] voteURLs(User user) {
|
||||
ArrayList<String> sites = new ArrayList<String>();
|
||||
|
||||
@@ -765,6 +834,7 @@ public class Commands {
|
||||
msg = StringUtils.getInstance().replaceIgnoreCase(msg, "%num%", Integer.toString(counter));
|
||||
msg = StringUtils.getInstance().replaceIgnoreCase(msg, "%url%", voteURL);
|
||||
msg = StringUtils.getInstance().replaceIgnoreCase(msg, "%SiteName%", voteSite.getDisplayName());
|
||||
msg = StringUtils.getInstance().replaceIgnoreCase(msg, "%player%", user.getPlayerName());
|
||||
sites.add(msg);
|
||||
}
|
||||
}
|
||||
@@ -780,4 +850,5 @@ public class Commands {
|
||||
sites = ArrayUtils.getInstance().colorize(sites);
|
||||
return ArrayUtils.getInstance().convert(sites);
|
||||
}
|
||||
|
||||
}
|
||||
-380
@@ -1,24 +1,14 @@
|
||||
package com.Ben12345rocks.VotingPlugin.Commands.Executers;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.PlayerUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Updater.Updater;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.Commands;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.Config;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.User;
|
||||
import com.Ben12345rocks.VotingPlugin.TopVoter.TopVoterHandler;
|
||||
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
|
||||
|
||||
// TODO: Auto-generated Javadoc
|
||||
/**
|
||||
@@ -63,102 +53,6 @@ public class CommandAdminVote implements CommandExecutor {
|
||||
this.plugin = plugin;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check update.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void checkUpdate(CommandSender sender) {
|
||||
plugin.updater = new Updater(plugin, 15358, false);
|
||||
final Updater.UpdateResult result = plugin.updater.getResult();
|
||||
switch (result) {
|
||||
case FAIL_SPIGOT: {
|
||||
sender.sendMessage(StringUtils.getInstance()
|
||||
.colorize("&cFailed to check for update for &c&l" + plugin.getName() + "&c!"));
|
||||
break;
|
||||
}
|
||||
case NO_UPDATE: {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize(
|
||||
"&c&l" + plugin.getName() + " &cis up to date! Version: &c&l" + plugin.updater.getVersion()));
|
||||
break;
|
||||
}
|
||||
case UPDATE_AVAILABLE: {
|
||||
sender.sendMessage(StringUtils.getInstance()
|
||||
.colorize("&c&l" + plugin.getName() + " &chas an update available! Your Version: &c&l"
|
||||
+ plugin.getDescription().getVersion() + " &cNew Version: &c&l"
|
||||
+ plugin.updater.getVersion()));
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Check vote site.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param siteName
|
||||
* the site name
|
||||
*/
|
||||
public void checkVoteSite(CommandSender sender, String siteName) {
|
||||
if (!ConfigVoteSites.getInstance().isServiceSiteGood(siteName)) {
|
||||
sender.sendMessage(
|
||||
StringUtils.getInstance().colorize("&cServiceSite is invalid, votes may not work properly"));
|
||||
} else {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&aServiceSite is properly setup"));
|
||||
}
|
||||
if (!ConfigVoteSites.getInstance().isVoteURLGood(siteName)) {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cVoteURL is invalid"));
|
||||
} else {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&aVoteURL is properly setup"));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates the vote site.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param voteSite
|
||||
* the vote site
|
||||
*/
|
||||
public void createVoteSite(CommandSender sender, String voteSite) {
|
||||
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cCreating VoteSite..."));
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
ConfigVoteSites.getInstance().generateVoteSite(voteSite);
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cCreated VoteSite: &c&l" + voteSite));
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Help.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param page
|
||||
* the page
|
||||
*/
|
||||
public void help(CommandSender sender, int page) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendJson(Commands.getInstance().adminHelp(sender, page - 1));
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().convert(
|
||||
ArrayUtils.getInstance().comptoString(Commands.getInstance().adminHelp(sender, page - 1))));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
@@ -180,278 +74,4 @@ public class CommandAdminVote implements CommandExecutor {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Perm list.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void permList(CommandSender sender) {
|
||||
|
||||
sender.sendMessage(Commands.getInstance().listPerms());
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Reload.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void reload(CommandSender sender) {
|
||||
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
sender.sendMessage(ChatColor.RED + "Reloading " + plugin.getName() + "...");
|
||||
plugin.reload();
|
||||
sender.sendMessage(
|
||||
ChatColor.RED + plugin.getName() + " v" + plugin.getDescription().getVersion() + " reloaded!");
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Reset player totals.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param playerName
|
||||
* the player name
|
||||
*/
|
||||
public void resetPlayerTotals(CommandSender sender, String playerName) {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cResseting totals for player &c&l" + playerName));
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
User user = UserManager.getInstance().getVotingPluginUser(playerName);
|
||||
user.resetDailyTotalVotes();
|
||||
user.resetMonthlyTotalVotes();
|
||||
user.resetWeeklyTotalVotes();
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cDone resseting totals for &c&l" + playerName));
|
||||
plugin.update();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reset totals.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void resetTotals(CommandSender sender) {
|
||||
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cResseting totals for all players..."));
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
TopVoterHandler.getInstance().resetDailyTotals();
|
||||
TopVoterHandler.getInstance().resetMonthlyTotals();
|
||||
TopVoterHandler.getInstance().resetWeeklyTotals();
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cDone resseting totals"));
|
||||
plugin.update();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the config allow unjoined.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param value
|
||||
* the value
|
||||
*/
|
||||
public void setConfigAllowUnjoined(CommandSender sender, boolean value) {
|
||||
|
||||
Config.getInstance().setAllowUnJoined(value);
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cSet AllowUnjoined to &c&l" + value));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the config broadcast vote.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param value
|
||||
* the value
|
||||
*/
|
||||
public void setConfigBroadcastVote(CommandSender sender, boolean value) {
|
||||
|
||||
Config.getInstance().setDebugEnabled(value);
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cSet BroadcastVote to &c&l" + value));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the config debug.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param value
|
||||
* the value
|
||||
*/
|
||||
public void setConfigDebug(CommandSender sender, boolean value) {
|
||||
|
||||
Config.getInstance().setDebugEnabled(value);
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cSet Debug to &c&l" + value));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the config enable top voter awards.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param value
|
||||
* the value
|
||||
*/
|
||||
public void setConfigEnableTopVoterAwards(CommandSender sender, boolean value) {
|
||||
|
||||
Config.getInstance().setTopVoterAwardsEnabled(value);
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cSet DisableTopVoterAwards to &c&l" + value));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the total.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param playerName
|
||||
* the player name
|
||||
* @param amount
|
||||
* the amount
|
||||
*/
|
||||
public void setTotal(CommandSender sender, String playerName, int amount) {
|
||||
|
||||
UserManager.getInstance().getVotingPluginUser(playerName).setMonthTotal(amount);
|
||||
sender.sendMessage(ChatColor.GREEN + playerName + " total votes has been set to " + amount);
|
||||
plugin.update();
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the vote site enabled.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param voteSite
|
||||
* the vote site
|
||||
* @param value
|
||||
* the value
|
||||
*/
|
||||
public void setVoteSiteEnabled(CommandSender sender, String voteSite, boolean value) {
|
||||
ConfigVoteSites.getInstance().setEnabled(voteSite, value);
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cSet votesite " + voteSite + " enabled to " + value));
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the vote site priority.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param voteSite
|
||||
* the vote site
|
||||
* @param value
|
||||
* the value
|
||||
*/
|
||||
public void setVoteSitePriority(CommandSender sender, String voteSite, int value) {
|
||||
|
||||
ConfigVoteSites.getInstance().setPriority(voteSite, value);
|
||||
sender.sendMessage(
|
||||
StringUtils.getInstance().colorize("&cSet priortiy to &c&l" + value + "&c on &c&l" + voteSite));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the vote site service site.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param voteSite
|
||||
* the vote site
|
||||
* @param serviceSite
|
||||
* the service site
|
||||
*/
|
||||
public void setVoteSiteServiceSite(CommandSender sender, String voteSite, String serviceSite) {
|
||||
|
||||
ConfigVoteSites.getInstance().setServiceSite(voteSite, serviceSite);
|
||||
sender.sendMessage(StringUtils.getInstance()
|
||||
.colorize("&cSet ServiceSite to &c&l" + serviceSite + "&c on &c&l" + voteSite));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the vote site vote delay.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param voteSite
|
||||
* the vote site
|
||||
* @param delay
|
||||
* the delay
|
||||
*/
|
||||
public void setVoteSiteVoteDelay(CommandSender sender, String voteSite, int delay) {
|
||||
|
||||
ConfigVoteSites.getInstance().setVoteDelay(voteSite, delay);
|
||||
sender.sendMessage(
|
||||
StringUtils.getInstance().colorize("&cSet VoteDelay to &c&l" + delay + "&c on &c&l" + voteSite));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the vote site vote URL.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param voteSite
|
||||
* the vote site
|
||||
* @param url
|
||||
* the url
|
||||
*/
|
||||
public void setVoteSiteVoteURL(CommandSender sender, String voteSite, String url) {
|
||||
|
||||
ConfigVoteSites.getInstance().setVoteURL(voteSite, url);
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cSet VoteURL to &c&l" + url + "&c on &c&l" + voteSite));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Uuid.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param playerName
|
||||
* the player name
|
||||
*/
|
||||
public void uuid(CommandSender sender, String playerName) {
|
||||
|
||||
sender.sendMessage(ChatColor.GREEN + "UUID of player " + ChatColor.DARK_GREEN + playerName + ChatColor.GREEN
|
||||
+ " is: " + PlayerUtils.getInstance().getUUID(playerName));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Version.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void version(CommandSender sender) {
|
||||
if (sender instanceof Player) {
|
||||
Player player = (Player) sender;
|
||||
player.performCommand("bukkit:version " + plugin.getName());
|
||||
} else {
|
||||
Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), "bukkit:version " + plugin.getName());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
+18
-13
@@ -23,14 +23,11 @@ public class CommandAliases implements CommandExecutor {
|
||||
/** The cmd handle. */
|
||||
private CommandHandler cmdHandle;
|
||||
|
||||
/**
|
||||
* Instantiates a new command aliases.
|
||||
*
|
||||
* @param cmdHandle
|
||||
* the cmd handle
|
||||
*/
|
||||
public CommandAliases(CommandHandler cmdHandle) {
|
||||
private boolean adminCommand;
|
||||
|
||||
public CommandAliases(CommandHandler cmdHandle, boolean adminCommand) {
|
||||
this.cmdHandle = cmdHandle;
|
||||
this.adminCommand = adminCommand;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -51,10 +48,14 @@ public class CommandAliases implements CommandExecutor {
|
||||
plugin.debug("Attempting cmd...");
|
||||
plugin.debug("Inputed args: " + ArrayUtils.getInstance().makeStringList(argsNew));
|
||||
|
||||
ArrayList<CommandHandler> cmdHandlers = new ArrayList<CommandHandler>();
|
||||
cmdHandlers.addAll(plugin.voteCommand);
|
||||
cmdHandlers.addAll(plugin.adminVoteCommand);
|
||||
for (CommandHandler cmdHandle : cmdHandlers) {
|
||||
ArrayList<CommandHandler> handles = new ArrayList<CommandHandler>();
|
||||
if (adminCommand) {
|
||||
handles.addAll(plugin.adminVoteCommand);
|
||||
} else {
|
||||
handles.addAll(plugin.voteCommand);
|
||||
}
|
||||
|
||||
for (CommandHandler cmdHandle : handles) {
|
||||
if (cmdHandle.getArgs().length > args.length) {
|
||||
for (String arg : cmdHandle.getArgs()[0].split("&")) {
|
||||
if (cmd.getName().equalsIgnoreCase("vote" + arg)
|
||||
@@ -81,7 +82,7 @@ public class CommandAliases implements CommandExecutor {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* for (String arg : cmdHandle.getArgs()[0].split("&")) { argsNew.set(0, arg);
|
||||
* if (cmdHandle.runCommand(sender, Utils.getInstance().convertArray(argsNew)))
|
||||
@@ -89,7 +90,11 @@ public class CommandAliases implements CommandExecutor {
|
||||
*/
|
||||
|
||||
// invalid command
|
||||
sender.sendMessage(ChatColor.RED + "No valid arguments, see /vote help!");
|
||||
if (adminCommand) {
|
||||
sender.sendMessage(ChatColor.RED + "No valid arguments, see /adminvote help!");
|
||||
} else {
|
||||
sender.sendMessage(ChatColor.RED + "No valid arguments, see /vote help!");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -1,21 +1,12 @@
|
||||
package com.Ben12345rocks.VotingPlugin.Commands.Executers;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.Commands;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.Config;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.User;
|
||||
import com.Ben12345rocks.VotingPlugin.TopVoter.TopVoterHandler;
|
||||
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
|
||||
|
||||
// TODO: Auto-generated Javadoc
|
||||
/**
|
||||
@@ -54,146 +45,6 @@ public class CommandVote implements CommandExecutor {
|
||||
CommandVote.plugin = plugin;
|
||||
}
|
||||
|
||||
/**
|
||||
* Help.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void help(CommandSender sender) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendJson(Commands.getInstance().voteHelpText(sender));
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance()
|
||||
.convert(ArrayUtils.getInstance().comptoString(Commands.getInstance().voteHelpText(sender))));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Info other.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param playerName
|
||||
* the player name
|
||||
*/
|
||||
public void infoOther(CommandSender sender, String playerName) {
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(StringUtils.getInstance().colorize("&cGetting player info..."));
|
||||
user.sendMessage(Commands.getInstance()
|
||||
.playerInfo(UserManager.getInstance().getVotingPluginUser(playerName)));
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().colorize(Commands.getInstance()
|
||||
.playerInfo(UserManager.getInstance().getVotingPluginUser(playerName))));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Info self.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void infoSelf(CommandSender sender) {
|
||||
if (sender instanceof Player) {
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(StringUtils.getInstance().colorize("&cGetting info..."));
|
||||
user.sendMessage(Commands.getInstance().playerInfo(user));
|
||||
}
|
||||
});
|
||||
|
||||
} else {
|
||||
sender.sendMessage("You must be a player to do this!");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Last other.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param playerName
|
||||
* the player name
|
||||
*/
|
||||
public void lastOther(CommandSender sender, String playerName) {
|
||||
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(
|
||||
Commands.getInstance().voteCommandLast(UserManager.getInstance().getVotingPluginUser(playerName)));
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().colorize(
|
||||
Commands.getInstance().voteCommandLast(UserManager.getInstance().getVotingPluginUser(playerName))));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Last self.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void lastSelf(CommandSender sender) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance().voteCommandLast(user));
|
||||
} else {
|
||||
sender.sendMessage("You must be a player to do this!");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Next other.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param playerName
|
||||
* the player name
|
||||
*/
|
||||
public void nextOther(CommandSender sender, String playerName) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(
|
||||
Commands.getInstance().voteCommandNext(UserManager.getInstance().getVotingPluginUser(playerName)));
|
||||
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().colorize(
|
||||
Commands.getInstance().voteCommandNext(UserManager.getInstance().getVotingPluginUser(playerName))));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Next self.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void nextSelf(CommandSender sender) {
|
||||
if (sender instanceof Player) {
|
||||
String playerName = sender.getName();
|
||||
User user = UserManager.getInstance().getVotingPluginUser(playerName);
|
||||
user.sendMessage(Commands.getInstance().voteCommandNext(user));
|
||||
} else {
|
||||
sender.sendMessage("You must be a player to do this!");
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
@@ -215,220 +66,4 @@ public class CommandVote implements CommandExecutor {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Points other.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param user
|
||||
* the user
|
||||
*/
|
||||
public void pointsOther(CommandSender sender, User user) {
|
||||
String msg = Config.getInstance().getFormatCommandVotePoints().replace("%Player%", user.getPlayerName())
|
||||
.replace("%Points%", "" + user.getPoints());
|
||||
if (sender instanceof Player) {
|
||||
UserManager.getInstance().getVotingPluginUser((Player) sender).sendMessage(msg);
|
||||
} else {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize(msg));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Points self.
|
||||
*
|
||||
* @param user
|
||||
* the user
|
||||
*/
|
||||
public void pointsSelf(User user) {
|
||||
String msg = Config.getInstance().getFormatCommandVotePoints().replace("%Player%", user.getPlayerName())
|
||||
.replace("%Points%", "" + user.getPoints());
|
||||
user.sendMessage(msg);
|
||||
}
|
||||
|
||||
/**
|
||||
* Today.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param page
|
||||
* the page
|
||||
*/
|
||||
public void today(CommandSender sender, int page) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance().commandVoteToday(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendVoteTodayScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(Commands.getInstance().commandVoteToday(page));
|
||||
}
|
||||
}
|
||||
|
||||
public void topVoterAll(CommandSender sender, int page) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterAllTime(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterAllTimeScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterAllTime(page));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Top voter daily.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param page
|
||||
* the page
|
||||
*/
|
||||
public void topVoterDaily(CommandSender sender, int page) {
|
||||
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterDaily(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterDailyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterDaily(page));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Top voter monthly.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param page
|
||||
* the page
|
||||
*/
|
||||
public void topVoterMonthly(CommandSender sender, int page) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterMonthly(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterMonthlyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterMonthly(page));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Top voter weekly.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param page
|
||||
* the page
|
||||
*/
|
||||
public void topVoterWeekly(CommandSender sender, int page) {
|
||||
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(TopVoterHandler.getInstance().topVoterWeekly(page));
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Commands.getInstance().sendTopVoterWeeklyScoreBoard((Player) sender, page);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sender.sendMessage(TopVoterHandler.getInstance().topVoterWeekly(page));
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Total all.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void totalAll(CommandSender sender) {
|
||||
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(Commands.getInstance().voteCommandTotalAll());
|
||||
|
||||
} else {
|
||||
sender.sendMessage(Commands.getInstance().voteCommandTotalAll());
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Total other.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
* @param playerName
|
||||
* the player name
|
||||
*/
|
||||
public void totalOther(CommandSender sender, String playerName) {
|
||||
if (sender instanceof Player) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
|
||||
user.sendMessage(
|
||||
Commands.getInstance().voteCommandTotal(UserManager.getInstance().getVotingPluginUser(playerName)));
|
||||
} else {
|
||||
sender.sendMessage(ArrayUtils.getInstance().colorize(Commands.getInstance()
|
||||
.voteCommandTotal(UserManager.getInstance().getVotingPluginUser(playerName))));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Total self.
|
||||
*
|
||||
* @param sender
|
||||
* the sender
|
||||
*/
|
||||
public void totalSelf(CommandSender sender) {
|
||||
if (sender instanceof Player) {
|
||||
String playerName = sender.getName();
|
||||
User user = UserManager.getInstance().getVotingPluginUser(playerName);
|
||||
user.sendMessage(Commands.getInstance().voteCommandTotal(user));
|
||||
} else {
|
||||
sender.sendMessage("You must be a player to do this!");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -2,6 +2,7 @@ package com.Ben12345rocks.VotingPlugin.Commands.GUI;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.inventory.ClickType;
|
||||
@@ -11,12 +12,16 @@ import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory.ClickEvent;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventoryButton;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.PlayerUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.InputMethod;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.ValueRequest;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.ValueRequestBuilder;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.Listeners.BooleanListener;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.Listeners.NumberListener;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.Listeners.StringListener;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
|
||||
import com.Ben12345rocks.VotingPlugin.Events.VotiferEvent;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
|
||||
|
||||
public class AdminGUI {
|
||||
@@ -140,53 +145,73 @@ public class AdminGUI {
|
||||
public void openAdminGUIVoteSiteSite(Player player, VoteSite voteSite) {
|
||||
BInventory inv = new BInventory("VoteSite: " + voteSite.getDisplayName());
|
||||
inv.setMeta(player, "VoteSite", voteSite);
|
||||
inv.addButton(inv.getNextSlot(),
|
||||
new BInventoryButton("SetPriority", new String[0], new ItemStack(Material.STONE)) {
|
||||
|
||||
inv.addButton(new BInventoryButton(voteSite.getItem().setName("&cForce vote")) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
ArrayList<String> playerNames = new ArrayList<String>();
|
||||
for (Player p : Bukkit.getOnlinePlayers()) {
|
||||
playerNames.add(p.getName());
|
||||
}
|
||||
new ValueRequestBuilder(new StringListener() {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
Player player = event.getWhoClicked();
|
||||
new ValueRequest().requestNumber(player, "" + voteSite.getPriority(), null,
|
||||
new NumberListener() {
|
||||
|
||||
@Override
|
||||
public void onInput(Player player, Number value) {
|
||||
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
|
||||
ConfigVoteSites.getInstance().setPriority(voteSite.getKey(), value.intValue());
|
||||
player.sendMessage("Set Priority");
|
||||
plugin.reload();
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
inv.addButton(inv.getNextSlot(),
|
||||
new BInventoryButton("SetServiceSite", new String[0], new ItemStack(Material.STONE)) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
if (event.getWhoClicked() instanceof Player) {
|
||||
Player player = event.getWhoClicked();
|
||||
|
||||
new ValueRequest().requestString(player, voteSite.getServiceSite(), null,
|
||||
new StringListener() {
|
||||
|
||||
@Override
|
||||
public void onInput(Player player, String value) {
|
||||
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
|
||||
String siteName = voteSite.getKey();
|
||||
ConfigVoteSites.getInstance().setServiceSite(siteName, value);
|
||||
player.sendMessage("Set ServiceSite");
|
||||
plugin.reload();
|
||||
}
|
||||
});
|
||||
public void onInput(Player player, String value) {
|
||||
Object ob = PlayerUtils.getInstance().getPlayerMeta(player, "VoteSite");
|
||||
if (ob != null) {
|
||||
VoteSite site = (VoteSite) ob;
|
||||
VotiferEvent.playerVote(value, site.getServiceSite(), false);
|
||||
}
|
||||
}
|
||||
}, ArrayUtils.getInstance().convert(playerNames)).usingMethod(InputMethod.INVENTORY)
|
||||
.allowCustomOption(true).request(event.getWhoClicked());
|
||||
}
|
||||
});
|
||||
|
||||
inv.addButton(new BInventoryButton("SetPriority", new String[0], new ItemStack(Material.STONE)) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
Player player = event.getWhoClicked();
|
||||
new ValueRequest().requestNumber(player, "" + voteSite.getPriority(), null, new NumberListener() {
|
||||
|
||||
@Override
|
||||
public void onInput(Player player, Number value) {
|
||||
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
|
||||
ConfigVoteSites.getInstance().setPriority(voteSite.getKey(), value.intValue());
|
||||
player.sendMessage("Set Priority");
|
||||
plugin.reload();
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
inv.addButton(inv.getNextSlot(), new BInventoryButton("SetName", new String[0], new ItemStack(Material.STONE)) {
|
||||
inv.addButton(new BInventoryButton("SetServiceSite", new String[0], new ItemStack(Material.STONE)) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
if (event.getWhoClicked() instanceof Player) {
|
||||
Player player = event.getWhoClicked();
|
||||
|
||||
new ValueRequest().requestString(player, voteSite.getServiceSite(), null, new StringListener() {
|
||||
|
||||
@Override
|
||||
public void onInput(Player player, String value) {
|
||||
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
|
||||
String siteName = voteSite.getKey();
|
||||
ConfigVoteSites.getInstance().setServiceSite(siteName, value);
|
||||
player.sendMessage("Set ServiceSite");
|
||||
plugin.reload();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
inv.addButton(new BInventoryButton("SetName", new String[0], new ItemStack(Material.STONE)) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
@@ -207,54 +232,51 @@ public class AdminGUI {
|
||||
}
|
||||
});
|
||||
|
||||
inv.addButton(inv.getNextSlot(),
|
||||
new BInventoryButton("SetVoteURL", new String[0], new ItemStack(Material.STONE)) {
|
||||
inv.addButton(new BInventoryButton("SetVoteURL", new String[0], new ItemStack(Material.STONE)) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
if (event.getWhoClicked() instanceof Player) {
|
||||
Player player = event.getWhoClicked();
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
if (event.getWhoClicked() instanceof Player) {
|
||||
Player player = event.getWhoClicked();
|
||||
|
||||
new ValueRequest().requestString(player, voteSite.getVoteURL(), null, new StringListener() {
|
||||
new ValueRequest().requestString(player, voteSite.getVoteURL(), null, new StringListener() {
|
||||
|
||||
@Override
|
||||
public void onInput(Player player, String value) {
|
||||
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
|
||||
String siteName = voteSite.getKey();
|
||||
ConfigVoteSites.getInstance().setVoteURL(siteName, value);
|
||||
player.sendMessage("Set VoteURL");
|
||||
plugin.reload();
|
||||
|
||||
}
|
||||
});
|
||||
@Override
|
||||
public void onInput(Player player, String value) {
|
||||
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
|
||||
String siteName = voteSite.getKey();
|
||||
ConfigVoteSites.getInstance().setVoteURL(siteName, value);
|
||||
player.sendMessage("Set VoteURL");
|
||||
plugin.reload();
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
inv.addButton(inv.getNextSlot(),
|
||||
new BInventoryButton("SetVoteDelay", new String[0], new ItemStack(Material.STONE)) {
|
||||
}
|
||||
});
|
||||
|
||||
inv.addButton(new BInventoryButton("SetVoteDelay", new String[0], new ItemStack(Material.STONE)) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
Player player = event.getWhoClicked();
|
||||
new ValueRequest().requestNumber(player, "" + voteSite.getVoteDelay(), null, new NumberListener() {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
Player player = event.getWhoClicked();
|
||||
new ValueRequest().requestNumber(player, "" + voteSite.getVoteDelay(), null,
|
||||
new NumberListener() {
|
||||
|
||||
@Override
|
||||
public void onInput(Player player, Number value) {
|
||||
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
|
||||
String siteName = voteSite.getKey();
|
||||
ConfigVoteSites.getInstance().setVoteDelay(siteName, value.intValue());
|
||||
player.sendMessage("Set VoteDelay");
|
||||
plugin.reload();
|
||||
|
||||
}
|
||||
});
|
||||
public void onInput(Player player, Number value) {
|
||||
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
|
||||
String siteName = voteSite.getKey();
|
||||
ConfigVoteSites.getInstance().setVoteDelay(siteName, value.intValue());
|
||||
player.sendMessage("Set VoteDelay");
|
||||
plugin.reload();
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
});
|
||||
inv.addButton(inv.getNextSlot(),
|
||||
new BInventoryButton("SetEnabled", new String[0], new ItemStack(Material.STONE)) {
|
||||
|
||||
|
||||
@@ -4,9 +4,11 @@ import java.time.format.DateTimeFormatter;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.Set;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.inventory.ClickType;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.AdvancedCoreHook;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory;
|
||||
@@ -48,6 +50,14 @@ public class PlayerGUIs {
|
||||
private PlayerGUIs() {
|
||||
}
|
||||
|
||||
public ItemBuilder getBackButton() {
|
||||
ConfigurationSection sec = Config.getInstance().getBackButton();
|
||||
if (sec != null) {
|
||||
return new ItemBuilder(sec);
|
||||
}
|
||||
return new ItemBuilder(Material.PAPER, 1).setName("&8Back to VoteGUI");
|
||||
}
|
||||
|
||||
public User getSelectedPlayer(Player player) {
|
||||
User str = (User) PlayerUtils.getInstance().getPlayerMeta(player, "SelectedPlayerGUIs");
|
||||
return str;
|
||||
@@ -98,7 +108,7 @@ public class PlayerGUIs {
|
||||
&& !player.hasPermission("VotingPlugin.Mod"))
|
||||
|| (!player.hasPermission("VotingPlugin.Commands.Vote.GUI")
|
||||
&& !player.hasPermission("VotingPlugin.Player"))) {
|
||||
player.sendMessage(AdvancedCoreHook.getInstance().getFormatNoPerms());
|
||||
player.sendMessage(StringUtils.getInstance().colorize(AdvancedCoreHook.getInstance().getFormatNoPerms()));
|
||||
return;
|
||||
}
|
||||
setSelectedPlayer(player, user);
|
||||
@@ -181,15 +191,14 @@ public class PlayerGUIs {
|
||||
BInventory inv = new BInventory(StringUtils.getInstance()
|
||||
.replacePlaceHolder(Config.getInstance().getGUIVoteLastName(), "player", user.getPlayerName()));
|
||||
for (VoteSite site : plugin.getVoteSites()) {
|
||||
inv.addButton(inv.getNextSlot(),
|
||||
new BInventoryButton(new ItemBuilder(site.getItem()).setName(site.getDisplayName())
|
||||
.setLore(Commands.getInstance().voteCommandLastLine(user, site)).setAmountNone(1)) {
|
||||
inv.addButton(inv.getNextSlot(), new BInventoryButton(site.getItem().setName(site.getDisplayName())
|
||||
.setLore(Commands.getInstance().voteCommandLastLine(user, site)).setAmountNone(1)) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent clickEvent) {
|
||||
@Override
|
||||
public void onClick(ClickEvent clickEvent) {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (Config.getInstance().getGUIVoteLastBackButton()) {
|
||||
@@ -211,15 +220,14 @@ public class PlayerGUIs {
|
||||
BInventory inv = new BInventory(StringUtils.getInstance()
|
||||
.replacePlaceHolder(Config.getInstance().getGUIVoteNextName(), "player", user.getPlayerName()));
|
||||
for (VoteSite site : plugin.getVoteSites()) {
|
||||
inv.addButton(inv.getNextSlot(),
|
||||
new BInventoryButton(new ItemBuilder(site.getItem()).setName(site.getDisplayName())
|
||||
.setLore(Commands.getInstance().voteCommandNextInfo(user, site)).setAmountNone(1)) {
|
||||
inv.addButton(inv.getNextSlot(), new BInventoryButton(site.getItem().setName(site.getDisplayName())
|
||||
.setLore(Commands.getInstance().voteCommandNextInfo(user, site)).setAmountNone(1)) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent clickEvent) {
|
||||
@Override
|
||||
public void onClick(ClickEvent clickEvent) {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (Config.getInstance().getGUIVoteNextBackButton()) {
|
||||
@@ -310,6 +318,7 @@ public class PlayerGUIs {
|
||||
}
|
||||
|
||||
public void openVoteToday(Player player) {
|
||||
setSelectedPlayer(player, null);
|
||||
BInventory inv = new BInventory(Config.getInstance().getGUIVoteTodayName());
|
||||
for (User user : plugin.voteToday.keySet()) {
|
||||
|
||||
@@ -318,7 +327,7 @@ public class PlayerGUIs {
|
||||
String timeString = plugin.voteToday.get(user).get(voteSite).format(formatter);
|
||||
String msg = "&6" + user.getPlayerName() + " : " + voteSite.getDisplayName() + " : " + timeString;
|
||||
inv.addButton(inv.getNextSlot(), new BInventoryButton(user.getPlayerName(), new String[] { msg },
|
||||
MiscUtils.getInstance().setSkullOwner(user.getPlayerName())) {
|
||||
MiscUtils.getInstance().setSkullOwner(user.getOfflinePlayer())) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent clickEvent) {
|
||||
@@ -352,16 +361,16 @@ public class PlayerGUIs {
|
||||
Set<Entry<User, Integer>> users = null;
|
||||
String topVoter = "";
|
||||
if (top.equals(TopVoter.Monthly)) {
|
||||
topVoter = "Monthly";
|
||||
topVoter = Config.getInstance().getFormatTopVoterMonthly();
|
||||
users = plugin.topVoterMonthly.entrySet();
|
||||
} else if (top.equals(TopVoter.Weekly)) {
|
||||
topVoter = "Weekly";
|
||||
topVoter = Config.getInstance().getFormatTopVoterWeekly();
|
||||
users = plugin.topVoterWeekly.entrySet();
|
||||
} else if (top.equals(TopVoter.Daily)) {
|
||||
topVoter = "Daily";
|
||||
topVoter = Config.getInstance().getFormatTopVoterDaily();
|
||||
users = plugin.topVoterDaily.entrySet();
|
||||
} else {
|
||||
topVoter = "AllTime";
|
||||
topVoter = Config.getInstance().getFormatTopVoterAllTime();
|
||||
users = plugin.topVoterAllTime.entrySet();
|
||||
}
|
||||
inv = new BInventory(StringUtils.getInstance().replacePlaceHolder(Config.getInstance().getGUIVoteTopName(),
|
||||
@@ -369,7 +378,7 @@ public class PlayerGUIs {
|
||||
int pos = 1;
|
||||
for (Entry<User, Integer> entry : users) {
|
||||
inv.addButton(new BInventoryButton(
|
||||
new ItemBuilder(MiscUtils.getInstance().setSkullOwner(entry.getKey().getPlayerName()))
|
||||
new ItemBuilder(MiscUtils.getInstance().setSkullOwner(entry.getKey().getOfflinePlayer()))
|
||||
.setName(Config.getInstance().getGUIVoteTopItemName())
|
||||
.addLoreLine(Config.getInstance().getGUIVoteTopItemLore())
|
||||
.addPlaceholder("position", "" + pos)
|
||||
@@ -378,8 +387,10 @@ public class PlayerGUIs {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent clickEvent) {
|
||||
User user = UserManager.getInstance()
|
||||
.getVotingPluginUser(clickEvent.getClickedItem().getItemMeta().getDisplayName());
|
||||
ItemBuilder item = new ItemBuilder(clickEvent.getClickedItem());
|
||||
String name = ChatColor.stripColor(item.getName()).split(":")[1].trim();
|
||||
|
||||
User user = UserManager.getInstance().getVotingPluginUser(name);
|
||||
openVoteGUI(player, user);
|
||||
}
|
||||
});
|
||||
@@ -387,16 +398,20 @@ public class PlayerGUIs {
|
||||
}
|
||||
final TopVoter cur = top;
|
||||
inv.getPageButtons().add(new BInventoryButton(
|
||||
new ItemBuilder(Config.getInstance().getGUIVoteTopSwitchItem()).addPlaceholder("Top", cur.toString())) {
|
||||
new ItemBuilder(Config.getInstance().getGUIVoteTopSwitchItem()).addPlaceholder("Top", topVoter)) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent clickEvent) {
|
||||
openVoteTop(player, cur.next());
|
||||
if (!clickEvent.getClick().equals(ClickType.RIGHT)) {
|
||||
openVoteTop(player, cur.next());
|
||||
} else {
|
||||
openVoteTop(player, cur.prev());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
if (Config.getInstance().getGUIVoteTopBackButton()) {
|
||||
inv.addButton(new BInventoryButton(getBackButton()) {
|
||||
inv.getPageButtons().add(new BInventoryButton(getBackButton().setSlot(1)) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
@@ -465,6 +480,7 @@ public class PlayerGUIs {
|
||||
* the player
|
||||
*/
|
||||
public void openVoteURL(Player player) {
|
||||
setSelectedPlayer(player, null);
|
||||
BInventory inv = new BInventory(Config.getInstance().getGUIVoteURLName());
|
||||
|
||||
User user = UserManager.getInstance().getVotingPluginUser(player);
|
||||
@@ -519,7 +535,12 @@ public class PlayerGUIs {
|
||||
if (player != null) {
|
||||
player.closeInventory();
|
||||
User user = UserManager.getInstance().getVotingPluginUser(player);
|
||||
user.sendMessage(voteSite.getVoteURL());
|
||||
user.sendMessage(StringUtils.getInstance().replacePlaceHolder(
|
||||
StringUtils.getInstance()
|
||||
.replacePlaceHolder(StringUtils.getInstance().replacePlaceHolder(
|
||||
Config.getInstance().getGUIVoteURLURLText(), "voteurl",
|
||||
voteSite.getVoteURL()), "sitename", voteSite.getDisplayName()),
|
||||
"player", player.getName()));
|
||||
|
||||
}
|
||||
|
||||
@@ -608,7 +629,7 @@ public class PlayerGUIs {
|
||||
int count = 0;
|
||||
for (VoteSite voteSite : plugin.getVoteSites()) {
|
||||
try {
|
||||
ItemBuilder builder = new ItemBuilder(voteSite.getItem());
|
||||
ItemBuilder builder = voteSite.getItem();
|
||||
final VoteSite site = voteSite;
|
||||
|
||||
inv.addButton(count, new BInventoryButton(builder) {
|
||||
@@ -644,18 +665,11 @@ public class PlayerGUIs {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
inv.openInventory(player);
|
||||
}
|
||||
|
||||
public ItemBuilder getBackButton() {
|
||||
ConfigurationSection sec = Config.getInstance().getBackButton();
|
||||
if (sec != null) {
|
||||
return new ItemBuilder(sec);
|
||||
}
|
||||
return new ItemBuilder(Material.PAPER, 1).setName("&8Back to VoteGUI");
|
||||
}
|
||||
}
|
||||
+3
-4
@@ -10,7 +10,7 @@ import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.command.TabCompleter;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.TabCompleteHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
|
||||
@@ -36,9 +36,8 @@ public class AdminVoteTabCompleter implements TabCompleter {
|
||||
|
||||
Set<String> cmds = new HashSet<String>();
|
||||
|
||||
for (CommandHandler cmdHandle : plugin.adminVoteCommand) {
|
||||
cmds.addAll(cmdHandle.getTabCompleteOptions(sender, args, args.length - 1));
|
||||
}
|
||||
cmds.addAll(TabCompleteHandler.getInstance().getTabCompleteOptions(plugin.adminVoteCommand, sender, args,
|
||||
args.length - 1));
|
||||
|
||||
for (String str : cmds) {
|
||||
if (StringUtils.getInstance().startsWithIgnoreCase(str, args[args.length - 1])) {
|
||||
|
||||
+15
-11
@@ -5,12 +5,14 @@ import java.util.Collections;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.command.TabCompleter;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.TabCompleteHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
@@ -48,8 +50,14 @@ public class AliasesTabCompleter implements TabCompleter {
|
||||
Set<String> cmds = new HashSet<String>();
|
||||
|
||||
ArrayList<CommandHandler> cmdHandlers = new ArrayList<CommandHandler>();
|
||||
cmdHandlers.addAll(plugin.voteCommand);
|
||||
cmdHandlers.addAll(plugin.adminVoteCommand);
|
||||
|
||||
if (adminCommand) {
|
||||
cmdHandlers.addAll(plugin.adminVoteCommand);
|
||||
} else {
|
||||
cmdHandlers.addAll(plugin.voteCommand);
|
||||
}
|
||||
ConcurrentHashMap<String, ArrayList<String>> tabCompletes = TabCompleteHandler.getInstance()
|
||||
.getTabCompleteOptions();
|
||||
for (CommandHandler cmdHandle : cmdHandlers) {
|
||||
if (cmdHandle.getArgs().length >= argsIn.length) {
|
||||
for (String arg : cmdHandle.getArgs()[0].split("&")) {
|
||||
@@ -69,7 +77,7 @@ public class AliasesTabCompleter implements TabCompleter {
|
||||
|
||||
if (argsMatch) {
|
||||
|
||||
cmds.addAll(cmdHandle.getTabCompleteOptions(sender, args, argsIn.length));
|
||||
cmds.addAll(cmdHandle.getTabCompleteOptions(sender, args, argsIn.length, tabCompletes));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -88,16 +96,12 @@ public class AliasesTabCompleter implements TabCompleter {
|
||||
return tab;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the CMD handle.
|
||||
*
|
||||
* @param cmd
|
||||
* the cmd
|
||||
* @return the aliases tab completer
|
||||
*/
|
||||
public AliasesTabCompleter setCMDHandle(CommandHandler cmd) {
|
||||
public AliasesTabCompleter setCMDHandle(CommandHandler cmd, boolean adminCommand) {
|
||||
cmdHandle = cmd;
|
||||
this.adminCommand = adminCommand;
|
||||
return this;
|
||||
}
|
||||
|
||||
private boolean adminCommand;
|
||||
|
||||
}
|
||||
+11
-18
@@ -10,7 +10,7 @@ import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.command.TabCompleter;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.TabCompleteHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
|
||||
@@ -33,29 +33,22 @@ public class VoteTabCompleter implements TabCompleter {
|
||||
@Override
|
||||
public List<String> onTabComplete(CommandSender sender, Command cmd, String alias, String[] args) {
|
||||
|
||||
if (cmd.getName().equalsIgnoreCase("vote") || cmd.getName().equalsIgnoreCase("v")) {
|
||||
ArrayList<String> tab = new ArrayList<String>();
|
||||
|
||||
ArrayList<String> tab = new ArrayList<String>();
|
||||
Set<String> cmds = new HashSet<String>();
|
||||
|
||||
Set<String> cmds = new HashSet<String>();
|
||||
cmds.addAll(TabCompleteHandler.getInstance().getTabCompleteOptions(plugin.voteCommand, sender, args,
|
||||
args.length - 1));
|
||||
|
||||
for (CommandHandler cmdHandle : plugin.voteCommand) {
|
||||
cmds.addAll(cmdHandle.getTabCompleteOptions(sender, args, args.length - 1));
|
||||
for (String str : cmds) {
|
||||
if (StringUtils.getInstance().startsWithIgnoreCase(str, args[args.length - 1])) {
|
||||
tab.add(str);
|
||||
}
|
||||
|
||||
for (String str : cmds) {
|
||||
if (StringUtils.getInstance().startsWithIgnoreCase(str, args[args.length - 1])) {
|
||||
tab.add(str);
|
||||
}
|
||||
}
|
||||
|
||||
Collections.sort(tab, String.CASE_INSENSITIVE_ORDER);
|
||||
|
||||
return tab;
|
||||
|
||||
}
|
||||
return null;
|
||||
|
||||
Collections.sort(tab, String.CASE_INSENSITIVE_ORDER);
|
||||
|
||||
return tab;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -47,10 +47,6 @@ public class Config extends YMLFile {
|
||||
return getData().getBoolean("AllowUnjoined");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteLastBackButton() {
|
||||
return getData().getBoolean("GUI.VoteLast.BackButton");
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the all sites reward.
|
||||
*
|
||||
@@ -60,6 +56,10 @@ public class Config extends YMLFile {
|
||||
return "AllSites";
|
||||
}
|
||||
|
||||
public boolean getAlternateUUIDLookup() {
|
||||
return getData().getBoolean("AlternateUUIDLookup");
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the rewards.
|
||||
*
|
||||
@@ -83,6 +83,14 @@ public class Config extends YMLFile {
|
||||
return getData().getBoolean("AutoDownload");
|
||||
}
|
||||
|
||||
public boolean getAutoKillInvs() {
|
||||
return getData().getBoolean("AutoKillInvs", true);
|
||||
}
|
||||
|
||||
public ConfigurationSection getBackButton() {
|
||||
return getData().getConfigurationSection("BackButton");
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the black list.
|
||||
*
|
||||
@@ -102,8 +110,12 @@ public class Config extends YMLFile {
|
||||
return getData().getBoolean("BroadcastVote", true);
|
||||
}
|
||||
|
||||
public boolean getCheckOnWorldChange() {
|
||||
return getData().getBoolean("CheckOnWorldChange");
|
||||
public boolean getDisableCheckOnWorldChange() {
|
||||
return getData().getBoolean("DisableCheckOnWorldChange");
|
||||
}
|
||||
|
||||
public boolean getClearCacheOnUpdate() {
|
||||
return getData().getBoolean("ClearCacheOnUpdate");
|
||||
}
|
||||
|
||||
public boolean getCommandsUseGUIBest() {
|
||||
@@ -138,6 +150,10 @@ public class Config extends YMLFile {
|
||||
return getData().getBoolean("Commands.UseGUI.Vote", true);
|
||||
}
|
||||
|
||||
public boolean getCountFakeVotes() {
|
||||
return getData().getBoolean("CountFakeVotes", true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the cumulative reward enabled.
|
||||
*
|
||||
@@ -383,7 +399,8 @@ public class Config extends YMLFile {
|
||||
}
|
||||
|
||||
public String getFormatCommandsVoteNextInfoVoteDelayDaily() {
|
||||
return getData().getString("Format.Commands.Vote.Next.Info.VoteDelayDaily", "Tomorrow");
|
||||
return getData().getString("Format.Commands.Vote.Next.Info.VoteDelayDaily",
|
||||
"%hours% Hours and %minutes% Minutes");
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -515,6 +532,10 @@ public class Config extends YMLFile {
|
||||
return getData().getString("Format.HelpLine", "&3&l%Command% - &3%HelpMessage%");
|
||||
}
|
||||
|
||||
public String getFormatNextPage() {
|
||||
return getData().getString("Format.NextPage", "&aNext Page");
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the format no perms.
|
||||
*
|
||||
@@ -537,6 +558,10 @@ public class Config extends YMLFile {
|
||||
return 10;
|
||||
}
|
||||
|
||||
public String getFormatPrevPage() {
|
||||
return getData().getString("Format.PrevPage", "&aPrevious Page");
|
||||
}
|
||||
|
||||
public String getFormatShopFailedMsg() {
|
||||
String msg = getData().getString("Format.ShopFailed", "&cYou do not have %Points% points to purhcase this!");
|
||||
|
||||
@@ -609,6 +634,18 @@ public class Config extends YMLFile {
|
||||
|
||||
}
|
||||
|
||||
public String getFormatTopVoterAllTime() {
|
||||
return getData().getString("Format.TopVoter.AllTime", "AllTime");
|
||||
}
|
||||
|
||||
public String getFormatTopVoterDaily() {
|
||||
return getData().getString("Format.TopVoter.Daily", "Daily");
|
||||
}
|
||||
|
||||
public String getFormatTopVoterMonthly() {
|
||||
return getData().getString("Format.TopVoter.Monthly", "Monthly");
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the top voter reward msg.
|
||||
*
|
||||
@@ -620,6 +657,10 @@ public class Config extends YMLFile {
|
||||
|
||||
}
|
||||
|
||||
public String getFormatTopVoterWeekly() {
|
||||
return getData().getString("Format.TopVoter.Weekly", "Weekly");
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the vote help.
|
||||
*
|
||||
@@ -650,10 +691,18 @@ public class Config extends YMLFile {
|
||||
return getData().getString("GUI.VoteGUIName", "&cVoteGUI: &c&l%player%");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteLastBackButton() {
|
||||
return getData().getBoolean("GUI.VoteLast.BackButton");
|
||||
}
|
||||
|
||||
public String getGUIVoteLastName() {
|
||||
return getData().getString("GUI.VoteLast.Name", "VoteLast: %player%");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteNextBackButton() {
|
||||
return getData().getBoolean("GUI.VoteNext.BackButton");
|
||||
}
|
||||
|
||||
public String getGUIVoteNextName() {
|
||||
return getData().getString("GUI.VoteNext.Name", "VoteNext: %player%");
|
||||
}
|
||||
@@ -662,6 +711,10 @@ public class Config extends YMLFile {
|
||||
return getData().getString("GUI.VoteRewardName", "VoteReward");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteStreakBackButton() {
|
||||
return getData().getBoolean("GUI.VoteStreak.BackButton");
|
||||
}
|
||||
|
||||
public ConfigurationSection getGUIVoteStreakCurrentDayStreakItem() {
|
||||
return getData().getConfigurationSection("GUI.VoteStreak.CurrentDayStreak.Item");
|
||||
}
|
||||
@@ -690,10 +743,18 @@ public class Config extends YMLFile {
|
||||
return getData().getString("GUI.VoteStreak.Name", "VoteStreak");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteTodayBackButton() {
|
||||
return getData().getBoolean("GUI.VoteToday.BackButton");
|
||||
}
|
||||
|
||||
public String getGUIVoteTodayName() {
|
||||
return getData().getString("GUI.VoteToday.Name", "VoteToday");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteTopBackButton() {
|
||||
return getData().getBoolean("GUI.VoteToday.BackButton");
|
||||
}
|
||||
|
||||
public String getGUIVoteTopItemLore() {
|
||||
return getData().getString("GUI.VoteTop.Item.Lore", "&3&lVotes: &3%votes%");
|
||||
}
|
||||
@@ -718,6 +779,10 @@ public class Config extends YMLFile {
|
||||
return getData().getConfigurationSection("GUI.VoteTotal.AllTimeTotal.Item");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteTotalBackButton() {
|
||||
return getData().getBoolean("GUI.VoteTotal.BackButton");
|
||||
}
|
||||
|
||||
public ConfigurationSection getGUIVoteTotalDayTotalItem() {
|
||||
return getData().getConfigurationSection("GUI.VoteTotal.DayTotal.Item");
|
||||
}
|
||||
@@ -734,10 +799,18 @@ public class Config extends YMLFile {
|
||||
return getData().getConfigurationSection("GUI.VoteTotal.WeekTotal.Item");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteURLBackButton() {
|
||||
return getData().getBoolean("GUI.VoteURL.BackButton");
|
||||
}
|
||||
|
||||
public String getGUIVoteURLName() {
|
||||
return getData().getString("GUI.VoteURL.Name", "&cVoteURL");
|
||||
}
|
||||
|
||||
public String getGUIVoteURLURLText() {
|
||||
return getData().getString("GUI.VoteURL.URLText", "%VoteUrl%");
|
||||
}
|
||||
|
||||
public String getGUIVoteURLSiteName() {
|
||||
return getData().getString("GUI.VoteURLSite.Name", "VoteSite %site%");
|
||||
}
|
||||
@@ -860,26 +933,6 @@ public class Config extends YMLFile {
|
||||
return "MonthlyAwards." + pos + ".Rewards";
|
||||
}
|
||||
|
||||
public boolean getAlternateUUIDLookup() {
|
||||
return getData().getBoolean("AlternateUUIDLookup");
|
||||
}
|
||||
|
||||
public int getMysqlMaxSize() {
|
||||
return getData().getInt("MySQL.MaxSize", -1);
|
||||
}
|
||||
|
||||
public ConfigurationSection getBackButton() {
|
||||
return getData().getConfigurationSection("BackButton");
|
||||
}
|
||||
|
||||
public boolean getAutoKillInvs() {
|
||||
return getData().getBoolean("AutoKillInvs", true);
|
||||
}
|
||||
|
||||
public boolean getVotePartyCountFakeVotes() {
|
||||
return getData().getBoolean("VoteParty.CountFakeVotes", true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the monthly awards enabled.
|
||||
*
|
||||
@@ -889,10 +942,6 @@ public class Config extends YMLFile {
|
||||
return getData().getBoolean("EnableMonthlyAwards");
|
||||
}
|
||||
|
||||
public boolean getClearCacheOnUpdate() {
|
||||
return getData().getBoolean("ClearCacheOnUpdate");
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the monthly possible reward places.
|
||||
*
|
||||
@@ -906,32 +955,8 @@ public class Config extends YMLFile {
|
||||
}
|
||||
}
|
||||
|
||||
public String getMySqlDatabase() {
|
||||
return getData().getString("MySQL.Database", "");
|
||||
}
|
||||
|
||||
public String getMySqlHost() {
|
||||
return getData().getString("MySQL.Host", "");
|
||||
}
|
||||
|
||||
public int getMySqlMaxConnections() {
|
||||
return getData().getInt("MySQL.MaxConnections", 1);
|
||||
}
|
||||
|
||||
public String getMySqlPassword() {
|
||||
return getData().getString("MySQL.Password", "");
|
||||
}
|
||||
|
||||
public int getMySqlPort() {
|
||||
return getData().getInt("MySQL.Port");
|
||||
}
|
||||
|
||||
public boolean getMySqlPreloadTable() {
|
||||
return getData().getBoolean("MySQL.PreLoadTable");
|
||||
}
|
||||
|
||||
public String getMySqlUsername() {
|
||||
return getData().getString("MySQL.Username", "");
|
||||
public ConfigurationSection getMySql() {
|
||||
return getData().getConfigurationSection("MySQL");
|
||||
}
|
||||
|
||||
public int getPointsOnVote() {
|
||||
@@ -1061,6 +1086,10 @@ public class Config extends YMLFile {
|
||||
return getData().getString("VoteParty.Broadcast", "");
|
||||
}
|
||||
|
||||
public boolean getVotePartyCountFakeVotes() {
|
||||
return getData().getBoolean("VoteParty.CountFakeVotes", true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the vote party enabled.
|
||||
*
|
||||
@@ -1083,6 +1112,14 @@ public class Config extends YMLFile {
|
||||
return getData().getBoolean("VoteParty.ResetEachDay");
|
||||
}
|
||||
|
||||
public boolean getAddTotals() {
|
||||
return getData().getBoolean("AddTotals", true);
|
||||
}
|
||||
|
||||
public boolean getVotePartyResetMontly() {
|
||||
return getData().getBoolean("VoteParty.ResetMonthly");
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the vote party rewards.
|
||||
*
|
||||
@@ -1092,6 +1129,11 @@ public class Config extends YMLFile {
|
||||
return "VoteParty.Rewards";
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public ArrayList<String> getVotePartyCommands() {
|
||||
return (ArrayList<String>) getData().getList("VoteParty.Commands", new ArrayList<String>());
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the vote party votes required.
|
||||
*
|
||||
@@ -1146,10 +1188,30 @@ public class Config extends YMLFile {
|
||||
return "VoteReminding.Rewards";
|
||||
}
|
||||
|
||||
public boolean getVoteShopBackButton() {
|
||||
return getData().getBoolean("VoteShopBackButton", true);
|
||||
}
|
||||
|
||||
public boolean getGiveDefaultPermission() {
|
||||
return getData().getBoolean("GiveDefaultPermission", true);
|
||||
}
|
||||
|
||||
public String getVoteShopName() {
|
||||
return getData().getString("GUI.VoteShopName", "VoteShop");
|
||||
}
|
||||
|
||||
public String getFormatUserNotExist() {
|
||||
return getData().getString("Format.UserNotExist", "&cUser does not exist: %player%");
|
||||
}
|
||||
|
||||
public boolean getPurgeOldData() {
|
||||
return getData().getBoolean("PurgeOldData");
|
||||
}
|
||||
|
||||
public int getPurgeMin() {
|
||||
return getData().getInt("PurgeMin", 90);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the vote site items.
|
||||
*
|
||||
@@ -1194,12 +1256,12 @@ public class Config extends YMLFile {
|
||||
return getData().getInt("VotesRequired");
|
||||
}
|
||||
|
||||
public boolean getVoteStreakRewardEnabled(String type, int votestreak) {
|
||||
return getData().getBoolean("VoteStreak." + type + "." + votestreak + ".Enabled");
|
||||
public boolean getVoteStreakRewardEnabled(String type, String s) {
|
||||
return getData().getBoolean("VoteStreak." + type + "." + s + ".Enabled");
|
||||
}
|
||||
|
||||
public String getVoteStreakRewardsPath(String type, int votestreak) {
|
||||
return "VoteStreak." + type + "." + votestreak + ".Rewards";
|
||||
public String getVoteStreakRewardsPath(String type, String string) {
|
||||
return "VoteStreak." + type + "." + string + ".Rewards";
|
||||
}
|
||||
|
||||
public Set<String> getVoteStreakVotes(String type) {
|
||||
@@ -1408,28 +1470,4 @@ public class Config extends YMLFile {
|
||||
saveData();
|
||||
}
|
||||
|
||||
public boolean getGUIVoteStreakBackButton() {
|
||||
return getData().getBoolean("GUI.VoteStreak.BackButton");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteNextBackButton() {
|
||||
return getData().getBoolean("GUI.VoteNext.BackButton");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteTodayBackButton() {
|
||||
return getData().getBoolean("GUI.VoteToday.BackButton");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteTopBackButton() {
|
||||
return getData().getBoolean("GUI.VoteToday.BackButton");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteTotalBackButton() {
|
||||
return getData().getBoolean("GUI.VoteTotal.BackButton");
|
||||
}
|
||||
|
||||
public boolean getGUIVoteURLBackButton() {
|
||||
return getData().getBoolean("GUI.VoteURL.BackButton");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -60,6 +60,8 @@ public class ConfigVoteSites extends YMLFile {
|
||||
setServiceSite(siteName, org);
|
||||
setVoteURL(siteName, "VoteURL");
|
||||
setVoteDelay(siteName, 24);
|
||||
set(siteName, "Item.Material", "GRASS");
|
||||
set(siteName, "Item.Amount", 1);
|
||||
set(siteName, "Rewards.Messages.Player", "&aThanks for voting on %ServiceSite%!");
|
||||
|
||||
plugin.loadVoteSites();
|
||||
@@ -167,7 +169,7 @@ public class ConfigVoteSites extends YMLFile {
|
||||
}
|
||||
|
||||
public boolean getVoteSiteGiveOffline(String site) {
|
||||
return getData(site).getBoolean("GiveOffline");
|
||||
return getData(site).getBoolean("ForceOffline", getData(site).getBoolean("GiveOffline"));
|
||||
}
|
||||
|
||||
public boolean getVoteSiteResetVoteDelayDaily(String siteName) {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.Ben12345rocks.VotingPlugin.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
@@ -7,6 +8,7 @@ import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.SignHandler;
|
||||
|
||||
@@ -47,6 +49,14 @@ public class ServerData {
|
||||
ServerData.plugin = plugin;
|
||||
}
|
||||
|
||||
public void addServiceSite(String site) {
|
||||
ArrayList<String> l = getServiceSites();
|
||||
if (!getServiceSites().contains(site)) {
|
||||
l.add(site);
|
||||
}
|
||||
setServiceSites(ArrayUtils.getInstance().removeDuplicates(l));
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds the sign.
|
||||
*
|
||||
@@ -88,6 +98,11 @@ public class ServerData {
|
||||
return data;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public ArrayList<String> getServiceSites() {
|
||||
return (ArrayList<String>) getData().getList("ServiceSites", new ArrayList<String>());
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the sign data.
|
||||
*
|
||||
@@ -185,6 +200,11 @@ public class ServerData {
|
||||
com.Ben12345rocks.AdvancedCore.Data.ServerData.getInstance().saveData();
|
||||
}
|
||||
|
||||
public void setServiceSites(ArrayList<String> list) {
|
||||
getData().set("ServiceSites", list);
|
||||
saveData();
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the sign.
|
||||
*
|
||||
|
||||
@@ -53,14 +53,18 @@ public class PlayerJoinEvent implements Listener {
|
||||
|
||||
if (player != null) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser(player);
|
||||
if (UserManager.getInstance().getAllUUIDs().contains(player.getUniqueId().toString())) {
|
||||
// give offline vote (if they voted
|
||||
// offline)
|
||||
user.offVote();
|
||||
}
|
||||
|
||||
// run remind
|
||||
user.loginMessage();
|
||||
|
||||
if (UserManager.getInstance().getAllUUIDs().contains(player.getUniqueId().toString())) {
|
||||
// give offline vote (if they voted
|
||||
// offline)
|
||||
|
||||
user.offVote();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,80 @@
|
||||
package com.Ben12345rocks.VotingPlugin.Events;
|
||||
|
||||
import org.bukkit.event.Event;
|
||||
import org.bukkit.event.HandlerList;
|
||||
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.User;
|
||||
|
||||
// TODO: Auto-generated Javadoc
|
||||
/**
|
||||
* The Class PlayerVoteEvent.
|
||||
*/
|
||||
public class PlayerVoteAllSitesEvent extends Event {
|
||||
|
||||
/** The Constant handlers. */
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
|
||||
/**
|
||||
* Gets the handler list.
|
||||
*
|
||||
* @return the handler list
|
||||
*/
|
||||
public static HandlerList getHandlerList() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
private User user;
|
||||
|
||||
/** The cancelled. */
|
||||
private boolean cancelled;
|
||||
|
||||
public PlayerVoteAllSitesEvent(User user) {
|
||||
super();
|
||||
setUser(user);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the user
|
||||
*/
|
||||
public User getUser() {
|
||||
return user;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param user
|
||||
* the user to set
|
||||
*/
|
||||
public void setUser(User user) {
|
||||
this.user = user;
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see org.bukkit.event.Event#getHandlers()
|
||||
*/
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if is cancelled.
|
||||
*
|
||||
* @return true, if is cancelled
|
||||
*/
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the cancelled.
|
||||
*
|
||||
* @param bln
|
||||
* the new cancelled
|
||||
*/
|
||||
public void setCancelled(boolean bln) {
|
||||
cancelled = bln;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -3,7 +3,6 @@ package com.Ben12345rocks.VotingPlugin.Events;
|
||||
import org.bukkit.event.Event;
|
||||
import org.bukkit.event.HandlerList;
|
||||
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.User;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
|
||||
|
||||
// TODO: Auto-generated Javadoc
|
||||
@@ -25,7 +24,7 @@ public class PlayerVoteEvent extends Event {
|
||||
}
|
||||
|
||||
/** The player. */
|
||||
private User player;
|
||||
private String player;
|
||||
|
||||
/** The vote site. */
|
||||
private VoteSite voteSite;
|
||||
@@ -33,17 +32,9 @@ public class PlayerVoteEvent extends Event {
|
||||
/** The cancelled. */
|
||||
private boolean cancelled;
|
||||
|
||||
/**
|
||||
* Instantiates a new player vote event.
|
||||
*
|
||||
* @param voteSite
|
||||
* the vote site
|
||||
* @param player
|
||||
* the player
|
||||
*/
|
||||
public PlayerVoteEvent(VoteSite voteSite, User player) {
|
||||
public PlayerVoteEvent(VoteSite voteSite, String voteUsername) {
|
||||
super();
|
||||
setPlayer(player);
|
||||
setPlayer(voteUsername);
|
||||
setVoteSite(voteSite);
|
||||
}
|
||||
|
||||
@@ -62,7 +53,7 @@ public class PlayerVoteEvent extends Event {
|
||||
*
|
||||
* @return the player
|
||||
*/
|
||||
public User getPlayer() {
|
||||
public String getPlayer() {
|
||||
return player;
|
||||
}
|
||||
|
||||
@@ -94,14 +85,8 @@ public class PlayerVoteEvent extends Event {
|
||||
cancelled = bln;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the player.
|
||||
*
|
||||
* @param player
|
||||
* the new player
|
||||
*/
|
||||
public void setPlayer(User player) {
|
||||
this.player = player;
|
||||
public void setPlayer(String voteUsername) {
|
||||
this.player = voteUsername;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
package com.Ben12345rocks.VotingPlugin.Events;
|
||||
|
||||
import org.bukkit.event.Event;
|
||||
import org.bukkit.event.HandlerList;
|
||||
|
||||
// TODO: Auto-generated Javadoc
|
||||
/**
|
||||
* The Class PlayerVoteEvent.
|
||||
*/
|
||||
public class VotePartyEvent extends Event {
|
||||
|
||||
/** The Constant handlers. */
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
|
||||
/**
|
||||
* Gets the handler list.
|
||||
*
|
||||
* @return the handler list
|
||||
*/
|
||||
public static HandlerList getHandlerList() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
/** The cancelled. */
|
||||
private boolean cancelled;
|
||||
|
||||
public VotePartyEvent() {
|
||||
super();
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see org.bukkit.event.Event#getHandlers()
|
||||
*/
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if is cancelled.
|
||||
*
|
||||
* @return true, if is cancelled
|
||||
*/
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the cancelled.
|
||||
*
|
||||
* @param bln
|
||||
* the new cancelled
|
||||
*/
|
||||
public void setCancelled(boolean bln) {
|
||||
cancelled = bln;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -8,9 +8,11 @@ import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.Listener;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.PlayerUtils;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.Config;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
|
||||
import com.Ben12345rocks.VotingPlugin.Data.ServerData;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.User;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
|
||||
import com.Ben12345rocks.VotingPlugin.OtherRewards.OtherVoteReward;
|
||||
@@ -34,87 +36,88 @@ public class VotiferEvent implements Listener {
|
||||
/** The plugin. */
|
||||
static Main plugin = Main.plugin;
|
||||
|
||||
private static Object object = new Object();
|
||||
|
||||
public static void playerVote(final String playerName, final String voteSiteURL) {
|
||||
playerVote(playerName, voteSiteURL, true);
|
||||
}
|
||||
|
||||
public static void playerVote(final String playerName, final String voteSiteURL, final boolean realVote) {
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
synchronized (configVoteSites) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser(playerName);
|
||||
if (!user.hasLoggedOnBefore() && !config.allowUnJoined()) {
|
||||
plugin.getLogger().warning("Player " + playerName
|
||||
+ " has not joined before, disregarding vote, set AllowUnjoined to true to prevent this");
|
||||
return;
|
||||
}
|
||||
|
||||
VoteSite voteSite = plugin.getVoteSite(voteSiteURL);
|
||||
if (voteSite == null) {
|
||||
if (!Config.getInstance().getDisableNoServiceSiteMessage()) {
|
||||
plugin.getLogger().warning("No voting site with the service site: '" + voteSiteURL + "'");
|
||||
plugin.getLogger().warning(
|
||||
"Please read here on how to fix it: https://github.com/Ben12345rocks/VotingPlugin/wiki/Common-Problems");
|
||||
if (!PlayerUtils.getInstance().isValidUser(playerName) && !config.allowUnJoined()) {
|
||||
plugin.getLogger().warning("Player " + playerName
|
||||
+ " has not joined before, disregarding vote, set AllowUnjoined to true to prevent this");
|
||||
return;
|
||||
}
|
||||
|
||||
ArrayList<String> services = new ArrayList<String>();
|
||||
for (VoteSite site : plugin.getVoteSites()) {
|
||||
services.add(site.getServiceSite());
|
||||
}
|
||||
plugin.getLogger().warning(
|
||||
"Current service sites: " + ArrayUtils.getInstance().makeStringList(services));
|
||||
}
|
||||
return;
|
||||
}
|
||||
User user = UserManager.getInstance().getVotingPluginUser(playerName);
|
||||
|
||||
// vote party
|
||||
if (Config.getInstance().getVotePartyEnabled()) {
|
||||
if (Config.getInstance().getVotePartyCountFakeVotes() || realVote) {
|
||||
VoteParty.getInstance().addTotal(user);
|
||||
VoteParty.getInstance().addVotePlayer(user);
|
||||
VoteParty.getInstance().check();
|
||||
}
|
||||
}
|
||||
VoteSite voteSite = plugin.getVoteSite(voteSiteURL);
|
||||
if (voteSite == null) {
|
||||
if (!Config.getInstance().getDisableNoServiceSiteMessage()) {
|
||||
plugin.getLogger().warning("No voting site with the service site: '" + voteSiteURL + "'");
|
||||
plugin.getLogger().warning(
|
||||
"Please read here on how to fix it: https://github.com/Ben12345rocks/VotingPlugin/wiki/Common-Problems");
|
||||
|
||||
// broadcast vote if enabled in config
|
||||
if (config.getBroadCastVotesEnabled()) {
|
||||
if (!Config.getInstance().getFormatBroadcastWhenOnline() || user.isOnline()) {
|
||||
voteSite.broadcastVote(user);
|
||||
}
|
||||
}
|
||||
ArrayList<String> services = new ArrayList<String>();
|
||||
for (VoteSite site : plugin.getVoteSites()) {
|
||||
services.add(site.getServiceSite());
|
||||
}
|
||||
plugin.getLogger()
|
||||
.warning("Current service sites: " + ArrayUtils.getInstance().makeStringList(services));
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
// update last vote time
|
||||
user.setTime(voteSite);
|
||||
synchronized (object) {
|
||||
|
||||
OtherVoteReward.getInstance().checkFirstVote(user);
|
||||
// vote party
|
||||
VoteParty.getInstance().vote(user, realVote);
|
||||
|
||||
// add to total votes
|
||||
// broadcast vote if enabled in config
|
||||
if (config.getBroadCastVotesEnabled()) {
|
||||
if (!Config.getInstance().getFormatBroadcastWhenOnline() || user.isOnline()) {
|
||||
voteSite.broadcastVote(user);
|
||||
}
|
||||
}
|
||||
|
||||
// update last vote time
|
||||
user.setTime(voteSite);
|
||||
|
||||
OtherVoteReward.getInstance().checkFirstVote(user);
|
||||
|
||||
if (user.isReminded()) {
|
||||
user.setReminded(false);
|
||||
}
|
||||
|
||||
// check if player has voted on all sites in one day
|
||||
|
||||
if (user.isOnline() || voteSite.isGiveOffline()) {
|
||||
user.playerVote(voteSite, true, false);
|
||||
user.closeInv();
|
||||
} else {
|
||||
user.addOfflineVote(voteSite.getKey());
|
||||
// plugin.debug(ArrayUtils.getInstance().makeStringList(user.getOfflineVotes()));
|
||||
plugin.debug(
|
||||
"Offline vote set for " + playerName + " (" + user.getUUID() + ") on " + voteSite.getKey());
|
||||
}
|
||||
|
||||
// add to total votes
|
||||
if (Config.getInstance().getCountFakeVotes() || realVote) {
|
||||
if (Config.getInstance().getAddTotals()) {
|
||||
user.addTotal();
|
||||
user.addTotalDaily();
|
||||
user.addTotalWeekly();
|
||||
user.addPoints();
|
||||
|
||||
user.setReminded(false);
|
||||
|
||||
// check if player has voted on all sites in one day
|
||||
|
||||
OtherVoteReward.getInstance().checkAllSites(user);
|
||||
OtherVoteReward.getInstance().checkCumualativeVotes(user);
|
||||
OtherVoteReward.getInstance().checkMilestone(user);
|
||||
|
||||
if (user.isOnline() || voteSite.isGiveOffline()) {
|
||||
user.playerVote(voteSite, true, false);
|
||||
user.closeInv();
|
||||
} else {
|
||||
user.addOfflineVote(voteSite.getKey());
|
||||
// plugin.debug(ArrayUtils.getInstance().makeStringList(user.getOfflineVotes()));
|
||||
plugin.debug("Offline vote set for " + playerName + " on " + voteSite.getKey());
|
||||
}
|
||||
|
||||
plugin.setUpdate(true);
|
||||
}
|
||||
user.addPoints();
|
||||
}
|
||||
});
|
||||
|
||||
OtherVoteReward.getInstance().checkAllSites(user);
|
||||
OtherVoteReward.getInstance().checkCumualativeVotes(user);
|
||||
OtherVoteReward.getInstance().checkMilestone(user);
|
||||
}
|
||||
|
||||
plugin.setUpdate(true);
|
||||
|
||||
}
|
||||
|
||||
@@ -140,6 +143,7 @@ public class VotiferEvent implements Listener {
|
||||
Vote vote = event.getVote();
|
||||
final String voteSite = vote.getServiceName();
|
||||
final String voteUsername = vote.getUsername().trim();
|
||||
ServerData.getInstance().addServiceSite(voteSite);
|
||||
|
||||
if (voteUsername.length() == 0) {
|
||||
plugin.getLogger().warning("No name from vote on " + voteSite);
|
||||
@@ -157,14 +161,6 @@ public class VotiferEvent implements Listener {
|
||||
public void run() {
|
||||
String voteSiteName = plugin.getVoteSiteName(voteSite);
|
||||
|
||||
PlayerVoteEvent voteEvent = new PlayerVoteEvent(plugin.getVoteSite(voteSiteName),
|
||||
UserManager.getInstance().getVotingPluginUser(voteUsername));
|
||||
plugin.getServer().getPluginManager().callEvent(voteEvent);
|
||||
|
||||
if (voteEvent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
ArrayList<String> sites = configVoteSites.getVoteSitesNames();
|
||||
if (sites != null) {
|
||||
if (!sites.contains(voteSiteName) && Config.getInstance().getAutoCreateVoteSites()) {
|
||||
@@ -177,6 +173,13 @@ public class VotiferEvent implements Listener {
|
||||
ConfigVoteSites.getInstance().generateVoteSite(voteSiteName);
|
||||
}
|
||||
|
||||
PlayerVoteEvent voteEvent = new PlayerVoteEvent(plugin.getVoteSite(voteSiteName), voteUsername);
|
||||
plugin.getServer().getPluginManager().callEvent(voteEvent);
|
||||
|
||||
if (voteEvent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
playerVote(voteUsername, voteSite, true);
|
||||
|
||||
}
|
||||
|
||||
@@ -36,7 +36,8 @@ public class VotingPluginUpdateEvent implements Listener {
|
||||
public void onPluginUpdate(PluginUpdateVersionEvent event) {
|
||||
if (event.getPlugin().getName().equals(plugin.getDescription().getName())) {
|
||||
if (!event.getOldVersion().equals("")) {
|
||||
plugin.getLogger().info("Updated VotingPlugin");
|
||||
plugin.getLogger().info("VotingPlugin Updated to " + plugin.getDescription().getVersion() + " from "
|
||||
+ event.getOldVersion());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.Set;
|
||||
@@ -18,6 +19,8 @@ import org.bukkit.Bukkit;
|
||||
import org.bukkit.OfflinePlayer;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.bukkit.permissions.Permission;
|
||||
import org.bukkit.permissions.PermissionDefault;
|
||||
import org.bukkit.plugin.PluginManager;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
@@ -31,7 +34,6 @@ import com.Ben12345rocks.AdvancedCore.Util.Javascript.JavascriptPlaceholderReque
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Logger.Logger;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Metrics.BStatsMetrics;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Metrics.MCStatsMetrics;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Updater.Updater;
|
||||
import com.Ben12345rocks.AdvancedCore.mysql.MySQL;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.CommandLoader;
|
||||
@@ -75,16 +77,16 @@ public class Main extends JavaPlugin {
|
||||
public static Main plugin;
|
||||
|
||||
/** The top voter monthly. */
|
||||
public HashMap<User, Integer> topVoterAllTime;
|
||||
public LinkedHashMap<User, Integer> topVoterAllTime;
|
||||
|
||||
/** The top voter monthly. */
|
||||
public HashMap<User, Integer> topVoterMonthly;
|
||||
public LinkedHashMap<User, Integer> topVoterMonthly;
|
||||
|
||||
/** The top voter weekly. */
|
||||
public HashMap<User, Integer> topVoterWeekly;
|
||||
public LinkedHashMap<User, Integer> topVoterWeekly;
|
||||
|
||||
/** The top voter daily. */
|
||||
public HashMap<User, Integer> topVoterDaily;
|
||||
public LinkedHashMap<User, Integer> topVoterDaily;
|
||||
|
||||
/** The updater. */
|
||||
public Updater updater;
|
||||
@@ -99,7 +101,7 @@ public class Main extends JavaPlugin {
|
||||
private List<VoteSite> voteSites;
|
||||
|
||||
/** The vote today. */
|
||||
public HashMap<User, HashMap<VoteSite, LocalDateTime>> voteToday;
|
||||
public LinkedHashMap<User, HashMap<VoteSite, LocalDateTime>> voteToday;
|
||||
|
||||
/** The signs. */
|
||||
public ArrayList<SignHandler> signs;
|
||||
@@ -108,7 +110,7 @@ public class Main extends JavaPlugin {
|
||||
public Logger voteLog;
|
||||
|
||||
private boolean update = true;
|
||||
|
||||
|
||||
private boolean updateStarted = false;
|
||||
|
||||
/**
|
||||
@@ -193,6 +195,10 @@ public class Main extends JavaPlugin {
|
||||
return UserManager.getInstance();
|
||||
}
|
||||
|
||||
public VoteParty getVoteParty() {
|
||||
return VoteParty.getInstance();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the vote site.
|
||||
*
|
||||
@@ -267,10 +273,7 @@ public class Main extends JavaPlugin {
|
||||
@Override
|
||||
public void run() {
|
||||
AdvancedCoreHook.getInstance()
|
||||
.setMysql(new MySQL("VotingPlugin_Users", Config.getInstance().getMySqlHost(),
|
||||
Config.getInstance().getMySqlPort(), Config.getInstance().getMySqlDatabase(),
|
||||
Config.getInstance().getMySqlUsername(), Config.getInstance().getMySqlPassword(),
|
||||
Config.getInstance().getMySqlMaxConnections()));
|
||||
.setMysql(new MySQL("VotingPlugin_Users", Config.getInstance().getMySql()));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -430,14 +433,13 @@ public class Main extends JavaPlugin {
|
||||
@Override
|
||||
public String getValue() {
|
||||
for (String s : Config.getInstance().getVoteStreakVotes("Day")) {
|
||||
if (StringUtils.getInstance().isInt(s)) {
|
||||
int streak = Integer.parseInt(s);
|
||||
if (Config.getInstance().getVoteStreakRewardEnabled("Day", streak)
|
||||
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
|
||||
Config.getInstance().getVoteStreakRewardsPath("Day", streak))) {
|
||||
return "True";
|
||||
}
|
||||
|
||||
if (Config.getInstance().getVoteStreakRewardEnabled("Day", s)
|
||||
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
|
||||
Config.getInstance().getVoteStreakRewardsPath("Day", s))) {
|
||||
return "True";
|
||||
}
|
||||
|
||||
}
|
||||
return "False";
|
||||
}
|
||||
@@ -448,15 +450,14 @@ public class Main extends JavaPlugin {
|
||||
@Override
|
||||
public String getValue() {
|
||||
for (String s : Config.getInstance().getVoteStreakVotes("Week")) {
|
||||
if (StringUtils.getInstance().isInt(s)) {
|
||||
int streak = Integer.parseInt(s);
|
||||
if (Config.getInstance().getVoteStreakRewardEnabled("Week", streak)
|
||||
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
|
||||
Config.getInstance().getVoteStreakRewardsPath("Week", streak))) {
|
||||
return "True";
|
||||
}
|
||||
|
||||
if (Config.getInstance().getVoteStreakRewardEnabled("Week", s)
|
||||
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
|
||||
Config.getInstance().getVoteStreakRewardsPath("Week", s))) {
|
||||
return "True";
|
||||
}
|
||||
}
|
||||
|
||||
return "False";
|
||||
}
|
||||
});
|
||||
@@ -466,15 +467,14 @@ public class Main extends JavaPlugin {
|
||||
@Override
|
||||
public String getValue() {
|
||||
for (String s : Config.getInstance().getVoteStreakVotes("Month")) {
|
||||
if (StringUtils.getInstance().isInt(s)) {
|
||||
int streak = Integer.parseInt(s);
|
||||
if (Config.getInstance().getVoteStreakRewardEnabled("Month", streak)
|
||||
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
|
||||
Config.getInstance().getVoteStreakRewardsPath("Month", streak))) {
|
||||
return "True";
|
||||
}
|
||||
|
||||
if (Config.getInstance().getVoteStreakRewardEnabled("Month", s)
|
||||
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
|
||||
Config.getInstance().getVoteStreakRewardsPath("Month", s))) {
|
||||
return "True";
|
||||
}
|
||||
}
|
||||
|
||||
return "False";
|
||||
}
|
||||
});
|
||||
@@ -525,11 +525,11 @@ public class Main extends JavaPlugin {
|
||||
return Config.getInstance().getDataStorage();
|
||||
}
|
||||
});
|
||||
metrics.addCustomChart(new BStatsMetrics.SimplePie("CheckOnWorldChange") {
|
||||
metrics.addCustomChart(new BStatsMetrics.SimplePie("DisableCheckOnWorldChange") {
|
||||
|
||||
@Override
|
||||
public String getValue() {
|
||||
return "" + Config.getInstance().getCheckOnWorldChange();
|
||||
return "" + Config.getInstance().getDisableCheckOnWorldChange();
|
||||
}
|
||||
});
|
||||
metrics.addCustomChart(new BStatsMetrics.SimplePie("votereminding_enabled") {
|
||||
@@ -670,11 +670,11 @@ public class Main extends JavaPlugin {
|
||||
}
|
||||
});
|
||||
|
||||
topVoterMonthly = new HashMap<User, Integer>();
|
||||
topVoterWeekly = new HashMap<User, Integer>();
|
||||
topVoterDaily = new HashMap<User, Integer>();
|
||||
voteToday = new HashMap<User, HashMap<VoteSite, LocalDateTime>>();
|
||||
topVoterAllTime = new HashMap<User, Integer>();
|
||||
topVoterMonthly = new LinkedHashMap<User, Integer>();
|
||||
topVoterWeekly = new LinkedHashMap<User, Integer>();
|
||||
topVoterDaily = new LinkedHashMap<User, Integer>();
|
||||
voteToday = new LinkedHashMap<User, HashMap<VoteSite, LocalDateTime>>();
|
||||
topVoterAllTime = new LinkedHashMap<User, Integer>();
|
||||
|
||||
voteLog = new Logger(plugin, new File(plugin.getDataFolder() + File.separator + "Log", "votelog.txt"));
|
||||
|
||||
@@ -697,10 +697,64 @@ public class Main extends JavaPlugin {
|
||||
}
|
||||
});
|
||||
|
||||
plugin.getLogger().info("Enabled VotingPlgin " + plugin.getDescription().getVersion());
|
||||
|
||||
loadTimer();
|
||||
|
||||
plugin.getLogger().info("Enabled VotingPlgin " + plugin.getDescription().getVersion());
|
||||
|
||||
for (VoteSite site : getVoteSites()) {
|
||||
if (!site.hasRewards() && !Config.getInstance().getDisableNoServiceSiteMessage()) {
|
||||
plugin.getLogger().warning("No rewards detected for the site: " + site.getKey());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public LinkedHashMap<User, Integer> getTopVoterAllTime() {
|
||||
return topVoterAllTime;
|
||||
}
|
||||
|
||||
public LinkedHashMap<User, Integer> getTopVoterMonthly() {
|
||||
return topVoterMonthly;
|
||||
}
|
||||
|
||||
public LinkedHashMap<User, Integer> getTopVoterWeekly() {
|
||||
return topVoterWeekly;
|
||||
}
|
||||
|
||||
public LinkedHashMap<User, Integer> getTopVoterDaily() {
|
||||
return topVoterDaily;
|
||||
}
|
||||
|
||||
public Updater getUpdater() {
|
||||
return updater;
|
||||
}
|
||||
|
||||
public ArrayList<CommandHandler> getVoteCommand() {
|
||||
return voteCommand;
|
||||
}
|
||||
|
||||
public ArrayList<CommandHandler> getAdminVoteCommand() {
|
||||
return adminVoteCommand;
|
||||
}
|
||||
|
||||
public LinkedHashMap<User, HashMap<VoteSite, LocalDateTime>> getVoteToday() {
|
||||
return voteToday;
|
||||
}
|
||||
|
||||
public ArrayList<SignHandler> getSigns() {
|
||||
return signs;
|
||||
}
|
||||
|
||||
public Logger getVoteLog() {
|
||||
return voteLog;
|
||||
}
|
||||
|
||||
public boolean isUpdate() {
|
||||
return update;
|
||||
}
|
||||
|
||||
public boolean isUpdateStarted() {
|
||||
return updateStarted;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -722,6 +776,15 @@ public class Main extends JavaPlugin {
|
||||
getCommand("av").setExecutor(new CommandAdminVote(this));
|
||||
getCommand("av").setTabCompleter(new AdminVoteTabCompleter());
|
||||
|
||||
Permission perm = Bukkit.getPluginManager().getPermission("VotingPlugin.Player");
|
||||
if (perm != null) {
|
||||
if (Config.getInstance().getGiveDefaultPermission()) {
|
||||
perm.setDefault(PermissionDefault.TRUE);
|
||||
} else {
|
||||
perm.setDefault(PermissionDefault.OP);
|
||||
}
|
||||
}
|
||||
|
||||
plugin.debug("Loaded Commands");
|
||||
|
||||
}
|
||||
@@ -756,20 +819,7 @@ public class Main extends JavaPlugin {
|
||||
configVoteSites.reloadData();
|
||||
updateAdvancedCoreHook();
|
||||
plugin.loadVoteSites();
|
||||
CommandLoader.getInstance().loadTabComplete();
|
||||
AdvancedCoreHook.getInstance().reload();
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
for (CommandHandler cmd : voteCommand) {
|
||||
cmd.reloadTabComplete();
|
||||
}
|
||||
for (CommandHandler cmd : adminVoteCommand) {
|
||||
cmd.reloadTabComplete();
|
||||
}
|
||||
}
|
||||
});
|
||||
loadTimer();
|
||||
|
||||
}
|
||||
@@ -808,6 +858,7 @@ public class Main extends JavaPlugin {
|
||||
plugin.getLogger().severe("Failed to load VoteSites.yml");
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}, 10);
|
||||
}
|
||||
|
||||
@@ -822,65 +873,61 @@ public class Main extends JavaPlugin {
|
||||
if (update && plugin != null && !updateStarted) {
|
||||
updateStarted = true;
|
||||
update = false;
|
||||
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
synchronized (plugin) {
|
||||
if (AdvancedCoreHook.getInstance().getStorageType().equals(UserStorage.MYSQL)) {
|
||||
if (AdvancedCoreHook.getInstance().getMysql() == null) {
|
||||
plugin.debug("MySQL not loaded yet");
|
||||
return;
|
||||
} else if (Config.getInstance().getClearCacheOnUpdate()) {
|
||||
AdvancedCoreHook.getInstance().getMysql().clearCache();
|
||||
} else {
|
||||
AdvancedCoreHook.getInstance().getMysql().clearCacheBasic();
|
||||
}
|
||||
}
|
||||
plugin.debug("Starting background task");
|
||||
try {
|
||||
ArrayList<String> uuids = UserManager.getInstance().getAllUUIDs();
|
||||
ArrayList<User> users = new ArrayList<User>();
|
||||
for (String uuid : uuids) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
|
||||
users.add(user);
|
||||
}
|
||||
plugin.debug("Finished loading player data");
|
||||
TopVoterHandler.getInstance().updateTopVoters(users);
|
||||
Commands.getInstance().updateVoteToday(users);
|
||||
ServerData.getInstance().updateValues();
|
||||
Signs.getInstance().updateSigns();
|
||||
|
||||
for (Player player : Bukkit.getOnlinePlayers()) {
|
||||
UserManager.getInstance().getVotingPluginUser(player).offVote();
|
||||
}
|
||||
plugin.debug("Background task finished");
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
plugin.getLogger().info("Looks like something went wrong.");
|
||||
}
|
||||
synchronized (plugin) {
|
||||
if (AdvancedCoreHook.getInstance().getStorageType().equals(UserStorage.MYSQL)) {
|
||||
if (AdvancedCoreHook.getInstance().getMysql() == null) {
|
||||
plugin.debug("MySQL not loaded yet");
|
||||
return;
|
||||
} else if (Config.getInstance().getClearCacheOnUpdate()) {
|
||||
AdvancedCoreHook.getInstance().getMysql().clearCache();
|
||||
} else {
|
||||
AdvancedCoreHook.getInstance().getMysql().clearCacheBasic();
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
plugin.debug("Starting background task");
|
||||
long time = System.currentTimeMillis();
|
||||
try {
|
||||
ArrayList<String> uuids = UserManager.getInstance().getAllUUIDs();
|
||||
ArrayList<User> users = new ArrayList<User>();
|
||||
for (String uuid : uuids) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
|
||||
users.add(user);
|
||||
}
|
||||
update = false;
|
||||
long time1 = ((System.currentTimeMillis() - time) / 1000);
|
||||
plugin.debug("Finished loading player data in " + time1 + " seconds, " + users.size() + " users");
|
||||
TopVoterHandler.getInstance().updateTopVoters(users);
|
||||
Commands.getInstance().updateVoteToday(users);
|
||||
ServerData.getInstance().updateValues();
|
||||
Signs.getInstance().updateSigns();
|
||||
|
||||
for (Player player : Bukkit.getOnlinePlayers()) {
|
||||
UserManager.getInstance().getVotingPluginUser(player).offVote();
|
||||
}
|
||||
time1 = ((System.currentTimeMillis() - time) / 1000);
|
||||
plugin.debug("Background task finished in " + time1 + " seconds");
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
plugin.getLogger().info("Looks like something went wrong.");
|
||||
}
|
||||
}
|
||||
|
||||
updateStarted = false;
|
||||
}
|
||||
}
|
||||
|
||||
public VoteParty getVoteParty() {
|
||||
return VoteParty.getInstance();
|
||||
}
|
||||
|
||||
public void updateAdvancedCoreHook() {
|
||||
AdvancedCoreHook.getInstance().setMaxMysqlSize(Config.getInstance().getMysqlMaxSize());
|
||||
AdvancedCoreHook.getInstance().setAutoDownload(Config.getInstance().getAutoDownload());
|
||||
AdvancedCoreHook.getInstance().getJavascriptEngine().put("VotingPlugin", this);
|
||||
AdvancedCoreHook.getInstance().allowDownloadingFromSpigot(15358);
|
||||
AdvancedCoreHook.getInstance().setExtraDebug(Config.getInstance().getExtraDebug());
|
||||
AdvancedCoreHook.getInstance().setStorageType(UserStorage.valueOf(Config.getInstance().getDataStorage()));
|
||||
AdvancedCoreHook.getInstance().setStorageType(UserStorage.value(Config.getInstance().getDataStorage()));
|
||||
loadMySQL();
|
||||
|
||||
AdvancedCoreHook.getInstance().setCheckOnWorldChange(Config.getInstance().getCheckOnWorldChange());
|
||||
AdvancedCoreHook.getInstance()
|
||||
.setDisableCheckOnWorldChange(Config.getInstance().getDisableCheckOnWorldChange());
|
||||
AdvancedCoreHook.getInstance().setDebug(Config.getInstance().getDebugEnabled());
|
||||
AdvancedCoreHook.getInstance().setDebugIngame(Config.getInstance().getDebugInfoIngame());
|
||||
AdvancedCoreHook.getInstance().setDefaultRequestMethod(Config.getInstance().getRequestAPIDefaultMethod());
|
||||
@@ -892,6 +939,11 @@ public class Main extends JavaPlugin {
|
||||
AdvancedCoreHook.getInstance().setSendScoreboards(Config.getInstance().getSendScoreboards());
|
||||
AdvancedCoreHook.getInstance().setAlternateUUIDLookUp(Config.getInstance().getAlternateUUIDLookup());
|
||||
AdvancedCoreHook.getInstance().setAutoKillInvs(Config.getInstance().getAutoKillInvs());
|
||||
AdvancedCoreHook.getInstance().setPrevPageTxt(Config.getInstance().getFormatPrevPage());
|
||||
AdvancedCoreHook.getInstance().setNextPageTxt(Config.getInstance().getFormatNextPage());
|
||||
|
||||
AdvancedCoreHook.getInstance().setPurgeOldData(Config.getInstance().getPurgeOldData());
|
||||
AdvancedCoreHook.getInstance().setPurgeMinimumDays(Config.getInstance().getPurgeMin());
|
||||
}
|
||||
|
||||
}
|
||||
@@ -21,7 +21,7 @@ public enum TopVoter {
|
||||
return value;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
return AllTime;
|
||||
}
|
||||
|
||||
public TopVoter next() {
|
||||
@@ -49,4 +49,21 @@ public enum TopVoter {
|
||||
}
|
||||
return TopVoter.AllTime;
|
||||
}
|
||||
|
||||
public TopVoter prev() {
|
||||
switch (this) {
|
||||
case AllTime:
|
||||
return Daily;
|
||||
case Daily:
|
||||
return Weekly;
|
||||
case Monthly:
|
||||
return AllTime;
|
||||
case Weekly:
|
||||
return Monthly;
|
||||
default:
|
||||
return AllTime;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -13,6 +13,7 @@ import java.util.stream.Collectors;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.AdvancedCoreHook;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.RewardBuilder;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.RewardHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
|
||||
@@ -333,12 +334,12 @@ public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
|
||||
* @return the last vote times sorted
|
||||
*/
|
||||
public HashMap<VoteSite, Long> getLastVoteTimesSorted() {
|
||||
HashMap<VoteSite, Long> times = new LinkedHashMap<VoteSite, Long>();
|
||||
LinkedHashMap<VoteSite, Long> times = new LinkedHashMap<VoteSite, Long>();
|
||||
|
||||
for (VoteSite voteSite : plugin.getVoteSites()) {
|
||||
times.put(voteSite, getTime(voteSite));
|
||||
}
|
||||
HashMap<VoteSite, Long> sorted = (HashMap<VoteSite, Long>) times.entrySet().stream()
|
||||
LinkedHashMap<VoteSite, Long> sorted = (LinkedHashMap<VoteSite, Long>) times.entrySet().stream()
|
||||
.sorted(Collections.reverseOrder(Map.Entry.comparingByValue()))
|
||||
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
|
||||
return sorted;
|
||||
@@ -352,6 +353,10 @@ public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
|
||||
return getData().getInt("MonthTotal");
|
||||
}
|
||||
|
||||
public int getLastMonthTotal() {
|
||||
return getData().getInt("LastMonthTotal");
|
||||
}
|
||||
|
||||
public int getMonthVoteStreak() {
|
||||
return getData().getInt("MonthVoteStreak");
|
||||
}
|
||||
@@ -423,7 +428,8 @@ public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
|
||||
}
|
||||
|
||||
public void giveOfflineOtherRewards() {
|
||||
for (String str : getOfflineOtherRewards()) {
|
||||
ArrayList<String> offlineRewards = getOfflineOtherRewards();
|
||||
for (String str : offlineRewards) {
|
||||
if (str.equalsIgnoreCase("FirstVote")) {
|
||||
OtherVoteReward.getInstance().giveFirstVoteRewards(this, false);
|
||||
} else if (str.equalsIgnoreCase("AllSites")) {
|
||||
@@ -485,21 +491,20 @@ public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
|
||||
if (args.length > 2) {
|
||||
String type = args[1];
|
||||
String st = args[2];
|
||||
if (StringUtils.getInstance().isInt(st)) {
|
||||
int streakRequired = Integer.parseInt(st);
|
||||
if (streakRequired != 0) {
|
||||
if (Config.getInstance().getVoteStreakRewardEnabled(type, streakRequired)) {
|
||||
OtherVoteReward.getInstance().giveVoteStreakReward(this, false, type, streakRequired);
|
||||
}
|
||||
}
|
||||
|
||||
if (Config.getInstance().getVoteStreakRewardEnabled(type, st)) {
|
||||
OtherVoteReward.getInstance().giveVoteStreakReward(this, false, type, "" + st, -1);
|
||||
}
|
||||
|
||||
}
|
||||
} else {
|
||||
plugin.debug("Reward handle for " + str + " does not exist!");
|
||||
}
|
||||
|
||||
}
|
||||
setOfflineOtherRewards(new ArrayList<String>());
|
||||
if (!offlineRewards.isEmpty()) {
|
||||
setOfflineOtherRewards(new ArrayList<String>());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -558,9 +563,13 @@ public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
|
||||
* Off vote.
|
||||
*/
|
||||
public void offVote() {
|
||||
AdvancedCoreHook.getInstance().extraDebug("Checking offline vote site votes");
|
||||
Player player = getPlayer();
|
||||
if (player != null) {
|
||||
setTopVoterIgnore(player.hasPermission("VotingPlugin.TopVoter.Ignore"));
|
||||
boolean topVoterIngorePerm = player.hasPermission("VotingPlugin.TopVoter.Ignore");
|
||||
if (isTopVoterIgnore() != topVoterIngorePerm) {
|
||||
setTopVoterIgnore(topVoterIngorePerm);
|
||||
}
|
||||
ArrayList<String> offlineVotes = getOfflineVotes();
|
||||
// plugin.debug(ArrayUtils.getInstance().makeStringList(offlineVotes));
|
||||
if (offlineVotes.size() > 0) {
|
||||
@@ -575,9 +584,8 @@ public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
|
||||
plugin.debug("Site doesn't exist: " + offlineVotes.get(i));
|
||||
}
|
||||
}
|
||||
if (!offlineVotes.isEmpty()) {
|
||||
setOfflineVotes(new ArrayList<String>());
|
||||
}
|
||||
|
||||
setOfflineVotes(new ArrayList<String>());
|
||||
|
||||
giveOfflineOtherRewards();
|
||||
}
|
||||
@@ -594,7 +602,7 @@ public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
|
||||
* the broadcast
|
||||
*/
|
||||
public void playerVote(VoteSite voteSite, boolean online, boolean broadcast) {
|
||||
if (Config.getInstance().getBroadCastVotesEnabled() && Config.getInstance().getFormatBroadcastWhenOnline()
|
||||
if (Config.getInstance().getFormatBroadcastWhenOnline() && Config.getInstance().getBroadCastVotesEnabled()
|
||||
&& broadcast) {
|
||||
voteSite.broadcastVote(this);
|
||||
}
|
||||
@@ -621,6 +629,7 @@ public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
|
||||
}
|
||||
|
||||
public void resetMonthlyTotalVotes() {
|
||||
setLastMonthTotal(getMonthTotal());
|
||||
setMonthTotal(0);
|
||||
}
|
||||
|
||||
@@ -710,6 +719,10 @@ public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
|
||||
getData().setInt("MonthTotal", total);
|
||||
}
|
||||
|
||||
public void setLastMonthTotal(int total) {
|
||||
getData().setInt("LastMonthTotal", total);
|
||||
}
|
||||
|
||||
public void setMonthVoteStreak(int streak) {
|
||||
getData().setInt("MonthVoteStreak", streak);
|
||||
if (getBestMonthVoteStreak() < streak) {
|
||||
@@ -768,4 +781,20 @@ public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
|
||||
}
|
||||
}
|
||||
|
||||
public boolean shouldBeReminded() {
|
||||
Player player = getPlayer();
|
||||
if (player != null) {
|
||||
if (player.hasPermission("VotingPlugin.NoRemind")) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public void clearOfflineRewards() {
|
||||
setOfflineVotes(new ArrayList<String>());
|
||||
setOfflineRewards(new ArrayList<String>());
|
||||
setOfflineOtherRewards(new ArrayList<String>());
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,8 +1,11 @@
|
||||
package com.Ben12345rocks.VotingPlugin.Objects;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.RewardBuilder;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.RewardHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Item.ItemBuilder;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.MiscUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
@@ -36,7 +39,7 @@ public class VoteSite {
|
||||
private String displayName;
|
||||
|
||||
/** The vote delay. */
|
||||
private int voteDelay;
|
||||
private double voteDelay;
|
||||
|
||||
/** The enabled. */
|
||||
private boolean enabled;
|
||||
@@ -96,8 +99,14 @@ public class VoteSite {
|
||||
/**
|
||||
* @return the item
|
||||
*/
|
||||
public ConfigurationSection getItem() {
|
||||
return item;
|
||||
public ItemBuilder getItem() {
|
||||
if (item == null) {
|
||||
plugin.getLogger().warning("Invalid item section in site: " + key);
|
||||
return new ItemBuilder(Material.STONE, 1).setName("&cInvalid item for site: " + key)
|
||||
.setLore("&cInvalid item for site: " + key);
|
||||
} else {
|
||||
return new ItemBuilder(item);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -130,7 +139,7 @@ public class VoteSite {
|
||||
*
|
||||
* @return the vote delay
|
||||
*/
|
||||
public int getVoteDelay() {
|
||||
public double getVoteDelay() {
|
||||
return voteDelay;
|
||||
}
|
||||
|
||||
@@ -161,6 +170,10 @@ public class VoteSite {
|
||||
.withPlaceHolder("VoteDelay", "" + getVoteDelay()).withPlaceHolder("VoteURL", getVoteURL()).send(user);
|
||||
}
|
||||
|
||||
public boolean hasRewards() {
|
||||
return RewardHandler.getInstance().hasRewards(configVoteSites.getData(), configVoteSites.getRewardsPath(key));
|
||||
}
|
||||
|
||||
/**
|
||||
* Give site reward.
|
||||
*
|
||||
@@ -282,7 +295,7 @@ public class VoteSite {
|
||||
* @param voteDelay
|
||||
* the new vote delay
|
||||
*/
|
||||
public void setVoteDelay(int voteDelay) {
|
||||
public void setVoteDelay(double voteDelay) {
|
||||
this.voteDelay = voteDelay;
|
||||
}
|
||||
|
||||
|
||||
@@ -2,12 +2,15 @@ package com.Ben12345rocks.VotingPlugin.OtherRewards;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.RewardBuilder;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.RewardHandler;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.Config;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
|
||||
import com.Ben12345rocks.VotingPlugin.Events.PlayerVoteAllSitesEvent;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.User;
|
||||
|
||||
// TODO: Auto-generated Javadoc
|
||||
@@ -66,7 +69,6 @@ public class OtherVoteReward {
|
||||
giveAllSitesRewards(user, user.isOnline());
|
||||
}
|
||||
return checkAllVotes;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -170,12 +172,18 @@ public class OtherVoteReward {
|
||||
|
||||
Set<String> streaks = Config.getInstance().getVoteStreakVotes(type);
|
||||
for (String streak : streaks) {
|
||||
if (StringUtils.getInstance().isInt(streak)) {
|
||||
int streakRequired = Integer.parseInt(streak);
|
||||
String s = streak.replaceAll("-", "");
|
||||
boolean multiple = false;
|
||||
if (streak.contains("-")) {
|
||||
// multiple
|
||||
multiple = true;
|
||||
}
|
||||
if (StringUtils.getInstance().isInt(s)) {
|
||||
int streakRequired = Integer.parseInt(s);
|
||||
if (streakRequired != 0) {
|
||||
if (Config.getInstance().getVoteStreakRewardEnabled(type, streakRequired)
|
||||
if (Config.getInstance().getVoteStreakRewardEnabled(type, streak)
|
||||
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
|
||||
Config.getInstance().getVoteStreakRewardsPath(type, streakRequired))) {
|
||||
Config.getInstance().getVoteStreakRewardsPath(type, "" + streak))) {
|
||||
int curStreak = 0;
|
||||
if (type.equalsIgnoreCase("day")) {
|
||||
curStreak = user.getDayVoteStreak();
|
||||
@@ -184,12 +192,20 @@ public class OtherVoteReward {
|
||||
} else if (type.equalsIgnoreCase("month")) {
|
||||
curStreak = user.getMonthVoteStreak();
|
||||
}
|
||||
if (curStreak == streakRequired) {
|
||||
giveVoteStreakReward(user, user.isOnline(), type, streakRequired);
|
||||
gotReward = true;
|
||||
}
|
||||
if (gotReward) {
|
||||
plugin.debug(user.getPlayerName() + " got VoteStreak " + streakRequired + " for " + type);
|
||||
if (!multiple) {
|
||||
if (curStreak == streakRequired) {
|
||||
giveVoteStreakReward(user, user.isOnline(), type, "" + streakRequired, curStreak);
|
||||
gotReward = true;
|
||||
plugin.debug(
|
||||
user.getPlayerName() + " got VoteStreak " + streakRequired + " for " + type);
|
||||
}
|
||||
} else {
|
||||
if (curStreak != 0 && curStreak % streakRequired == 0) {
|
||||
giveVoteStreakReward(user, user.isOnline(), type, streakRequired + "-", curStreak);
|
||||
gotReward = true;
|
||||
plugin.debug(
|
||||
user.getPlayerName() + " got VoteStreak " + streakRequired + "* for " + type);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -210,6 +226,12 @@ public class OtherVoteReward {
|
||||
* the online
|
||||
*/
|
||||
public void giveAllSitesRewards(User user, boolean online) {
|
||||
PlayerVoteAllSitesEvent event = new PlayerVoteAllSitesEvent(user);
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
RewardHandler.getInstance().giveReward(user, Config.getInstance().getData(),
|
||||
Config.getInstance().getAllSitesRewardPath(), online);
|
||||
}
|
||||
@@ -257,8 +279,10 @@ public class OtherVoteReward {
|
||||
.setOnline(online).withPlaceHolder("Milestone", "" + milestone).send(user);
|
||||
}
|
||||
|
||||
public void giveVoteStreakReward(User user, boolean online, String type, int streak) {
|
||||
new RewardBuilder(Config.getInstance().getData(), Config.getInstance().getVoteStreakRewardsPath(type, streak))
|
||||
.setOnline(online).withPlaceHolder("Type", type).withPlaceHolder("Streak", "" + streak).send(user);
|
||||
public void giveVoteStreakReward(User user, boolean online, String type, String string, int votes) {
|
||||
new RewardBuilder(Config.getInstance().getData(), Config.getInstance().getVoteStreakRewardsPath(type, string))
|
||||
.setOnline(online).withPlaceHolder("Type", type).withPlaceHolder("Streak", "" + votes).send(user);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -20,6 +20,7 @@ import com.Ben12345rocks.AdvancedCore.AdvancedCoreHook;
|
||||
import com.Ben12345rocks.AdvancedCore.Listeners.DateChangedEvent;
|
||||
import com.Ben12345rocks.AdvancedCore.Listeners.DayChangeEvent;
|
||||
import com.Ben12345rocks.AdvancedCore.Listeners.MonthChangeEvent;
|
||||
import com.Ben12345rocks.AdvancedCore.Listeners.PreDateChangedEvent;
|
||||
import com.Ben12345rocks.AdvancedCore.Listeners.WeekChangeEvent;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
|
||||
@@ -78,13 +79,13 @@ public class TopVoterHandler implements Listener {
|
||||
|
||||
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
|
||||
public void onDateChanged(DateChangedEvent event) {
|
||||
ArrayList<String> uuids = UserManager.getInstance().getAllUUIDs();
|
||||
ArrayList<User> users = new ArrayList<User>();
|
||||
for (String uuid : uuids) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
|
||||
users.add(user);
|
||||
}
|
||||
updateTopVoters(users);
|
||||
plugin.setUpdate(true);
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
|
||||
public void onPreDateChanged(PreDateChangedEvent event) {
|
||||
plugin.setUpdate(true);
|
||||
plugin.update();
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
|
||||
@@ -112,13 +113,17 @@ public class TopVoterHandler implements Listener {
|
||||
if (Config.getInstance().getDailyAwardsEnabled()) {
|
||||
Set<String> places = Config.getInstance().getDailyPossibleRewardPlaces();
|
||||
int i = 0;
|
||||
int lastTotal = -1;
|
||||
for (User user : plugin.topVoterDaily.keySet()) {
|
||||
if (!Config.getInstance().getTopVoterIgnorePermission() || !user.isTopVoterIgnore()) {
|
||||
i++;
|
||||
if (user.getDailyTotal() != lastTotal) {
|
||||
i++;
|
||||
}
|
||||
if (places.contains(Integer.toString(i))) {
|
||||
user.giveDailyTopVoterAward(i);
|
||||
}
|
||||
}
|
||||
lastTotal = user.getDailyTotal();
|
||||
}
|
||||
}
|
||||
resetDailyTotals();
|
||||
@@ -149,13 +154,18 @@ public class TopVoterHandler implements Listener {
|
||||
if (Config.getInstance().getMonthlyAwardsEnabled()) {
|
||||
Set<String> places = Config.getInstance().getMonthlyPossibleRewardPlaces();
|
||||
int i = 0;
|
||||
int lastTotal = -1;
|
||||
for (User user : plugin.topVoterMonthly.keySet()) {
|
||||
|
||||
if (!Config.getInstance().getTopVoterIgnorePermission() || !user.isTopVoterIgnore()) {
|
||||
i++;
|
||||
if (user.getMonthTotal() != lastTotal) {
|
||||
i++;
|
||||
}
|
||||
if (places.contains(Integer.toString(i))) {
|
||||
user.giveMonthlyTopVoterAward(i);
|
||||
}
|
||||
}
|
||||
lastTotal = user.getMonthTotal();
|
||||
}
|
||||
}
|
||||
resetMonthlyTotals();
|
||||
@@ -195,13 +205,17 @@ public class TopVoterHandler implements Listener {
|
||||
if (Config.getInstance().getWeeklyAwardsEnabled()) {
|
||||
Set<String> places = Config.getInstance().getWeeklyPossibleRewardPlaces();
|
||||
int i = 0;
|
||||
int lastTotal = -1;
|
||||
for (User user : plugin.topVoterWeekly.keySet()) {
|
||||
if (!Config.getInstance().getTopVoterIgnorePermission() || !user.isTopVoterIgnore()) {
|
||||
i++;
|
||||
if (user.getWeeklyTotal() != lastTotal) {
|
||||
i++;
|
||||
}
|
||||
if (places.contains(Integer.toString(i))) {
|
||||
user.giveWeeklyTopVoterAward(i);
|
||||
}
|
||||
}
|
||||
lastTotal = user.getWeeklyTotal();
|
||||
}
|
||||
}
|
||||
resetWeeklyTotals();
|
||||
@@ -239,18 +253,10 @@ public class TopVoterHandler implements Listener {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sort by values.
|
||||
*
|
||||
* @param unsortMap
|
||||
* the unsort map
|
||||
* @param order
|
||||
* the order, false for high to low
|
||||
* @return the hash map
|
||||
*/
|
||||
public HashMap<User, Integer> sortByValues(HashMap<User, Integer> unsortMap, final boolean order) {
|
||||
public LinkedHashMap<User, Integer> sortByValues(LinkedHashMap<User, Integer> topVoterAllTime,
|
||||
final boolean order) {
|
||||
|
||||
List<Entry<User, Integer>> list = new LinkedList<Entry<User, Integer>>(unsortMap.entrySet());
|
||||
List<Entry<User, Integer>> list = new LinkedList<Entry<User, Integer>>(topVoterAllTime.entrySet());
|
||||
|
||||
// Sorting the list based on values
|
||||
Collections.sort(list, new Comparator<Entry<User, Integer>>() {
|
||||
@@ -266,7 +272,7 @@ public class TopVoterHandler implements Listener {
|
||||
});
|
||||
|
||||
// Maintaining insertion order with the help of LinkedList
|
||||
HashMap<User, Integer> sortedMap = new LinkedHashMap<User, Integer>();
|
||||
LinkedHashMap<User, Integer> sortedMap = new LinkedHashMap<User, Integer>();
|
||||
for (Entry<User, Integer> entry : list) {
|
||||
sortedMap.put(entry.getKey(), entry.getValue());
|
||||
}
|
||||
@@ -275,9 +281,10 @@ public class TopVoterHandler implements Listener {
|
||||
}
|
||||
|
||||
public void storeDailyTopVoters() {
|
||||
String month = LocalDateTime.now().getMonth().toString();
|
||||
int year = LocalDateTime.now().getYear();
|
||||
int day = LocalDateTime.now().getDayOfMonth();
|
||||
LocalDateTime time = LocalDateTime.now().minusHours(5);
|
||||
String month = time.getMonth().toString();
|
||||
int year = time.getYear();
|
||||
int day = time.getDayOfMonth();
|
||||
YMLFileHandler file = new YMLFileHandler(new File(plugin.getDataFolder(),
|
||||
"TopVoter" + File.separator + "Daily" + File.separator + year + "_" + month + "_" + day + ".yml"));
|
||||
file.setup();
|
||||
@@ -292,10 +299,11 @@ public class TopVoterHandler implements Listener {
|
||||
}
|
||||
|
||||
public void storeMonthlyTopVoters() {
|
||||
String month = LocalDateTime.now().getMonth().toString();
|
||||
int year = LocalDateTime.now().getYear();
|
||||
LocalDateTime time = LocalDateTime.now().minusHours(10);
|
||||
String month = time.getMonth().toString();
|
||||
int year = time.getYear();
|
||||
YMLFileHandler file = new YMLFileHandler(new File(plugin.getDataFolder(),
|
||||
"TopVoter" + File.separator + "Monthly" + File.separator + year + "_" + month + ".yml"));
|
||||
"TopVoter" + File.separator + "Monthly" + File.separator + month + "_" + year + ".yml"));
|
||||
file.setup();
|
||||
ArrayList<String> topVoters = new ArrayList<String>();
|
||||
int count = 1;
|
||||
@@ -308,9 +316,10 @@ public class TopVoterHandler implements Listener {
|
||||
}
|
||||
|
||||
public void storeWeeklyTopVoters() {
|
||||
String month = LocalDateTime.now().getMonth().toString();
|
||||
int year = LocalDateTime.now().getYear();
|
||||
int week = LocalDateTime.now().getDayOfMonth();
|
||||
LocalDateTime time = LocalDateTime.now().minusHours(10);
|
||||
String month = time.getMonth().toString();
|
||||
int year = time.getYear();
|
||||
int week = time.getDayOfYear();
|
||||
YMLFileHandler file = new YMLFileHandler(new File(plugin.getDataFolder(),
|
||||
"TopVoter" + File.separator + "Weekly" + File.separator + year + "_" + month + "_" + week + ".yml"));
|
||||
file.setup();
|
||||
|
||||
@@ -33,20 +33,24 @@ public class UserManager {
|
||||
}
|
||||
|
||||
public User getVotingPluginUser(OfflinePlayer player) {
|
||||
return getVotingPluginUser(new UUID(player.getUniqueId().toString()));
|
||||
return getVotingPluginUser(player.getName());
|
||||
}
|
||||
|
||||
public User getVotingPluginUser(Player player) {
|
||||
return getVotingPluginUser(new UUID(player.getUniqueId().toString()));
|
||||
return getVotingPluginUser(player.getName());
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
public User getVotingPluginUser(String playerName) {
|
||||
return new User(playerName);
|
||||
return new User(com.Ben12345rocks.AdvancedCore.UserManager.UserManager.getInstance().getProperName(playerName));
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
public User getVotingPluginUser(UUID uuid) {
|
||||
return new User(uuid);
|
||||
}
|
||||
|
||||
public User getVotingPluginUser(java.util.UUID uuid) {
|
||||
return getVotingPluginUser(new UUID(uuid.toString()));
|
||||
}
|
||||
}
|
||||
@@ -61,6 +61,8 @@ public class PlaceHolders {
|
||||
return Integer.toString(user.getMonthTotal());
|
||||
} else if (identifier.equalsIgnoreCase("alltimetotal")) {
|
||||
return Integer.toString(user.getAllTimeTotal());
|
||||
} else if (identifier.equalsIgnoreCase("lastmonthtotal")) {
|
||||
return Integer.toString(user.getLastMonthTotal());
|
||||
}
|
||||
|
||||
String[] args = identifier.split("_");
|
||||
|
||||
@@ -3,18 +3,22 @@ package com.Ben12345rocks.VotingPlugin.VoteParty;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
|
||||
import com.Ben12345rocks.AdvancedCore.Listeners.DayChangeEvent;
|
||||
import com.Ben12345rocks.AdvancedCore.Listeners.MonthChangeEvent;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.RewardBuilder;
|
||||
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.MiscUtils;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.Config;
|
||||
import com.Ben12345rocks.VotingPlugin.Data.ServerData;
|
||||
import com.Ben12345rocks.VotingPlugin.Events.VotePartyEvent;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.User;
|
||||
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
|
||||
|
||||
@@ -84,6 +88,12 @@ public class VoteParty implements Listener {
|
||||
public void check() {
|
||||
if (getTotalVotes() >= Config.getInstance().getVotePartyVotesRequired()) {
|
||||
setTotalVotes(getTotalVotes() - Config.getInstance().getVotePartyVotesRequired());
|
||||
|
||||
VotePartyEvent event = new VotePartyEvent();
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
if (event.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
giveRewards();
|
||||
MiscUtils.getInstance().broadcast(Config.getInstance().getVotePartyBroadcast());
|
||||
}
|
||||
@@ -97,16 +107,20 @@ public class VoteParty implements Listener {
|
||||
* the sender
|
||||
*/
|
||||
public void commandVoteParty(CommandSender sender) {
|
||||
ArrayList<String> msg = Config.getInstance().getFormatCommandsVoteParty();
|
||||
int votesRequired = Config.getInstance().getVotePartyVotesRequired();
|
||||
int votes = getTotalVotes();
|
||||
int neededVotes = votesRequired - votes;
|
||||
HashMap<String, String> placeholders = new HashMap<String, String>();
|
||||
placeholders.put("votesrequired", "" + votesRequired);
|
||||
placeholders.put("neededvotes", "" + neededVotes);
|
||||
placeholders.put("votes", "" + votes);
|
||||
msg = ArrayUtils.getInstance().colorize(ArrayUtils.getInstance().replacePlaceHolder(msg, placeholders));
|
||||
sender.sendMessage(ArrayUtils.getInstance().convert(msg));
|
||||
if (Config.getInstance().getVotePartyEnabled()) {
|
||||
ArrayList<String> msg = Config.getInstance().getFormatCommandsVoteParty();
|
||||
int votesRequired = Config.getInstance().getVotePartyVotesRequired();
|
||||
int votes = getTotalVotes();
|
||||
int neededVotes = votesRequired - votes;
|
||||
HashMap<String, String> placeholders = new HashMap<String, String>();
|
||||
placeholders.put("votesrequired", "" + votesRequired);
|
||||
placeholders.put("neededvotes", "" + neededVotes);
|
||||
placeholders.put("votes", "" + votes);
|
||||
msg = ArrayUtils.getInstance().colorize(ArrayUtils.getInstance().replacePlaceHolder(msg, placeholders));
|
||||
sender.sendMessage(ArrayUtils.getInstance().convert(msg));
|
||||
} else {
|
||||
sender.sendMessage(StringUtils.getInstance().colorize("&cVoteParty not enabled"));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -167,6 +181,17 @@ public class VoteParty implements Listener {
|
||||
* Give rewards.
|
||||
*/
|
||||
public void giveRewards() {
|
||||
for (final String cmd : Config.getInstance().getVotePartyCommands()) {
|
||||
Bukkit.getScheduler().runTask(plugin, new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), cmd);
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
if (Config.getInstance().getVotePartyGiveAllPlayers()) {
|
||||
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
|
||||
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
|
||||
@@ -184,8 +209,14 @@ public class VoteParty implements Listener {
|
||||
@EventHandler
|
||||
public void onDayChange(DayChangeEvent event) {
|
||||
if (Config.getInstance().getVotePartyResetEachDay()) {
|
||||
setTotalVotes(0);
|
||||
setVotedUsers(new ArrayList<String>());
|
||||
reset();
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onMonthChange(MonthChangeEvent event) {
|
||||
if (Config.getInstance().getVotePartyResetMontly()) {
|
||||
reset();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -201,6 +232,7 @@ public class VoteParty implements Listener {
|
||||
user.setVotePartyVotes(0);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -225,4 +257,14 @@ public class VoteParty implements Listener {
|
||||
ServerData.getInstance().saveData();
|
||||
}
|
||||
|
||||
public synchronized void vote(User user, boolean realVote) {
|
||||
if (Config.getInstance().getVotePartyEnabled()) {
|
||||
if (Config.getInstance().getVotePartyCountFakeVotes() || realVote) {
|
||||
addTotal(user);
|
||||
addVotePlayer(user);
|
||||
check();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -103,7 +103,7 @@ public class VoteReminding {
|
||||
* the user
|
||||
*/
|
||||
public void runRemind(User user) {
|
||||
if (Config.getInstance().getVoteRemindingEnabled() && user.canVoteAll()) {
|
||||
if (Config.getInstance().getVoteRemindingEnabled() && user.canVoteAll() && user.shouldBeReminded()) {
|
||||
user.setReminded(true);
|
||||
giveReward(user);
|
||||
|
||||
@@ -114,11 +114,14 @@ public class VoteReminding {
|
||||
|
||||
public void runRemindLogin(User user) {
|
||||
if (Config.getInstance().getVoteRemindingEnabled()
|
||||
&& (!UserManager.getInstance().getAllUUIDs().contains(user.getUUID()) || user.canVoteAll())) {
|
||||
&& (!UserManager.getInstance().getAllUUIDs().contains(user.getUUID()) || user.canVoteAll())
|
||||
&& user.shouldBeReminded()) {
|
||||
giveReward(user);
|
||||
if (user.getData().hasData()) {
|
||||
user.setReminded(true);
|
||||
}
|
||||
plugin.debug(user.getPlayerName() + " was reminded!");
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -8,6 +8,7 @@ import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory.ClickEvent;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventoryButton;
|
||||
import com.Ben12345rocks.AdvancedCore.Util.Item.ItemBuilder;
|
||||
import com.Ben12345rocks.VotingPlugin.Main;
|
||||
import com.Ben12345rocks.VotingPlugin.Commands.GUI.PlayerGUIs;
|
||||
import com.Ben12345rocks.VotingPlugin.Config.Config;
|
||||
import com.Ben12345rocks.VotingPlugin.Objects.User;
|
||||
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
|
||||
@@ -60,6 +61,18 @@ public class VoteShop {
|
||||
});
|
||||
}
|
||||
|
||||
if (Config.getInstance().getVoteShopBackButton()) {
|
||||
inv.addButton(new BInventoryButton(PlayerGUIs.getInstance().getBackButton()) {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
PlayerGUIs.getInstance().openVoteGUI(event.getPlayer(),
|
||||
UserManager.getInstance().getVotingPluginUser(player));
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
inv.openInventory(player);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user