diff --git a/build.gradle b/build.gradle index d6a439c62a6cb9bde090f3e97592001eb65e77c2..f23a0efcd6e037a660fa7e94a21b11a1ceefd4ba 100644 --- a/build.gradle +++ b/build.gradle @@ -13,9 +13,9 @@ apply plugin: 'net.minecraftforge.gradle' apply plugin: 'eclipse' apply plugin: 'maven-publish' -version = '1.0' -group = 'com.yourname.modid' // http://maven.apache.org/guides/mini/guide-naming-conventions.html -archivesBaseName = 'modid' +version = '1.16.1-1.0.0' +group = 'fr.nitorac.minestic' // http://maven.apache.org/guides/mini/guide-naming-conventions.html +archivesBaseName = 'minestic' sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' // Need this here so eclipse task generates correctly. @@ -116,12 +116,12 @@ dependencies { jar { manifest { attributes([ - "Specification-Title": "examplemod", - "Specification-Vendor": "examplemodsareus", + "Specification-Title": "Minestic", + "Specification-Vendor": "Nitorac", "Specification-Version": "1", // We are version 1 of ourselves "Implementation-Title": project.name, "Implementation-Version": "${version}", - "Implementation-Vendor" :"examplemodsareus", + "Implementation-Vendor" :"Nitorac", "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ") ]) } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 1d5b29fbd59593cbadef9e8c2f5129d1d4391584..95435ba69ccb0f029c6909cd7106c2ea889c5479 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,6 @@ +#Tue Jun 30 21:38:01 CEST 2020 +distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-all.zip distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-bin.zip +zipStoreBase=GRADLE_USER_HOME diff --git a/src/main/java/com/example/examplemod/ExampleMod.java b/src/main/java/com/example/examplemod/ExampleMod.java deleted file mode 100644 index 81c79d671f02021fa43edca2cb459d8d8dfe5425..0000000000000000000000000000000000000000 --- a/src/main/java/com/example/examplemod/ExampleMod.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.example.examplemod; - -import net.minecraft.block.Block; -import net.minecraft.block.Blocks; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.RegistryEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.InterModComms; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; -import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; -import net.minecraftforge.fml.event.lifecycle.InterModEnqueueEvent; -import net.minecraftforge.fml.event.lifecycle.InterModProcessEvent; -import net.minecraftforge.fml.event.server.FMLServerStartingEvent; -import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; - -import java.util.stream.Collectors; - -// The value here should match an entry in the META-INF/mods.toml file -@Mod("minestic") -public class ExampleMod -{ - // Directly reference a log4j logger. - private static final Logger LOGGER = LogManager.getLogger(); - - public ExampleMod() { - // Register the setup method for modloading - FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup); - // Register the enqueueIMC method for modloading - FMLJavaModLoadingContext.get().getModEventBus().addListener(this::enqueueIMC); - // Register the processIMC method for modloading - FMLJavaModLoadingContext.get().getModEventBus().addListener(this::processIMC); - // Register the doClientStuff method for modloading - FMLJavaModLoadingContext.get().getModEventBus().addListener(this::doClientStuff); - - // Register ourselves for server and other game events we are interested in - MinecraftForge.EVENT_BUS.register(this); - } - - private void setup(final FMLCommonSetupEvent event) - { - // some preinit code - LOGGER.info("HELLO FROM PREINIT"); - LOGGER.info("DIRT BLOCK >> {}", Blocks.DIRT.getRegistryName()); - } - - private void doClientStuff(final FMLClientSetupEvent event) { - // do something that can only be done on the client - LOGGER.info("Got game settings {}", event.getMinecraftSupplier().get().gameSettings); - } - - private void enqueueIMC(final InterModEnqueueEvent event) - { - // some example code to dispatch IMC to another mod - InterModComms.sendTo("minestic", "helloworld", () -> { LOGGER.info("Hello world from the MDK"); return "Hello world";}); - } - - private void processIMC(final InterModProcessEvent event) - { - // some example code to receive and process InterModComms from other mods - LOGGER.info("Got IMC {}", event.getIMCStream(). - map(m->m.getMessageSupplier().get()). - collect(Collectors.toList())); - } - // You can use SubscribeEvent and let the Event Bus discover methods to call - @SubscribeEvent - public void onServerStarting(FMLServerStartingEvent event) { - // do something when the server starts - LOGGER.info("HELLO from server starting"); - } - - // You can use EventBusSubscriber to automatically subscribe events on the contained class (this is subscribing to the MOD - // Event bus for receiving Registry Events) - @Mod.EventBusSubscriber(bus=Mod.EventBusSubscriber.Bus.MOD) - public static class RegistryEvents { - @SubscribeEvent - public static void onBlocksRegistry(final RegistryEvent.Register<Block> blockRegistryEvent) { - // register a new block here - LOGGER.info("HELLO from Register Block"); - } - } -} diff --git a/src/main/java/fr/nitorac/minestic/Minestic.java b/src/main/java/fr/nitorac/minestic/Minestic.java new file mode 100644 index 0000000000000000000000000000000000000000..d03546451c1e21d9c63402bef4788b879e93433b --- /dev/null +++ b/src/main/java/fr/nitorac/minestic/Minestic.java @@ -0,0 +1,27 @@ +package fr.nitorac.minestic; + +import fr.nitorac.minestic.init.MinesticBlocks; +import fr.nitorac.minestic.init.MinesticItems; +import net.minecraftforge.eventbus.api.IEventBus; +import net.minecraftforge.fml.ModLoadingContext; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +@Mod(Minestic.MODID) +public class Minestic +{ + private static final Logger LOGGER = LogManager.getLogger(); + public static final String MODID = "minestic"; + + public Minestic() { + LOGGER.debug("Stating Minestic ..."); + + final ModLoadingContext modLoadingContext = ModLoadingContext.get(); + final IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); + + MinesticBlocks.BLOCKS.register(modEventBus); + MinesticItems.ITEMS.register(modEventBus); + } +} diff --git a/src/main/java/fr/nitorac/minestic/blocks/PlasticBlock.java b/src/main/java/fr/nitorac/minestic/blocks/PlasticBlock.java new file mode 100644 index 0000000000000000000000000000000000000000..3022ccccc12c7f462cf66911ea642b118802f0ae --- /dev/null +++ b/src/main/java/fr/nitorac/minestic/blocks/PlasticBlock.java @@ -0,0 +1,15 @@ +package fr.nitorac.minestic.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; + +public class PlasticBlock extends Block { + public PlasticBlock() { + super(Block.Properties + .create(Material.ROCK) + .sound(SoundType.STONE) + .hardnessAndResistance(3.0F, 3.0F) + .slipperiness(1.05F)); + } +} diff --git a/src/main/java/fr/nitorac/minestic/init/MinesticBlocks.java b/src/main/java/fr/nitorac/minestic/init/MinesticBlocks.java new file mode 100644 index 0000000000000000000000000000000000000000..fd437887f52ea4cf7159370566d6baca9f345139 --- /dev/null +++ b/src/main/java/fr/nitorac/minestic/init/MinesticBlocks.java @@ -0,0 +1,14 @@ +package fr.nitorac.minestic.init; + +import fr.nitorac.minestic.Minestic; +import fr.nitorac.minestic.blocks.PlasticBlock; +import net.minecraft.block.Block; +import net.minecraftforge.fml.RegistryObject; +import net.minecraftforge.registries.DeferredRegister; +import net.minecraftforge.registries.ForgeRegistries; + +public class MinesticBlocks { + public static final DeferredRegister<Block> BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, Minestic.MODID); + + public static final RegistryObject<Block> PLASTIC_ORE = BLOCKS.register("plastic_ore", PlasticBlock::new); +} diff --git a/src/main/java/fr/nitorac/minestic/init/MinesticItemGroups.java b/src/main/java/fr/nitorac/minestic/init/MinesticItemGroups.java new file mode 100644 index 0000000000000000000000000000000000000000..994c066f0331f4ac9812241f4b03413c71c206e7 --- /dev/null +++ b/src/main/java/fr/nitorac/minestic/init/MinesticItemGroups.java @@ -0,0 +1,30 @@ +package fr.nitorac.minestic.init; + +import fr.nitorac.minestic.Minestic; +import net.minecraft.item.ItemGroup; +import net.minecraft.item.ItemStack; + +import javax.annotation.Nonnull; +import java.util.function.Supplier; + +public class MinesticItemGroups { + public static final ItemGroup MAIN_ITEM_GROUP = new MinesticMainItemGroup(Minestic.MODID, () -> new ItemStack(MinesticBlocks.PLASTIC_ORE.get().asItem())); + + public static final class MinesticMainItemGroup extends ItemGroup { + + @Nonnull + private final Supplier<ItemStack> iconSupplier; + + public MinesticMainItemGroup(@Nonnull final String name, @Nonnull final Supplier<ItemStack> iconSupplier) { + super(name); + this.iconSupplier = iconSupplier; + } + + @Override + @Nonnull + public ItemStack createIcon() { + return iconSupplier.get(); + } + + } +} diff --git a/src/main/java/fr/nitorac/minestic/init/MinesticItems.java b/src/main/java/fr/nitorac/minestic/init/MinesticItems.java new file mode 100644 index 0000000000000000000000000000000000000000..19e846a151a2e593c93c459293ba7f1e60f949ac --- /dev/null +++ b/src/main/java/fr/nitorac/minestic/init/MinesticItems.java @@ -0,0 +1,16 @@ +package fr.nitorac.minestic.init; + +import fr.nitorac.minestic.Minestic; +import fr.nitorac.minestic.blocks.PlasticBlock; +import net.minecraft.block.Block; +import net.minecraft.item.BlockItem; +import net.minecraft.item.Item; +import net.minecraftforge.fml.RegistryObject; +import net.minecraftforge.registries.DeferredRegister; +import net.minecraftforge.registries.ForgeRegistries; + +public class MinesticItems { + public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, Minestic.MODID); + + public static final RegistryObject<Item> PLASTIC_ORE_ITEM = ITEMS.register("plastic_ore", () -> new BlockItem(MinesticBlocks.PLASTIC_ORE.get(), new Item.Properties().group(MinesticItemGroups.MAIN_ITEM_GROUP))); +} diff --git a/src/main/resources/assets/minestic/blockstates/plastic_ore.json b/src/main/resources/assets/minestic/blockstates/plastic_ore.json new file mode 100644 index 0000000000000000000000000000000000000000..2f051015fc781a41f20b91202f8770e5eba7f6b9 --- /dev/null +++ b/src/main/resources/assets/minestic/blockstates/plastic_ore.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "minestic:block/plastic_ore" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/minestic/lang/en_us.json b/src/main/resources/assets/minestic/lang/en_us.json new file mode 100644 index 0000000000000000000000000000000000000000..4d507cc3affcb5b4efd7c03adefaab2d4d81e979 --- /dev/null +++ b/src/main/resources/assets/minestic/lang/en_us.json @@ -0,0 +1,3 @@ +{ + "block.minestic.plastic_ore": "Plastic ore" +} \ No newline at end of file diff --git a/src/main/resources/assets/minestic/lang/fr_fr.json b/src/main/resources/assets/minestic/lang/fr_fr.json new file mode 100644 index 0000000000000000000000000000000000000000..4a2d2aa2ae84a3ea89c6cc29be158bba830dcd86 --- /dev/null +++ b/src/main/resources/assets/minestic/lang/fr_fr.json @@ -0,0 +1,3 @@ +{ + "block.minestic.plastic_ore": "Minerai de plastique" +} \ No newline at end of file diff --git a/src/main/resources/assets/minestic/models/block/plastic_ore.json b/src/main/resources/assets/minestic/models/block/plastic_ore.json new file mode 100644 index 0000000000000000000000000000000000000000..3b40db514d0c3e8b3cd0786ce62323daa77ba0c1 --- /dev/null +++ b/src/main/resources/assets/minestic/models/block/plastic_ore.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "minestic:block/plastic_ore" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/minestic/models/item/plastic_ore.json b/src/main/resources/assets/minestic/models/item/plastic_ore.json new file mode 100644 index 0000000000000000000000000000000000000000..3b962f0e6c27eb17add53569695ceeede29d9257 --- /dev/null +++ b/src/main/resources/assets/minestic/models/item/plastic_ore.json @@ -0,0 +1,3 @@ +{ + "parent": "minestic:block/plastic_ore" +} \ No newline at end of file diff --git a/src/main/resources/assets/minestic/textures/block/plastic_ore.png b/src/main/resources/assets/minestic/textures/block/plastic_ore.png new file mode 100644 index 0000000000000000000000000000000000000000..4aef6b532e9c1c68cb7b2401bb6dd76b17e8df10 Binary files /dev/null and b/src/main/resources/assets/minestic/textures/block/plastic_ore.png differ