Added first buildcraft achievements and achievement page :-)

-Added a craftingHandler
-Added "A bit rough around the edges"
-Added "Hard as a rock"
-Added "Is it stainless?"
-Added "No, it isn't made of honey"
-Added "Shiny!"
This commit is contained in:
AEnterprise 2014-03-12 14:10:46 +01:00
parent 1bb430bfcf
commit 19d6bff276
3 changed files with 63 additions and 0 deletions

View file

@ -224,3 +224,14 @@ tip.PipeItemsEmzuli=Gate controlled extraction pipe
tip.PipePowerWood=Power Input Pipe
tip.PipePowerIron=Selectable Limiter Pipe
tip.PipeStructureCobblestone=Support pipe
achievement.woodenGearAchievement=A bit rough around the edges
achievement.woodenGearAchievement.desc=Craft a wooden gear
achievement.stoneGearAchievement=Hard as a rock
achievement.stoneGearAchievement.desc=Upgrade a wooden gear to a stone gear
achievement.ironGearAchievement=Is it stainless?
achievement.ironGearAchievement.desc=Upgrade a stone gear to a iron gear
achievement.goldGearAchievement=No, it isn't made of honey
achievement.goldGearAchievement.desc=Upgrade a iron gear to a gold gear
achievement.diamondGearAchievement=Shiny!
achievement.diamondGearAchievement.desc=Upgrade a gold gear to a diamond gear

View file

@ -24,10 +24,12 @@ import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.network.Packet;
import net.minecraft.stats.Achievement;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import net.minecraftforge.client.event.TextureStitchEvent;
import net.minecraftforge.common.config.Configuration;
import net.minecraftforge.common.AchievementPage;
import net.minecraftforge.common.IPlantable;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.common.config.Property;
@ -75,6 +77,7 @@ import buildcraft.core.triggers.TriggerInventory;
import buildcraft.core.triggers.TriggerInventoryLevel;
import buildcraft.core.triggers.TriggerMachine;
import buildcraft.core.utils.BCLog;
import buildcraft.core.utils.CraftingHandler;
import buildcraft.core.recipes.AssemblyRecipeManager;
import buildcraft.core.recipes.IntegrationRecipeManager;
import buildcraft.core.triggers.TriggerRedstoneInput;
@ -165,6 +168,13 @@ public class BuildCraftCore extends BuildCraftMod {
@Instance("BuildCraft|Core")
public static BuildCraftCore instance;
public static Achievement woodenGearAchievement;
public static Achievement stoneGearAchievement;
public static Achievement ironGearAchievement;
public static Achievement goldGearAchievement;
public static Achievement diamondGearAchievement;
public static AchievementPage BuildcraftAchievments;
@EventHandler
public void loadConfiguration(FMLPreInitializationEvent evt) {
@ -292,8 +302,11 @@ public class BuildCraftCore extends BuildCraftMod {
EntityList.stringToClassMapping.remove("BuildCraft|Core.bcLaser");
EntityList.stringToClassMapping.remove("BuildCraft|Core.bcEnergyLaser");
FMLCommonHandler.instance().bus().register(new CraftingHandler());
CoreProxy.proxy.initializeRendering();
CoreProxy.proxy.initializeEntityRendering();
}
@EventHandler
@ -348,4 +361,14 @@ public class BuildCraftCore extends BuildCraftMod {
public void processIMCRequests(FMLInterModComms.IMCEvent event) {
InterModComms.processIMC(event);
}
@EventHandler
public void load(FMLInitializationEvent event) {
woodenGearAchievement = new Achievement("achievement.woodenGear", "woodenGearAchievement", 0, 0,woodenGearItem, null).registerStat();
stoneGearAchievement = new Achievement("achievement.stoneGear", "stoneGearAchievement", 2, 0, stoneGearItem, woodenGearAchievement).registerStat();
ironGearAchievement = new Achievement("achievement.ironGear", "ironGearAchievement", 4, 0, ironGearItem, stoneGearAchievement).registerStat();
goldGearAchievement = new Achievement("achievement.goldGear", "goldGearAchievement", 6, 0, goldGearItem, ironGearAchievement).registerStat();
diamondGearAchievement = new Achievement("achievement.diamondGear", "diamondGearAchievement", 8, 0, diamondGearItem, goldGearAchievement).registerStat();
BuildcraftAchievments = new AchievementPage("Buildcraft", woodenGearAchievement, stoneGearAchievement, ironGearAchievement, goldGearAchievement, diamondGearAchievement);
AchievementPage.registerAchievementPage(BuildcraftAchievments);
}
}

View file

@ -0,0 +1,29 @@
package buildcraft.core.utils;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent;
import buildcraft.BuildCraftCore;
public class CraftingHandler {
@SubscribeEvent
public void onCrafing(PlayerEvent.ItemCraftedEvent Event){
if (Event.crafting.getItem().equals(BuildCraftCore.woodenGearItem)){
Event.player.addStat(BuildCraftCore.woodenGearAchievement, 1);
}
if (Event.crafting.getItem().equals(BuildCraftCore.stoneGearItem)){
Event.player.addStat(BuildCraftCore.stoneGearAchievement, 1);
}
if (Event.crafting.getItem().equals(BuildCraftCore.ironGearItem)){
Event.player.addStat(BuildCraftCore.ironGearAchievement, 1);
}
if (Event.crafting.getItem().equals(BuildCraftCore.goldGearItem)){
Event.player.addStat(BuildCraftCore.goldGearAchievement, 1);
}
if (Event.crafting.getItem().equals(BuildCraftCore.diamondGearItem)){
Event.player.addStat(BuildCraftCore.diamondGearAchievement, 1);
}
}
}