diff --git a/Java-Knight/src/main/java/org/project/Interface/IAttachable.java b/Java-Knight/src/main/java/org/project/Interface/IAttachable.java index e715cdb..987ba14 100644 --- a/Java-Knight/src/main/java/org/project/Interface/IAttachable.java +++ b/Java-Knight/src/main/java/org/project/Interface/IAttachable.java @@ -3,6 +3,6 @@ package org.project.Interface; import org.project.entity.Entity; public interface IAttachable { - public void AttachTo(Entity entity); - public void DeattachFrom(Entity entity); + public void AttachTo(Entity entity, boolean fromInventory); + public void DeattachFrom(Entity entity, boolean toInventory); } diff --git a/Java-Knight/src/main/java/org/project/item/Accessory/Accessory.java b/Java-Knight/src/main/java/org/project/item/Accessory/Accessory.java index 9bea6e3..3f93740 100644 --- a/Java-Knight/src/main/java/org/project/item/Accessory/Accessory.java +++ b/Java-Knight/src/main/java/org/project/item/Accessory/Accessory.java @@ -45,13 +45,13 @@ public abstract class Accessory extends SellableItem implements IDamageable, IAt @Override public void HandleZeroHealth() { - this.DeattachFrom(this.Owner); + this.DeattachFrom(this.Owner, false); this.Owner.Inventory.remove(this); } @Override - public abstract void AttachTo(Entity entity); + public abstract void AttachTo(Entity entity, boolean fromInventory); @Override - public abstract void DeattachFrom(Entity entity); + public abstract void DeattachFrom(Entity entity, boolean toInventory); } diff --git a/Java-Knight/src/main/java/org/project/item/Accessory/Costume.java b/Java-Knight/src/main/java/org/project/item/Accessory/Costume.java index 38efd72..0541db8 100644 --- a/Java-Knight/src/main/java/org/project/item/Accessory/Costume.java +++ b/Java-Knight/src/main/java/org/project/item/Accessory/Costume.java @@ -35,14 +35,14 @@ public class Costume extends Accessory implements IDefender { } @Override - public void AttachTo(Entity entity) { - entity.RemoveFromInventory(this); + public void AttachTo(Entity entity, boolean fromInventory) { + if (fromInventory) entity.RemoveFromInventory(this); entity.Costume = this; } @Override - public void DeattachFrom(Entity entity) { + public void DeattachFrom(Entity entity, boolean toInventory) { entity.Costume = null; - entity.AddToInventory(this); + if (toInventory) entity.AddToInventory(this); } } diff --git a/Java-Knight/src/main/java/org/project/item/Accessory/Shield.java b/Java-Knight/src/main/java/org/project/item/Accessory/Shield.java index 7f83699..8526618 100644 --- a/Java-Knight/src/main/java/org/project/item/Accessory/Shield.java +++ b/Java-Knight/src/main/java/org/project/item/Accessory/Shield.java @@ -35,14 +35,14 @@ public class Shield extends Accessory implements IDefender { } @Override - public void AttachTo(Entity entity) { - entity.RemoveFromInventory(this); + public void AttachTo(Entity entity, boolean fromInventory) { + if (fromInventory) entity.RemoveFromInventory(this); entity.Shield = this; } @Override - public void DeattachFrom(Entity entity) { + public void DeattachFrom(Entity entity, boolean toInventory) { entity.Shield = null; - entity.AddToInventory(this); + if (toInventory) entity.AddToInventory(this); } } diff --git a/Java-Knight/src/main/java/org/project/item/Accessory/Weapon.java b/Java-Knight/src/main/java/org/project/item/Accessory/Weapon.java index 0aaaac4..fe1e5f2 100644 --- a/Java-Knight/src/main/java/org/project/item/Accessory/Weapon.java +++ b/Java-Knight/src/main/java/org/project/item/Accessory/Weapon.java @@ -17,14 +17,14 @@ public class Weapon extends Accessory implements IDamageUtil { } @Override - public void AttachTo(Entity entity) { - entity.RemoveFromInventory(this); + public void AttachTo(Entity entity, boolean fromInventory) { + if (fromInventory) entity.RemoveFromInventory(this); entity.Weapon = this; } @Override - public void DeattachFrom(Entity entity) { + public void DeattachFrom(Entity entity, boolean toInventory) { entity.Weapon = null; - entity.AddToInventory(this); + if (toInventory) entity.AddToInventory(this); } }