From 88533f0ed9e48e74494e75166fa742e1ec182f5a Mon Sep 17 00:00:00 2001
From: Nitorac <nitorac.r@gmail.com>
Date: Wed, 1 Jul 2020 01:50:23 +0200
Subject: [PATCH] Added plastic ore

---
 build.gradle                                  |  12 +--
 gradle/wrapper/gradle-wrapper.properties      |   5 +-
 .../com/example/examplemod/ExampleMod.java    |  84 ------------------
 .../java/fr/nitorac/minestic/Minestic.java    |  27 ++++++
 .../nitorac/minestic/blocks/PlasticBlock.java |  15 ++++
 .../nitorac/minestic/init/MinesticBlocks.java |  14 +++
 .../minestic/init/MinesticItemGroups.java     |  30 +++++++
 .../nitorac/minestic/init/MinesticItems.java  |  16 ++++
 .../minestic/blockstates/plastic_ore.json     |   7 ++
 .../resources/assets/minestic/lang/en_us.json |   3 +
 .../resources/assets/minestic/lang/fr_fr.json |   3 +
 .../minestic/models/block/plastic_ore.json    |   6 ++
 .../minestic/models/item/plastic_ore.json     |   3 +
 .../minestic/textures/block/plastic_ore.png   | Bin 0 -> 2009 bytes
 14 files changed, 133 insertions(+), 92 deletions(-)
 delete mode 100644 src/main/java/com/example/examplemod/ExampleMod.java
 create mode 100644 src/main/java/fr/nitorac/minestic/Minestic.java
 create mode 100644 src/main/java/fr/nitorac/minestic/blocks/PlasticBlock.java
 create mode 100644 src/main/java/fr/nitorac/minestic/init/MinesticBlocks.java
 create mode 100644 src/main/java/fr/nitorac/minestic/init/MinesticItemGroups.java
 create mode 100644 src/main/java/fr/nitorac/minestic/init/MinesticItems.java
 create mode 100644 src/main/resources/assets/minestic/blockstates/plastic_ore.json
 create mode 100644 src/main/resources/assets/minestic/lang/en_us.json
 create mode 100644 src/main/resources/assets/minestic/lang/fr_fr.json
 create mode 100644 src/main/resources/assets/minestic/models/block/plastic_ore.json
 create mode 100644 src/main/resources/assets/minestic/models/item/plastic_ore.json
 create mode 100644 src/main/resources/assets/minestic/textures/block/plastic_ore.png

diff --git a/build.gradle b/build.gradle
index d6a439c..f23a0ef 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 1d5b29f..95435ba 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 81c79d6..0000000
--- 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 0000000..d035464
--- /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 0000000..3022ccc
--- /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 0000000..fd43788
--- /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 0000000..994c066
--- /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 0000000..19e846a
--- /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 0000000..2f05101
--- /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 0000000..4d507cc
--- /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 0000000..4a2d2aa
--- /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 0000000..3b40db5
--- /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 0000000..3b962f0
--- /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
GIT binary patch
literal 2009
zcmcIld2AF_99~dB3dCZmNI@Ki5Q{kH&K@&iT}rp@78zPfrR5Kf*_pT9vAZ+Vnc1Ty
zps9!u!L)!W!2=HnF(^%ea7Y9~s<zgoiP!+Cf(E5PXgEz#D*C3~U5NqgKTh)Iy*Kl{
z@Av(V`OW&$1x4dBax!c-+qh!CuMEza)_80<yf-w4oNyYg`Ii_r8$R6{!xB5aF`I2f
zn_OOLR`T;XQH|h&qy_+<h-eUPv(5G<G(oHeCK3Quvf@Fn9yx|0vgAQ496ZTu`5+|w
z>vXWFZb7+NS1qy<>U{y3o!}rr1egMnh=dh`OL))$UJkCU#{`NDK+I|nnr9hAD)~|*
zU)2HP#7RsfNg8pnIOSv*C;2==lQc<?4uYaF%E^%oN4b#Xg+gn(6y(Z$g-Kg*=RrfJ
zsc{4mkH_)29ar@#f?`>gAZdc8F^Is7TE!F+m|{#%G5CNX>au3as)AUILO_k09uz7a
zbRnXpX%!<GCKxaxA!r1Jla@;<AkRM>8i}OQhFK7UR+4(}OKg<aYJeyMh8opHP!I!(
zIXz`e64Ph3s2(2hR1ygg1`!A|pfD<JN(-r`YJ}7W_>q2{_D19Kbs(6kUaqR)RH8~#
zEC@~EG?H5(E0P*FW?G7p2Y^p7fd{p+hLKLpPL|Vl&dzW&Ig6w@k{pEcunr`_6ov*?
zB{^6-6e!Pg#fo7HiU^8*9u$hgWm)1#XTU)LO2PuHUBrS;#*PJm!;P^NU>uUf(v)N$
z&;`%?R55CW&pJO?wvsABj&y`LfdVYU1RWS9*cps;GcL?cJAxP)bUB=)MA5+RNU@dZ
zGW>Fc@V%^-DhV<M8Pd&)P6-PFhQ{b1!(c2exiG;gkqql}y8|v3MI@06s(M6#bs|TE
zDnMvT6^i_$CSMJ!I<HDF=60)^Av^TKFB>p*waM>e5vWP7!ZI>YbetesweCShE6G4Y
zlaJ;5L~m$12WjIW07)N`{6UzZ2F<vjgS;vj>HjP);z8mKA@*?TLreVsC_NcgF(fEe
z05(nnwVWZW7BiR>;@|licy~`bO2J`|vzF=R3ODKY3=~MM!{$42>8jH<+pvShzP$3>
zMKiuzV$7VAIbuae>(Q*d3GeqWJvRQOjP{K)+5$(m&-c#fOZwPVpRYV2(TA5cd%fO+
z-Mx42bkAt?Pk8go^VbvZDf4!2>YMvv1Dx7-l-|C5`}Ebmo4@z3K31{2tEs7J-M2kA
zSM=Ph<=*2aZ!Fy1bz>^t)DdW@{A}@MvZXgR=7-)`$FF-gG&eW@s7&nGi+m+qGIO?W
z>g$WgvzIMj{>922SugG^Yn-C}qO(uboV;*i3!1%k?5n$WJ?pQ3Cj0xYtl^UaEy&m>
z6L@iFXJ^fGztwrJ?K^WtbAQ_P^8UMb@79mLRp*Hw`lvOxeuR2_6xPr#{qg6~g=K2}
zp^{yjSN~KqZsa3vUsp!gesU%}FRC~vPrS^ZEO=wf2dAbLPWbuU_VziMu2Ad9r(OP$
zbvMlBS#Q7g)N%dr{+vl}ZS(j$2jnp|^BQ`oi;u4jMAl^9>UnhCJ1vQ9KTSD`K3;h3
zn>ecF9GG@F`}GWS&#7vB&bz+Q!S1%;z9p?B!(1#oz_aJhp55Qma`Mue&d!qITP_rB
z@N6UY=H}?Lr*_*SS6W7OymfBowxj1OvSL)ocYSmBjaU9E1V#Oe`yJNLx42+|Z_nHn
G^?w5q(!oFg

literal 0
HcmV?d00001

-- 
GitLab