mirror of
https://github.com/YouHaveTrouble/PreventStabby.git
synced 2026-05-12 05:16:55 +00:00
only set login timestamp on login
This commit is contained in:
+4
-8
@@ -17,14 +17,11 @@ public class PlayerJoinAndLeaveListener implements Listener {
|
|||||||
@EventHandler(ignoreCancelled = true)
|
@EventHandler(ignoreCancelled = true)
|
||||||
public void onPlayerJoin(org.bukkit.event.player.PlayerJoinEvent event) {
|
public void onPlayerJoin(org.bukkit.event.player.PlayerJoinEvent event) {
|
||||||
Player player = event.getPlayer();
|
Player player = event.getPlayer();
|
||||||
|
PlayerData playerData = TogglePvp.getPlugin().getPlayerManager().getPlayer(player.getUniqueId());
|
||||||
PlayerData playerData = TogglePvp.getPlugin().getSqLite().getPlayerInfo(player.getUniqueId());
|
|
||||||
|
|
||||||
TogglePvp.getPlugin().getPlayerManager().addPlayer(player.getUniqueId(), playerData);
|
|
||||||
playerData.setLoginTimestamp(Instant.now().getEpochSecond());
|
playerData.setLoginTimestamp(Instant.now().getEpochSecond());
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* This event is here to dump player's saved options from memory
|
* This event is here to save player's data to database
|
||||||
* Also punishes players who log out during combat
|
* Also punishes players who log out during combat
|
||||||
*/
|
*/
|
||||||
@EventHandler
|
@EventHandler
|
||||||
@@ -38,12 +35,11 @@ public class PlayerJoinAndLeaveListener implements Listener {
|
|||||||
|
|
||||||
if (combatTime > now) {
|
if (combatTime > now) {
|
||||||
player.setHealth(0);
|
player.setHealth(0);
|
||||||
if (TogglePvp.getPlugin().getConfigCache().isPunish_for_combat_logout_announce()) {
|
if (TogglePvp.getPlugin().getConfigCache().isPunish_for_combat_logout_announce())
|
||||||
PluginMessages.broadcastMessage(player, TogglePvp.getPlugin().getConfigCache().getPunish_for_combat_logout_message());
|
PluginMessages.broadcastMessage(player, TogglePvp.getPlugin().getConfigCache().getPunish_for_combat_logout_message());
|
||||||
}
|
|
||||||
PlayerData playerData = TogglePvp.getPlugin().getPlayerManager().getPlayer(player.getUniqueId());
|
PlayerData playerData = TogglePvp.getPlugin().getPlayerManager().getPlayer(player.getUniqueId());
|
||||||
playerData.setCombattime(now-1);
|
playerData.setCombattime(now-1);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,11 +11,10 @@ public class PlayerData {
|
|||||||
private boolean lastCombatCheck;
|
private boolean lastCombatCheck;
|
||||||
private long loginTimestamp;
|
private long loginTimestamp;
|
||||||
|
|
||||||
public PlayerData(boolean pvpEnabled, long loginTimestamp) {
|
public PlayerData(boolean pvpEnabled) {
|
||||||
this.pvpEnabled = pvpEnabled;
|
this.pvpEnabled = pvpEnabled;
|
||||||
this.combattime = Instant.now().getEpochSecond()-1;
|
this.combattime = Instant.now().getEpochSecond()-1;
|
||||||
this.loginTimestamp = loginTimestamp;
|
this.loginTimestamp = Instant.now().getEpochSecond()-1;
|
||||||
|
|
||||||
refreshCachetime();
|
refreshCachetime();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ public class SmartCache {
|
|||||||
return playerData;
|
return playerData;
|
||||||
} catch (NullPointerException ex) {
|
} catch (NullPointerException ex) {
|
||||||
// Return false if database call fails
|
// Return false if database call fails
|
||||||
return new PlayerData(false, 0);
|
return new PlayerData(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -53,7 +53,7 @@ public class SmartCache {
|
|||||||
TogglePvp.getPlugin().getPlayerManager().getPlayer(uuid).setPvpEnabled(state);
|
TogglePvp.getPlugin().getPlayerManager().getPlayer(uuid).setPvpEnabled(state);
|
||||||
}
|
}
|
||||||
// Update the database aswell
|
// Update the database aswell
|
||||||
TogglePvp.getPlugin().getSqLite().updatePlayerInfo(uuid, new PlayerData(state, 0));
|
TogglePvp.getPlugin().getSqLite().updatePlayerInfo(uuid, new PlayerData(state));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ public class DatabaseSQLite {
|
|||||||
ResultSet result = statement.getResultSet();
|
ResultSet result = statement.getResultSet();
|
||||||
boolean state = result.getBoolean("pvpenabled");
|
boolean state = result.getBoolean("pvpenabled");
|
||||||
conn.close();
|
conn.close();
|
||||||
return new PlayerData(state, 0);
|
return new PlayerData(state);
|
||||||
} catch (SQLException throwables) {
|
} catch (SQLException throwables) {
|
||||||
throwables.printStackTrace();
|
throwables.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user