diff --git a/src/main/java/electroblob/wizardry/client/model/WizardryModels.java b/src/main/java/electroblob/wizardry/client/model/WizardryModels.java index d0519405..04ddaac8 100644 --- a/src/main/java/electroblob/wizardry/client/model/WizardryModels.java +++ b/src/main/java/electroblob/wizardry/client/model/WizardryModels.java @@ -288,6 +288,7 @@ public final class WizardryModels { registerItemModel(WizardryItems.charm_storm); registerItemModel(WizardryItems.charm_minion_health); registerItemModel(WizardryItems.charm_minion_variants); + registerItemModel(WizardryItems.charm_undead_helmets); registerItemModel(WizardryItems.charm_flight); registerItemModel(WizardryItems.charm_growth); registerItemModel(WizardryItems.charm_abseiling); diff --git a/src/main/java/electroblob/wizardry/entity/living/EntitySkeletonMinion.java b/src/main/java/electroblob/wizardry/entity/living/EntitySkeletonMinion.java index 0310c397..50f26bbd 100644 --- a/src/main/java/electroblob/wizardry/entity/living/EntitySkeletonMinion.java +++ b/src/main/java/electroblob/wizardry/entity/living/EntitySkeletonMinion.java @@ -1,6 +1,8 @@ package electroblob.wizardry.entity.living; import electroblob.wizardry.Wizardry; +import electroblob.wizardry.item.ItemArtefact; +import electroblob.wizardry.registry.WizardryItems; import electroblob.wizardry.util.EntityUtils; import net.minecraft.entity.EntityFlying; import net.minecraft.entity.EntityLivingBase; @@ -117,6 +119,9 @@ public class EntitySkeletonMinion extends AbstractSkeleton implements ISummonedC @Override public void onSpawn(){ this.spawnParticleEffect(); + if(getCaster() instanceof EntityPlayer && ItemArtefact.isArtefactActive((EntityPlayer)getCaster(), WizardryItems.charm_undead_helmets)){ + setItemStackToSlot(EntityEquipmentSlot.HEAD, new ItemStack(Items.LEATHER_HELMET)); + } } @Override diff --git a/src/main/java/electroblob/wizardry/entity/living/EntityZombieMinion.java b/src/main/java/electroblob/wizardry/entity/living/EntityZombieMinion.java index 27891d9a..f08661c2 100644 --- a/src/main/java/electroblob/wizardry/entity/living/EntityZombieMinion.java +++ b/src/main/java/electroblob/wizardry/entity/living/EntityZombieMinion.java @@ -1,6 +1,8 @@ package electroblob.wizardry.entity.living; import electroblob.wizardry.Wizardry; +import electroblob.wizardry.item.ItemArtefact; +import electroblob.wizardry.registry.WizardryItems; import net.minecraft.entity.EntityFlying; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.ai.EntityAIHurtByTarget; @@ -8,6 +10,8 @@ import net.minecraft.entity.ai.EntityAIMoveThroughVillage; import net.minecraft.entity.ai.EntityAINearestAttackableTarget; import net.minecraft.entity.monster.EntityZombie; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Items; +import net.minecraft.inventory.EntityEquipmentSlot; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -84,6 +88,10 @@ public class EntityZombieMinion extends EntityZombie implements ISummonedCreatur @Override public void onSpawn(){ if(this.dataManager.get(SPAWN_PARTICLES)) this.spawnParticleEffect(); + if(shouldBurnInDay() && getCaster() instanceof EntityPlayer + && ItemArtefact.isArtefactActive((EntityPlayer)getCaster(), WizardryItems.charm_undead_helmets)){ + setItemStackToSlot(EntityEquipmentSlot.HEAD, new ItemStack(Items.LEATHER_HELMET)); + } } @Override diff --git a/src/main/java/electroblob/wizardry/registry/WizardryItems.java b/src/main/java/electroblob/wizardry/registry/WizardryItems.java index a37e48d8..21c31594 100644 --- a/src/main/java/electroblob/wizardry/registry/WizardryItems.java +++ b/src/main/java/electroblob/wizardry/registry/WizardryItems.java @@ -272,6 +272,7 @@ public final class WizardryItems { public static final Item charm_storm = placeholder(); public static final Item charm_minion_health = placeholder(); public static final Item charm_minion_variants = placeholder(); + public static final Item charm_undead_helmets = placeholder(); public static final Item charm_flight = placeholder(); public static final Item charm_growth = placeholder(); public static final Item charm_abseiling = placeholder(); @@ -635,6 +636,7 @@ public final class WizardryItems { registerItem(registry, "charm_storm", new ItemArtefact(EnumRarity.RARE, ItemArtefact.Type.CHARM)); registerItem(registry, "charm_minion_health", new ItemArtefact(EnumRarity.UNCOMMON, ItemArtefact.Type.CHARM)); registerItem(registry, "charm_minion_variants", new ItemArtefact(EnumRarity.RARE, ItemArtefact.Type.CHARM)); + registerItem(registry, "charm_undead_helmets", new ItemArtefact(EnumRarity.RARE, ItemArtefact.Type.CHARM)); registerItem(registry, "charm_flight", new ItemArtefact(EnumRarity.RARE, ItemArtefact.Type.CHARM)); registerItem(registry, "charm_growth", new ItemArtefact(EnumRarity.UNCOMMON, ItemArtefact.Type.CHARM)); registerItem(registry, "charm_abseiling", new ItemArtefact(EnumRarity.RARE, ItemArtefact.Type.CHARM)); diff --git a/src/main/resources/assets/ebwizardry/lang/en_gb.lang b/src/main/resources/assets/ebwizardry/lang/en_gb.lang index ecf8acd4..78fb8596 100644 --- a/src/main/resources/assets/ebwizardry/lang/en_gb.lang +++ b/src/main/resources/assets/ebwizardry/lang/en_gb.lang @@ -382,6 +382,8 @@ item.ebwizardry\:charm_minion_health.name=Obsidian Zombie Head item.ebwizardry\:charm_minion_health.desc=Summoned creatures are 25%% stronger item.ebwizardry\:charm_minion_variants.name=Talisman of Transformation item.ebwizardry\:charm_minion_variants.desc=Summoned zombies are husks; summoned skeletons are strays +item.ebwizardry\:charm_undead_helmets.name=Cursed Helm +item.ebwizardry\:charm_undead_helmets.desc=Summoned zombies and skeletons have leather caps to protect them from sunlight item.ebwizardry\:charm_flight.name=Emerald Beetle Wing item.ebwizardry\:charm_flight.desc=Flight and Glide are 50%% faster item.ebwizardry\:charm_growth.name=Crystal Flower Charm diff --git a/src/main/resources/assets/ebwizardry/lang/en_us.lang b/src/main/resources/assets/ebwizardry/lang/en_us.lang index 4651daee..38d598e1 100644 --- a/src/main/resources/assets/ebwizardry/lang/en_us.lang +++ b/src/main/resources/assets/ebwizardry/lang/en_us.lang @@ -382,6 +382,8 @@ item.ebwizardry\:charm_minion_health.name=Obsidian Zombie Head item.ebwizardry\:charm_minion_health.desc=Summoned creatures are 25%% stronger item.ebwizardry\:charm_minion_variants.name=Talisman of Transformation item.ebwizardry\:charm_minion_variants.desc=Summoned zombies are husks; summoned skeletons are strays +item.ebwizardry\:charm_undead_helmets.name=Cursed Helm +item.ebwizardry\:charm_undead_helmets.desc=Summoned zombies and skeletons have leather caps to protect them from sunlight item.ebwizardry\:charm_flight.name=Emerald Beetle Wing item.ebwizardry\:charm_flight.desc=Flight and Glide are 50%% faster item.ebwizardry\:charm_growth.name=Crystal Flower Charm diff --git a/src/main/resources/assets/ebwizardry/models/item/charm_undead_helmets.json b/src/main/resources/assets/ebwizardry/models/item/charm_undead_helmets.json new file mode 100644 index 00000000..af4fea86 --- /dev/null +++ b/src/main/resources/assets/ebwizardry/models/item/charm_undead_helmets.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "ebwizardry:items/charm_undead_helmets" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/ebwizardry/textures/items/charm_undead_helmets.png b/src/main/resources/assets/ebwizardry/textures/items/charm_undead_helmets.png new file mode 100644 index 00000000..bf951c99 Binary files /dev/null and b/src/main/resources/assets/ebwizardry/textures/items/charm_undead_helmets.png differ