diff --git a/build.gradle b/build.gradle index d5a429be..0f38f1d5 100644 --- a/build.gradle +++ b/build.gradle @@ -23,7 +23,7 @@ compileJava { minecraft { version = "1.10.2-12.18.2.2151" runDir = "run" - + // the mappings can be changed at any time, and must be in the following format. // snapshot_YYYYMMDD snapshot are built nightly. // stable_# stables are built at the discretion of the MCP team. @@ -38,7 +38,7 @@ dependencies { // or you may define them like so.. //compile "some.group:artifact:version:classifier" //compile "some.group:artifact:version" - + // real examples //compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env //compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env @@ -66,13 +66,17 @@ processResources // replace stuff in mcmod.info, nothing else from(sourceSets.main.resources.srcDirs) { include 'mcmod.info' - + // replace version and mcversion expand 'version':project.version, 'mcversion':project.minecraft.version } - + // copy everything else, thats not the mcmod.info from(sourceSets.main.resources.srcDirs) { exclude 'mcmod.info' } -} + + sourceSets { + main { output.resourcesDir = output.classesDir } + } +} \ No newline at end of file diff --git a/src/main/java/nmd/primal/forgecraft/ForgeCraft.java b/src/main/java/nmd/primal/forgecraft/ForgeCraft.java index 53765603..ee6057d2 100644 --- a/src/main/java/nmd/primal/forgecraft/ForgeCraft.java +++ b/src/main/java/nmd/primal/forgecraft/ForgeCraft.java @@ -2,57 +2,55 @@ package nmd.primal.forgecraft; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod.EventHandler; +import net.minecraftforge.fml.common.Mod.Instance; import net.minecraftforge.fml.common.SidedProxy; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import net.minecraftforge.fml.common.event.FMLServerStartingEvent; -import nmd.primal.forgecraft.Item.ItemRenderRegister; -import nmd.primal.forgecraft.Item.ModItems; + +import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.proxy.CommonProxy; //import nmd.primal.forgecraft.common.init.*; import java.util.Locale; @Mod( modid = ModInfo.MOD_ID, - name = ModInfo.MOD_ID, + name = ModInfo.MOD_NAME, version = ModInfo.MOD_VERSION, - acceptedMinecraftVersions = ModInfo.MC_VERSIONS, - dependencies = ModInfo.DEPENDENCIES, - guiFactory = ModInfo.GUI_FACTORY, - updateJSON = ModInfo.UPDATE_JSON + acceptedMinecraftVersions = ModInfo.MC_VERSIONS + //dependencies = ModInfo.DEPENDENCIES, + //guiFactory = ModInfo.GUI_FACTORY, + //updateJSON = ModInfo.UPDATE_JSON ) public class ForgeCraft { - @Mod.Instance(ModInfo.MOD_ID) - public static ForgeCraft INSTANCE = new ForgeCraft(); + @Instance + public static ForgeCraft instance; - @SidedProxy(clientSide = "nmd.primal.forgecraft.proxy.ClientProxy", serverSide = "nmd.primal.forgecraft.proxy.ServerProxy") + @SidedProxy(clientSide = ModInfo.CLIENT_PROXY, serverSide = ModInfo.SERVER_PROXY) public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { - this.proxy.preInit(event); - + ModItems.init(); + ModItems.register(); } @EventHandler public void init(FMLInitializationEvent event) { - this.proxy.init(event); - ItemRenderRegister.registerItemRenderer(); - + //this.proxy.init(event); + proxy.init(); } @EventHandler public void postInit(FMLPostInitializationEvent event) { - this.proxy.postInit(event); - + //this.proxy.postInit(event); } - @EventHandler + /*@EventHandler public void serverStarting(FMLServerStartingEvent event) { //event.registerServerCommand(new PrimalCommand()); @@ -62,4 +60,5 @@ public class ForgeCraft //{ // return CONFIG_DIRECTORY; //} + */ } \ No newline at end of file diff --git a/src/main/java/nmd/primal/forgecraft/Item/ItemBase.java b/src/main/java/nmd/primal/forgecraft/Item/ItemBase.java deleted file mode 100644 index cd40e662..00000000 --- a/src/main/java/nmd/primal/forgecraft/Item/ItemBase.java +++ /dev/null @@ -1,22 +0,0 @@ -package nmd.primal.forgecraft.Item; - -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import nmd.primal.forgecraft.ForgeCraft; -import nmd.primal.forgecraft.ModInfo; - -/** - * Created by kitsu on 11/24/2016. - */ -public class ItemBase extends Item { - - protected String name; - - public ItemBase(String name) { - super(); - this.name = name; - this.setUnlocalizedName(name); - this.setRegistryName(name); - this.setCreativeTab(ModInfo.TAB_FORGECRAFT); - } -} diff --git a/src/main/java/nmd/primal/forgecraft/Item/ItemModelProvider.java b/src/main/java/nmd/primal/forgecraft/Item/ItemModelProvider.java deleted file mode 100644 index 5ccecd15..00000000 --- a/src/main/java/nmd/primal/forgecraft/Item/ItemModelProvider.java +++ /dev/null @@ -1,12 +0,0 @@ -package nmd.primal.forgecraft.Item; - -import net.minecraft.item.Item; - -/** - * Created by kitsu on 11/24/2016. - */ -public interface ItemModelProvider { - - void registerItemModel(Item item); - -} diff --git a/src/main/java/nmd/primal/forgecraft/Item/ItemOreDict.java b/src/main/java/nmd/primal/forgecraft/Item/ItemOreDict.java deleted file mode 100644 index cc163ce0..00000000 --- a/src/main/java/nmd/primal/forgecraft/Item/ItemOreDict.java +++ /dev/null @@ -1,8 +0,0 @@ -package nmd.primal.forgecraft.Item; - -/** - * Created by kitsu on 11/24/2016. - */ -public interface ItemOreDict { - void initOreDict(); -} diff --git a/src/main/java/nmd/primal/forgecraft/Item/ItemRenderRegister.java b/src/main/java/nmd/primal/forgecraft/Item/ItemRenderRegister.java deleted file mode 100644 index 2289773d..00000000 --- a/src/main/java/nmd/primal/forgecraft/Item/ItemRenderRegister.java +++ /dev/null @@ -1,25 +0,0 @@ -package nmd.primal.forgecraft.Item; - -import net.minecraft.client.Minecraft; -//import net.minecraft.client.resources.model.ModelResourceLocation; -//import net.minecraft.client.resources. -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.item.Item; -import nmd.primal.forgecraft.ModInfo; - -/** - * Created by kitsu on 11/24/2016. - */ -public class ItemRenderRegister { - - public static String modid = ModInfo.MOD_ID; - - public static void registerItemRenderer() { - reg(ModItems.test); - } - - public static void reg(Item item) { - Minecraft.getMinecraft().getRenderItem().getItemModelMesher() - .register(item, 0, new ModelResourceLocation(modid + ":" + item.getUnlocalizedName().substring(5), "inventory")); - } -} \ No newline at end of file diff --git a/src/main/java/nmd/primal/forgecraft/Item/ModItems.java b/src/main/java/nmd/primal/forgecraft/Item/ModItems.java deleted file mode 100644 index 1589a801..00000000 --- a/src/main/java/nmd/primal/forgecraft/Item/ModItems.java +++ /dev/null @@ -1,33 +0,0 @@ -package nmd.primal.forgecraft.Item; - -import net.minecraft.item.Item; -import net.minecraftforge.fml.common.registry.GameRegistry; -import nmd.primal.forgecraft.ModInfo; - -/** - * Created by kitsu on 11/24/2016. - */ -public class ModItems { - - public static Item test; - - public static void init(){ - - test = register(new ItemBase("test").setCreativeTab(ModInfo.TAB_FORGECRAFT)); - } - - - private static T register(T item) { - GameRegistry.register(item); - - if (item instanceof ItemModelProvider) { - ((ItemModelProvider)item).registerItemModel(item); - } - if (item instanceof ItemOreDict) { - ((ItemOreDict)item).initOreDict(); - } - - return item; - } - -} diff --git a/src/main/java/nmd/primal/forgecraft/ModInfo.java b/src/main/java/nmd/primal/forgecraft/ModInfo.java index 0bf9249c..73a38a1f 100644 --- a/src/main/java/nmd/primal/forgecraft/ModInfo.java +++ b/src/main/java/nmd/primal/forgecraft/ModInfo.java @@ -2,27 +2,50 @@ package nmd.primal.forgecraft; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; +import net.minecraftforge.fml.client.config.GuiConfigEntries; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; -import nmd.primal.forgecraft.Item.ModItems; +//import nmd.primal.forgecraft.Item.ModItems; /** * Created by kitsu on 11/24/2016. */ public class ModInfo { /** Mod Details**/ - public static final String DEPENDENCIES = "after:primal;"; + //public static final String DEPENDENCIES = "after:primal;"; public static final String MOD_ID = "forgecraft"; - public static final String MOD_PREFIX = MOD_ID + ":"; - public static final String MOD_CHANNEL = MOD_ID; + public static final String MOD_NAME = "Kitsu's ForgeCraft"; + //public static final String MOD_PREFIX = MOD_ID + ":"; + //public static final String MOD_CHANNEL = MOD_ID; public static final String MOD_VERSION = "0.0.0"; public static final String MC_VERSIONS = "[1.9.4, 1.11.0)"; /** Mod Structures **/ - public static final String COMMON_PROXY = "nmd.primal.forgecraft.proxy.CommonProxy"; + public static final String SERVER_PROXY = "nmd.primal.forgecraft.proxy.ServerProxy"; public static final String CLIENT_PROXY = "nmd.primal.forgecraft.proxy.ClientProxy"; - public static final String GUI_FACTORY = "nmd.primal.forgecraft.gui.GuiFactory"; - public static final String UPDATE_JSON = ""; + //public static final String GUI_FACTORY = "nmd.primal.forgecraft.gui.GuiFactory"; + //public static final String UPDATE_JSON = ""; + + public enum ForgecraftItems { + TEST("test", "ItemTest"), + CHEESE("cheese", "ItemCheese"); + + private String unlocalizedName; + private String registryName; + + ForgecraftItems(String unlocalizedName, String registryName) { + this.unlocalizedName = unlocalizedName; + this.registryName = registryName; + } + + public String getUnlocalizedName() { + return unlocalizedName; + } + public String getRegistryName() { + return registryName; + } + + } /** GUI IDs **/ //public static final int WORKTABLE_BASIC = 0; @@ -35,10 +58,11 @@ public class ModInfo { //public static final int OVEN = 8; /** Creative Tabs **/ - public static CreativeTabs TAB_FORGECRAFT = new CreativeTabs(MOD_ID) { + /*public static CreativeTabs TAB_FORGECRAFT = new CreativeTabs(MOD_ID) { @Override @SideOnly(Side.CLIENT) public Item getTabIconItem() { return ModItems.test; } }; + */ } \ No newline at end of file diff --git a/src/main/java/nmd/primal/forgecraft/init/ModItems.java b/src/main/java/nmd/primal/forgecraft/init/ModItems.java new file mode 100644 index 00000000..fc421076 --- /dev/null +++ b/src/main/java/nmd/primal/forgecraft/init/ModItems.java @@ -0,0 +1,42 @@ +package nmd.primal.forgecraft.init; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.main.GameConfiguration; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.fml.common.MinecraftDummyContainer; +import net.minecraftforge.fml.common.registry.GameRegistry; +import nmd.primal.forgecraft.ModInfo; +import nmd.primal.forgecraft.items.ItemCheese; +import nmd.primal.forgecraft.items.ItemTest; + +/** + * Created by kitsu on 11/26/2016. + */ +public class ModItems { + + public static Item test; + public static Item cheese; + + public static void init() { + + test = new ItemTest(); + cheese = new ItemCheese(); + } + + public static void register() { + + GameRegistry.register(test); + GameRegistry.register(cheese); + } + + public static void registerRenders() { + registerRender(cheese); + registerRender(test); + } + + private static void registerRender(Item item) { + Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(item.getRegistryName(), "inventory")); + } + +} diff --git a/src/main/java/nmd/primal/forgecraft/items/ItemCheese.java b/src/main/java/nmd/primal/forgecraft/items/ItemCheese.java new file mode 100644 index 00000000..010a28a9 --- /dev/null +++ b/src/main/java/nmd/primal/forgecraft/items/ItemCheese.java @@ -0,0 +1,18 @@ +package nmd.primal.forgecraft.items; + +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import nmd.primal.forgecraft.ModInfo; + +/** + * Created by kitsu on 11/26/2016. + */ +public class ItemCheese extends Item { + + public ItemCheese() { + super(); + setUnlocalizedName(ModInfo.ForgecraftItems.CHEESE.getUnlocalizedName()); + setRegistryName(ModInfo.ForgecraftItems.CHEESE.getRegistryName()); + setCreativeTab(CreativeTabs.MATERIALS); + } +} diff --git a/src/main/java/nmd/primal/forgecraft/items/ItemTest.java b/src/main/java/nmd/primal/forgecraft/items/ItemTest.java new file mode 100644 index 00000000..6b52c2ba --- /dev/null +++ b/src/main/java/nmd/primal/forgecraft/items/ItemTest.java @@ -0,0 +1,17 @@ +package nmd.primal.forgecraft.items; + +import net.minecraft.item.Item; +import net.minecraftforge.fml.common.Mod; +import nmd.primal.forgecraft.ModInfo; + +/** + * Created by kitsu on 11/26/2016. + */ +public class ItemTest extends Item { + + public ItemTest() { + setUnlocalizedName(ModInfo.ForgecraftItems.TEST.getUnlocalizedName()); + setRegistryName(ModInfo.ForgecraftItems.TEST.getRegistryName()); + } + +} diff --git a/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java b/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java index adde3322..e1493bb2 100644 --- a/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java +++ b/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java @@ -1,35 +1,19 @@ package nmd.primal.forgecraft.proxy; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.item.Item; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.common.event.FMLInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import nmd.primal.forgecraft.Item.ItemRenderRegister; -import nmd.primal.forgecraft.ModInfo; +import nmd.primal.forgecraft.init.ModItems; + +import static nmd.primal.forgecraft.init.ModItems.*; /** - * Created by kitsu on 11/24/2016. + * Created by kitsu on 11/26/2016. */ -public class ClientProxy extends CommonProxy { +public class ClientProxy implements CommonProxy { @Override - public void preInit(FMLPreInitializationEvent e) { - super.preInit(e); + public void init() { + + ModItems.registerRenders(); } - @Override - public void init(FMLInitializationEvent e) { - super.init(e); - //BlockRenderRegister.registerBlockRenderer(); - //ItemRenderRegister.registerItemRenderer(); - } - - @Override - public void postInit(FMLPostInitializationEvent e) { - super.postInit(e); - } -} \ No newline at end of file +} diff --git a/src/main/java/nmd/primal/forgecraft/proxy/CommonProxy.java b/src/main/java/nmd/primal/forgecraft/proxy/CommonProxy.java index 93e15158..ed0cf734 100644 --- a/src/main/java/nmd/primal/forgecraft/proxy/CommonProxy.java +++ b/src/main/java/nmd/primal/forgecraft/proxy/CommonProxy.java @@ -1,26 +1,10 @@ package nmd.primal.forgecraft.proxy; -import net.minecraft.item.Item; -import net.minecraftforge.fml.common.event.FMLInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import nmd.primal.forgecraft.Item.ModItems; - /** - * Created by kitsu on 11/24/2016. + * Created by kitsu on 11/26/2016. */ -public class CommonProxy { +public interface CommonProxy { - public void preInit(FMLPreInitializationEvent e) { - //ModBlocks.createBlocks(); - ModItems.init(); - } + public void init(); - public void init(FMLInitializationEvent e) { - - } - - public void postInit(FMLPostInitializationEvent e) { - - } } diff --git a/src/main/java/nmd/primal/forgecraft/proxy/ServerProxy.java b/src/main/java/nmd/primal/forgecraft/proxy/ServerProxy.java index 8b11a8be..a9baf1b9 100644 --- a/src/main/java/nmd/primal/forgecraft/proxy/ServerProxy.java +++ b/src/main/java/nmd/primal/forgecraft/proxy/ServerProxy.java @@ -1,27 +1,12 @@ package nmd.primal.forgecraft.proxy; -import net.minecraftforge.fml.common.event.FMLInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; - /** - * Created by kitsu on 11/24/2016. + * Created by kitsu on 11/26/2016. */ -public class ServerProxy extends CommonProxy { +public class ServerProxy implements CommonProxy { @Override - public void preInit(FMLPreInitializationEvent e) { - super.preInit(e); - } + public void init() { - @Override - public void init(FMLInitializationEvent e) { - super.init(e); } - - @Override - public void postInit(FMLPostInitializationEvent e) { - super.postInit(e); - } - -} \ No newline at end of file +} diff --git a/src/main/resources/assets.forgecraft/lang/en_US.lang b/src/main/resources/assets.forgecraft/lang/en_US.lang index e69de29b..5f085778 100644 --- a/src/main/resources/assets.forgecraft/lang/en_US.lang +++ b/src/main/resources/assets.forgecraft/lang/en_US.lang @@ -0,0 +1 @@ +item.test.name=test \ No newline at end of file diff --git a/src/main/resources/assets.forgecraft/models/item/ItemCheese.json b/src/main/resources/assets.forgecraft/models/item/ItemCheese.json new file mode 100644 index 00000000..7dbd52b6 --- /dev/null +++ b/src/main/resources/assets.forgecraft/models/item/ItemCheese.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "forgecraft:items/cheese" + } +} diff --git a/src/main/resources/assets.forgecraft/models/item/ItemTest.json b/src/main/resources/assets.forgecraft/models/item/ItemTest.json new file mode 100644 index 00000000..c8946c5f --- /dev/null +++ b/src/main/resources/assets.forgecraft/models/item/ItemTest.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "forgecraft:items/test" + } +} \ No newline at end of file diff --git a/src/main/resources/assets.forgecraft/models/item/test.json b/src/main/resources/assets.forgecraft/models/item/test.json deleted file mode 100644 index 986dda32..00000000 --- a/src/main/resources/assets.forgecraft/models/item/test.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent":"item/generated", - "textures": { - "layer0":"forgecraft:items/test" - } -} \ No newline at end of file diff --git a/src/main/resources/assets.forgecraft/textures/items/cheese.png b/src/main/resources/assets.forgecraft/textures/items/cheese.png new file mode 100644 index 00000000..7b34b134 Binary files /dev/null and b/src/main/resources/assets.forgecraft/textures/items/cheese.png differ diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index 9bc30672..a8e20cfc 100644 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -1,14 +1,14 @@ [{ "modid": "forgecraft", - "name": "ForgeCraft", + "name": "Kitsu's Forgecraft", "description": "Forge your Future", - "version": "0.1", - "mcversion": "1.10.2", + "version": "${version}", + "mcversion": "${mcversion}", "url": "", "updateUrl": "", "authorList": ["KitsuShadow"], "credits": "KitsuShadow, Fluid1C3, Ishvad, Sygmarr", "logoFile": "assets/primal/textures/logo.png", "screenshots": [], - "dependencies": [PrimalCore] + "dependencies": [] }] \ No newline at end of file