Compare commits

...
27 Commits
Author SHA1 Message Date
Ben12345rocks 0f8f190a21 Javadoc fixes 2017-10-13 20:47:32 -04:00
Ben12345rocks 0f87222709 Update build path and new config option 2017-10-13 20:42:15 -04:00
Ben 518ecfc42b Merge pull request #294 from Ben12345rocks/5.10.3
5.10.3
2017-10-13 20:18:15 -04:00
Ben12345rocks d02c4a4b70 Update version number 2017-10-13 19:57:05 -04:00
Ben12345rocks 9359b4fb05 Bug fixes 2017-10-13 11:06:16 -04:00
Ben12345rocks 4f3ba5b1c4 Make storage type case insensitive 2017-10-13 10:34:39 -04:00
Ben12345rocks 600287e9c5 Add a warning if no rewards are detected for vote sites on startup 2017-10-13 10:21:14 -04:00
Ben12345rocks a05114e277 Added vote option in votesite admin gui 2017-10-13 10:11:43 -04:00
Ben12345rocks 5449038cfd Changes to permissions 2017-10-11 20:25:52 -04:00
Ben12345rocks 853cdd0a13 Code cleanup 2017-10-11 20:13:16 -04:00
Ben12345rocks 3cd36d3fd7 Add options for fake votes, closes #269 2017-10-11 20:11:00 -04:00
Ben12345rocks bd3abaae76 Use better skull system, closes #293 2017-10-03 16:54:37 -04:00
Ben12345rocks a9a70a20ee Bug fix 2017-10-01 19:22:37 -04:00
Ben12345rocks 2fc2067bc5 Bug fixes, closes #288 2017-10-01 13:49:44 -04:00
Ben12345rocks 2e6e3617a3 Fix issues with permissions 2017-10-01 13:43:35 -04:00
Ben12345rocks c590ca5a93 Bug fix, closes #286 2017-09-29 16:03:38 -04:00
Ben12345rocks 2772db23b8 Improvements 2017-09-29 15:31:47 -04:00
Ben12345rocks ee3217b942 Bug fix 2017-09-28 15:13:22 -04:00
Ben12345rocks b1dfe6a14b Bug fix 2017-09-28 14:52:01 -04:00
Ben12345rocks 222a3824af Bug fix 2017-09-28 14:49:44 -04:00
Ben12345rocks 5f5d3dd2c5 Bug fixes 2017-09-28 14:45:07 -04:00
Ben12345rocks 84ba523233 Bug fix 2017-09-28 14:35:07 -04:00
Ben12345rocks 1da224ff6b closes #281 2017-09-28 14:16:56 -04:00
Ben12345rocks e2efe2b289 Added more config options, closes #283 2017-09-28 14:02:58 -04:00
Ben12345rocks 9cf044aa64 Bug fixes, closes #280 2017-09-26 16:30:55 -04:00
Ben12345rocks eac8078a65 Improvements 2017-09-26 14:20:35 -04:00
Ben12345rocks 2cf97ba408 Javadoc fix 2017-09-26 14:15:30 -04:00
18 changed files with 474 additions and 359 deletions

No files matched your search

