Config: Make obituary item configurable

master
BodgeMaster 2022-12-20 20:22:30 +01:00
parent d3f300da85
commit aa2ae4f20b
3 changed files with 15 additions and 3 deletions

View File

@ -58,7 +58,9 @@ public class DeathChests {
Debug.out("Received FMLInitializationEvent"); Debug.out("Received FMLInitializationEvent");
GameRegistry.registerBlock(BlockDeathChest.getInstance(), "death_chest"); GameRegistry.registerBlock(BlockDeathChest.getInstance(), "death_chest");
if (Config.giveObituary) {
GameRegistry.registerItem(ItemObituary.getInstance(), "obituary"); GameRegistry.registerItem(ItemObituary.getInstance(), "obituary");
}
Debug.out("Registered block and item."); Debug.out("Registered block and item.");
MinecraftForge.EVENT_BUS.register(new EventHook()); MinecraftForge.EVENT_BUS.register(new EventHook());

View File

@ -201,8 +201,10 @@ public class EventHook {
Debug.out("Chest location Z: " + Integer.toString(chestLocation[2])); Debug.out("Chest location Z: " + Integer.toString(chestLocation[2]));
Debug.out("Chest location dimension: " + Integer.toString(chestLocation[3])); Debug.out("Chest location dimension: " + Integer.toString(chestLocation[3]));
if (Config.giveObituary) {
//TODO: NBT data //TODO: NBT data
event.player.inventory.addItemStackToInventory(new ItemStack(ItemObituary.getInstance())); event.player.inventory.addItemStackToInventory(new ItemStack(ItemObituary.getInstance()));
}
} else { } else {
Debug.out("No death chest location was stored."); Debug.out("No death chest location was stored.");
//TODO: tell player that a death chest couldnt be placed and that the items have been dropped //TODO: tell player that a death chest couldnt be placed and that the items have been dropped

View File

@ -17,6 +17,7 @@ public class Config {
public static int maxDistance = 50; public static int maxDistance = 50;
public static boolean allowOtherPlayers = true; public static boolean allowOtherPlayers = true;
public static String notAllowedMessage = "§4Cannot get items from another player's death chest."; public static String notAllowedMessage = "§4Cannot get items from another player's death chest.";
public static boolean giveObituary = true;
private static final String config_header = "# The format of this file is strictly `option=value` (no spaces).\n# Lines starting with # and empty lines are ignored."; private static final String config_header = "# The format of this file is strictly `option=value` (no spaces).\n# Lines starting with # and empty lines are ignored.";
@ -37,6 +38,9 @@ public class Config {
configOut += "\n\n# The message to display when trying to get items from another player's death chest and allowOtherPlayers=false"; configOut += "\n\n# The message to display when trying to get items from another player's death chest and allowOtherPlayers=false";
configOut += "notAllowedMessage="; configOut += "notAllowedMessage=";
configOut += notAllowedMessage; configOut += notAllowedMessage;
configOut += "\n\n# Whether to give respawning players an obituary item\n";
configOut += "giveObituary=";
configOut += giveObituary ? "true" : "false";
File configFile = new File(configDir, config_file_name); File configFile = new File(configDir, config_file_name);
try { try {
@ -78,6 +82,10 @@ public class Config {
notAllowedMessage = configData.get(i).substring(equalsSign+1); notAllowedMessage = configData.get(i).substring(equalsSign+1);
break; break;
} }
case ("giveObituary"): {
giveObituary = configData.get(i).substring(equalsSign + 1).equals("true") ? true : false;
break;
}
default: { default: {
System.err.println("Failed parsing config entry: " + configData.get(i)); System.err.println("Failed parsing config entry: " + configData.get(i));
FMLCommonHandler.instance().exitJava(1, false); FMLCommonHandler.instance().exitJava(1, false);