Skip to content

Commit

Permalink
Provided support for 1.20.5 and 1.20.6 #55
Browse files Browse the repository at this point in the history
  • Loading branch information
XDPXI committed Nov 19, 2024
1 parent adf962d commit 0ae4591
Show file tree
Hide file tree
Showing 3 changed files with 136 additions and 2 deletions.
4 changes: 2 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@ fabricApi {
}

dependencies {
minecraft("com.mojang:minecraft:1.21")
mappings("net.fabricmc:yarn:1.21+build.9:v2")
minecraft("com.mojang:minecraft:1.20.5")
mappings("net.fabricmc:yarn:1.20.5+build.1:v2")
compileOnly("io.papermc.paper:paper-api:1.21.3-R0.1-SNAPSHOT")
compileOnly("net.md-5:bungeecord-api:1.21-R0.1-SNAPSHOT")
compileOnly("org.spigotmc:spigot-api:1.21.3-R0.1-SNAPSHOT")
Expand Down
11 changes: 11 additions & 0 deletions src/main/java/dev/xdpxi/xdlib/api/mod/custom.java
Original file line number Diff line number Diff line change
@@ -1,5 +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 net.fabricmc.loader.api.FabricLoader;
Expand All @@ -24,6 +25,8 @@ public static void ItemGroup(String itemGroupID, String modID, Item itemIconID,
custom1.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);
}
} catch (Exception e) {
throw new RuntimeException("Failed to create ItemGroup: " + e.getMessage(), e);
Expand All @@ -44,6 +47,8 @@ public static Item Item(String itemID, String modID, RegistryKey<ItemGroup> item
return custom1.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);
}
} catch (Exception e) {
throw new RuntimeException("Failed to create Item: " + e.getMessage(), e);
Expand All @@ -66,6 +71,8 @@ public static BlockItem Block(String blockID, String modID, RegistryKey<ItemGrou
return custom1.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);
}
} catch (Exception e) {
throw new RuntimeException("Failed to create Block: " + e.getMessage(), e);
Expand All @@ -88,6 +95,8 @@ public static Item Weapon(String weaponID, String modID, ToolMaterial material,
return custom1.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);
}
} catch (Exception e) {
throw new RuntimeException("Failed to create Weapon: " + e.getMessage(), e);
Expand All @@ -110,6 +119,8 @@ public static Item Armor(String armorID, String modID, RegistryEntry<ArmorMateri
return custom1.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);
}
} catch (Exception e) {
throw new RuntimeException("Failed to create Armor: " + e.getMessage(), e);
Expand Down
123 changes: 123 additions & 0 deletions src/main/java/dev/xdpxi/xdlib/api/mod/customClass/custom0.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
package dev.xdpxi.xdlib.api.mod.customClass;

import net.fabricmc.fabric.api.itemgroup.v1.FabricItemGroup;
import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents;
import net.minecraft.block.AbstractBlock;
import net.minecraft.block.Block;
import net.minecraft.block.MapColor;
import net.minecraft.item.*;
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;

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));

ItemGroup ITEM_GROUP = FabricItemGroup.builder()
.displayName(Text.translatable("itemGroup." + modID + "." + itemGroupID))
.icon(() -> new ItemStack(itemIconID != null ? itemIconID : Items.STONE))
.build();

Registry.register(Registries.ITEM_GROUP, ITEM_GROUP_KEY, ITEM_GROUP);

ItemGroupEvents.modifyEntriesEvent(ITEM_GROUP_KEY).register(itemGroup -> {
for (Item item : itemsToAdd) {
itemGroup.add(item);
}
});
}

public static void AddToItemGroup(String itemGroupID, String modID, List<Item> itemsToAdd) {
ItemGroup(itemGroupID, modID, null, itemsToAdd);
}

public static Item Item(String itemID, String modID, RegistryKey<ItemGroup> itemGroup) {
if (itemID == null || modID == null) {
throw new IllegalArgumentException("itemID or modID is null");
}
itemID = itemID.toLowerCase();
modID = modID.toLowerCase();
Identifier identifier = new Identifier(modID, itemID);

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

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

return item;
}

public static Item Item(String itemID, String modID) {
return Item(itemID, modID, null);
}

public static BlockItem Block(String blockID, String modID, RegistryKey<ItemGroup> itemGroup) {
blockID = blockID.toLowerCase();
modID = modID.toLowerCase();
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);
BlockItem blockItem = new BlockItem(registeredBlock, new Item.Settings());

Registry.register(Registries.ITEM, blockIdentifier, blockItem);

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

return blockItem;
}

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 0ae4591

Please sign in to comment.