+26 -1
View File
@@ -261,6 +261,21 @@ 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!'
# 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
@@ -468,7 +483,7 @@ GUI:
Lore: '&c&lBest: &c%Best%'
Amount: 1
VoteStreak:
Name: 'VoteBest: %player%'
Name: 'VoteStreak: %player%'
BackButton: false
CurrentDayStreak:
Item:
@@ -619,6 +634,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
@@ -780,6 +796,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
@@ -788,3 +805,11 @@ 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
-1
View File
@@ -183,7 +183,6 @@ commands:
permissions:
VotingPlugin.Player:
description: Allows basic access player commands
default: true
VotingPlugin.Mod:
description: Allows mod access player commands
VotingPlugin.Admin:
+1 -1
View File
@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.Ben12345rocks</groupId>
<artifactId>VotingPlugin</artifactId>
<version>5.10.2</version>
<version>5.10.3</version>
<packaging>jar</packaging>
<name>VotingPlugin</name>
<properties>
@@ -268,7 +268,8 @@ public class CommandLoader {
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?");
sendMessage(sender,
serviceSites + " : No site with this service site, did you do something wrong?");
}
}
@@ -321,8 +322,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());
}
});
}
}
});
@@ -471,8 +491,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);
}
});
@@ -640,7 +659,7 @@ 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));
@@ -657,7 +676,7 @@ 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));
@@ -925,11 +944,16 @@ 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()) {
CommandVote.getInstance().lastOther(sender, args[1]);
} else if (sender instanceof Player) {
PlayerGUIs.getInstance().openVoteLast((Player) sender,
UserManager.getInstance().getVotingPluginUser(args[1]));
}
} else {
sendMessage(sender, StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
}
}
@@ -954,11 +978,16 @@ 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()) {
CommandVote.getInstance().nextOther(sender, args[1]);
} else if (sender instanceof Player) {
PlayerGUIs.getInstance().openVoteNext((Player) sender,
UserManager.getInstance().getVotingPluginUser(args[1]));
}
} else {
sendMessage(sender, StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
}
}
});
@@ -968,8 +997,13 @@ 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])) {
CommandVote.getInstance().pointsOther(sender,
UserManager.getInstance().getVotingPluginUser(args[1]));
} else {
sendMessage(sender, StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
}
}
});
@@ -1025,7 +1059,8 @@ public class CommandLoader {
PlayerGUIs.getInstance().openVoteGUI(player,
UserManager.getInstance().getVotingPluginUser(args[1]));
} else {
sendMessage(sender, "&cUser does not exist: " + args[1]);
sendMessage(sender, StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
}
}
@@ -1161,11 +1196,16 @@ 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()) {
CommandVote.getInstance().totalOther(sender, args[1]);
} else if (sender instanceof Player) {
PlayerGUIs.getInstance().openVoteTotal((Player) sender,
UserManager.getInstance().getVotingPluginUser(args[1]));
}
} else {
sendMessage(sender, StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
}
}
@@ -1200,15 +1240,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.sendMessage(Commands.getInstance().best(sender, args[1]));
} else if (sender instanceof Player) {
PlayerGUIs.getInstance().openVoteBest((Player) sender,
UserManager.getInstance().getVotingPluginUser(args[1]));
}
} else {
sendMessage(sender, StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
}
}
});
@@ -1218,7 +1263,7 @@ public class CommandLoader {
@Override
public void execute(CommandSender sender, String[] args) {
if (!Config.getInstance().getCommandsUseGUIBest()) {
if (!Config.getInstance().getCommandsUseGUIStreak()) {
sender.sendMessage(Commands.getInstance().streak(sender, sender.getName()));
} else {
PlayerGUIs.getInstance().openVoteStreak((Player) sender,
@@ -1228,15 +1273,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.sendMessage(Commands.getInstance().streak(sender, args[1]));
} else if (sender instanceof Player) {
PlayerGUIs.getInstance().openVoteStreak((Player) sender,
UserManager.getInstance().getVotingPluginUser(args[1]));
}
} else {
sendMessage(sender, StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getFormatUserNotExist(), "player", args[1]));
}
}
});
@@ -616,12 +616,11 @@ public class Commands {
Duration dur = Duration.between(now, midnight);
int diffHours = (int) (dur.getSeconds() / (60 * 60));
long diffMinutes = dur.getSeconds() / 60 - diffHours*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));
timeMsg = StringUtils.getInstance().replaceIgnoreCase(timeMsg, "%minutes%", Long.toString(diffMinutes));
info = timeMsg;
} else {
@@ -711,9 +710,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"));
}
}
@@ -439,19 +439,4 @@ public class CommandAdminVote implements CommandExecutor {
}
/**
* 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());
}
}
}
@@ -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;
}
}
@@ -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)) {
@@ -50,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;
@@ -183,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(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()) {
@@ -213,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(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()) {
@@ -321,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) {
@@ -355,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(),
@@ -372,24 +378,18 @@ 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)
.addPlaceholder("player", entry.getKey().getPlayerName())
.addPlaceholder("votes", "" + entry.getValue())
.addLoreLine("&3Name: " + entry.getKey().getPlayerName())) {
.addPlaceholder("votes", "" + entry.getValue())) {
@Override
public void onClick(ClickEvent clickEvent) {
String name = "";
ItemBuilder item = new ItemBuilder(clickEvent.getClickedItem());
for (String lore : item.getLore()) {
if (lore.contains("Name:")) {
name = ChatColor.stripColor(item.getName()).split(":")[1].trim();
plugin.debug(name);
}
}
String name = ChatColor.stripColor(item.getName()).split(":")[1].trim();
User user = UserManager.getInstance().getVotingPluginUser(name);
openVoteGUI(player, user);
}
@@ -398,7 +398,7 @@ 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) {
@@ -660,18 +660,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");
}
}
@@ -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.
*
@@ -106,6 +114,10 @@ public class Config extends YMLFile {
return getData().getBoolean("CheckOnWorldChange");
}
public boolean getClearCacheOnUpdate() {
return getData().getBoolean("ClearCacheOnUpdate");
}
public boolean getCommandsUseGUIBest() {
return getData().getBoolean("Commands.UseGUI.Best");
}
@@ -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.
*
@@ -387,10 +403,6 @@ public class Config extends YMLFile {
"%hours% Hours and %minutes% Minutes");
}
public boolean getVoteShopBackButton() {
return getData().getBoolean("VoteShopBackButton", true);
}
/**
* Gets the commands vote next layout.
*
@@ -520,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.
*
@@ -542,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!");
@@ -614,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.
*
@@ -625,6 +657,10 @@ public class Config extends YMLFile {
}
public String getFormatTopVoterWeekly() {
return getData().getString("Format.TopVoter.Weekly", "Weekly");
}
/**
* Gets the vote help.
*
@@ -655,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%");
}
@@ -667,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");
}
@@ -695,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%");
}
@@ -723,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");
}
@@ -739,6 +799,10 @@ 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");
}
@@ -865,26 +929,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.
*
@@ -894,10 +938,6 @@ public class Config extends YMLFile {
return getData().getBoolean("EnableMonthlyAwards");
}
public boolean getClearCacheOnUpdate() {
return getData().getBoolean("ClearCacheOnUpdate");
}
/**
* Gets the monthly possible reward places.
*
@@ -923,6 +963,10 @@ public class Config extends YMLFile {
return getData().getInt("MySQL.MaxConnections", 1);
}
public int getMysqlMaxSize() {
return getData().getInt("MySQL.MaxSize", -1);
}
public String getMySqlPassword() {
return getData().getString("MySQL.Password", "");
}
@@ -1066,6 +1110,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.
*
@@ -1151,10 +1199,22 @@ 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%");
}
/**
* Gets the vote site items.
*
@@ -1199,12 +1259,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) {
@@ -1413,28 +1473,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");
}
}
@@ -48,6 +48,12 @@ public class ServerData {
ServerData.plugin = plugin;
}
public void addServiceSite(String site) {
ArrayList<String> l = getServiceSites();
l.add(site);
setServiceSites(l);
}
/**
* Adds the sign.
*
@@ -89,6 +95,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.
*
@@ -186,6 +197,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.
*
@@ -225,20 +241,4 @@ public class ServerData {
public void updateValues() {
setVersion();
}
@SuppressWarnings("unchecked")
public ArrayList<String> getServiceSites() {
return (ArrayList<String>) getData().getList("ServiceSites", new ArrayList<String>());
}
public void addServiceSite(String site) {
ArrayList<String> l = getServiceSites();
l.add(site);
setServiceSites(l);
}
public void setServiceSites(ArrayList<String> list) {
getData().set("ServiceSites", list);
saveData();
}
}
@@ -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;
}
/**
@@ -91,10 +91,12 @@ public class VotiferEvent implements Listener {
OtherVoteReward.getInstance().checkFirstVote(user);
// add to total votes
user.addTotal();
user.addTotalDaily();
user.addTotalWeekly();
user.addPoints();
if (Config.getInstance().getCountFakeVotes() || realVote) {
user.addTotal();
user.addTotalDaily();
user.addTotalWeekly();
user.addPoints();
}
user.setReminded(false);
@@ -161,8 +163,7 @@ public class VotiferEvent implements Listener {
public void run() {
String voteSiteName = plugin.getVoteSiteName(voteSite);
PlayerVoteEvent voteEvent = new PlayerVoteEvent(plugin.getVoteSite(voteSiteName),
UserManager.getInstance().getVotingPluginUser(voteUsername));
PlayerVoteEvent voteEvent = new PlayerVoteEvent(plugin.getVoteSite(voteSiteName), voteUsername);
plugin.getServer().getPluginManager().callEvent(voteEvent);
if (voteEvent.isCancelled()) {
@@ -19,6 +19,7 @@ import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.entity.Player;
import org.bukkit.event.HandlerList;
import org.bukkit.permissions.PermissionDefault;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
@@ -32,7 +33,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;
@@ -194,6 +194,10 @@ public class Main extends JavaPlugin {
return UserManager.getInstance();
}
public VoteParty getVoteParty() {
return VoteParty.getInstance();
}
/**
* Gets the vote site.
*
@@ -431,14 +435,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";
}
@@ -449,15 +452,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";
}
});
@@ -467,15 +469,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";
}
});
@@ -698,9 +699,15 @@ public class Main extends JavaPlugin {
}
});
loadTimer();
plugin.getLogger().info("Enabled VotingPlgin " + plugin.getDescription().getVersion());
loadTimer();
for (VoteSite site : getVoteSites()) {
if (!site.hasRewards() && !Config.getInstance().getDisableNoServiceSiteMessage()) {
plugin.getLogger().warning("No rewards detected for the site: " + site.getKey());
}
}
}
@@ -723,6 +730,12 @@ public class Main extends JavaPlugin {
getCommand("av").setExecutor(new CommandAdminVote(this));
getCommand("av").setTabCompleter(new AdminVoteTabCompleter());
if (Config.getInstance().getGiveDefaultPermission()) {
Bukkit.getPluginManager().getPermission("VotingPlugin.Player").setDefault(PermissionDefault.TRUE);
} else {
Bukkit.getPluginManager().getPermission("VotingPlugin.Player").setDefault(PermissionDefault.OP);
}
plugin.debug("Loaded Commands");
}
@@ -809,6 +822,7 @@ public class Main extends JavaPlugin {
plugin.getLogger().severe("Failed to load VoteSites.yml");
e.printStackTrace();
}
}, 10);
}
@@ -850,8 +864,8 @@ public class Main extends JavaPlugin {
}
update = false;
long time1 = ((System.currentTimeMillis() - time) / 1000);
plugin.debug(
"Finished loading player data in " + time1 + " seconds, " + users.size() + " users");
plugin.debug("Finished loading player data in " + time1 + " seconds, " + users.size()
+ " users");
TopVoterHandler.getInstance().updateTopVoters(users);
Commands.getInstance().updateVoteToday(users);
ServerData.getInstance().updateValues();
@@ -874,17 +888,13 @@ public class Main extends JavaPlugin {
}
}
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());
@@ -899,6 +909,8 @@ 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());
}
}
@@ -485,14 +485,11 @@ 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!");
@@ -4,6 +4,7 @@ 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;
@@ -101,7 +102,8 @@ public class VoteSite {
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);
return new ItemBuilder(Material.STONE, 1).setName("&cInvalid item for site: " + key)
.setLore("&cInvalid item for site: " + key);
} else {
return new ItemBuilder(item);
}
@@ -168,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.
*
@@ -170,12 +170,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 +190,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);
}
}
}
}
@@ -257,8 +271,8 @@ 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);
}
}
@@ -78,13 +78,7 @@ 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.MONITOR, ignoreCancelled = true)
@@ -239,16 +233,8 @@ 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 LinkedHashMap<User, Integer> sortByValues(LinkedHashMap<User, Integer> topVoterAllTime, 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>>(topVoterAllTime.entrySet());
@@ -270,7 +256,7 @@ public class TopVoterHandler implements Listener {
for (Entry<User, Integer> entry : list) {
sortedMap.put(entry.getKey(), entry.getValue());
}
return sortedMap;
}