Skip to content

Commit

Permalink
Merge pull request #19 from GiantTreeLP/1.9.4-wip
Browse files Browse the repository at this point in the history
Finish NeoTech implementation (when it comes to 1.9.4)
  • Loading branch information
GiantTreeLP committed Jun 13, 2016
2 parents 28240e9 + c85ff01 commit 7a5b0b3
Show file tree
Hide file tree
Showing 30 changed files with 316 additions and 63 deletions.
4 changes: 2 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,12 @@ compileJava {
targetCompatibility = 1.8
}

version = "1.9.4-0.3.5"
version = "1.9.4-0.3.6"
group = "gtlp.prettyniceores" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "prettyniceores"

minecraft {
version = "1.9.4-12.17.0.1954"
version = "1.9.4-12.17.0.1962"
runDir = "run"

// the mappings can be changed at any time, and must be in the following format.
Expand Down
17 changes: 17 additions & 0 deletions src/main/java/gtlp/prettyniceores/Constants.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package gtlp.prettyniceores;

/**
* Created by Marv1 on 09.06.2016.
*/
public final class Constants {

public static final String MOD_ID = "prettyniceores";
public static final String VERSION = "1.9.4-0.3.6";
public static final String UPDATE_URL = "https://raw.githubusercontent.com/GiantTreeLP/PrettyNiceOres/1.9.4/versions.json";
public static final String NAME = "PrettyNiceOres";
public static final String DEPENDENCIES = "after:neotech;after:tconstruct";
protected static final String MC_VERSION = "[1.9.4,)";

private Constants() {
}
}
42 changes: 23 additions & 19 deletions src/main/java/gtlp/prettyniceores/PrettyNiceOres.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
package gtlp.prettyniceores;

import gtlp.prettyniceores.blocks.*;
import gtlp.prettyniceores.blocks.modded.NiceCopperOre;
import gtlp.prettyniceores.blocks.modded.NiceLeadOre;
import gtlp.prettyniceores.blocks.modded.NiceSilverOre;
import gtlp.prettyniceores.blocks.modded.NiceTinOre;
import gtlp.prettyniceores.blocks.vanilla.*;
import gtlp.prettyniceores.common.CommonProxy;
import gtlp.prettyniceores.events.OnPlayerLoginEvent;
import gtlp.prettyniceores.generators.NiceOresGenerator;
Expand Down Expand Up @@ -33,30 +37,30 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Stream;

import static net.minecraftforge.oredict.RecipeSorter.Category.SHAPELESS;

/**
* Created by Marv1 on 22.05.2016 as part of forge-modding-1.9.
*/
@Mod(modid = PrettyNiceOres.MOD_ID,
version = PrettyNiceOres.VERSION,
@Mod(modid = Constants.MOD_ID,
version = Constants.VERSION,
canBeDeactivated = true,
name = "PrettyNiceOres",
updateJSON = PrettyNiceOres.UPDATE_URL,
dependencies = "after:neotech;after:tconstruct",
acceptedMinecraftVersions = "[1.9.4,)")
name = Constants.NAME,
updateJSON = Constants.UPDATE_URL,
dependencies = Constants.DEPENDENCIES,
acceptedMinecraftVersions = Constants.MC_VERSION)

public class PrettyNiceOres {
public static final String MOD_ID = "prettyniceores";
public static final String VERSION = "1.9.4-0.3.5";
public static final Map<String, Block> blockList = new HashMap<>();
public static final Map<String, Item> itemList = new HashMap<>();
public static final Map<String, ItemBlock> itemBlockList = new HashMap<>();
public static final Logger LOGGER = LogManager.getLogger(MOD_ID);
public static final String UPDATE_URL = "https://raw.githubusercontent.com/GiantTreeLP/PrettyNiceOres/1.9.4/versions.json";
final static Block[] modBlocks = {new NiceCopperOre()};
public static final Logger LOGGER = LogManager.getLogger(Constants.MOD_ID);

@SidedProxy(clientSide = "gtlp.prettyniceores.client.ClientProxy", serverSide = "gtlp.prettyniceores.common.CommonProxy")
public static CommonProxy proxy;

public List<IRecipe> recipeList = new ArrayList<>();

/**
Expand All @@ -66,7 +70,7 @@ public class PrettyNiceOres {
*/
@Mod.EventHandler
public void preInit(FMLPreInitializationEvent event) {
RecipeSorter.register(MOD_ID + ":shapelessoredict", ShapelessOreDictRecipe.class, SHAPELESS, "after:minecraft:shapeless");
RecipeSorter.register(Constants.MOD_ID + ":shapelessoredict", ShapelessOreDictRecipe.class, SHAPELESS, "after:minecraft:shapeless");

addVanillaOres();
addModOres();
Expand Down Expand Up @@ -121,13 +125,13 @@ private void addVanillaOres() {
* Adds all replacements for mod ores, if they have been created by any other mod.
*/
private void addModOres() {
for (Block block : modBlocks) {
if (block instanceof IOreDictCompatible && block instanceof INamedBlock) {
if (OreDictionary.doesOreNameExist(((IOreDictCompatible) block).getOreDictType())) {
Block[] blockArray = {new NiceCopperOre(), new NiceTinOre(), new NiceSilverOre(), new NiceLeadOre()};

Stream.of(blockArray).filter(block -> block instanceof IOreDictCompatible && block instanceof INamedBlock)
.filter(block -> OreDictionary.doesOreNameExist(((IOreDictCompatible) block).getOreDictType()))
.forEach(block -> {
blockList.put(((INamedBlock) block).getName(), block);
}
}
}
});
}

private void addModItems() {
Expand Down
5 changes: 3 additions & 2 deletions src/main/java/gtlp/prettyniceores/blocks/NiceOreBase.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package gtlp.prettyniceores.blocks;

import gtlp.prettyniceores.Constants;
import gtlp.prettyniceores.PrettyNiceOres;
import net.minecraft.block.Block;
import net.minecraft.block.BlockOre;
Expand Down Expand Up @@ -40,7 +41,7 @@ public abstract class NiceOreBase extends BlockOre {
*/
protected NiceOreBase(String name) {
super();
setRegistryName(PrettyNiceOres.MOD_ID, name);
setRegistryName(Constants.MOD_ID, name);
setUnlocalizedName(name);
setDefaultState(blockState.getBaseState());
setHardness(10f);
Expand Down Expand Up @@ -79,7 +80,7 @@ public final boolean removedByPlayer(@Nonnull IBlockState state, World world, @N
stopWatch.start();
getAdjacentBlocks(world, pos, world.getBlockState(pos).getBlock(), player, itemMainhand, blocks);
stopWatch.stop();
PrettyNiceOres.LOGGER.printf(Level.INFO, "Removed %d blocks in %d ns", blocks.get(), stopWatch.getNanoTime());
PrettyNiceOres.LOGGER.printf(Level.INFO, "Removed %d blocks in %d ms", blocks.get(), stopWatch.getSplitTime());
itemMainhand.attemptDamageItem(itemMainhand.getItemDamage() % 2 == 0 ? 1 : 2, world.rand);
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
package gtlp.prettyniceores.blocks;
package gtlp.prettyniceores.blocks.modded;

import gtlp.prettyniceores.blocks.NiceOreBase;
import gtlp.prettyniceores.interfaces.INamedBlock;
import gtlp.prettyniceores.interfaces.IOreDictCompatible;
import gtlp.prettyniceores.interfaces.ISmeltable;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraftforge.oredict.OreDictionary;

Expand All @@ -16,7 +18,7 @@ public class NiceCopperOre extends NiceOreBase implements ISmeltable, IOreDictCo

public NiceCopperOre() {
super(NAME);
setHarvestLevel("pickaxe", 1);
setHarvestLevel("pickaxe", Item.ToolMaterial.STONE.getHarvestLevel());
}

@Override
Expand Down
42 changes: 42 additions & 0 deletions src/main/java/gtlp/prettyniceores/blocks/modded/NiceLeadOre.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package gtlp.prettyniceores.blocks.modded;

import gtlp.prettyniceores.blocks.NiceOreBase;
import gtlp.prettyniceores.interfaces.INamedBlock;
import gtlp.prettyniceores.interfaces.IOreDictCompatible;
import gtlp.prettyniceores.interfaces.ISmeltable;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraftforge.oredict.OreDictionary;

/**
* Created by Marv1 on 23.05.2016 as part of forge-modding-1.9.
*/
public class NiceLeadOre extends NiceOreBase implements ISmeltable, IOreDictCompatible, INamedBlock {

public static final String NAME = "nice_lead_ore";
public static final String OREDICTTYPE = "oreLead";

public NiceLeadOre() {
super(NAME);
setHarvestLevel("pickaxe", Item.ToolMaterial.STONE.getHarvestLevel());
}

@Override
public final ItemStack getSmeltingResult() {
return OreDictionary.getOres("ingotLead").get(0);
}

@Override
public final float getSmeltingExp() {
return 2f;
}

@Override
public final String getOreDictType() {
return OREDICTTYPE;
}

public final String getName() {
return NAME;
}
}
42 changes: 42 additions & 0 deletions src/main/java/gtlp/prettyniceores/blocks/modded/NiceSilverOre.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package gtlp.prettyniceores.blocks.modded;

import gtlp.prettyniceores.blocks.NiceOreBase;
import gtlp.prettyniceores.interfaces.INamedBlock;
import gtlp.prettyniceores.interfaces.IOreDictCompatible;
import gtlp.prettyniceores.interfaces.ISmeltable;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraftforge.oredict.OreDictionary;

/**
* Created by Marv1 on 09.06.2016.
*/
public class NiceSilverOre extends NiceOreBase implements ISmeltable, IOreDictCompatible, INamedBlock {

public static final String NAME = "nice_silver_ore";
public static final String OREDICTTYPE = "oreSilver";

public NiceSilverOre() {
super(NAME);
setHarvestLevel("pickaxe", Item.ToolMaterial.IRON.getHarvestLevel());
}

@Override
public final ItemStack getSmeltingResult() {
return OreDictionary.getOres("ingotSilver").get(0);
}

@Override
public final float getSmeltingExp() {
return 2f;
}

@Override
public final String getOreDictType() {
return OREDICTTYPE;
}

public final String getName() {
return NAME;
}
}
42 changes: 42 additions & 0 deletions src/main/java/gtlp/prettyniceores/blocks/modded/NiceTinOre.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package gtlp.prettyniceores.blocks.modded;

import gtlp.prettyniceores.blocks.NiceOreBase;
import gtlp.prettyniceores.interfaces.INamedBlock;
import gtlp.prettyniceores.interfaces.IOreDictCompatible;
import gtlp.prettyniceores.interfaces.ISmeltable;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraftforge.oredict.OreDictionary;

/**
* Created by Marv1 on 09.06.2016.
*/
public class NiceTinOre extends NiceOreBase implements ISmeltable, IOreDictCompatible, INamedBlock {

public static final String NAME = "nice_tin_ore";
public static final String OREDICTTYPE = "oreTin";

public NiceTinOre() {
super(NAME);
setHarvestLevel("pickaxe", Item.ToolMaterial.IRON.getHarvestLevel());
}

@Override
public final ItemStack getSmeltingResult() {
return OreDictionary.getOres("ingotTin").get(0);
}

@Override
public final float getSmeltingExp() {
return 2f;
}

@Override
public final String getOreDictType() {
return OREDICTTYPE;
}

public final String getName() {
return NAME;
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package gtlp.prettyniceores.blocks;
package gtlp.prettyniceores.blocks.vanilla;

import gtlp.prettyniceores.blocks.NiceOreBase;
import gtlp.prettyniceores.interfaces.INamedBlock;
import gtlp.prettyniceores.interfaces.IOreDictCompatible;
import gtlp.prettyniceores.interfaces.ISmeltable;
Expand All @@ -26,7 +27,7 @@ public class NiceCoalOre extends NiceOreBase implements ISmeltable, IOreDictComp

public NiceCoalOre() {
super(NAME);
setHarvestLevel("pickaxe", 0);
setHarvestLevel("pickaxe", Item.ToolMaterial.WOOD.getHarvestLevel());
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package gtlp.prettyniceores.blocks;
package gtlp.prettyniceores.blocks.vanilla;

import gtlp.prettyniceores.blocks.NiceOreBase;
import gtlp.prettyniceores.interfaces.INamedBlock;
import gtlp.prettyniceores.interfaces.IOreDictCompatible;
import gtlp.prettyniceores.interfaces.ISmeltable;
Expand Down Expand Up @@ -27,7 +28,7 @@ public class NiceDiamondOre extends NiceOreBase implements ISmeltable, IOreDictC
public NiceDiamondOre() {
super(NAME);
setLightLevel(2 / 15f);
setHarvestLevel("pickaxe", 2);
setHarvestLevel("pickaxe", Item.ToolMaterial.IRON.getHarvestLevel());
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package gtlp.prettyniceores.blocks;
package gtlp.prettyniceores.blocks.vanilla;

import gtlp.prettyniceores.blocks.NiceOreBase;
import gtlp.prettyniceores.interfaces.INamedBlock;
import gtlp.prettyniceores.interfaces.IOreDictCompatible;
import gtlp.prettyniceores.interfaces.ISmeltable;
Expand Down Expand Up @@ -27,7 +28,7 @@ public class NiceEmeraldOre extends NiceOreBase implements ISmeltable, IOreDictC
public NiceEmeraldOre() {
super(NAME);
setLightLevel(2 / 15f);
setHarvestLevel("pickaxe", 2);
setHarvestLevel("pickaxe", Item.ToolMaterial.IRON.getHarvestLevel());
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
package gtlp.prettyniceores.blocks;
package gtlp.prettyniceores.blocks.vanilla;

import gtlp.prettyniceores.blocks.NiceOreBase;
import gtlp.prettyniceores.interfaces.INamedBlock;
import gtlp.prettyniceores.interfaces.IOreDictCompatible;
import gtlp.prettyniceores.interfaces.ISmeltable;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;

/**
Expand All @@ -16,7 +18,7 @@ public class NiceGoldOre extends NiceOreBase implements ISmeltable, IOreDictComp

public NiceGoldOre() {
super(NAME);
setHarvestLevel("pickaxe", 2);
setHarvestLevel("pickaxe", Item.ToolMaterial.IRON.getHarvestLevel());
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
package gtlp.prettyniceores.blocks;
package gtlp.prettyniceores.blocks.vanilla;

import gtlp.prettyniceores.blocks.NiceOreBase;
import gtlp.prettyniceores.interfaces.INamedBlock;
import gtlp.prettyniceores.interfaces.IOreDictCompatible;
import gtlp.prettyniceores.interfaces.ISmeltable;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;

/**
Expand All @@ -16,7 +18,7 @@ public class NiceIronOre extends NiceOreBase implements ISmeltable, IOreDictComp

public NiceIronOre() {
super(NAME);
setHarvestLevel("pickaxe", 1);
setHarvestLevel("pickaxe", Item.ToolMaterial.STONE.getHarvestLevel());
}

@Override
Expand Down
Loading

0 comments on commit 7a5b0b3

Please sign in to comment.