15hr WOO restriction check added.

This commit is contained in:
2023-01-07 11:22:38 -05:00
parent 302358e31c
commit 4b5ce5bdb1
2 changed files with 16 additions and 3 deletions
@@ -20,6 +20,7 @@ import engine.net.DispatchMessage;
import engine.net.client.ClientConnection;
import engine.net.client.msg.ArcMineWindowChangeMsg;
import engine.net.client.msg.ClientNetMsg;
import engine.net.client.msg.ErrorPopupMsg;
import engine.net.client.msg.KeepAliveServerClientMsg;
import engine.objects.Building;
import engine.objects.Guild;
@@ -74,6 +75,13 @@ public class MineWindowChangeHandler extends AbstractClientMsgHandler {
newMineTime = mineWindowChangeMsg.getTime();
// Enforce 15hr restriction between WOO edits
if (LocalDateTime.now().isBefore(mineGuild.lastWooEditTime.plusHours(15))) {
ErrorPopupMsg.sendErrorMsg(playerCharacter, "You must wait 15 hours between WOO changes.");
return true;
}
//hodge podge sanity check to make sure they don't set it before early window and is not set at late window.
if (newMineTime < MBServerStatics.MINE_EARLY_WINDOW &&
+8 -3
View File
@@ -36,12 +36,12 @@ import engine.net.client.msg.UpdateClientAlliancesMsg;
import engine.net.client.msg.guild.GuildInfoMsg;
import engine.server.MBServerStatics;
import org.joda.time.DateTime;
import org.joda.time.LocalDateTime;
import org.pmw.tinylog.Logger;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
@@ -82,7 +82,7 @@ public class Guild extends AbstractWorldObject {
private String hash;
private boolean ownerIsNPC;
public Timestamp lastWooEditTime;
public LocalDateTime lastWooEditTime;
public HashMap<Integer,GuildAlliances> guildAlliances = new HashMap<>();
/**
@@ -180,7 +180,12 @@ public class Guild extends AbstractWorldObject {
this.teleportMax = rs.getInt("teleportMax");
this.mineTime = rs.getInt("mineTime");
this.lastWooEditTime = rs.getTimestamp("lastWooEditTime");
Timestamp lastWooRequest = rs.getTimestamp("lastWooEditTime");
if (lastWooRequest != null)
this.lastWooEditTime = lastWooRequest.toLocalDateTime();
this.hash = rs.getString("hash");
}