61 lines
1.8 KiB
Java
61 lines
1.8 KiB
Java
package anvil.infinity.snap;
|
|
|
|
import anvil.infinity.config.ConfigHandler;
|
|
import anvil.infinity.config.ModConfig;
|
|
|
|
public enum SnapResult {
|
|
|
|
KILLHALF,
|
|
DESTROYSTONES,
|
|
BRINGBACK,
|
|
RECREATE,
|
|
KILLEVIL,
|
|
CREATIVE;
|
|
|
|
final static String KILLHALFID = "Kill half";
|
|
final static String DESTROYSTONESID = "Destroy the Stones";
|
|
final static String BRINGBACKID = "Bring back the dusted (WIP)";
|
|
final static String RECREATEID = "Recreate the Universe (WIP)";
|
|
final static String KILLEVILID = "Kill evil entities";
|
|
final static String CREATIVEID = "Change to Creative";
|
|
|
|
public SnapResult next() {
|
|
switch(this) {
|
|
case KILLHALF: return DESTROYSTONES;
|
|
case DESTROYSTONES: return BRINGBACK;
|
|
case BRINGBACK: return RECREATE;
|
|
case RECREATE: return KILLEVIL;
|
|
case KILLEVIL: if (ModConfig.General.snapCreative) {return CREATIVE;} else {return KILLHALF;}
|
|
case CREATIVE: return KILLHALF;
|
|
}
|
|
return KILLHALF;
|
|
}
|
|
|
|
|
|
@Override
|
|
public String toString() {
|
|
switch (this) {
|
|
case KILLHALF: return KILLHALFID;
|
|
case DESTROYSTONES: return DESTROYSTONESID;
|
|
case BRINGBACK: return BRINGBACKID;
|
|
case RECREATE: return RECREATEID;
|
|
case KILLEVIL: return KILLEVILID;
|
|
case CREATIVE: return CREATIVEID;
|
|
}
|
|
return "Kill half";
|
|
}
|
|
|
|
public static SnapResult fromString(String s) {
|
|
switch (s) {
|
|
case KILLHALFID: return KILLHALF;
|
|
case DESTROYSTONESID: return DESTROYSTONES;
|
|
case BRINGBACKID: return BRINGBACK;
|
|
case RECREATEID: return RECREATE;
|
|
case KILLEVILID: return KILLEVIL;
|
|
case CREATIVEID: return CREATIVE;
|
|
}
|
|
return KILLHALF;
|
|
}
|
|
|
|
}
|