Advertisement
Guest User

Untitled

a guest
May 5th, 2013
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 10.08 KB | None | 0 0
  1. package PixelGoal;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.HashMap;
  5. import cpw.mods.fml.common.ICraftingHandler;
  6. import cpw.mods.fml.common.Mod.PreInit;
  7. import cpw.mods.fml.common.registry.GameRegistry;
  8. import cpw.mods.fml.common.registry.LanguageRegistry;
  9. import net.minecraft.entity.EntityLiving;
  10. import net.minecraft.entity.player.EntityPlayer;
  11. import net.minecraft.inventory.IInventory;
  12. import net.minecraft.item.ItemStack;
  13. import net.minecraft.stats.Achievement;
  14. import net.minecraft.stats.AchievementList;
  15. import net.minecraft.stats.StatBase;
  16. import net.minecraftforge.common.AchievementPage;
  17. import net.minecraftforge.common.MinecraftForge;
  18. import net.minecraftforge.event.ForgeSubscribe;
  19. import net.minecraftforge.event.entity.player.EntityItemPickupEvent;
  20. import pixelmon.config.PixelmonBlocks;
  21. import pixelmon.config.PixelmonItems;
  22. import pixelmon.config.PixelmonItemsApricorns;
  23. import pixelmon.config.PixelmonItemsFossils;
  24. import pixelmon.config.PixelmonItemsPokeballs;
  25. import pixelmon.blocks.*;
  26.  
  27. public class AchievementHelper implements ICraftingHandler{
  28.  
  29.    
  30.     public HashMap achievementList = new HashMap();
  31.     private int achievementBaseX = -4;
  32.     private int achievementBaseY = -5;
  33.    
  34.    
  35.     public AchievementHelper() {
  36.         this.registerAchievement(98760, "pickupapricorn", 2, 0, new ItemStack(PixelmonItemsApricorns.apricornRed), AchievementList.openInventory, false);
  37.         this.registerAchievement(98761, "getpokeball", 4, 4, new ItemStack(PixelmonItemsPokeballs.pokeBall), "pickupapricorn", false);
  38.         this.registerAchievement(98762, "cookedapricorn", 2, 2, new ItemStack(PixelmonItemsApricorns.apricornRedCooked), "", false);
  39.         this.registerAchievement(98763, "Pokedex", 6, 6, new ItemStack(PixelmonItems.pokeDex), AchievementList.acquireIron, false);
  40.         this.registerAchievement(98764, "RareCandy", 6, 0, new ItemStack(PixelmonItems.rareCandy), AchievementList.openInventory, false);
  41.         this.registerAchievement(98765, "CraftAnvil", 4, 8, new ItemStack(PixelmonItems.anvilItem), AchievementList.acquireIron, false);
  42.         this.registerAchievement(98766, "PC", 8, 4 , new ItemStack(PixelmonItems.pcItem), "Baux", false);
  43.         this.registerAchievement(98767, "Baux", 8, 8 , new ItemStack(PixelmonBlocks.bauxite), AchievementList.acquireIron, false);
  44.         this.registerAchievement(98768, "Shard", 10, 4 , new ItemStack(PixelmonItems.fireStoneShard), AchievementList.openInventory, false);
  45.         this.registerAchievement(98769, "Stone", 10, 6 , new ItemStack(PixelmonItems.fireStone), "Shard", false);
  46.         this.registerAchievement(98770, "Fossil", 4, 10 , new ItemStack(PixelmonBlocks.fossil), AchievementList.acquireIron, false);
  47.         this.registerAchievement(98771, "FossilM", 8, 0 , new ItemStack(PixelmonItemsFossils.fossilMachineItem), "Baux", false);
  48.         this.registerAchievement(98772, "Cleaner", 8, 2, new ItemStack(PixelmonItemsFossils.fossilCleanerItem), "Baux", false);
  49.         this.registerAchievement(98773, "APlate", 4, 6, new ItemStack(PixelmonItems.aluminiumPlate), "CraftAnvil", false);
  50.         this.registerAchievement(98774, "Ingot", 8, 6, new ItemStack(PixelmonItems.aluminiumIngot), AchievementList.buildFurnace, false);
  51.         this.registerAchievement(98775, "Greatball", 4, 2, new ItemStack(PixelmonItemsPokeballs.greatBall), "getpokeball", false);
  52.         this.registerAchievement(98776, "Ultraball", 4, 0, new ItemStack(PixelmonItemsPokeballs.ultraBall), "Greatball", false);
  53.         this.registerAchievement(98777, "WHammer", 2, 6, new ItemStack(PixelmonItems.hammerWood), AchievementList.mineWood, false);
  54.         this.registerAchievement(98778, "IHammer", 2, 8, new ItemStack(PixelmonItems.hammerAluminium), "WHammer", false);
  55.         this.registerAchievement(98779, "DHammer", 2, 10, new ItemStack(PixelmonItems.hammerDiamond), "IHammer", false);
  56.         this.registerAchievement(98780, "Potion", 6, 4, new ItemStack(PixelmonItems.potion), AchievementList.openInventory, false);
  57.  
  58.        
  59.    
  60.        
  61.         AchievementPage.registerAchievementPage(new AchievementPage("Pixelmon", (Achievement[])this.achievementList.values().toArray(new Achievement[this.achievementList.size()])));
  62.         MinecraftForge.EVENT_BUS.register(this);
  63.         GameRegistry.registerCraftingHandler(this);
  64.         this.initLang();
  65.        
  66.     }
  67.    
  68.    
  69.     private void initLang() {
  70.         LanguageRegistry.instance().addStringLocalization("achievement.pickupapricorn", "en_US", "First Step!");
  71.         LanguageRegistry.instance().addStringLocalization("achievement.pickupapricorn.desc", "en_US", "Pick Up An Apricorn!");
  72.         LanguageRegistry.instance().addStringLocalization("achievement.getpokeball", "en_US", "Gotta Catch One!");
  73.         LanguageRegistry.instance().addStringLocalization("achievement.getpokeball.desc", "en_US", "Craft A Pokeball!");
  74.         LanguageRegistry.instance().addStringLocalization("achievement.cookedapricorn", "en_US", "Kurt Descendant!");
  75.         LanguageRegistry.instance().addStringLocalization("achievement.cookedapricorn.desc", "en_US", "Cook An Apricorn!");
  76.         LanguageRegistry.instance().addStringLocalization("achievement.Pokedex", "en_US", "Prof. Masochism Gave You This!");
  77.         LanguageRegistry.instance().addStringLocalization("achievement.Pokedex.desc", "en_US", "Craft a Pokdex");
  78.         LanguageRegistry.instance().addStringLocalization("achievement.RareCandy", "en_US", "Level, Level, Level!");
  79.         LanguageRegistry.instance().addStringLocalization("achievement.RareCandy.desc", "en_US", "Craft a Rarecandy");
  80.         LanguageRegistry.instance().addStringLocalization("achievement.CraftAnvil", "en_US", "Black Smith!");
  81.         LanguageRegistry.instance().addStringLocalization("achievement.CraftAnvil.desc", "en_US", "Put together an Anvil!");
  82.         LanguageRegistry.instance().addStringLocalization("achievement.PC", "en_US", "More Than 6!");
  83.         LanguageRegistry.instance().addStringLocalization("achievement.PC.desc", "en_US", "Craft a PC!");
  84.         LanguageRegistry.instance().addStringLocalization("achievement.Baux", "en_US", "IRO...N?!");
  85.         LanguageRegistry.instance().addStringLocalization("achievement.Baux.desc", "en_US", "Find Bauxite!!");
  86.         LanguageRegistry.instance().addStringLocalization("achievement.Shard", "en_US", "Sand To Pearl");
  87.         LanguageRegistry.instance().addStringLocalization("achievement.Shard.desc", "en_US", "Got Evolution Stone Shards!");
  88.         LanguageRegistry.instance().addStringLocalization("achievement.Stone", "en_US", "Advanced Pokemon");
  89.         LanguageRegistry.instance().addStringLocalization("achievement.Stone.desc", "en_US", "Craft 1 of 4 Evolution Stone!");
  90.         LanguageRegistry.instance().addStringLocalization("achievement.Fossil", "en_US", "Jurassic Pixelmon");
  91.         LanguageRegistry.instance().addStringLocalization("achievement.Fossil.desc", "en_US", "Find a Fossil!");
  92.         LanguageRegistry.instance().addStringLocalization("achievement.FossilM", "en_US", "Bringin' 'em Back To Life");
  93.         LanguageRegistry.instance().addStringLocalization("achievement.FossilM.desc", "en_US", "Craft A Fossil Machine!");
  94.         LanguageRegistry.instance().addStringLocalization("achievement.Cleaner", "en_US", "Clean Them First");
  95.         LanguageRegistry.instance().addStringLocalization("achievement.Cleaner.desc", "en_US", "Craft Fossil Cleaner!");
  96.         LanguageRegistry.instance().addStringLocalization("achievement.APlate", "en_US", "Advanced Black Smith");
  97.         LanguageRegistry.instance().addStringLocalization("achievement.APlate.desc", "en_US", "Hammer On Some Aluminum!");
  98.         LanguageRegistry.instance().addStringLocalization("achievement.Ingot", "en_US", "Better Ore!");
  99.         LanguageRegistry.instance().addStringLocalization("achievement.Ingot.desc", "en_US", "Smelt Some Aluminum!");
  100.         LanguageRegistry.instance().addStringLocalization("achievement.Greatball", "en_US", "Advanced Trainer!");
  101.         LanguageRegistry.instance().addStringLocalization("achievement.Greatball.desc", "en_US", "Craft a Greatball!");
  102.         LanguageRegistry.instance().addStringLocalization("achievement.Ultraball", "en_US", "Master Trainer!");
  103.         LanguageRegistry.instance().addStringLocalization("achievement.Ultraball.desc", "en_US", "Craft An Ultraball!");
  104.         LanguageRegistry.instance().addStringLocalization("achievement.WHammer", "en_US", "Basic Hammer!");
  105.         LanguageRegistry.instance().addStringLocalization("achievement.WHammer.desc", "en_US", "Craft A Wooden Hammer!");
  106.         LanguageRegistry.instance().addStringLocalization("achievement.IHammer", "en_US", "Advanced Hammer!");
  107.         LanguageRegistry.instance().addStringLocalization("achievement.IHammer.desc", "en_US", "Craft An Advanced Hammer!");
  108.         LanguageRegistry.instance().addStringLocalization("achievement.DHammer", "en_US", "Hammer Time!");
  109.         LanguageRegistry.instance().addStringLocalization("achievement.DHammer.desc", "en_US", "Craft A Diamond Hammer!");
  110.         LanguageRegistry.instance().addStringLocalization("achievement.Potion", "en_US", "Nurse Joy!");
  111.         LanguageRegistry.instance().addStringLocalization("achievement.Potion.desc", "en_US", "Craft A Potion!");
  112.  
  113.        
  114.     }
  115.  
  116.     public Achievement registerAchievement(int id, String textId, int x, int y, ItemStack icon, Achievement requirement, boolean special) {
  117.         Achievement achievement = new Achievement(id, textId, this.achievementBaseX + x, this.achievementBaseY + y, icon, requirement);
  118.        
  119.         if (special) {
  120.             achievement.setSpecial();
  121.         }
  122.         if( ! AchievementPage.isAchievementInPages(achievement)){
  123.        
  124.         achievement.registerAchievement();
  125.         this.achievementList.put(textId, achievement);
  126.         }
  127.         return achievement;
  128.     }
  129.    
  130.     public Achievement registerAchievement(int id, String textId, int x, int y, ItemStack icon, String requirement, boolean special) {
  131.         Achievement achievement = new Achievement(id, textId, this.achievementBaseX + x, this.achievementBaseY + y, icon, this.getAchievement(requirement));
  132.        
  133.         if (special) {
  134.             achievement.setSpecial();
  135.         }
  136.         if( ! AchievementPage.isAchievementInPages(achievement)) {
  137.  
  138.         achievement.registerAchievement();
  139.         this.achievementList.put(textId, achievement);
  140.          }
  141.         return achievement;
  142.     }
  143.    
  144.     public void issueAchievement(EntityPlayer entityplayer, String textId) {
  145.         if (this.achievementList.containsKey(textId)) {
  146.             entityplayer.triggerAchievement((StatBase)this.achievementList.get(textId));
  147.         }
  148.     }
  149.    
  150.     public Achievement getAchievement(String textId) {
  151.         return this.achievementList.containsKey(textId) ? (Achievement)this.achievementList.get(textId) : null;
  152.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement