Skip to content

Commit

Permalink
Fixed CustomAPI Support for #56
Browse files Browse the repository at this point in the history
  • Loading branch information
XDPXI committed Nov 21, 2024
1 parent cc3e7a9 commit e83220a
Show file tree
Hide file tree
Showing 4 changed files with 86 additions and 88 deletions.
36 changes: 17 additions & 19 deletions src/main/java/dev/xdpxi/xdlib/api/mod/custom.java
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
package dev.xdpxi.xdlib.api.mod;

import dev.xdpxi.xdlib.api.mod.customClass.custom0;
import dev.xdpxi.xdlib.api.mod.customClass.custom1;
import dev.xdpxi.xdlib.api.mod.customClass.custom2;
import dev.xdpxi.xdlib.api.mod.customClass.*;
import net.fabricmc.loader.api.FabricLoader;
import net.minecraft.item.*;
import net.minecraft.registry.RegistryKey;
Expand All @@ -22,11 +20,11 @@ public static void ItemGroup(String itemGroupID, String modID, Item itemIconID,

try {
if (minecraftVersion.equals("1.21") || minecraftVersion.equals("1.21.1")) {
custom1.ItemGroup(itemGroupID, modID, itemIconID, itemsToAdd);
custom2.ItemGroup(itemGroupID, modID, itemIconID, itemsToAdd);
} else if (minecraftVersion.equals("1.21.2") || minecraftVersion.equals("1.21.3")) {
//custom2.ItemGroup(itemGroupID, modID, itemIconID, itemsToAdd);
} else if (minecraftVersion.equals("1.20.5") || minecraftVersion.equals("1.20.6")) {
custom0.ItemGroup(itemGroupID, modID, itemIconID, itemsToAdd);
} else if (minecraftVersion.equals("1.20") || minecraftVersion.equals("1.20.1") || minecraftVersion.equals("1.20.2") || minecraftVersion.equals("1.20.3") || minecraftVersion.equals("1.20.4") || minecraftVersion.equals("1.20.5") || minecraftVersion.equals("1.20.6")) {
custom1.ItemGroup(itemGroupID, modID, itemIconID, itemsToAdd);
}
} catch (Exception e) {
throw new RuntimeException("Failed to create ItemGroup: " + e.getMessage(), e);
Expand All @@ -44,11 +42,11 @@ public static Item Item(String itemID, String modID, RegistryKey<ItemGroup> item

try {
if (minecraftVersion.equals("1.21") || minecraftVersion.equals("1.21.1")) {
return custom1.Item(itemID, modID, itemGroup);
return custom2.Item(itemID, modID, itemGroup);
} else if (minecraftVersion.equals("1.21.2") || minecraftVersion.equals("1.21.3")) {
//return custom2.Item(itemID, modID, itemGroup);
} else if (minecraftVersion.equals("1.20.5") || minecraftVersion.equals("1.20.6")) {
return custom0.Item(itemID, modID, itemGroup);
} else if (minecraftVersion.equals("1.20") || minecraftVersion.equals("1.20.1") || minecraftVersion.equals("1.20.2") || minecraftVersion.equals("1.20.3") || minecraftVersion.equals("1.20.4") || minecraftVersion.equals("1.20.5") || minecraftVersion.equals("1.20.6")) {
return custom1.Item(itemID, modID, itemGroup);
}
} catch (Exception e) {
throw new RuntimeException("Failed to create Item: " + e.getMessage(), e);
Expand All @@ -68,11 +66,11 @@ public static BlockItem Block(String blockID, String modID, RegistryKey<ItemGrou

try {
if (minecraftVersion.equals("1.21") || minecraftVersion.equals("1.21.1")) {
return custom1.Block(blockID, modID, itemGroup);
return custom2.Block(blockID, modID, itemGroup);
} else if (minecraftVersion.equals("1.21.2") || minecraftVersion.equals("1.21.3")) {
//return custom2.Block(blockID, modID, itemGroup);
} else if (minecraftVersion.equals("1.20.5") || minecraftVersion.equals("1.20.6")) {
return custom0.Block(blockID, modID, itemGroup);
//return custom3.Block(blockID, modID, itemGroup);
} else if (minecraftVersion.equals("1.20") || minecraftVersion.equals("1.20.1") || minecraftVersion.equals("1.20.2") || minecraftVersion.equals("1.20.3") || minecraftVersion.equals("1.20.4") || minecraftVersion.equals("1.20.5") || minecraftVersion.equals("1.20.6")) {
return custom1.Block(blockID, modID, itemGroup);
}
} catch (Exception e) {
throw new RuntimeException("Failed to create Block: " + e.getMessage(), e);
Expand All @@ -92,11 +90,11 @@ public static Item Weapon(String weaponID, String modID, ToolMaterial material,

try {
if (minecraftVersion.equals("1.21") || minecraftVersion.equals("1.21.1")) {
return custom1.Weapon(weaponID, modID, material, itemGroup);
return custom2.Weapon(weaponID, modID, material, itemGroup);
} else if (minecraftVersion.equals("1.21.2") || minecraftVersion.equals("1.21.3")) {
//return custom2.Weapon(weaponID, modID, material, itemGroup);
}else if (minecraftVersion.equals("1.20.5") || minecraftVersion.equals("1.20.6")) {
return custom0.Weapon(weaponID, modID, material, itemGroup);
} else if (minecraftVersion.equals("1.20") || minecraftVersion.equals("1.20.1") || minecraftVersion.equals("1.20.2") || minecraftVersion.equals("1.20.3") || minecraftVersion.equals("1.20.4") || minecraftVersion.equals("1.20.5") || minecraftVersion.equals("1.20.6")) {
return custom1.Weapon(weaponID, modID, material, itemGroup);
}
} catch (Exception e) {
throw new RuntimeException("Failed to create Weapon: " + e.getMessage(), e);
Expand All @@ -116,11 +114,11 @@ public static Item Armor(String armorID, String modID, RegistryEntry<ArmorMateri

try {
if (minecraftVersion.equals("1.21") || minecraftVersion.equals("1.21.1")) {
return custom1.Armor(armorID, modID, armorType, armorPart, itemGroup);
return custom2.Armor(armorID, modID, armorType, armorPart, itemGroup);
} else if (minecraftVersion.equals("1.21.2") || minecraftVersion.equals("1.21.3")) {
//return custom2.Armor(armorID, modID, armorType, armorPart, itemGroup);
}else if (minecraftVersion.equals("1.20.5") || minecraftVersion.equals("1.20.6")) {
return custom0.Armor(armorID, modID, armorType, armorPart, itemGroup);
} else if (minecraftVersion.equals("1.20") || minecraftVersion.equals("1.20.1") || minecraftVersion.equals("1.20.2") || minecraftVersion.equals("1.20.3") || minecraftVersion.equals("1.20.4") || minecraftVersion.equals("1.20.5") || minecraftVersion.equals("1.20.6")) {
return custom1.Armor(armorID, modID, armorType, armorPart, itemGroup);
}
} catch (Exception e) {
throw new RuntimeException("Failed to create Armor: " + e.getMessage(), e);
Expand Down
14 changes: 7 additions & 7 deletions src/main/java/dev/xdpxi/xdlib/api/mod/customClass/custom1.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public class custom1 {
public static void ItemGroup(String itemGroupID, String modID, Item itemIconID, List<Item> itemsToAdd) {
itemGroupID = itemGroupID.toLowerCase();
modID = modID.toLowerCase();
RegistryKey<ItemGroup> ITEM_GROUP_KEY = RegistryKey.of(Registries.ITEM_GROUP.getKey(), Identifier.of(modID, itemGroupID));
RegistryKey<ItemGroup> ITEM_GROUP_KEY = RegistryKey.of(Registries.ITEM_GROUP.getKey(), new Identifier(modID, itemGroupID));

ItemGroup ITEM_GROUP = FabricItemGroup.builder()
.displayName(Text.translatable("itemGroup." + modID + "." + itemGroupID))
Expand All @@ -45,7 +45,7 @@ public static Item Item(String itemID, String modID, RegistryKey<ItemGroup> item
}
itemID = itemID.toLowerCase();
modID = modID.toLowerCase();
Identifier identifier = Identifier.of(modID, itemID);
Identifier identifier = new Identifier(modID, itemID);

Item item = new Item(new Item.Settings());
Registry.register(Registries.ITEM, identifier, item);
Expand All @@ -64,7 +64,7 @@ public static Item Item(String itemID, String modID) {
public static BlockItem Block(String blockID, String modID, RegistryKey<ItemGroup> itemGroup) {
blockID = blockID.toLowerCase();
modID = modID.toLowerCase();
Identifier blockIdentifier = Identifier.of(modID, blockID);
Identifier blockIdentifier = new Identifier(modID, blockID);

Block block = new Block(AbstractBlock.Settings.create().mapColor(MapColor.STONE_GRAY).strength(1.5F, 6.0F));
Block registeredBlock = Registry.register(Registries.BLOCK, blockIdentifier, block);
Expand All @@ -86,9 +86,9 @@ public static BlockItem Block(String blockID, String modID) {
public static Item Weapon(String weaponID, String modID, ToolMaterial material, RegistryKey<ItemGroup> itemGroup) {
weaponID = weaponID.toLowerCase();
modID = modID.toLowerCase();
Identifier identifier = Identifier.of(modID, weaponID);
Identifier identifier = new Identifier(modID, weaponID);

SwordItem weapon = new SwordItem(material, new Item.Settings().maxDamage(material.getDurability()));
SwordItem weapon = new SwordItem(material, 3, -2.4F, new Item.Settings().maxDamage(material.getDurability()));
Registry.register(Registries.ITEM, identifier, weapon);

if (itemGroup != null) {
Expand All @@ -105,9 +105,9 @@ public static Item Weapon(String weaponID, String modID, ToolMaterial material)
public static Item Armor(String armorID, String modID, RegistryEntry<ArmorMaterial> armorType, ArmorItem.Type armorPart, RegistryKey<ItemGroup> itemGroup) {
armorID = armorID.toLowerCase();
modID = modID.toLowerCase();
Identifier identifier = Identifier.of(modID, armorID);
Identifier identifier = new Identifier(modID, armorID);

ArmorItem armor = new ArmorItem(armorType, armorPart, new Item.Settings());
ArmorItem armor = new ArmorItem(armorType.value(), armorPart, new Item.Settings());
Registry.register(Registries.ITEM, identifier, armor);

if (itemGroup != null) {
Expand Down
58 changes: 40 additions & 18 deletions src/main/java/dev/xdpxi/xdlib/api/mod/customClass/custom2.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,28 +9,13 @@
import net.minecraft.registry.Registries;
import net.minecraft.registry.Registry;
import net.minecraft.registry.RegistryKey;
import net.minecraft.registry.entry.RegistryEntry;
import net.minecraft.text.Text;
import net.minecraft.util.Identifier;

import java.util.List;
import java.lang.reflect.Method;

public class custom2 {
private static Method registerMethod;
private static Method getKeyMethod;

static {
try {
registerMethod = Registry.class.getDeclaredMethod("register", Registry.class, Identifier.class, Object.class);
registerMethod.setAccessible(true);

getKeyMethod = Registries.class.getDeclaredMethod("getKey");
getKeyMethod.setAccessible(true);
} catch (Exception e) {
e.printStackTrace();
}
}

public static void ItemGroup(String itemGroupID, String modID, Item itemIconID, List<Item> itemsToAdd) {
itemGroupID = itemGroupID.toLowerCase();
modID = modID.toLowerCase();
Expand Down Expand Up @@ -62,8 +47,7 @@ public static Item Item(String itemID, String modID, RegistryKey<ItemGroup> item
modID = modID.toLowerCase();
Identifier identifier = Identifier.of(modID, itemID);

Item.Settings settings = new Item.Settings();
Item item = new Item(settings);
Item item = new Item(new Item.Settings());
Registry.register(Registries.ITEM, identifier, item);

if (itemGroup != null) {
Expand Down Expand Up @@ -98,4 +82,42 @@ public static BlockItem Block(String blockID, String modID, RegistryKey<ItemGrou
public static BlockItem Block(String blockID, String modID) {
return Block(blockID, modID, null);
}

public static Item Weapon(String weaponID, String modID, ToolMaterial material, RegistryKey<ItemGroup> itemGroup) {
weaponID = weaponID.toLowerCase();
modID = modID.toLowerCase();
Identifier identifier = Identifier.of(modID, weaponID);

SwordItem weapon = new SwordItem(material, 3, -2.4F, new Item.Settings().maxDamage(material.getDurability()));
Registry.register(Registries.ITEM, identifier, weapon);

if (itemGroup != null) {
ItemGroupEvents.modifyEntriesEvent(itemGroup).register(entries -> entries.add(weapon));
}

return weapon;
}

public static Item Weapon(String weaponID, String modID, ToolMaterial material) {
return Weapon(weaponID, modID, material, null);
}

public static Item Armor(String armorID, String modID, RegistryEntry<ArmorMaterial> armorType, ArmorItem.Type armorPart, RegistryKey<ItemGroup> itemGroup) {
armorID = armorID.toLowerCase();
modID = modID.toLowerCase();
Identifier identifier = Identifier.of(modID, armorID);

ArmorItem armor = new ArmorItem(armorType.value(), armorPart, new Item.Settings());
Registry.register(Registries.ITEM, identifier, armor);

if (itemGroup != null) {
ItemGroupEvents.modifyEntriesEvent(itemGroup).register(entries -> entries.add(armor));
}

return armor;
}

public static Item Armor(String armorID, String modID, RegistryEntry<ArmorMaterial> armorType, ArmorItem.Type armorPart) {
return Armor(armorID, modID, armorType, armorPart, null);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,32 @@
import net.minecraft.registry.Registries;
import net.minecraft.registry.Registry;
import net.minecraft.registry.RegistryKey;
import net.minecraft.registry.entry.RegistryEntry;
import net.minecraft.text.Text;
import net.minecraft.util.Identifier;

import java.util.List;
import java.lang.reflect.Method;

public class custom3 {
private static Method registerMethod;
private static Method getKeyMethod;

static {
try {
registerMethod = Registry.class.getDeclaredMethod("register", Registry.class, Identifier.class, Object.class);
registerMethod.setAccessible(true);

getKeyMethod = Registries.class.getDeclaredMethod("getKey");
getKeyMethod.setAccessible(true);
} catch (Exception e) {
e.printStackTrace();
}
}

public class custom0 {
public static void ItemGroup(String itemGroupID, String modID, Item itemIconID, List<Item> itemsToAdd) {
itemGroupID = itemGroupID.toLowerCase();
modID = modID.toLowerCase();
RegistryKey<ItemGroup> ITEM_GROUP_KEY = RegistryKey.of(Registries.ITEM_GROUP.getKey(), new Identifier(modID, itemGroupID));
RegistryKey<ItemGroup> ITEM_GROUP_KEY = RegistryKey.of(Registries.ITEM_GROUP.getKey(), Identifier.of(modID, itemGroupID));

ItemGroup ITEM_GROUP = FabricItemGroup.builder()
.displayName(Text.translatable("itemGroup." + modID + "." + itemGroupID))
Expand All @@ -45,9 +60,10 @@ public static Item Item(String itemID, String modID, RegistryKey<ItemGroup> item
}
itemID = itemID.toLowerCase();
modID = modID.toLowerCase();
Identifier identifier = new Identifier(modID, itemID);
Identifier identifier = Identifier.of(modID, itemID);

Item item = new Item(new Item.Settings());
Item.Settings settings = new Item.Settings();
Item item = new Item(settings);
Registry.register(Registries.ITEM, identifier, item);

if (itemGroup != null) {
Expand All @@ -64,7 +80,7 @@ public static Item Item(String itemID, String modID) {
public static BlockItem Block(String blockID, String modID, RegistryKey<ItemGroup> itemGroup) {
blockID = blockID.toLowerCase();
modID = modID.toLowerCase();
Identifier blockIdentifier = new Identifier(modID, blockID);
Identifier blockIdentifier = Identifier.of(modID, blockID);

Block block = new Block(AbstractBlock.Settings.create().mapColor(MapColor.STONE_GRAY).strength(1.5F, 6.0F));
Block registeredBlock = Registry.register(Registries.BLOCK, blockIdentifier, block);
Expand All @@ -82,42 +98,4 @@ public static BlockItem Block(String blockID, String modID, RegistryKey<ItemGrou
public static BlockItem Block(String blockID, String modID) {
return Block(blockID, modID, null);
}

public static Item Weapon(String weaponID, String modID, ToolMaterial material, RegistryKey<ItemGroup> itemGroup) {
weaponID = weaponID.toLowerCase();
modID = modID.toLowerCase();
Identifier identifier = new Identifier(modID, weaponID);

SwordItem weapon = new SwordItem(material, new Item.Settings().maxDamage(material.getDurability()));
Registry.register(Registries.ITEM, identifier, weapon);

if (itemGroup != null) {
ItemGroupEvents.modifyEntriesEvent(itemGroup).register(entries -> entries.add(weapon));
}

return weapon;
}

public static Item Weapon(String weaponID, String modID, ToolMaterial material) {
return Weapon(weaponID, modID, material, null);
}

public static Item Armor(String armorID, String modID, RegistryEntry<ArmorMaterial> armorType, ArmorItem.Type armorPart, RegistryKey<ItemGroup> itemGroup) {
armorID = armorID.toLowerCase();
modID = modID.toLowerCase();
Identifier identifier = new Identifier(modID, armorID);

ArmorItem armor = new ArmorItem(armorType, armorPart, new Item.Settings());
Registry.register(Registries.ITEM, identifier, armor);

if (itemGroup != null) {
ItemGroupEvents.modifyEntriesEvent(itemGroup).register(entries -> entries.add(armor));
}

return armor;
}

public static Item Armor(String armorID, String modID, RegistryEntry<ArmorMaterial> armorType, ArmorItem.Type armorPart) {
return Armor(armorID, modID, armorType, armorPart, null);
}
}

0 comments on commit e83220a

Please sign in to comment.