Compare commits

...
8 Commits
11 changed files with 50 additions and 54 deletions

No files matched your search

+4 -1
View File
@@ -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)
@@ -260,7 +262,7 @@ 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%'
@@ -384,6 +386,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:
+3
View File
@@ -199,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
+1 -1
View File
@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.Ben12345rocks</groupId>
<artifactId>VotingPlugin</artifactId>
<version>5.10.5</version>
<version>5.11</version>
<packaging>jar</packaging>
<name>VotingPlugin</name>
<properties>
@@ -153,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();
@@ -658,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();
@@ -679,7 +679,7 @@ public class Commands {
timeMsg = StringUtils.getInstance().replaceIgnoreCase(timeMsg, "%minutes%",
Long.toString(diffMinutes));
info = timeMsg;
}
}
} else {
@@ -535,7 +535,10 @@ 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(
Config.getInstance().getGUIVoteURLURLText(), "voteurl", voteSite.getVoteURL()),
"sitename", voteSite.getDisplayName()));
}
@@ -807,6 +807,10 @@ public class Config extends YMLFile {
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%");
}
@@ -951,36 +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 int getMysqlMaxSize() {
return getData().getInt("MySQL.MaxSize", -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() {
@@ -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.Permission;
import org.bukkit.permissions.PermissionDefault;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
@@ -272,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()));
}
});
@@ -778,10 +776,13 @@ 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);
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");
@@ -924,7 +925,6 @@ public class Main extends JavaPlugin {
}
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);
@@ -946,7 +946,7 @@ public class Main extends JavaPlugin {
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());
}
@@ -333,12 +333,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;
@@ -771,4 +771,14 @@ 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;
}
}
@@ -39,7 +39,7 @@ public class VoteSite {
private String displayName;
/** The vote delay. */
private int voteDelay;
private double voteDelay;
/** The enabled. */
private boolean enabled;
@@ -139,7 +139,7 @@ public class VoteSite {
*
* @return the vote delay
*/
public int getVoteDelay() {
public double getVoteDelay() {
return voteDelay;
}
@@ -295,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;
}
@@ -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,7 +114,8 @@ 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);
@@ -123,5 +124,4 @@ public class VoteReminding {
}
}
}