ProtectedPlayer: Grace period changes.
- Removed old way of tracking how much time is left in the grace period. - Added delay parameter to the setGracePeriodTimerTask method. - Added two new States: LOGIN_GRACE and AFK_GRACE.
This commit is contained in:
@ -7,7 +7,6 @@ import java.util.UUID;
|
|||||||
public class ProtectedPlayer {
|
public class ProtectedPlayer {
|
||||||
// Initialize variables
|
// Initialize variables
|
||||||
private final UUID playerUUID;
|
private final UUID playerUUID;
|
||||||
private int gracePeriodTimeRemaining = 0;
|
|
||||||
private final Timer timer = new Timer();
|
private final Timer timer = new Timer();
|
||||||
private TimerTask afkTimerTask, gracePeriodTimerTask;
|
private TimerTask afkTimerTask, gracePeriodTimerTask;
|
||||||
private State state;
|
private State state;
|
||||||
@ -28,32 +27,17 @@ public class ProtectedPlayer {
|
|||||||
return playerUUID;
|
return playerUUID;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @return Remaining grade period time.
|
|
||||||
*/
|
|
||||||
public int getGracePeriodTimeRemaining() {
|
|
||||||
return gracePeriodTimeRemaining;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Set the remaining grace period time.
|
|
||||||
* @param gracePeriodLength Grade period length.
|
|
||||||
*/
|
|
||||||
public void setGracePeriod(int gracePeriodLength) {
|
|
||||||
this.gracePeriodTimeRemaining = gracePeriodLength;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Timer getTimer() {
|
public Timer getTimer() {
|
||||||
return timer;
|
return timer;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setGracePeriodTimerTask(TimerTask gracePeriodTimerTask) {
|
public void setGracePeriodTimerTask(TimerTask gracePeriodTimerTask, long delay) {
|
||||||
if (this.gracePeriodTimerTask != null) {
|
if (this.gracePeriodTimerTask != null) {
|
||||||
this.gracePeriodTimerTask.cancel();
|
this.gracePeriodTimerTask.cancel();
|
||||||
}
|
}
|
||||||
if (gracePeriodTimerTask != null) {
|
if (gracePeriodTimerTask != null) {
|
||||||
this.gracePeriodTimerTask = gracePeriodTimerTask;
|
this.gracePeriodTimerTask = gracePeriodTimerTask;
|
||||||
timer.schedule(this.gracePeriodTimerTask, 1000, 1000);
|
timer.schedule(this.gracePeriodTimerTask, delay);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -85,6 +69,8 @@ public class ProtectedPlayer {
|
|||||||
public enum State {
|
public enum State {
|
||||||
JOINING,
|
JOINING,
|
||||||
AFK,
|
AFK,
|
||||||
ACTIVE
|
ACTIVE,
|
||||||
|
LOGIN_GRACE,
|
||||||
|
AFK_GRACE
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user