Add setExpires to disguise, disguises expire after a scheduled amount of time
This commit is contained in:
@@ -82,6 +82,9 @@ public class ParamInfoTypes {
|
||||
paramInfos.add(new ParamInfoGameProfile(WrappedGameProfile.class, "GameProfile",
|
||||
"Get the gameprofile here https://sessionserver.mojang" +
|
||||
".com/session/minecraft/profile/PLAYER_UUID_GOES_HERE?unsigned=false"));
|
||||
paramInfos.add(new ParamInfoTime(long.class, "Expiry Time",
|
||||
"Set how long the disguise lasts, <Num><Time><Num>... where <Time> is (s/sec)(m/min)(h/hour)(d/day) " +
|
||||
"etc. 30m20secs = 30 minutes, 20 seconds"));
|
||||
|
||||
// Register base types
|
||||
Map<String, Object> booleanMap = new HashMap<>();
|
||||
|
@@ -0,0 +1,30 @@
|
||||
package me.libraryaddict.disguise.utilities.parser.params.types.custom;
|
||||
|
||||
import me.libraryaddict.disguise.DisguiseConfig;
|
||||
import me.libraryaddict.disguise.utilities.parser.DisguiseParseException;
|
||||
import me.libraryaddict.disguise.utilities.parser.DisguiseParser;
|
||||
import me.libraryaddict.disguise.utilities.parser.params.ParamInfo;
|
||||
|
||||
/**
|
||||
* Created by libraryaddict on 6/03/2019.
|
||||
*/
|
||||
public class ParamInfoTime extends ParamInfo {
|
||||
public ParamInfoTime(Class paramClass, String name, String description) {
|
||||
super(paramClass, name, description);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Object fromString(String string) throws DisguiseParseException {
|
||||
long time = DisguiseParser.parseStringToTime(string);
|
||||
|
||||
// If disguise expires X ticks afterwards
|
||||
if (DisguiseConfig.isDynamicExpiry()) {
|
||||
time *= 20;
|
||||
} else if (!DisguiseConfig.isDynamicExpiry()) { // If disguise expires at a set time
|
||||
time *= 1000; // Multiply for milliseconds
|
||||
time += System.currentTimeMillis(); // Add current time to expiry time
|
||||
}
|
||||
|
||||
return time;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user