Added stuffs

This commit is contained in:
Arcaratus 2015-04-19 12:23:24 -04:00
parent 76f4b5b0d9
commit bf14e3ebb1
8 changed files with 276 additions and 27 deletions

View file

@ -11,20 +11,18 @@ public class AchievementTrigger
@SubscribeEvent
public void onItemPickedUp(PlayerEvent.ItemPickupEvent event)
{
ItemStack stack = event.pickedUp.getEntityItem();
for (Item item : AchievementsRegistry.list)
for (Item item : AchievementsRegistry.pickupList)
{
ItemStack stack = event.pickedUp.getEntityItem();
}
if (stack != null && stack.getItem() instanceof IPickupAchievement)
{
Achievement achievement = ((IPickupAchievement) stack.getItem()).getAchievementOnPickup(stack, event.player, event.pickedUp);
if (achievement != null)
if (stack != null && stack.getItem() == item)
{
event.player.addStat(achievement, 1);
Achievement achievement = AchievementsRegistry.getAchievementForItem(item);
if (achievement != null)
{
event.player.addStat(achievement, 1);
}
}
}
}
@ -32,13 +30,16 @@ public class AchievementTrigger
@SubscribeEvent
public void onItemCrafted(PlayerEvent.ItemCraftedEvent event)
{
if (event.crafting != null && event.crafting.getItem() instanceof ICraftAchievement)
for (Item item : AchievementsRegistry.craftinglist)
{
Achievement achievement = ((ICraftAchievement) event.crafting.getItem()).getAchievementOnCraft(event.crafting, event.player, event.craftMatrix);
if (achievement != null)
if (event.crafting != null && event.crafting.getItem() == item)
{
event.player.addStat(achievement, 1);
Achievement achievement = AchievementsRegistry.getAchievementForItem(event.crafting.getItem());
if (achievement != null)
{
event.player.addStat(achievement, 1);
}
}
}
}

View file

@ -2,16 +2,42 @@ package WayofTime.alchemicalWizardry.common.achievements;
import WayofTime.alchemicalWizardry.ModItems;
import net.minecraft.item.Item;
import net.minecraft.stats.Achievement;
import java.util.ArrayList;
import java.util.List;
public class AchievementsRegistry
{
public static List<Item> list = new ArrayList();
public final static List<Item> craftinglist = new ArrayList();
public final static List<Item> pickupList = new ArrayList();
public void addItemsToList()
public static void init()
{
list.add(ModItems.sacrificialDagger);
addItemsToCraftingList();
addItemsToPickupList();
}
public static void addItemsToCraftingList()
{
craftinglist.add(ModItems.sacrificialDagger);
}
public static void addItemsToPickupList()
{
pickupList.add(ModItems.weakBloodOrb);
}
public static Achievement getAchievementForItem(Item item)
{
if (item == ModItems.sacrificialDagger)
{
return ModAchievements.firstPrick;
}
if (item == ModItems.weakBloodOrb)
{
return ModAchievements.weakOrb;
}
return null;
}
}

View file

@ -5,19 +5,23 @@ import cpw.mods.fml.common.FMLCommonHandler;
import net.minecraft.stats.Achievement;
import net.minecraft.util.StatCollector;
import net.minecraftforge.common.AchievementPage;
import net.minecraftforge.common.MinecraftForge;
public class ModAchievements
{
public static AchievementPage alchemicalWizardryPage;
public static Achievement firstPrick;
public static Achievement weakOrb;
public static void init()
{
firstPrick = new AchievementsMod(StatCollector.translateToLocal("achievement.firstPrick"), 0, 0, ModItems.sacrificialDagger, firstPrick);
firstPrick = new AchievementsMod(StatCollector.translateToLocal("firstPrick"), 0, 0, ModItems.sacrificialDagger, null);
weakOrb = new AchievementsMod(StatCollector.translateToLocal("weakOrb"), 3, 0, ModItems.weakBloodOrb, firstPrick);
alchemicalWizardryPage = new AchievementPage("AlchemicalWizardry", AchievementsMod.achievements.toArray(new Achievement[AchievementsMod.achievements.size()]));
AchievementPage.registerAchievementPage(alchemicalWizardryPage);
AchievementsRegistry.init();
FMLCommonHandler.instance().bus().register(new AchievementTrigger());
}
}

View file

@ -257,11 +257,6 @@ public class SigilOfTheBridge extends EnergyItems implements ArmourUpgrade
{
verticalOffset--;
}
if (world.isRemote)
{
verticalOffset--;
}
int posX = (int) Math.round(player.posX - 0.5f);
int posY = (int) player.posY;