This commit is contained in:
Ajneb97 2024-01-25 11:26:32 -03:00
parent 79569c9b9e
commit 42e977e427
6 changed files with 31 additions and 7 deletions

View file

@ -1,5 +1,6 @@
package pk.ajneb97.configs;
import org.bukkit.Bukkit;
import org.bukkit.configuration.file.FileConfiguration;
import pk.ajneb97.PlayerKits2;
import pk.ajneb97.model.PlayerData;
@ -154,7 +155,10 @@ public class PlayersConfigManager {
public void saveConfigs(){
ArrayList<PlayerData> players = plugin.getPlayerDataManager().getPlayers();
for(PlayerData playerData : players) {
saveConfig(playerData);
if(playerData.isModified()){
saveConfig(playerData);
}
playerData.setModified(false);
}
}

View file

@ -35,6 +35,7 @@ public class PlayerDataManager {
if(create){
PlayerData playerData = new PlayerData(player.getName(),player.getUniqueId().toString());
playerData.setModified(true);
players.add(playerData);
return playerData;
}
@ -71,6 +72,7 @@ public class PlayerDataManager {
public void setKitCooldown(Player player,String kitName,long cooldown){
PlayerData playerData = getPlayer(player,true);
boolean creating = playerData.setKitCooldown(kitName,cooldown);
playerData.setModified(true);
if(plugin.getMySQLConnection() != null){
plugin.getMySQLConnection().updateKit(playerData,playerData.getKit(kitName),creating);
}
@ -95,6 +97,7 @@ public class PlayerDataManager {
public void setKitOneTime(Player player,String kitName){
PlayerData playerData = getPlayer(player,true);
boolean creating = playerData.setKitOneTime(kitName);
playerData.setModified(true);
if(plugin.getMySQLConnection() != null){
plugin.getMySQLConnection().updateKit(playerData,playerData.getKit(kitName),creating);
}
@ -112,6 +115,7 @@ public class PlayerDataManager {
public void setKitBought(Player player,String kitName){
PlayerData playerData = getPlayer(player,true);
boolean creating = playerData.setKitBought(kitName);
playerData.setModified(true);
if(plugin.getMySQLConnection() != null){
plugin.getMySQLConnection().updateKit(playerData,playerData.getKit(kitName),creating);
}
@ -135,6 +139,7 @@ public class PlayerDataManager {
}
playerData.resetKit(kitName);
playerData.setModified(true);
if(plugin.getMySQLConnection() != null){
plugin.getMySQLConnection().resetKit(playerData.getUuid(),kitName);
}
@ -173,9 +178,14 @@ public class PlayerDataManager {
PlayerData playerData = getPlayerByUUID(player.getUniqueId().toString());
if(playerData == null){
firstJoin = true;
players.add(new PlayerData(player.getName(),player.getUniqueId().toString()));
playerData = new PlayerData(player.getName(),player.getUniqueId().toString());
playerData.setModified(true);
players.add(playerData);
}else{
playerData.setName(player.getName());
if(!playerData.getName().equals(player.getName())){
playerData.setName(player.getName());
playerData.setModified(true);
}
}
if(firstJoin){

View file

@ -8,11 +8,13 @@ public class PlayerData {
private String uuid;
private ArrayList<PlayerDataKit> kits;
private boolean modified;
public PlayerData(String name,String uuid){
this.name = name;
this.uuid = uuid;
this.kits = new ArrayList<PlayerDataKit>();
this.modified = false;
}
public String getName() {
@ -43,6 +45,14 @@ public class PlayerData {
this.kits.add(kit);
}
public boolean isModified() {
return modified;
}
public void setModified(boolean modified) {
this.modified = modified;
}
public PlayerDataKit getKit(String kitName){
for(PlayerDataKit kit : kits){
if(kit.getName().equals(kitName)){

View file

@ -24,7 +24,7 @@ public class InventoryUpdateTaskManager {
public void run() {
execute();
}
}.runTaskTimerAsynchronously(plugin,0L,20L);
}.runTaskTimer(plugin,0L,20L);
}
public void execute(){

View file

@ -16,8 +16,8 @@ public class PlayerDataSaveTask {
end = true;
}
public void start(int minutes) {
long ticks = minutes*60*20;
public void start(int seconds) {
long ticks = seconds* 20L;
new BukkitRunnable() {
@Override

View file

@ -1,5 +1,5 @@
main: pk.ajneb97.PlayerKits2
version: 1.8.4
version: 1.8.5
name: PlayerKits2
api-version: 1.13
softdepend: [Vault,PlaceholderAPI]