When constructing misc disguise. You can now set the itemstack

This commit is contained in:
Andrew 2013-11-11 03:29:57 +13:00
parent c4be1b989e
commit 74d608afb9

View File

@ -1,6 +1,9 @@
package me.libraryaddict.disguise.disguisetypes; package me.libraryaddict.disguise.disguisetypes;
import me.libraryaddict.disguise.disguisetypes.watchers.DroppedItemWatcher;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;
import org.bukkit.inventory.ItemStack;
public class MiscDisguise extends Disguise { public class MiscDisguise extends Disguise {
private int data = -1; private int data = -1;
@ -15,8 +18,9 @@ public class MiscDisguise extends Disguise {
} }
public MiscDisguise(DisguiseType disguiseType, boolean replaceSounds, int addictionalData) { public MiscDisguise(DisguiseType disguiseType, boolean replaceSounds, int addictionalData) {
this(disguiseType, replaceSounds, (disguiseType == DisguiseType.FALLING_BLOCK ? addictionalData : -1), this(disguiseType, replaceSounds, (disguiseType == DisguiseType.FALLING_BLOCK
(disguiseType == DisguiseType.FALLING_BLOCK ? -1 : addictionalData)); || disguiseType == DisguiseType.DROPPED_ITEM ? addictionalData : -1), (disguiseType == DisguiseType.FALLING_BLOCK
|| disguiseType == DisguiseType.DROPPED_ITEM ? -1 : addictionalData));
} }
public MiscDisguise(DisguiseType disguiseType, boolean replaceSounds, int id, int data) { public MiscDisguise(DisguiseType disguiseType, boolean replaceSounds, int id, int data) {
@ -36,6 +40,8 @@ public class MiscDisguise extends Disguise {
break; break;
} }
if (disguiseType == DisguiseType.FALLING_BLOCK && id != -1) { if (disguiseType == DisguiseType.FALLING_BLOCK && id != -1) {
} else if (disguiseType == DisguiseType.FALLING_BLOCK && id != -1) {
this.id = id; this.id = id;
} else { } else {
this.id = disguiseType.getDefaultId(); this.id = disguiseType.getDefaultId();
@ -44,6 +50,11 @@ public class MiscDisguise extends Disguise {
data = disguiseType.getDefaultData(); data = disguiseType.getDefaultData();
this.data = data; this.data = data;
createDisguise(disguiseType, replaceSounds); createDisguise(disguiseType, replaceSounds);
if (disguiseType == DisguiseType.DROPPED_ITEM) {
if (id > 0) {
((DroppedItemWatcher) getWatcher()).setItemStack(new ItemStack(id, data));
}
}
} }
public MiscDisguise(DisguiseType disguiseType, int id, int data) { public MiscDisguise(DisguiseType disguiseType, int id, int data) {