Cleanup model registration

This commit is contained in:
Nicholas Ignoffo 2018-03-07 19:43:00 -08:00
parent c4527d157f
commit 554993ea79
60 changed files with 338 additions and 678 deletions

View file

@ -1,24 +1,25 @@
package WayofTime.bloodmagic.item.soul;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.soul.EnumDemonWillType;
import WayofTime.bloodmagic.soul.PlayerDemonWillHandler;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.item.armour.ItemSentientArmour;
import com.google.common.collect.Lists;
import WayofTime.bloodmagic.soul.EnumDemonWillType;
import WayofTime.bloodmagic.soul.PlayerDemonWillHandler;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.ItemMeshDefinition;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.*;
import net.minecraft.util.ActionResult;
import net.minecraft.util.EnumActionResult;
import net.minecraft.util.EnumHand;
import net.minecraft.util.NonNullList;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import javax.annotation.Nullable;
import java.util.List;
import java.util.function.Consumer;
public class ItemSentientArmourGem extends Item implements IMeshProvider {
public ItemSentientArmourGem() {
@ -73,13 +74,8 @@ public class ItemSentientArmourGem extends Item implements IMeshProvider {
}
@Override
public List<String> getVariants() {
return Lists.newArrayList("type=activated", "type=deactivated");
}
@Nullable
@Override
public ResourceLocation getCustomLocation() {
return null;
public void gatherVariants(Consumer<String> variants) {
variants.accept("type=activated");
variants.accept("type=deactivated");
}
}

View file

@ -1,7 +1,10 @@
package WayofTime.bloodmagic.item.soul;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.client.mesh.CustomMeshDefinitionMultiWill;
import WayofTime.bloodmagic.core.RegistrarBloodMagicItems;
import WayofTime.bloodmagic.entity.mob.EntitySentientSpecter;
import WayofTime.bloodmagic.iface.IMultiWillTool;
import WayofTime.bloodmagic.iface.ISentientSwordEffectProvider;
import WayofTime.bloodmagic.iface.ISentientTool;
@ -9,11 +12,8 @@ import WayofTime.bloodmagic.soul.EnumDemonWillType;
import WayofTime.bloodmagic.soul.IDemonWill;
import WayofTime.bloodmagic.soul.IDemonWillWeapon;
import WayofTime.bloodmagic.soul.PlayerDemonWillHandler;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.util.helper.NBTHelper;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.client.mesh.CustomMeshDefinitionMultiWill;
import WayofTime.bloodmagic.core.RegistrarBloodMagicItems;
import WayofTime.bloodmagic.entity.mob.EntitySentientSpecter;
import WayofTime.bloodmagic.util.helper.TextHelper;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
@ -36,14 +36,13 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.ActionResult;
import net.minecraft.util.EnumHand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.EnumDifficulty;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import javax.annotation.Nullable;
import java.util.*;
import java.util.function.Consumer;
public class ItemSentientAxe extends ItemAxe implements IDemonWillWeapon, IMeshProvider, IMultiWillTool, ISentientTool {
public static int[] soulBracket = new int[]{16, 60, 200, 400, 1000};
@ -300,20 +299,10 @@ public class ItemSentientAxe extends ItemAxe implements IDemonWillWeapon, IMeshP
return new CustomMeshDefinitionMultiWill("sentient_axe");
}
@Nullable
@Override
public ResourceLocation getCustomLocation() {
return null;
}
@Override
public List<String> getVariants() {
List<String> ret = new ArrayList<>();
for (EnumDemonWillType type : EnumDemonWillType.values()) {
ret.add("type=" + type.getName().toLowerCase());
}
return ret;
public void gatherVariants(Consumer<String> variants) {
for (EnumDemonWillType type : EnumDemonWillType.values())
variants.accept("type=" + type.getName().toLowerCase());
}
@Override

View file

@ -1,17 +1,17 @@
package WayofTime.bloodmagic.item.soul;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.iface.IMultiWillTool;
import WayofTime.bloodmagic.iface.ISentientTool;
import WayofTime.bloodmagic.soul.EnumDemonWillType;
import WayofTime.bloodmagic.soul.PlayerDemonWillHandler;
import WayofTime.bloodmagic.util.helper.NBTHelper;
import WayofTime.bloodmagic.client.IVariantProvider;
import WayofTime.bloodmagic.core.RegistrarBloodMagicItems;
import WayofTime.bloodmagic.entity.mob.EntitySentientSpecter;
import WayofTime.bloodmagic.entity.projectile.EntitySentientArrow;
import com.google.common.collect.Lists;
import WayofTime.bloodmagic.iface.IMultiWillTool;
import WayofTime.bloodmagic.iface.ISentientTool;
import WayofTime.bloodmagic.soul.EnumDemonWillType;
import WayofTime.bloodmagic.soul.PlayerDemonWillHandler;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.util.helper.NBTHelper;
import it.unimi.dsi.fastutil.ints.Int2ObjectMap;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
@ -34,9 +34,8 @@ import net.minecraft.util.math.MathHelper;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import org.apache.commons.lang3.tuple.Pair;
import java.util.List;
import javax.annotation.Nonnull;
import java.util.Locale;
public class ItemSentientBow extends ItemBow implements IMultiWillTool, ISentientTool, IVariantProvider//, IMeshProvider
@ -253,8 +252,8 @@ public class ItemSentientBow extends ItemBow implements IMultiWillTool, ISentien
}
@Override
public List<Pair<Integer, String>> getVariants() {
return Lists.newArrayList(Pair.of(0, "inventory"));
public void gatherVariants(@Nonnull Int2ObjectMap<String> variants) {
variants.put(0, "inventory");
}
public EntityTippedArrow getArrowEntity(World world, ItemStack stack, EntityLivingBase target, EntityLivingBase user, float velocity) {

View file

@ -1,7 +1,10 @@
package WayofTime.bloodmagic.item.soul;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.client.mesh.CustomMeshDefinitionMultiWill;
import WayofTime.bloodmagic.core.RegistrarBloodMagicItems;
import WayofTime.bloodmagic.entity.mob.EntitySentientSpecter;
import WayofTime.bloodmagic.iface.IMultiWillTool;
import WayofTime.bloodmagic.iface.ISentientSwordEffectProvider;
import WayofTime.bloodmagic.iface.ISentientTool;
@ -9,11 +12,8 @@ import WayofTime.bloodmagic.soul.EnumDemonWillType;
import WayofTime.bloodmagic.soul.IDemonWill;
import WayofTime.bloodmagic.soul.IDemonWillWeapon;
import WayofTime.bloodmagic.soul.PlayerDemonWillHandler;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.util.helper.NBTHelper;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.client.mesh.CustomMeshDefinitionMultiWill;
import WayofTime.bloodmagic.core.RegistrarBloodMagicItems;
import WayofTime.bloodmagic.entity.mob.EntitySentientSpecter;
import WayofTime.bloodmagic.util.helper.TextHelper;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
@ -36,14 +36,13 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.ActionResult;
import net.minecraft.util.EnumHand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.EnumDifficulty;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import javax.annotation.Nullable;
import java.util.*;
import java.util.function.Consumer;
public class ItemSentientPickaxe extends ItemPickaxe implements IDemonWillWeapon, IMeshProvider, IMultiWillTool, ISentientTool {
public static int[] soulBracket = new int[]{16, 60, 200, 400, 1000};
@ -299,20 +298,10 @@ public class ItemSentientPickaxe extends ItemPickaxe implements IDemonWillWeapon
return new CustomMeshDefinitionMultiWill("sentient_pickaxe");
}
@Nullable
@Override
public ResourceLocation getCustomLocation() {
return null;
}
@Override
public List<String> getVariants() {
List<String> ret = new ArrayList<>();
for (EnumDemonWillType type : EnumDemonWillType.values()) {
ret.add("type=" + type.getName().toLowerCase());
}
return ret;
public void gatherVariants(Consumer<String> variants) {
for (EnumDemonWillType type : EnumDemonWillType.values())
variants.accept("type=" + type.getName().toLowerCase());
}
@Override

View file

@ -1,7 +1,10 @@
package WayofTime.bloodmagic.item.soul;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.client.mesh.CustomMeshDefinitionMultiWill;
import WayofTime.bloodmagic.core.RegistrarBloodMagicItems;
import WayofTime.bloodmagic.entity.mob.EntitySentientSpecter;
import WayofTime.bloodmagic.iface.IMultiWillTool;
import WayofTime.bloodmagic.iface.ISentientSwordEffectProvider;
import WayofTime.bloodmagic.iface.ISentientTool;
@ -9,11 +12,8 @@ import WayofTime.bloodmagic.soul.EnumDemonWillType;
import WayofTime.bloodmagic.soul.IDemonWill;
import WayofTime.bloodmagic.soul.IDemonWillWeapon;
import WayofTime.bloodmagic.soul.PlayerDemonWillHandler;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.util.helper.NBTHelper;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.client.mesh.CustomMeshDefinitionMultiWill;
import WayofTime.bloodmagic.core.RegistrarBloodMagicItems;
import WayofTime.bloodmagic.entity.mob.EntitySentientSpecter;
import WayofTime.bloodmagic.util.helper.TextHelper;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
@ -36,14 +36,13 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.ActionResult;
import net.minecraft.util.EnumHand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.EnumDifficulty;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import javax.annotation.Nullable;
import java.util.*;
import java.util.function.Consumer;
public class ItemSentientShovel extends ItemSpade implements IDemonWillWeapon, IMeshProvider, IMultiWillTool, ISentientTool {
public static int[] soulBracket = new int[]{16, 60, 200, 400, 1000};
@ -300,20 +299,10 @@ public class ItemSentientShovel extends ItemSpade implements IDemonWillWeapon, I
return new CustomMeshDefinitionMultiWill("sentient_shovel");
}
@Nullable
@Override
public ResourceLocation getCustomLocation() {
return null;
}
@Override
public List<String> getVariants() {
List<String> ret = new ArrayList<>();
for (EnumDemonWillType type : EnumDemonWillType.values()) {
ret.add("type=" + type.getName().toLowerCase());
}
return ret;
public void gatherVariants(Consumer<String> variants) {
for (EnumDemonWillType type : EnumDemonWillType.values())
variants.accept("type=" + type.getName().toLowerCase());
}
@Override

View file

@ -1,7 +1,10 @@
package WayofTime.bloodmagic.item.soul;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.client.mesh.CustomMeshDefinitionMultiWill;
import WayofTime.bloodmagic.core.RegistrarBloodMagicItems;
import WayofTime.bloodmagic.entity.mob.EntitySentientSpecter;
import WayofTime.bloodmagic.iface.IMultiWillTool;
import WayofTime.bloodmagic.iface.ISentientSwordEffectProvider;
import WayofTime.bloodmagic.iface.ISentientTool;
@ -9,11 +12,8 @@ import WayofTime.bloodmagic.soul.EnumDemonWillType;
import WayofTime.bloodmagic.soul.IDemonWill;
import WayofTime.bloodmagic.soul.IDemonWillWeapon;
import WayofTime.bloodmagic.soul.PlayerDemonWillHandler;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.util.helper.NBTHelper;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.client.mesh.CustomMeshDefinitionMultiWill;
import WayofTime.bloodmagic.core.RegistrarBloodMagicItems;
import WayofTime.bloodmagic.entity.mob.EntitySentientSpecter;
import WayofTime.bloodmagic.util.helper.TextHelper;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
@ -34,14 +34,13 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.ActionResult;
import net.minecraft.util.EnumHand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.EnumDifficulty;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import javax.annotation.Nullable;
import java.util.*;
import java.util.function.Consumer;
public class ItemSentientSword extends ItemSword implements IDemonWillWeapon, IMeshProvider, IMultiWillTool, ISentientTool {
public static int[] soulBracket = new int[]{16, 60, 200, 400, 1000, 2000, 4000};
@ -275,20 +274,10 @@ public class ItemSentientSword extends ItemSword implements IDemonWillWeapon, IM
return new CustomMeshDefinitionMultiWill("sentient_sword");
}
@Nullable
@Override
public ResourceLocation getCustomLocation() {
return null;
}
@Override
public List<String> getVariants() {
List<String> ret = new ArrayList<>();
for (EnumDemonWillType type : EnumDemonWillType.values()) {
ret.add("type=" + type.getName().toLowerCase());
}
return ret;
public void gatherVariants(Consumer<String> variants) {
for (EnumDemonWillType type : EnumDemonWillType.values())
variants.accept("type=" + type.getName().toLowerCase());
}
@Override

View file

@ -1,15 +1,15 @@
package WayofTime.bloodmagic.item.soul;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.client.mesh.CustomMeshDefinitionWillGem;
import WayofTime.bloodmagic.iface.IMultiWillTool;
import WayofTime.bloodmagic.soul.EnumDemonWillType;
import WayofTime.bloodmagic.soul.IDemonWill;
import WayofTime.bloodmagic.soul.IDemonWillGem;
import WayofTime.bloodmagic.soul.PlayerDemonWillHandler;
import WayofTime.bloodmagic.util.Constants;
import WayofTime.bloodmagic.util.helper.NBTHelper;
import WayofTime.bloodmagic.client.IMeshProvider;
import WayofTime.bloodmagic.client.mesh.CustomMeshDefinitionWillGem;
import WayofTime.bloodmagic.util.helper.TextHelper;
import net.minecraft.client.renderer.ItemMeshDefinition;
import net.minecraft.client.util.ITooltipFlag;
@ -18,16 +18,18 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.*;
import net.minecraft.util.ActionResult;
import net.minecraft.util.EnumActionResult;
import net.minecraft.util.EnumHand;
import net.minecraft.util.NonNullList;
import net.minecraft.util.math.MathHelper;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import javax.annotation.Nullable;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
import java.util.function.Consumer;
public class ItemSoulGem extends Item implements IDemonWillGem, IMeshProvider, IMultiWillTool {
public static String[] names = {"petty", "lesser", "common", "greater", "grand"};
@ -64,24 +66,15 @@ public class ItemSoulGem extends Item implements IDemonWillGem, IMeshProvider, I
return new CustomMeshDefinitionWillGem("soul_gem");
}
@Nullable
@Override
public ResourceLocation getCustomLocation() {
return null;
}
@Override
public List<String> getVariants() {
List<String> ret = new ArrayList<>();
public void gatherVariants(Consumer<String> variants) {
for (EnumDemonWillType type : EnumDemonWillType.values()) {
ret.add("type=petty_" + type.getName().toLowerCase());
ret.add("type=lesser_" + type.getName().toLowerCase());
ret.add("type=common_" + type.getName().toLowerCase());
ret.add("type=greater_" + type.getName().toLowerCase());
ret.add("type=grand_" + type.getName().toLowerCase());
variants.accept("type=petty_" + type.getName().toLowerCase());
variants.accept("type=lesser_" + type.getName().toLowerCase());
variants.accept("type=common_" + type.getName().toLowerCase());
variants.accept("type=greater_" + type.getName().toLowerCase());
variants.accept("type=grand_" + type.getName().toLowerCase());
}
return ret;
}
@Override

View file

@ -4,6 +4,7 @@ import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.client.IVariantProvider;
import WayofTime.bloodmagic.entity.projectile.EntitySoulSnare;
import WayofTime.bloodmagic.util.helper.TextHelper;
import it.unimi.dsi.fastutil.ints.Int2ObjectMap;
import net.minecraft.client.util.ITooltipFlag;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
@ -14,10 +15,8 @@ import net.minecraft.util.*;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import java.util.ArrayList;
import javax.annotation.Nonnull;
import java.util.Arrays;
import java.util.List;
@ -75,9 +74,7 @@ public class ItemSoulSnare extends Item implements IVariantProvider {
}
@Override
public List<Pair<Integer, String>> getVariants() {
List<Pair<Integer, String>> ret = new ArrayList<>();
ret.add(new ImmutablePair<>(0, "type=soulsnare"));
return ret;
public void gatherVariants(@Nonnull Int2ObjectMap<String> variants) {
variants.put(0, "type=soulsnare");
}
}