diff --git a/Java-Knight/src/main/java/org/project/item/Item.java b/Java-Knight/src/main/java/org/project/item/Item.java index 6d6b5ad..f4fe85b 100644 --- a/Java-Knight/src/main/java/org/project/item/Item.java +++ b/Java-Knight/src/main/java/org/project/item/Item.java @@ -5,7 +5,4 @@ import org.project.entity.Entity; public interface Item { void use(Entity target); - /* - TODO: ADD OTHER REQUIRED AND BONUS METHODS - */ } diff --git a/Java-Knight/src/main/java/org/project/item/weapons/Bite.java b/Java-Knight/src/main/java/org/project/item/weapons/Bite.java new file mode 100644 index 0000000..51359ef --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/weapons/Bite.java @@ -0,0 +1,13 @@ +// Bite is used by Vampire + +package org.project.item.weapons; + +public class Bite extends Weapon { + + private static final int damage = 16; + + public Bite() { + super(damage, 0); + } + +} diff --git a/Java-Knight/src/main/java/org/project/item/weapons/BoneClub.java b/Java-Knight/src/main/java/org/project/item/weapons/BoneClub.java new file mode 100644 index 0000000..5878fb9 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/weapons/BoneClub.java @@ -0,0 +1,13 @@ +// BoneClub is used by Skeleton + +package org.project.item.weapons; + +public class BoneClub extends Weapon { + + private static final int damage = 14; + + public BoneClub() { + super(damage, 0); + } + +} diff --git a/Java-Knight/src/main/java/org/project/item/weapons/Dagger.java b/Java-Knight/src/main/java/org/project/item/weapons/Dagger.java new file mode 100644 index 0000000..c091c09 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/weapons/Dagger.java @@ -0,0 +1,13 @@ +// Dagger is used by Goblin + +package org.project.item.weapons; + +public class Dagger extends Weapon { + + private static final int damage = 12; + + public Dagger() { + super(damage, 0); + } + +} diff --git a/Java-Knight/src/main/java/org/project/item/weapons/DualDagger.java b/Java-Knight/src/main/java/org/project/item/weapons/DualDagger.java new file mode 100644 index 0000000..486e1cd --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/weapons/DualDagger.java @@ -0,0 +1,14 @@ +// DualDagger is used by Assassin + +package org.project.item.weapons; + +public class DualDagger extends Weapon { + + private static final int damage = 30; + private static final int manaCost = 15; + + public DualDagger() { + super(damage, manaCost); + } + +} diff --git a/Java-Knight/src/main/java/org/project/item/weapons/Flame.java b/Java-Knight/src/main/java/org/project/item/weapons/Flame.java new file mode 100644 index 0000000..209214a --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/weapons/Flame.java @@ -0,0 +1,13 @@ +// Flame is used by Dragon + +package org.project.item.weapons; + +public class Flame extends Weapon { + + private static final int damage = 36; + + public Flame() { + super(damage, 0); + } + +} diff --git a/Java-Knight/src/main/java/org/project/item/weapons/MagicStaff.java b/Java-Knight/src/main/java/org/project/item/weapons/MagicStaff.java new file mode 100644 index 0000000..f511165 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/weapons/MagicStaff.java @@ -0,0 +1,14 @@ +// Maggic Staff is used by Wizard + +package org.project.item.weapons; + +public class MagicStaff extends Weapon { + + private static final int damage = 28; + private static final int manaCost = 16; + + public MagicStaff() { + super(damage, manaCost); + } + +} diff --git a/Java-Knight/src/main/java/org/project/item/weapons/Sword.java b/Java-Knight/src/main/java/org/project/item/weapons/Sword.java index 96226ee..7c84944 100644 --- a/Java-Knight/src/main/java/org/project/item/weapons/Sword.java +++ b/Java-Knight/src/main/java/org/project/item/weapons/Sword.java @@ -1,26 +1,14 @@ +// Sword is used by Knight + package org.project.item.weapons; -import org.project.entity.Entity; +public class Sword extends Weapon { -import java.util.ArrayList; - -// TODO: UPDATE IMPLEMENTATION -public class Sword { - /* - THIS IS AN EXAMPLE OF A WEAPON DESIGN. - */ - - int abilityCharge; + private static final int damage = 34; + private static final int manaCost = 15; public Sword() { - // TODO: DESIGN SWORD'S ATTRIBUTES IMPLEMENT THE CONSTRUCTOR + super(damage, manaCost); } - // TODO: (BONUS) UPDATE THE UNIQUE ABILITY - public void uniqueAbility(ArrayList targets) { - abilityCharge += 2; - for (Entity target : targets) { - target.takeDamage(getDamage()); - } - } } diff --git a/Java-Knight/src/main/java/org/project/item/weapons/Weapon.java b/Java-Knight/src/main/java/org/project/item/weapons/Weapon.java index cb9fcf2..8a0fb43 100644 --- a/Java-Knight/src/main/java/org/project/item/weapons/Weapon.java +++ b/Java-Knight/src/main/java/org/project/item/weapons/Weapon.java @@ -1,15 +1,12 @@ package org.project.item.weapons; import org.project.entity.Entity; +import org.project.item.Item; -// TODO: UPDATE IMPLEMENTATION -public abstract class Weapon { +public abstract class Weapon implements Item { private int damage; private int manaCost; - /* - TODO: ADD OTHER REQUIRED AND BONUS ATTRIBUTES - */ public Weapon(int damage, int manaCost) { this.damage = damage; @@ -29,7 +26,5 @@ public abstract class Weapon { return manaCost; } - /* - TODO: ADD OTHER REQUIRED AND BONUS METHODS - */ + }