2013-07-11 20:36:55 +02:00
|
|
|
package me.libraryaddict.disguise.DisguiseTypes;
|
|
|
|
|
|
|
|
import java.util.HashMap;
|
|
|
|
|
2013-09-20 05:59:28 +02:00
|
|
|
import net.minecraft.server.v1_6_R3.EnumEntitySize;
|
2013-08-05 07:26:56 +02:00
|
|
|
|
2013-07-11 20:36:55 +02:00
|
|
|
public class Values {
|
|
|
|
|
2013-07-15 09:33:23 +02:00
|
|
|
private static HashMap<DisguiseType, Values> values = new HashMap<DisguiseType, Values>();
|
2013-07-12 22:19:24 +02:00
|
|
|
|
2013-07-11 20:38:38 +02:00
|
|
|
public static HashMap<String, Double> getAttributesValues(DisguiseType type) {
|
2013-07-15 09:33:23 +02:00
|
|
|
return getValues(type).getAttributesValues();
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Class getEntityClass(DisguiseType type) {
|
|
|
|
return getValues(type).getEntityClass();
|
2013-07-11 20:36:55 +02:00
|
|
|
}
|
|
|
|
|
2013-07-11 20:38:38 +02:00
|
|
|
public static HashMap<Integer, Object> getMetaValues(DisguiseType type) {
|
2013-07-15 09:33:23 +02:00
|
|
|
return getValues(type).getMetaValues();
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Values getValues(DisguiseType type) {
|
2013-07-28 02:05:47 +02:00
|
|
|
switch (type) {
|
|
|
|
case DONKEY:
|
|
|
|
case MULE:
|
|
|
|
case UNDEAD_HORSE:
|
|
|
|
case SKELETON_HORSE:
|
2013-07-11 20:36:55 +02:00
|
|
|
type = DisguiseType.HORSE;
|
2013-07-28 02:05:47 +02:00
|
|
|
break;
|
|
|
|
case MINECART_CHEST:
|
|
|
|
case MINECART_FURNACE:
|
|
|
|
case MINECART_HOPPER:
|
|
|
|
case MINECART_TNT:
|
|
|
|
case MINECART_MOB_SPAWNER:
|
2013-07-16 13:42:35 +02:00
|
|
|
type = DisguiseType.MINECART;
|
2013-07-28 02:05:47 +02:00
|
|
|
break;
|
|
|
|
case WITHER_SKELETON:
|
2013-07-11 20:36:55 +02:00
|
|
|
type = DisguiseType.SKELETON;
|
2013-07-28 02:05:47 +02:00
|
|
|
break;
|
|
|
|
case ZOMBIE_VILLAGER:
|
2013-07-16 13:42:35 +02:00
|
|
|
type = DisguiseType.ZOMBIE;
|
2013-07-28 02:05:47 +02:00
|
|
|
break;
|
|
|
|
default:
|
|
|
|
break;
|
|
|
|
}
|
2013-07-15 09:33:23 +02:00
|
|
|
return values.get(type);
|
2013-07-11 20:38:38 +02:00
|
|
|
}
|
|
|
|
|
2013-07-15 09:33:23 +02:00
|
|
|
private HashMap<String, Double> attributesValues = new HashMap<String, Double>();
|
|
|
|
|
|
|
|
private Class declared;
|
2013-08-05 07:26:56 +02:00
|
|
|
private EnumEntitySize enumEntitySize;
|
2013-07-15 09:33:23 +02:00
|
|
|
|
|
|
|
private HashMap<Integer, Object> metaValues = new HashMap<Integer, Object>();
|
|
|
|
|
2013-08-05 07:26:56 +02:00
|
|
|
public Values(DisguiseType type, Class classType, EnumEntitySize entitySize) {
|
2013-07-15 09:33:23 +02:00
|
|
|
values.put(type, this);
|
2013-08-05 07:26:56 +02:00
|
|
|
enumEntitySize = entitySize;
|
2013-07-15 09:33:23 +02:00
|
|
|
declared = classType;
|
|
|
|
}
|
2013-07-16 07:23:11 +02:00
|
|
|
|
2013-07-15 09:33:23 +02:00
|
|
|
public HashMap<String, Double> getAttributesValues() {
|
|
|
|
return attributesValues;
|
|
|
|
}
|
2013-07-16 07:23:11 +02:00
|
|
|
|
2013-07-15 09:33:23 +02:00
|
|
|
public Class getEntityClass() {
|
|
|
|
return declared;
|
|
|
|
}
|
2013-07-11 20:38:38 +02:00
|
|
|
|
2013-08-08 23:14:44 +02:00
|
|
|
public EnumEntitySize getEntitySize() {
|
|
|
|
return enumEntitySize;
|
|
|
|
}
|
|
|
|
|
2013-07-15 09:33:23 +02:00
|
|
|
public HashMap<Integer, Object> getMetaValues() {
|
|
|
|
return metaValues;
|
2013-07-11 20:38:38 +02:00
|
|
|
}
|
|
|
|
|
2013-07-12 22:19:24 +02:00
|
|
|
public void setAttributesValue(String attribute, Double value) {
|
2013-07-15 09:33:23 +02:00
|
|
|
attributesValues.put(attribute, value);
|
2013-07-11 20:38:38 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
public void setMetaValue(int no, Object value) {
|
2013-07-15 09:33:23 +02:00
|
|
|
metaValues.put(no, value);
|
2013-07-11 20:36:55 +02:00
|
|
|
}
|
|
|
|
}
|