v4.4 Bug Fixes

Fix bunches of bugs
This commit is contained in:
Esophose 2017-04-26 23:01:17 -06:00
parent 022a4efee2
commit cfa846604f
6 changed files with 26 additions and 13 deletions

View file

@ -1,9 +1,12 @@
== UPDATING WILL DELETE YOUR CONFIG.YML ==
* Create a backup of your config.yml if you wish to import all your old settings!
=== v4.4 ===
* Fix problems with subversions
* Fix issues with custom style plugins
=== v4.3.1 ===
* Fix players with the permission playerparticles.* being able to force reset other player's particles when they weren't supposed to be able to
* Fix players being saved in the config/database even if they haven't used the plugin
* Other internal changes & optimizations
* Fix players with the permission playerparticles.* being able to force reset other player's particles when they weren't supposed to be able to
* Fix players being saved in the config/database even if they haven't used the plugin
* Other internal changes & optimizations
=== v4.3 ===
* Fix effects and styles not defaulting to 'none' if the player no longer has permission
* Fix errors printing to console resulting from offline players trying to spawn particles

View file

@ -27,6 +27,7 @@ import java.sql.SQLException;
import org.bukkit.Bukkit;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scheduler.BukkitRunnable;
import com.esophose.playerparticles.library.MySQL;
import com.esophose.playerparticles.manager.MessageManager;
@ -72,7 +73,7 @@ public class PlayerParticles extends JavaPlugin {
getCommand("pp").setExecutor(new ParticleCommandExecutor());
Bukkit.getPluginManager().registerEvents(new ParticleManager(), this);
Bukkit.getPluginManager().registerEvents(new PluginUpdateListener(), this);
if (getConfig().getDouble("version") < Double.parseDouble(getDescription().getVersion())) {
if (getConfig().getDouble("version") < Double.parseDouble(getDescription().getVersion().substring(0, 3))) {
File configFile = new File(getDataFolder(), "config.yml");
configFile.delete();
saveDefaultConfig();
@ -80,13 +81,11 @@ public class PlayerParticles extends JavaPlugin {
getLogger().warning("The config.yml has been updated to v" + getDescription().getVersion() + "!");
}
checkDatabase();
ParticleManager.refreshPPlayers();
ParticleManager.addAllFixedEffects();
startTask();
if (shouldCheckUpdates()) {
Updater updater = new Updater(this, 82823, this.getFile(), Updater.UpdateType.NO_DOWNLOAD, false);
if (Double.parseDouble(updater.getLatestName().replaceAll("PlayerParticles v", "")) > Double.parseDouble(getPlugin().getDescription().getVersion())) {
if (Double.parseDouble(updater.getLatestName().replaceAll("PlayerParticles v", "").replaceAll("\\.", "")) > Double.parseDouble(getPlugin().getDescription().getVersion().replaceAll("\\.", ""))) {
updateVersion = updater.getLatestName().replaceAll("PlayerParticles v", "");
getLogger().info("[PlayerParticles] An update (v" + updateVersion + ") is available! You are running v" + getPlugin().getDescription().getVersion());
}
@ -165,10 +164,19 @@ public class PlayerParticles extends JavaPlugin {
/**
* Starts the task reponsible for spawning particles
* Run in the synchronous task so it starts after all plugins have loaded, including extensions
*/
private void startTask() {
double ticks = getConfig().getInt("ticks-per-particle");
new ParticleManager().runTaskTimer(this, 20, (long) ticks);
final Plugin playerParticles = this;
new BukkitRunnable() {
public void run() {
ParticleManager.refreshPPlayers(); // Add any online players who have particles
ParticleManager.addAllFixedEffects(); // Add all fixed effects
double ticks = getConfig().getInt("ticks-per-particle");
new ParticleManager().runTaskTimer(playerParticles, 20, (long) ticks);
}
}.runTaskLater(playerParticles, 20);
}
}

View file

@ -175,6 +175,7 @@ public class ParticleManager extends BukkitRunnable implements Listener {
if (player == null) { // Skip and remove, why are they still in the array if they are offline?
particlePlayers.remove(i);
continue;
}
// Perform permission and validity checks

View file

@ -27,8 +27,9 @@ public class PluginUpdateListener implements Listener {
public void onPlayerJoin(PlayerJoinEvent e) {
if (e.getPlayer().isOp()) {
if (PlayerParticles.updateVersion != null) {
MessageManager.sendCustomMessage(e.getPlayer(), ChatColor.YELLOW + "An update (" + ChatColor.AQUA + "v" + PlayerParticles.updateVersion + ChatColor.YELLOW + ") is available! You are running " + ChatColor.AQUA + "v" + PlayerParticles.getPlugin().getDescription().getVersion());
MessageManager.sendCustomMessage(e.getPlayer(), ChatColor.YELLOW + "Download from: https://dev.bukkit.org/projects/playerparticles");
MessageManager.sendCustomMessage(e.getPlayer(), ChatColor.YELLOW + "An update (" + ChatColor.AQUA + "v" + PlayerParticles.updateVersion + ChatColor.YELLOW + ") is available! " +
"You are running " + ChatColor.AQUA + "v" + PlayerParticles.getPlugin().getDescription().getVersion() + ChatColor.YELLOW +
". https://dev.bukkit.org/projects/playerparticles");
}
}
}

View file

@ -14,7 +14,7 @@
# Changing this value will reset your config on the next server reload / restart.
# I don't recommend changing it
version: 4.3
version: 4.4
# How many ticks to wait before spawning more particles
# Increasing this value may cause less lag (if there was any), but will decrease prettiness

View file

@ -1,6 +1,6 @@
name: PlayerParticles
main: com.esophose.playerparticles.PlayerParticles
version: 4.3
version: 4.4
description: Make particles around players in fancy ways.
author: Esophose
website: http://dev.bukkit.org/bukkit-plugins/playerparticles/