From a7ff45292fef95322931b92b8fd3557afbe4a283 Mon Sep 17 00:00:00 2001 From: mahdiLenovaF Date: Sun, 10 May 2026 16:07:52 +0330 Subject: [PATCH 1/5] complte classes --- .../src/main/java/org/project/Main.java | 40 +++++++- .../main/java/org/project/entity/Entity.java | 23 +++-- .../org/project/entity/enemies/Dragon.java | 20 ++++ .../org/project/entity/enemies/Enemy.java | 91 +++++++++++++++++-- .../org/project/entity/enemies/Goblin.java | 19 ++++ .../org/project/entity/enemies/Skeleton.java | 26 +++++- .../org/project/entity/enemies/Vampire.java | 20 ++++ .../org/project/entity/players/Assassin.java | 21 +++++ .../org/project/entity/players/Knight.java | 21 ++++- .../org/project/entity/players/Player.java | 75 ++++++++++++--- .../org/project/entity/players/Wizard.java | 18 ++++ .../src/main/java/org/project/item/Item.java | 4 - .../java/org/project/item/armors/Armor.java | 32 ++++++- .../org/project/item/armors/EnemyArmor.java | 7 ++ .../org/project/item/armors/KnightArmor.java | 7 +- .../org/project/item/armors/leatherArmor.java | 7 ++ .../org/project/item/armors/woodenArmor.java | 7 ++ .../project/item/consumables/Consumable.java | 13 ++- .../org/project/item/consumables/Flask.java | 10 +- .../org/project/item/consumables/Teriak.java | 11 +++ .../org/project/item/weapons/DragonWepon.java | 16 ++++ .../java/org/project/item/weapons/Sword.java | 19 +--- .../java/org/project/item/weapons/Weapon.java | 10 +- .../java/org/project/item/weapons/knife.java | 7 ++ .../java/org/project/item/weapons/wood.java | 8 ++ .../java/org/project/location/Location.java | 31 ++++--- 26 files changed, 459 insertions(+), 104 deletions(-) create mode 100644 Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java create mode 100644 Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java create mode 100644 Java-Knight/src/main/java/org/project/entity/enemies/Vampire.java create mode 100644 Java-Knight/src/main/java/org/project/entity/players/Assassin.java create mode 100644 Java-Knight/src/main/java/org/project/entity/players/Wizard.java create mode 100644 Java-Knight/src/main/java/org/project/item/armors/EnemyArmor.java create mode 100644 Java-Knight/src/main/java/org/project/item/armors/leatherArmor.java create mode 100644 Java-Knight/src/main/java/org/project/item/armors/woodenArmor.java create mode 100644 Java-Knight/src/main/java/org/project/item/consumables/Teriak.java create mode 100644 Java-Knight/src/main/java/org/project/item/weapons/DragonWepon.java create mode 100644 Java-Knight/src/main/java/org/project/item/weapons/knife.java create mode 100644 Java-Knight/src/main/java/org/project/item/weapons/wood.java diff --git a/Java-Knight/src/main/java/org/project/Main.java b/Java-Knight/src/main/java/org/project/Main.java index 6bde20e..dbc7546 100644 --- a/Java-Knight/src/main/java/org/project/Main.java +++ b/Java-Knight/src/main/java/org/project/Main.java @@ -7,9 +7,43 @@ import java.util.List; public class Main { public static void main(String[] args) { - // TODO: ADD LOCATIONS TO YOUR GAME - List locations = new ArrayList<>(); + ArrayList names = new ArrayList<>(); + names.add("Nou Camp"); + names.add("Bernabeu"); + names.add("Azadi"); + + System.out.println("----------Welcome to Java-Knight"); + while (true){ + + + + + + + + + + + + + + + + + + + + + + + + } // TODO: IMPLEMENT GAMEPLAY } -} \ No newline at end of file + + + + private void +} + diff --git a/Java-Knight/src/main/java/org/project/entity/Entity.java b/Java-Knight/src/main/java/org/project/entity/Entity.java index 2a060f9..f270ea5 100644 --- a/Java-Knight/src/main/java/org/project/entity/Entity.java +++ b/Java-Knight/src/main/java/org/project/entity/Entity.java @@ -1,21 +1,24 @@ package org.project.entity; +import org.project.item.armors.Armor; + public interface Entity { - void attack(Entity target); + void lightattack(Entity target); + void heavyattack(Entity target); void defend(); - - void heal(int health); - + void healHp(int health); + void healMp(int mp); void fillMana(int mana); - void takeDamage(int damage); - int getMaxHP(); - int getMaxMP(); + Armor getArmor(); + void falsepossible(); + void truepossible(); + boolean isalive(); + void specialAbility(Entity target); + + - /* - TODO: ADD OTHER REQUIRED AND BONUS METHODS - */ } diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java b/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java new file mode 100644 index 0000000..6faf458 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java @@ -0,0 +1,20 @@ +package org.project.entity.enemies; + +import org.project.entity.Entity; +import org.project.item.armors.EnemyArmor; +import org.project.item.weapons.DragonWepon; +import org.project.item.weapons.Weapon; + +public class Dragon extends Enemy{ + + + public Dragon(){ + super(200 , 50 , new DragonWepon() , new EnemyArmor()); + } + + + public void specialAbility(Entity target){ + heavyattack(target); + //sout : fire! + } +} diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java b/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java index e019acb..3e019e0 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java @@ -1,23 +1,58 @@ package org.project.entity.enemies; +import org.project.entity.Entity; +import org.project.item.armors.Armor; import org.project.item.weapons.Weapon; -// TODO: UPDATE IMPLEMENTATION -public abstract class Enemy { - Weapon weapon; - private int hp; - private int mp; - public Enemy(int hp, int mp, Weapon weapon) { + + +public abstract class Enemy implements Entity { + protected Weapon weapon; + protected Armor armor; + protected int hp; + protected int mp; + protected int maxHp; + protected int maxMp; + protected boolean ispossible; + protected boolean haveKey; + protected boolean isalive; + + public Enemy(int hp, int mp, Weapon weapon , Armor armor) { this.hp = hp; + this.maxHp=hp; this.mp = mp; - + this.maxMp=mp; this.weapon = weapon; + this.armor = armor; + this.ispossible = true; + this.isalive=true; + int n = (int) (Math.random())*2; + if(n==0){ + haveKey=true; + } + else { + haveKey=false; + } } - @Override + + public void lightattack(Entity target){ + target.takeDamage(weapon.getDamage()); + } + + + + + public void takeDamage(int damage) { - hp -= damage; + if(!armor.checkBreak()){ + hp -= damage - armor.getDefense(); + armor.use(this); + } + else { + hp -=damage; + }; } public int getHp() { @@ -28,7 +63,45 @@ public abstract class Enemy { return mp; } + public int getMaxHP(){ + return maxHp; + } + public int getMaxMP(){ + return maxMp; + } + public Weapon getWeapon() { return weapon; } + public Armor getArmor(){return armor;} + + + public void falsepossible(){ + ispossible = false; + } + public void truepossible(){ + ispossible=true;} + public boolean getpossible(){ + return ispossible; + } + + public abstract void specialAbility(Entity target); + + + @Override + public boolean isalive(){ + return isalive; + } + + @Override + + public void heavyattack(Entity target){ + target.takeDamage(weapon.getDamage()); + } + public void defend() {} + public void healHp(int health){} + public void healMp(int mp){} + public void fillMana(int mana){} } + + diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java b/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java new file mode 100644 index 0000000..8d55c45 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java @@ -0,0 +1,19 @@ +package org.project.entity.enemies; + +import org.project.entity.Entity; +import org.project.item.armors.EnemyArmor; +import org.project.item.weapons.knife; + +public class Goblin extends Enemy { + + public Goblin(){ + super(35 , 25 , new knife() , new EnemyArmor()); + + } + + public void specialAbility(Entity target){ + heavyattack(target); + //sout : crirtal + } + +} diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java b/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java index 8a6a555..1034148 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java @@ -1,6 +1,26 @@ package org.project.entity.enemies; -// TODO: UPDATE IMPLEMENTATION -public class Skeleton { - // TODO: DESIGN ENEMY AND IMPLEMENT THE CONSTRUCTOR + +import org.project.entity.Entity; +import org.project.item.armors.EnemyArmor; +import org.project.item.weapons.wood; + +public class Skeleton extends Enemy { + + private boolean resurrect; + + public Skeleton(){ + super(50 , 30 , new wood() , new EnemyArmor()); + this.resurrect =false; + } + + public void specialAbility(Entity target){ + if(this.isalive == false && this.resurrect == false){ + this.isalive = true; + this.hp=25; + this.mp=15; + } + + } + } diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Vampire.java b/Java-Knight/src/main/java/org/project/entity/enemies/Vampire.java new file mode 100644 index 0000000..4b1381b --- /dev/null +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Vampire.java @@ -0,0 +1,20 @@ +package org.project.entity.enemies; + +import org.project.entity.Entity; +import org.project.item.armors.EnemyArmor; +import org.project.item.weapons.wood; + +public class Vampire extends Enemy{ + + public Vampire(){ + super(60 , 25, new wood() , new EnemyArmor()); + } + + + @Override + public void specialAbility(Entity target){ + target.takeDamage(this.weapon.getDamage()); + this.hp += this.weapon.getDamage() /2; + } + +} diff --git a/Java-Knight/src/main/java/org/project/entity/players/Assassin.java b/Java-Knight/src/main/java/org/project/entity/players/Assassin.java new file mode 100644 index 0000000..94b89a5 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/entity/players/Assassin.java @@ -0,0 +1,21 @@ +package org.project.entity.players; + +import org.project.entity.Entity; +import org.project.item.armors.woodenArmor; +import org.project.item.weapons.knife; + +public class Assassin extends Player{ + + public Assassin(String name){ + super(name , 60 , 80 ,new knife(), new woodenArmor() , 8); + } + + public void specialAbility(Entity target){ + target.falsepossible(); + // sout : na marei ; + heavyattack(target); + + } + + +} diff --git a/Java-Knight/src/main/java/org/project/entity/players/Knight.java b/Java-Knight/src/main/java/org/project/entity/players/Knight.java index 14d8fa2..cb7158f 100644 --- a/Java-Knight/src/main/java/org/project/entity/players/Knight.java +++ b/Java-Knight/src/main/java/org/project/entity/players/Knight.java @@ -1,6 +1,21 @@ package org.project.entity.players; -// TODO: UPDATE IMPLEMENTATION -public class Knight { - // TODO: DESIGN KNIGHT'S WEAPON AND ARMOR AND IMPLEMENT THE CONSTRUCTOR + +import org.project.entity.Entity; +import org.project.item.armors.KnightArmor; +import org.project.item.weapons.Sword; + +public class Knight extends Player { + + public Knight(String name){ + super(name , 50 , 50 , new Sword() , new KnightArmor() ,10); + } + + @Override + public void specialAbility(Entity target){ + target.takeDamage(weapon.getDamage() + fistDamage); + target.falsepossible(); + } + + } diff --git a/Java-Knight/src/main/java/org/project/entity/players/Player.java b/Java-Knight/src/main/java/org/project/entity/players/Player.java index ff5385c..183d2a3 100644 --- a/Java-Knight/src/main/java/org/project/entity/players/Player.java +++ b/Java-Knight/src/main/java/org/project/entity/players/Player.java @@ -4,49 +4,83 @@ import org.project.entity.Entity; import org.project.item.armors.Armor; import org.project.item.weapons.Weapon; -// TODO: UPDATE IMPLEMENTATION -public abstract class Player { - protected String name; - Weapon weapon; - Armor armor; - private int hp; - private int maxHP; - private int mp; - private int maxMP; - public Player(String name, int hp, int mp, Weapon weapon, Armor armor) { +public abstract class Player implements Entity { + protected String name; + protected Weapon weapon; + protected Armor armor; + protected int hp; + protected int maxHP; + protected int mp; + protected int maxMP; + protected int fistDamage; + protected boolean isDefending; + protected boolean isalive; + + public Player(String name, int hp, int mp, Weapon weapon, Armor armor , int fistDamage) { this.name = name; this.hp = hp; + this.maxHP=hp; this.mp = mp; - + this.maxMP = mp; this.weapon = weapon; this.armor = armor; + this.isDefending=false; + this.fistDamage = fistDamage; + this.isalive=true; + } + + + @Override + public void lightattack(Entity target){ + target.takeDamage(fistDamage); } @Override - public void attack(Entity target) { + public void heavyattack(Entity target){ target.takeDamage(weapon.getDamage()); } @Override public void defend() { - // TODO + isDefending =true; } @Override public void takeDamage(int damage) { - hp -= damage - armor.getDefense(); + + if(isDefending){ + damage /= 2; + isDefending = false; + } + if(!armor.checkBreak()){ + hp -= damage - armor.getDefense(); + armor.use(this); + } + else { + hp -=damage; + } + } @Override - public void heal(int health) { + public void healHp(int health) { hp += health; if (hp > maxHP) { hp = maxHP; } } + @Override + public void healMp(int mp) { + this.mp+= mp; + if (this.mp > maxMP) { + this.mp = maxMP; + } + } + + @Override public void fillMana(int mana) { mp += mana; @@ -55,6 +89,8 @@ public abstract class Player { } } + public abstract void specialAbility(Entity target); + public String getName() { return name; @@ -82,8 +118,17 @@ public abstract class Player { return weapon; } + public Armor getArmor() { return armor; } + @Override + public boolean isalive(){ + return isalive; + } + + + public void falsepossible(){} + public void truepossible(){} } diff --git a/Java-Knight/src/main/java/org/project/entity/players/Wizard.java b/Java-Knight/src/main/java/org/project/entity/players/Wizard.java new file mode 100644 index 0000000..91a25b8 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/entity/players/Wizard.java @@ -0,0 +1,18 @@ +package org.project.entity.players; + +import org.project.entity.Entity; +import org.project.item.armors.leatherArmor; +import org.project.item.weapons.wood; + +public class Wizard extends Player{ + public Wizard(String name){ + super(name , 90 , 60 , new wood() , new leatherArmor() , 7 ); + } + + public void specialAbility(Entity target){ + target.takeDamage(weapon.getDamage() + fistDamage); + this.healHp(30); + } + + +} 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..e2bec96 100644 --- a/Java-Knight/src/main/java/org/project/item/Item.java +++ b/Java-Knight/src/main/java/org/project/item/Item.java @@ -4,8 +4,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/armors/Armor.java b/Java-Knight/src/main/java/org/project/item/armors/Armor.java index 7ca8774..7bc928e 100644 --- a/Java-Knight/src/main/java/org/project/item/armors/Armor.java +++ b/Java-Knight/src/main/java/org/project/item/armors/Armor.java @@ -1,7 +1,10 @@ package org.project.item.armors; +import org.project.entity.Entity; +import org.project.item.Item; + // TODO: UPDATE IMPLEMENTATION -public abstract class Armor { +public abstract class Armor implements Item { private int defense; private int maxDefense; private int durability; @@ -12,16 +15,31 @@ public abstract class Armor { public Armor(int defense, int durability) { this.defense = defense; this.durability = durability; + this.maxDurability = durability; + this.maxDefense = defense; } - public void checkBreak() { + public void use(Entity target){ + durability -= defense; + } + + + + public boolean checkBreak() { if (durability <= 0) { isBroke = true; defense = 0; + return true; + } + else { + isBroke= false; + return false; + + } + } - // TODO: (BONUS) UPDATE THE REPAIR METHOD public void repair() { isBroke = false; defense = maxDefense; @@ -36,6 +54,14 @@ public abstract class Armor { return durability; } + public void setMaxDefense(int maxDefense) { + this.maxDefense = maxDefense; + } + + public void setMaxDurability(int maxDurability) { + this.maxDurability = maxDurability; + } + public boolean isBroke() { return isBroke; } diff --git a/Java-Knight/src/main/java/org/project/item/armors/EnemyArmor.java b/Java-Knight/src/main/java/org/project/item/armors/EnemyArmor.java new file mode 100644 index 0000000..f6449da --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/armors/EnemyArmor.java @@ -0,0 +1,7 @@ +package org.project.item.armors; + +public class EnemyArmor extends Armor{ + public EnemyArmor(){ + super(2 , 10); + } +} diff --git a/Java-Knight/src/main/java/org/project/item/armors/KnightArmor.java b/Java-Knight/src/main/java/org/project/item/armors/KnightArmor.java index eb59a46..cd23aca 100644 --- a/Java-Knight/src/main/java/org/project/item/armors/KnightArmor.java +++ b/Java-Knight/src/main/java/org/project/item/armors/KnightArmor.java @@ -1,6 +1,9 @@ package org.project.item.armors; // TODO: UPDATE IMPLEMENTATION -public class KnightArmor { - // TODO: DESIGN ARMOR'S ATTRIBUTES IMPLEMENT THE CONSTRUCTOR +public class KnightArmor extends Armor{ + + public KnightArmor(){ + super(5 , 20); + } } \ No newline at end of file diff --git a/Java-Knight/src/main/java/org/project/item/armors/leatherArmor.java b/Java-Knight/src/main/java/org/project/item/armors/leatherArmor.java new file mode 100644 index 0000000..0e55961 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/armors/leatherArmor.java @@ -0,0 +1,7 @@ +package org.project.item.armors; + +public class leatherArmor extends Armor { + public leatherArmor(){ + super(4 , 20); + } +} diff --git a/Java-Knight/src/main/java/org/project/item/armors/woodenArmor.java b/Java-Knight/src/main/java/org/project/item/armors/woodenArmor.java new file mode 100644 index 0000000..da9f5b1 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/armors/woodenArmor.java @@ -0,0 +1,7 @@ +package org.project.item.armors; + +public class woodenArmor extends Armor{ + public woodenArmor(){ + super(4 , 16); + } +} diff --git a/Java-Knight/src/main/java/org/project/item/consumables/Consumable.java b/Java-Knight/src/main/java/org/project/item/consumables/Consumable.java index 028e13d..417155e 100644 --- a/Java-Knight/src/main/java/org/project/item/consumables/Consumable.java +++ b/Java-Knight/src/main/java/org/project/item/consumables/Consumable.java @@ -1,8 +1,11 @@ package org.project.item.consumables; -// TODO: UPDATE IMPLEMENTATION -public abstract class Consumable { - /* - TODO: ADD OTHER REQUIRED AND BONUS METHODS - */ +import org.project.entity.Entity; +import org.project.item.Item; + + +public abstract class Consumable implements Item { + + public abstract void use(Entity target); + } diff --git a/Java-Knight/src/main/java/org/project/item/consumables/Flask.java b/Java-Knight/src/main/java/org/project/item/consumables/Flask.java index c0e7a6d..ea27ad8 100644 --- a/Java-Knight/src/main/java/org/project/item/consumables/Flask.java +++ b/Java-Knight/src/main/java/org/project/item/consumables/Flask.java @@ -2,15 +2,11 @@ package org.project.item.consumables; import org.project.entity.Entity; -// TODO: UPDATE IMPLEMENTATION -public class Flask { - /* - THIS IS AN EXAMPLE OF A CONSUMABLE DESIGN. - */ +public class Flask extends Consumable { - // TODO: UPDATE USE METHOD @Override public void use(Entity target) { - target.heal(target.getMaxHP() / 10); + target.healHp(target.getMaxHP() / 10); } + } diff --git a/Java-Knight/src/main/java/org/project/item/consumables/Teriak.java b/Java-Knight/src/main/java/org/project/item/consumables/Teriak.java new file mode 100644 index 0000000..6feb0d5 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/consumables/Teriak.java @@ -0,0 +1,11 @@ +package org.project.item.consumables; + +import org.project.entity.Entity; + +public class Teriak { + + public void use(Entity target) { + target.healMp(target.getMaxMP() / 10); + } + +} diff --git a/Java-Knight/src/main/java/org/project/item/weapons/DragonWepon.java b/Java-Knight/src/main/java/org/project/item/weapons/DragonWepon.java new file mode 100644 index 0000000..cfa2e68 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/weapons/DragonWepon.java @@ -0,0 +1,16 @@ +package org.project.item.weapons; + +import org.project.entity.Entity; + +public class DragonWepon extends Weapon{ + + public DragonWepon(){ + super(40 , 10); + } + + public void use(Entity target){ + target.takeDamage(this.getDamage()+ target.getArmor().getDefense()); + } + + +} 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..a853ea0 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 @@ -4,23 +4,8 @@ import org.project.entity.Entity; import java.util.ArrayList; -// TODO: UPDATE IMPLEMENTATION -public class Sword { - /* - THIS IS AN EXAMPLE OF A WEAPON DESIGN. - */ - - int abilityCharge; - +public class Sword extends Weapon { public Sword() { - // TODO: DESIGN SWORD'S ATTRIBUTES IMPLEMENT THE CONSTRUCTOR - } - - // TODO: (BONUS) UPDATE THE UNIQUE ABILITY - public void uniqueAbility(ArrayList targets) { - abilityCharge += 2; - for (Entity target : targets) { - target.takeDamage(getDamage()); - } + super( 20 , 8); } } 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..676d086 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 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,4 @@ public abstract class Weapon { return manaCost; } - /* - TODO: ADD OTHER REQUIRED AND BONUS METHODS - */ } diff --git a/Java-Knight/src/main/java/org/project/item/weapons/knife.java b/Java-Knight/src/main/java/org/project/item/weapons/knife.java new file mode 100644 index 0000000..4b83f59 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/weapons/knife.java @@ -0,0 +1,7 @@ +package org.project.item.weapons; + +public class knife extends Weapon{ + public knife(){ + super(15 , 8); + } +} diff --git a/Java-Knight/src/main/java/org/project/item/weapons/wood.java b/Java-Knight/src/main/java/org/project/item/weapons/wood.java new file mode 100644 index 0000000..eceb5b8 --- /dev/null +++ b/Java-Knight/src/main/java/org/project/item/weapons/wood.java @@ -0,0 +1,8 @@ +package org.project.item.weapons; + +public class wood extends Weapon{ + + public wood(){ + super(10, 8); + } +} diff --git a/Java-Knight/src/main/java/org/project/location/Location.java b/Java-Knight/src/main/java/org/project/location/Location.java index b0b4b98..f59f4c5 100644 --- a/Java-Knight/src/main/java/org/project/location/Location.java +++ b/Java-Knight/src/main/java/org/project/location/Location.java @@ -1,28 +1,29 @@ package org.project.location; import org.project.entity.enemies.Enemy; +import org.project.entity.enemies.Goblin; +import org.project.entity.enemies.Skeleton; +import org.project.entity.enemies.Vampire; import java.util.ArrayList; public class Location { private String name; + private Enemy enemy; - private ArrayList enemies; + public Location(String name) { + this.name=name; - public Location(ArrayList locations, ArrayList enemies) { - this.locations = locations; - this.enemies = enemies; + int n = (int) (Math.random()) * 3 ; + if(n==0){ + this.enemy = new Goblin(); + } + if(n==1){ + this.enemy = new Vampire(); + } + if(n==2){ + this.enemy = new Skeleton(); + } } - public String getName() { - return name; - } - - public ArrayList getLocations() { - return locations; - } - - public ArrayList getEnemies() { - return enemies; - } } -- 2.54.0 From 38fdd06a0393a3adfd04ce7937b17acc44d36ff5 Mon Sep 17 00:00:00 2001 From: mahdiLenovaF Date: Thu, 14 May 2026 01:00:06 +0330 Subject: [PATCH 2/5] complete classes + part of main --- .../src/main/java/org/project/Main.java | 444 +++++++++++++++++- .../main/java/org/project/entity/Entity.java | 10 +- .../org/project/entity/enemies/Dragon.java | 5 + .../org/project/entity/enemies/Enemy.java | 38 +- .../org/project/entity/enemies/Goblin.java | 12 +- .../org/project/entity/enemies/Skeleton.java | 14 +- .../org/project/entity/enemies/Vampire.java | 10 +- .../org/project/entity/players/Assassin.java | 7 +- .../org/project/entity/players/Knight.java | 5 +- .../org/project/entity/players/Player.java | 39 +- .../org/project/entity/players/Wizard.java | 4 +- .../java/org/project/item/armors/Armor.java | 1 - .../org/project/item/consumables/Flask.java | 2 +- .../org/project/item/consumables/Teriak.java | 5 +- .../java/org/project/item/weapons/Sword.java | 2 +- .../java/org/project/location/Location.java | 25 +- .../target/classes/org/project/Main.class | Bin 0 -> 8056 bytes .../classes/org/project/entity/Entity.class | Bin 0 -> 658 bytes .../org/project/entity/enemies/Dragon.class | Bin 0 -> 1302 bytes .../org/project/entity/enemies/Enemy.class | Bin 0 -> 3577 bytes .../org/project/entity/enemies/Goblin.class | Bin 0 -> 1172 bytes .../org/project/entity/enemies/Skeleton.class | Bin 0 -> 1617 bytes .../org/project/entity/enemies/Vampire.class | Bin 0 -> 1783 bytes .../org/project/entity/players/Assassin.class | Bin 0 -> 1744 bytes .../org/project/entity/players/Knight.class | Bin 0 -> 1709 bytes .../org/project/entity/players/Player.class | Bin 0 -> 4506 bytes .../org/project/entity/players/Wizard.class | Bin 0 -> 1711 bytes .../classes/org/project/item/Item.class | Bin 0 -> 153 bytes .../org/project/item/armors/Armor.class | Bin 0 -> 1364 bytes .../org/project/item/armors/EnemyArmor.class | Bin 0 -> 331 bytes .../org/project/item/armors/KnightArmor.class | Bin 0 -> 334 bytes .../project/item/armors/leatherArmor.class | Bin 0 -> 337 bytes .../org/project/item/armors/woodenArmor.class | Bin 0 -> 334 bytes .../project/item/consumables/Consumable.class | Bin 0 -> 389 bytes .../org/project/item/consumables/Flask.class | Bin 0 -> 568 bytes .../org/project/item/consumables/Teriak.class | Bin 0 -> 571 bytes .../project/item/weapons/DragonWepon.class | Bin 0 -> 712 bytes .../org/project/item/weapons/Sword.class | Bin 0 -> 321 bytes .../org/project/item/weapons/Weapon.class | Bin 0 -> 806 bytes .../org/project/item/weapons/knife.class | Bin 0 -> 321 bytes .../org/project/item/weapons/wood.class | Bin 0 -> 318 bytes .../org/project/location/Location.class | Bin 0 -> 686 bytes 42 files changed, 557 insertions(+), 66 deletions(-) create mode 100644 Java-Knight/target/classes/org/project/Main.class create mode 100644 Java-Knight/target/classes/org/project/entity/Entity.class create mode 100644 Java-Knight/target/classes/org/project/entity/enemies/Dragon.class create mode 100644 Java-Knight/target/classes/org/project/entity/enemies/Enemy.class create mode 100644 Java-Knight/target/classes/org/project/entity/enemies/Goblin.class create mode 100644 Java-Knight/target/classes/org/project/entity/enemies/Skeleton.class create mode 100644 Java-Knight/target/classes/org/project/entity/enemies/Vampire.class create mode 100644 Java-Knight/target/classes/org/project/entity/players/Assassin.class create mode 100644 Java-Knight/target/classes/org/project/entity/players/Knight.class create mode 100644 Java-Knight/target/classes/org/project/entity/players/Player.class create mode 100644 Java-Knight/target/classes/org/project/entity/players/Wizard.class create mode 100644 Java-Knight/target/classes/org/project/item/Item.class create mode 100644 Java-Knight/target/classes/org/project/item/armors/Armor.class create mode 100644 Java-Knight/target/classes/org/project/item/armors/EnemyArmor.class create mode 100644 Java-Knight/target/classes/org/project/item/armors/KnightArmor.class create mode 100644 Java-Knight/target/classes/org/project/item/armors/leatherArmor.class create mode 100644 Java-Knight/target/classes/org/project/item/armors/woodenArmor.class create mode 100644 Java-Knight/target/classes/org/project/item/consumables/Consumable.class create mode 100644 Java-Knight/target/classes/org/project/item/consumables/Flask.class create mode 100644 Java-Knight/target/classes/org/project/item/consumables/Teriak.class create mode 100644 Java-Knight/target/classes/org/project/item/weapons/DragonWepon.class create mode 100644 Java-Knight/target/classes/org/project/item/weapons/Sword.class create mode 100644 Java-Knight/target/classes/org/project/item/weapons/Weapon.class create mode 100644 Java-Knight/target/classes/org/project/item/weapons/knife.class create mode 100644 Java-Knight/target/classes/org/project/item/weapons/wood.class create mode 100644 Java-Knight/target/classes/org/project/location/Location.class diff --git a/Java-Knight/src/main/java/org/project/Main.java b/Java-Knight/src/main/java/org/project/Main.java index dbc7546..b55ddbd 100644 --- a/Java-Knight/src/main/java/org/project/Main.java +++ b/Java-Knight/src/main/java/org/project/Main.java @@ -1,34 +1,227 @@ package org.project; +import org.project.entity.Entity; +import org.project.entity.enemies.*; +import org.project.entity.players.Assassin; +import org.project.entity.players.Knight; +import org.project.entity.players.Player; +import org.project.entity.players.Wizard; +import org.project.item.consumables.Flask; +import org.project.item.consumables.Teriak; import org.project.location.Location; - +import java.util.Scanner; import java.util.ArrayList; import java.util.List; public class Main { + + public static final String RESET = "\u001B[0m"; + public static final String RED = "\u001B[31m"; + public static final String GREEN = "\u001B[32m"; + public static final String YELLOW = "\u001B[33m"; + public static final String BLUE = "\u001B[34m"; + + + public static Entity player; + public static Entity enemy; + public static Scanner input = new Scanner(System.in); + public static ArrayList keys = new ArrayList(); + + public static void main(String[] args) { - ArrayList names = new ArrayList<>(); - names.add("Nou Camp"); - names.add("Bernabeu"); - names.add("Azadi"); - System.out.println("----------Welcome to Java-Knight"); + startMenu(); + while (true){ + do{ + System.out.println("==============================="); + Location fightLoc = fightMenu(); + enemy = fightLoc.getEnemie(); + System.out.println(enemy.toString() + "| HP:" + enemy.getHp()); + System.out.println("Do you want fight?"); + System.out.println("1.Yes"); + System.out.println("2.No(Go to another location)"); + int n = input.nextInt(); + if(n==1){ + gameplay(); + if(!player.isalive()){ + System.out.println("==============================="); + System.out.println( YELLOW + "Goodby!"); + return; + } + else { + System.out.println(BLUE); + player.repair(); + System.out.println(RESET); + } + } + else if(n >= 3){ + System.out.println("Invalid input"); + } + + + }while (true); + + + + } + // TODO: IMPLEMENT GAMEPLAY + } + + + public static void setKeys(){ + boolean goblinkey=false; + boolean skeletonkey = false; + boolean vampirekey = false; + keys.add(goblinkey); + keys.add(skeletonkey); + keys.add(vampirekey); + } + + + public static void startMenu(){ + System.out.println("----------Welcome to Java-Knight----------"); + setKeys(); + System.out.print("Please enter your name:"); + String name = input.next(); + System.out.println("Choose tor player:"); + System.out.println("1. ⚔\uFE0F Knight (High Damage)"); + System.out.println("2. \uD83E\uDDD9\u200D♂\uFE0F Wizard (High HP)"); + System.out.println("3. \uD83D\uDDE1\uFE0F️ Assassin (High Mana)"); + + boolean validInput = false; + while (!validInput){ + System.out.print("chose:"); + int choose =input.nextInt(); + switch (choose){ + case 1: + { + player = new Knight(name); + validInput= true; + break; + } + case 2: + { + player = new Wizard(name); + validInput = true; + break; + } + case 3: + { + player = new Assassin(name); + validInput = true; + break; + } + default: + { + System.out.println("Invalid input"); + validInput = false; + } + } + + + } + } + + public static Location fightMenu(){ + boolean dragonOpen = true; + for (Boolean b : keys){ + if(b == false){ + dragonOpen = false; + break; + } + } + + + System.out.println("Where do you want to go?"); + System.out.println("1.Desert"); + System.out.println("2.Sea"); + System.out.println("3.Jungle"); + + for(boolean b : keys){ + if(b){ + System.out.print("✔\uFE0F"); + + } + else{ + System.out.print("🔒"); + } + } + + + if(dragonOpen) { + System.out.println("4.Dranon"); + } + else { + System.out.println("Dragon"); + } + int n = (int) ((Math.random()) *3); + Entity enemy = null; + if(n == 0){ + enemy = new Goblin(); + } + if(n==1){ + enemy = new Skeleton(); + } + if(n==2){ + enemy = new Vampire(); + } + + Location location = null; + boolean validInput = false; + while (!validInput){ + System.out.print("chose:"); + int choose =input.nextInt(); + switch (choose){ + case 1: + { + location = new Location("Desert" , enemy); + validInput = true; + break; + } + case 2: + { + location = new Location("Sea" , enemy); + validInput=true; + break; + } + case 3: + { + location = new Location("Jungle" , enemy); + validInput =true; + break; + } + case 4: + { + if(dragonOpen){ + enemy = new Dragon(); + location = new Location("The end of line" , enemy); + validInput = true; + } + else { + System.out.println("It's locked!!!!!!"); + validInput = false; + } + break; + } + default: + { + System.out.println("Invalid input"); + validInput = false; + break; + } - - - - + } @@ -39,11 +232,238 @@ public class Main { } - // TODO: IMPLEMENT GAMEPLAY + System.out.println("==============================="); + return location; + + } + + public static void gameplay(){ + boolean playerTurn = true; + + while (player.isalive() && enemy.isalive()){ + + + System.out.println("========================================="); + + if(playerTurn){ + System.out.println(player.toString()); + System.out.println(enemy.toString() + "| HP:" + enemy.getHp()); + + System.out.println("\n"+GREEN + "It's your Turn" +RESET); + while (true){ + + if(playerAttakMenu()){ + break; + } + + } + playerTurn = !playerTurn; + + + if(enemy instanceof Skeleton && !enemy.isalive()){ + System.out.println("\n"+ RED); + enemy.specialAbility(player); + System.out.println(RESET); + playerTurn = !playerTurn; + } + if(!enemy.isalive()){ + System.out.println("you WIN"); + int n = (int) (Math.random()*2); + if(n== 0){ + if(enemy instanceof Goblin){ + if(keys.get(0) == true){ + System.out.println("You have got this key befor"); + return; + } + keys.set(0, true); + } + else if (enemy instanceof Skeleton){ + if(keys.get(1) == true){ + System.out.println("You have got this key befor"); + return; + } + keys.set(1 , true); + } + else if (enemy instanceof Vampire) { + if(keys.get(2) == true){ + System.out.println("You have got this key befor"); + return; + } + keys.set(2 , true); + } + System.out.println( YELLOW +"You chatck the" + enemy.toString() +"keys"+ RESET); + } + else { + System.out.println("There is no keys here"); + } + return; + } + } + + + if(!enemy.getpossible()){ + System.out.println(enemy.toString() + " Can't do any act"); + enemy.truepossible(); + playerTurn = !playerTurn; + continue; + } + if(enemy.getpossible() && !playerTurn){ + + System.out.println("\n" + RED +"It's enemy Turn" + RESET); + enemyAttakMenu(); + playerTurn = !playerTurn; + + + } + + if(!player.isalive()){ + System.out.println("you lose"); + return; + } + + + + + + } + + + + } + + public static void enemyAttakMenu(){ + if(enemy instanceof Goblin || enemy instanceof Vampire){ + int n = (int) (Math.random()*3); + if(n ==0 && enemy.getMp() >=10){ + enemy.specialAbility(player); + } + else if(n == 1){ + + enemy.lightattack(player); + } + else { + enemy.heavyattack(player); + } + + } + + else if(enemy instanceof Skeleton){ + if(enemy.getHp() <= 0){ + enemy.heavyattack(player); + } + else { + enemy.lightattack(player); + } + } + + + } + public static boolean playerAttakMenu() { + + System.out.print("1.Light attak| "); + System.out.print("2.Heavy attak("+player.getWeapon().getManaCost()+ " mana)| "); + System.out.print("3.Defend(12 mana)| "); + System.out.print("4.Heal(14 mana)| "); + System.out.println("5.Special action (30 mana)"); + + int n ; + + while (true){ + System.out.print("choose:"); + n = input.nextInt(); + if(n > 0 && n < 6){ + break; + } + else { + System.out.println("Invalid input"); + } + } + + switch (n){ + case 1: + { + player.lightattack(enemy); + return true; + } + case 2: + { + if(player.getMp() >= player.getWeapon().getManaCost()){ + player.heavyattack(enemy); + return true; + } + else { + System.out.println("Not enough Mp"); + return false; + } + } + case 3: + { + if(player.getMp() >= 12){ + player.defend(); + return true; + } + else { + System.out.println("Not enough Mp"); + return false; + } + } + + case 4: + { + if(player.getMp() >= 14){ + System.out.println("1.Flask | 2. Teriak"); + int k ; + while (true){ + k = input.nextInt(); + System.out.print("choose:"); + if(k == 1){ + Flask flask = new Flask(); + flask.use(player); + break; + } + else if(k==2){ + Teriak teriak = new Teriak(); + teriak.use(player); + break; + } + else { + System.out.print("Invalid input"); + + + } + } + return true; + } + else { + System.out.println("Not enough Mp"); + return false; + } + + } + + case 5: + { + if(player.getMp() >= 30){ + player.specialAbility(enemy); + return true; + } + else { + System.out.println("Not enough Mp"); + return false; + } + + } + default: + { + return false; + } + + } + + } - private void } diff --git a/Java-Knight/src/main/java/org/project/entity/Entity.java b/Java-Knight/src/main/java/org/project/entity/Entity.java index f270ea5..651003e 100644 --- a/Java-Knight/src/main/java/org/project/entity/Entity.java +++ b/Java-Knight/src/main/java/org/project/entity/Entity.java @@ -1,6 +1,7 @@ package org.project.entity; import org.project.item.armors.Armor; +import org.project.item.weapons.Weapon; public interface Entity { @@ -9,15 +10,22 @@ public interface Entity { void defend(); void healHp(int health); void healMp(int mp); - void fillMana(int mana); void takeDamage(int damage); int getMaxHP(); + int getHp(); int getMaxMP(); + int getMp(); Armor getArmor(); + Weapon getWeapon(); void falsepossible(); void truepossible(); + boolean getpossible(); boolean isalive(); + void repair(); void specialAbility(Entity target); + String toString(); + String getName(); + diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java b/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java index 6faf458..3380543 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java @@ -17,4 +17,9 @@ public class Dragon extends Enemy{ heavyattack(target); //sout : fire! } + + public String toString(){ + String str = "Dragon |" + "Hp:" + getHp(); + return str; + } } diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java b/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java index 3e019e0..9ab8e09 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java @@ -15,8 +15,7 @@ public abstract class Enemy implements Entity { protected int maxHp; protected int maxMp; protected boolean ispossible; - protected boolean haveKey; - protected boolean isalive; + public Enemy(int hp, int mp, Weapon weapon , Armor armor) { this.hp = hp; @@ -26,32 +25,35 @@ public abstract class Enemy implements Entity { this.weapon = weapon; this.armor = armor; this.ispossible = true; - this.isalive=true; - int n = (int) (Math.random())*2; - if(n==0){ - haveKey=true; - } - else { - haveKey=false; - } + } public void lightattack(Entity target){ + System.out.println(toString() + " do a light attaked with " + weapon.getDamage() + " damages"); target.takeDamage(weapon.getDamage()); + + } + + + public void heavyattack(Entity target){ + System.out.println(toString() + " do a heavy attaked with " + weapon.getDamage() + " damages"); + target.takeDamage(2 * weapon.getDamage()); } - - public void takeDamage(int damage) { + if(!armor.checkBreak()){ hp -= damage - armor.getDefense(); armor.use(this); + System.out.println(toString() + " take " + (damage -armor.getDefense()) + + " Damage. " + armor.getDefense() +" Defens by armor" ); } else { hp -=damage; + System.out.println(toString() + "take " + (damage)); }; } @@ -81,6 +83,7 @@ public abstract class Enemy implements Entity { } public void truepossible(){ ispossible=true;} + public boolean getpossible(){ return ispossible; } @@ -90,18 +93,19 @@ public abstract class Enemy implements Entity { @Override public boolean isalive(){ - return isalive; + return hp>0; } @Override + public abstract String toString(); + public String getName(){return "";} - public void heavyattack(Entity target){ - target.takeDamage(weapon.getDamage()); - } + @Override + + public void repair(){} public void defend() {} public void healHp(int health){} public void healMp(int mp){} - public void fillMana(int mana){} } diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java b/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java index 8d55c45..028ff65 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java @@ -7,13 +7,19 @@ import org.project.item.weapons.knife; public class Goblin extends Enemy { public Goblin(){ - super(35 , 25 , new knife() , new EnemyArmor()); + super(35 , 30 , new knife() , new EnemyArmor()); } public void specialAbility(Entity target){ - heavyattack(target); - //sout : crirtal + System.out.println("\uD83D\uDC79 use critical hit"); + target.takeDamage(2 * weapon.getDamage()); + this.mp -=10; + + } + + public String toString(){ + return "\uD83D\uDC79 Goblin"; } } diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java b/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java index 1034148..a0fc717 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java @@ -15,12 +15,22 @@ public class Skeleton extends Enemy { } public void specialAbility(Entity target){ - if(this.isalive == false && this.resurrect == false){ - this.isalive = true; + System.out.println(this.toString() +"use Special ability"); + if(this.isalive() == false && this.resurrect == false){ this.hp=25; this.mp=15; + System.out.println("☠\uFE0F resurrect himself"); } + this.resurrect = true; + + + + } + + + public String toString(){ + return "☠\uFE0F Skeleton "; } } diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Vampire.java b/Java-Knight/src/main/java/org/project/entity/enemies/Vampire.java index 4b1381b..76809d9 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Vampire.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Vampire.java @@ -7,14 +7,22 @@ import org.project.item.weapons.wood; public class Vampire extends Enemy{ public Vampire(){ - super(60 , 25, new wood() , new EnemyArmor()); + super(60 , 30, new wood() , new EnemyArmor()); } @Override public void specialAbility(Entity target){ + System.out.println(this.toString() +"use Special ability"); + System.out.println(); + this.mp -=10; target.takeDamage(this.weapon.getDamage()); this.hp += this.weapon.getDamage() /2; + System.out.println(" \uD83E\uDD87 rob your Hp :)" + "(" + this.weapon.getDamage() /2 + " Hp)"); + } + + public String toString(){ + return "\uD83E\uDD87 Vampire "; } } diff --git a/Java-Knight/src/main/java/org/project/entity/players/Assassin.java b/Java-Knight/src/main/java/org/project/entity/players/Assassin.java index 94b89a5..9a1d57d 100644 --- a/Java-Knight/src/main/java/org/project/entity/players/Assassin.java +++ b/Java-Knight/src/main/java/org/project/entity/players/Assassin.java @@ -7,13 +7,14 @@ import org.project.item.weapons.knife; public class Assassin extends Player{ public Assassin(String name){ - super(name , 60 , 80 ,new knife(), new woodenArmor() , 8); + super("🗡️ "+name +"(Assassin)" , 60 , 80 ,new knife(), new woodenArmor() , 8); } public void specialAbility(Entity target){ + System.out.println(this.getName() + "use special ability, (you are invisible now"); + mp -= 30; target.falsepossible(); - // sout : na marei ; - heavyattack(target); + target.takeDamage(weapon.getDamage() + fistDamage); } diff --git a/Java-Knight/src/main/java/org/project/entity/players/Knight.java b/Java-Knight/src/main/java/org/project/entity/players/Knight.java index cb7158f..a1aedc9 100644 --- a/Java-Knight/src/main/java/org/project/entity/players/Knight.java +++ b/Java-Knight/src/main/java/org/project/entity/players/Knight.java @@ -8,11 +8,14 @@ import org.project.item.weapons.Sword; public class Knight extends Player { public Knight(String name){ - super(name , 50 , 50 , new Sword() , new KnightArmor() ,10); + super("⚔\uFE0F " + name + "(Knight)" , 50 , 50 , new Sword() , new KnightArmor() ,10); } + @Override public void specialAbility(Entity target){ + System.out.println(this.getName() + "use special ability"); + mp -=30; target.takeDamage(weapon.getDamage() + fistDamage); target.falsepossible(); } diff --git a/Java-Knight/src/main/java/org/project/entity/players/Player.java b/Java-Knight/src/main/java/org/project/entity/players/Player.java index 183d2a3..e60f6e5 100644 --- a/Java-Knight/src/main/java/org/project/entity/players/Player.java +++ b/Java-Knight/src/main/java/org/project/entity/players/Player.java @@ -16,6 +16,7 @@ public abstract class Player implements Entity { protected int fistDamage; protected boolean isDefending; protected boolean isalive; + protected int Xp; public Player(String name, int hp, int mp, Weapon weapon, Armor armor , int fistDamage) { this.name = name; @@ -28,21 +29,30 @@ public abstract class Player implements Entity { this.isDefending=false; this.fistDamage = fistDamage; this.isalive=true; + this.Xp=0; + } @Override public void lightattack(Entity target){ + System.out.println(name + " use light attak " + "| Damge: " + fistDamage); target.takeDamage(fistDamage); + } @Override public void heavyattack(Entity target){ + System.out.println(name + " use Heavy attak | Damage " + weapon.getDamage()); target.takeDamage(weapon.getDamage()); + mp -= weapon.getManaCost(); + } @Override public void defend() { + System.out.println("Defend mode is active now"); + mp -=12; isDefending =true; } @@ -51,14 +61,18 @@ public abstract class Player implements Entity { public void takeDamage(int damage) { if(isDefending){ + System.out.println("you have Defend this attak (half damage)" ); damage /= 2; isDefending = false; } if(!armor.checkBreak()){ + System.out.println("you take " + (damage - armor.getDefense()) + + " Damage. armor defend: " + armor.getDefense()); hp -= damage - armor.getDefense(); armor.use(this); } else { + System.out.println("you take " + (damage - armor.getDefense())); hp -=damage; } @@ -66,6 +80,8 @@ public abstract class Player implements Entity { @Override public void healHp(int health) { + System.out.println("you have got " + health + " Hp"); + mp -=14; hp += health; if (hp > maxHP) { hp = maxHP; @@ -74,6 +90,8 @@ public abstract class Player implements Entity { @Override public void healMp(int mp) { + System.out.println("you have got " + mp + " Mp"); + mp -=14; this.mp+= mp; if (this.mp > maxMP) { this.mp = maxMP; @@ -81,21 +99,27 @@ public abstract class Player implements Entity { } - @Override - public void fillMana(int mana) { - mp += mana; - if (mp > maxMP) { - mp = maxMP; - } + public String toString(){ + return name+ " |Hp: " + hp +"/" + maxHP + " | Mp: " +mp +"/" + maxMP + "| Xp:" +this.Xp ; } public abstract void specialAbility(Entity target); + public void repair(){ + this.Xp +=1; + this.maxHP +=5; + this.maxMP +=5; + this.hp = maxHP; + this.mp += (maxMP / 4); + armor.repair(); + System.out.println( "Repair: we full your Hp , repair your armor and give you some Mp"); + } public String getName() { return name; } + public int getHp() { return hp; } @@ -108,6 +132,7 @@ public abstract class Player implements Entity { public int getMp() { return mp; } + public boolean getpossible(){ return true;} @Override public int getMaxMP() { @@ -125,7 +150,7 @@ public abstract class Player implements Entity { @Override public boolean isalive(){ - return isalive; + return hp > 0; } diff --git a/Java-Knight/src/main/java/org/project/entity/players/Wizard.java b/Java-Knight/src/main/java/org/project/entity/players/Wizard.java index 91a25b8..6320c27 100644 --- a/Java-Knight/src/main/java/org/project/entity/players/Wizard.java +++ b/Java-Knight/src/main/java/org/project/entity/players/Wizard.java @@ -6,10 +6,12 @@ import org.project.item.weapons.wood; public class Wizard extends Player{ public Wizard(String name){ - super(name , 90 , 60 , new wood() , new leatherArmor() , 7 ); + super("\uD83E\uDDD9\u200D♂\uFE0F " +name+"(Wizard)" , 90 , 60 , new wood() , new leatherArmor() , 7 ); } public void specialAbility(Entity target){ + System.out.println(this.getName() + "use special ability"); + mp -= 30; target.takeDamage(weapon.getDamage() + fistDamage); this.healHp(30); } diff --git a/Java-Knight/src/main/java/org/project/item/armors/Armor.java b/Java-Knight/src/main/java/org/project/item/armors/Armor.java index 7bc928e..be19f8f 100644 --- a/Java-Knight/src/main/java/org/project/item/armors/Armor.java +++ b/Java-Knight/src/main/java/org/project/item/armors/Armor.java @@ -24,7 +24,6 @@ public abstract class Armor implements Item { } - public boolean checkBreak() { if (durability <= 0) { isBroke = true; diff --git a/Java-Knight/src/main/java/org/project/item/consumables/Flask.java b/Java-Knight/src/main/java/org/project/item/consumables/Flask.java index ea27ad8..c20f3dc 100644 --- a/Java-Knight/src/main/java/org/project/item/consumables/Flask.java +++ b/Java-Knight/src/main/java/org/project/item/consumables/Flask.java @@ -6,7 +6,7 @@ public class Flask extends Consumable { @Override public void use(Entity target) { - target.healHp(target.getMaxHP() / 10); + target.healHp(target.getMaxHP() / 4); } } diff --git a/Java-Knight/src/main/java/org/project/item/consumables/Teriak.java b/Java-Knight/src/main/java/org/project/item/consumables/Teriak.java index 6feb0d5..b94bd97 100644 --- a/Java-Knight/src/main/java/org/project/item/consumables/Teriak.java +++ b/Java-Knight/src/main/java/org/project/item/consumables/Teriak.java @@ -2,10 +2,11 @@ package org.project.item.consumables; import org.project.entity.Entity; -public class Teriak { +public class Teriak extends Consumable{ + @Override public void use(Entity target) { - target.healMp(target.getMaxMP() / 10); + target.healMp(target.getMaxMP() / 2); } } 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 a853ea0..1ee3f71 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 @@ -6,6 +6,6 @@ import java.util.ArrayList; public class Sword extends Weapon { public Sword() { - super( 20 , 8); + super( 23 , 8); } } diff --git a/Java-Knight/src/main/java/org/project/location/Location.java b/Java-Knight/src/main/java/org/project/location/Location.java index f59f4c5..0c59ec8 100644 --- a/Java-Knight/src/main/java/org/project/location/Location.java +++ b/Java-Knight/src/main/java/org/project/location/Location.java @@ -1,5 +1,6 @@ package org.project.location; +import org.project.entity.Entity; import org.project.entity.enemies.Enemy; import org.project.entity.enemies.Goblin; import org.project.entity.enemies.Skeleton; @@ -9,21 +10,19 @@ import java.util.ArrayList; public class Location { private String name; - private Enemy enemy; + private Entity enemie; - public Location(String name) { - this.name=name; + public Location(String name, Entity enemie) { + this.name = name; + this.enemie = enemie; + } - int n = (int) (Math.random()) * 3 ; - if(n==0){ - this.enemy = new Goblin(); - } - if(n==1){ - this.enemy = new Vampire(); - } - if(n==2){ - this.enemy = new Skeleton(); - } + public String getName() { + return name; + } + + public Entity getEnemie() { + return enemie; } } diff --git a/Java-Knight/target/classes/org/project/Main.class b/Java-Knight/target/classes/org/project/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..bd4f4439273785ebcf6911d94ae32be2f70a25d4 GIT binary patch literal 8056 zcmai33tU{)ng4&xz+5IbKuEv{m<)MB9uOc#4MdX=3?x7v#2|@PFK`1B=H<+gh#PIS zvGq}3T_1&7HCDw(bTuj=Nn?F<>zdWIyH&TleQm9~-EC{TyWOodP0aq!xiid=V0QT3 zd(Y!L-}%n>{tm}JJNycO1{v@o11=BTCNhyF$lGb{vMK{ssHbv6=T5sTF376$hy3x2 z1+KF4tzH<&_P}dmk_Hb)dnzN*u!5{?vHT%Hb}Vj1<1KcmKO2*g<3X;8JWLsfx@{m9 zw}ZqO?&k&t&3aRRxN>9EABwldqqY^SH852$bH&+zUKF6vgL6zw$GL*36Ce_JA_{GQ zv=x*&Tj}$0AAhK));UwLi4vSg>Ua2idNuWe(z5dA^z#M6T~^#54plZM8ns@`gwKOg z6SFW|aNb#=iM+>-H-zk<-zMy7$n8+vA0Mb}(4X3DvU#qFd6+NAw7FzJP&|&9@$i#S zjs+epG_eSa1?Q#{G7eH;#KX?X1=C1FO5O>6C{&dumY|ATli0w$sR^zPhr2rmN)2o#eH>XDRLi!QxJ;qXirNv& zA2rY}a2Ic15;V{unA{ZFMQq(ZeIB**b`w|N3xw&j2gu=swP^BJMWfb0vp*K+5wF74 z9#|$i(Um-+R`b>2aKN^x{2t=%w>Rt%6qapE7fAwwIBe|jpvOcn{7GXPzYmXSb$6d; zNRFeZRY&g=ELc4DYqtYk;h?Q#w~lUQ@%oT5uCeLGirGOEA;k?(%#N?;0S!>!&e=$k zW44c~OL#9rl&&-LIdXJ6pZ<;Bg|>%pz0{Vd3n)Om3W_9{_-&BPtJlWOiKlP$7J zDMmsswA7mtn8qE>3e?4ev%-RU#}HwCI1!deM%trpYC50YN9mt8zu%7 zCbQE~&aFx_4SZ8Dy`2_r`?}K{1GT3oOvmsol3G=<#*W!hO8H@GKy^i%Z5i0diJFRa z{h^)!k$ju{{_sI1V*`(~twi+F*9{C4YH7uqD7{F?z*C%IyC)p-;u-As;8_#T;jaWa zDTml%#d`_H72RPKtjfyQWUVyl2Kn>g#fe3uoVDMMRjv(p2K+>RKtedz<1O^G*478dPV8YcLhr(aKmQ_ALUyOyv7r1 zcD_N34l_OY>$4v+$-(a_O8!QWyQNndZMQGH!^hK88pr61n&R_g%4zr6-KF|x;B7(q z*&}<}tbxCyVtDC5tAiSsb_iSgqao!rl@s}aiN9C+ly>QrdSsF*rXp)*x?N5H@9<4| z{`zn%o)4GgP&$%(hH4~*Axw;?)zGW$pxKmFRr`V}YLI9{rqa_ct!T8ZKv~t&wDAIR z`}~SFM}vJXc>oE-}HGtg<4O0g*=Is@s}+Zr;1 z(Y~tU(ts7~^X>650B*6Peyh(TzSCThK5`e+z5bv@#fVkvHC~ws7hf{llsQT!uKt+q zk$Ii9#lH#e*?WSNt!Rng^VuHD?w&}zs<&QLXn zvN{@?n>Vx@Qs<1-aLm2B`LYJ;R-3;kWX1cVHnX6#G;}OWt4kvynRH#uB-dRZ?&g}@ zX1dJQ{$Qsa-J-awsAi=R*lJN2>?a1@%6aIy(`qk;DX43(!m{mYTP4n0zLmD7vut9e zDv$Gc$(%Y>+X#dbkR~FvqCMPj>I68+!!~7*EmkB!U3QNSeDo|~vsHOq zp|T5}jM9(C;!!KoV#j;K-7!OU&}wCmuW{pYF@$MHiLM}2(CF&5;$3|V8MY`-tt$oD zNd*vJy%m}tSILqU8c?3VkN{1hS~-nf98mtROvYSCZkB|+5|)TZu2Eiz3E!Mlw&M@& z3isKS4yT>k?oy%*M=8i}q=%LSphI~hlOy^8GBn)RAE`Z4>(WNXE!;8?u_pje*Rcu0 zUIInE6$rFZY-G9Fq)NPc$~9)kJkn2LopGj#NcG5WhW)dHQUjcGp_EBR2E%?fD~~Fv zhDZ&28Q9AH(o|p0Xa9n<{)Ox>PwUsRzarJgCSqh+sWG$I*I$;i`pcq^`&_K{kxK|i z^+gs(R&u10J>fTV!9mCi8e|pUoaQ@ER`YE-08%e&*vpm%xzt%KtKi}v@bD-+2Vmys zk6_v;ikcUWV8)A>!=VG1a|mU^Zr4dfJeVm(pOUrNs%TBf z;s!!1c9ywnU3IP%2e7SZ6jzR*yPeJARI?<}Oo?j-%LrgS*Ehq>yM!#XVhT3!CTb&3 zx@nBQ49t^O*+5t~=Ez32sF|20o7l=AExd|Lh;|1lQM5d**tnBy97RAi!y~xn04SvR zdez;n1z_e6B))%<_+HPitFCy+S@gx^B1-mYBIS?#&}yajDB-h+Pu&sR*g-w~@{4G6 z*9~Lw5!|f$UrqGSJAzwO|F%Sba#F;uy5UpzD{eSa-iac%FQcVx<%!xcm2xaX2j#wv zvffU4UV-JflJdI>D{(a%VUbsz2r$y`#tsaihf?mtS2=Pkg7_M)!2^i0(u`5syYU#V z#S^$5PqBDUN`3<`Up8xb7vXMcqh<0u2+0=3V=eh<@SH@QM=p~SsFd8?+~derJm+np z!}E+2lu8!aa-F-D0w2Nc%?l6VF5$iiYFkH36$QnNN3&nz=1k)c( zd>=}DAJN}&h!%_?BAOK?gUC?`9;JMS9gBHPHBbGpC^7Q{Q6y%bWOEcxPs8(lch*S@ zWjpBz4s;yEOD)ATS9V@z=U_{5rtXZgbGSuXUCZ1B?jby^_DSi%vdn@^tqFU`C*kAf zGlNehpOt(z9l^|w{3DAF;%KXTnR^)9^}wsCfpvP|_0+&cB)a4XzQ>Kf-=ZhqOih-k z{ompdNYAiyYULbM?^LInQ@&;K^W53dp$~9A+c(lGZlZ*~jM=pLxx5}JqgE`$ZS)7X zqn4Uc&#RC1^aZ`Vtq9;AYR7%}BDLiv`mC?un;dzF@_QVQQez&&FrMV!^LU!|`7=0* zXYo2O3y$Fhyp5OeE=S*^cl-$svV+*aYl>(O4KD;io@rKO9n^MIpc`4qK z3-FHAvaGGgyV8mu$QHaOSKxiQirI4~ek?oj6A7|Vi{LkMEq<%@bu%ragjG+wT+Z|L z;vBY={eQ%pAEm>Yj1$*N2gg9Vf294GkophQH8SDe#&b-_8tEV2#WPyN-CD!zP;ip* z!GpVJ90#>|9$P2qXO6?eeh$^Ykdx)6c@l2r08cP=$ji$snS2~xWeL11bu7V^Nqxwm zV*FfLf)fG;eJI;P-%q|wtz{+UKX6WOm39~i_U zTC|Izr3usWXfLGM%>NgHGmvd_xwT9GuzeWaNmA4b_vfx~r&d(!6{CYF=ZehFU6Gkw zk;b9J_%|Jn6DIy24msrBZ&b`(I1ci6iNMX--?MNWW8Ls)S81kk3GI*L)78oTTQlN+ zQea6r4t=&n&3~e{O1bP~bjskBKnDK6f57|^KKu!D@F_=+Gn}2EGe3px^b=RoD0-KC1+O7tVsnl6f9mTu2POprAhFv!!ZebLX#i^aI2$HLpry54HSEG(ks`J+cUH* zK4oR#-G?dcBvp49rA1V`v7r+g^hWgl4!|kZqhK5>n6HsAUHeuFUPFw*b9G91%lPj( z@Ob&M5yi3zi)1sF(-U1HThSsNxSSqoyIhHGdZn;jjq9Zgw}@XeN+p-YSfLq}%#b|! zC-@JNeB~8Ny<`G!FFu)kO8Hdqxq{CPe16S+HJ``} z_kPW0vOSHMeaK6Kka-G(L`^3Nt}*C5b03(+kp3bTuM;uz3t~^f@uV}6tJA(?m z1xI9N$3ZD=Swuu5GHV!fRS4$rTn^7q440)&$M}AD;=N|1kxXwl4#>5iXLe%a2(x6? z^mO%MdhrPJ`)hcm6{XB~qn=S_oeW@$T*r*)dUOi^2O)cDs5j#txs{jax8Z=?PD8zu zhI$vTnD6Bs?tP3}_u~T@~1!>w?j48`cphUc-<}7caw}4Si3cbf6-g9|hEY_HPE>()j z-}EC`)p0<|56a>fRYq%52uohXHf1iNixBmXa!~0fGYGpFq*YngCEffMk+>kCZ2j)h UZ@+%`NsRMe&c$UHS$yvQ0p`K)WdHyG literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/entity/Entity.class b/Java-Knight/target/classes/org/project/entity/Entity.class new file mode 100644 index 0000000000000000000000000000000000000000..95425d7a21e856883f5d7cca1464611b1f60e4e8 GIT binary patch literal 658 zcmZ`$%T5A85bQzO1r`()ANWQt%f)mJOVW7E2h!t_6!O_S(_q6QgX$P(=mi-0-gRGj z7&w9OM-rvP!GyuSd-?B#lh!TSM;vF*pLT1=A9yrmu;41uA~Co~7%aM-uewWhN#cZ` zVu(IxQ1H3z;?u>AZtF0}6QR0{&?P}ps!>txG>lUQ4Y&0xn~*&8P-&T`Ehh|$WWVE> z#1Vt$U;aleX5QRH9hCa)Ci($|E6a5HqjYHCw@80^&%hQL24Y5LE9D6a%C?jx zd>}Ar_eDTYPPt{=lc|V&1~tm@{p@p=7TYxW3PYMw>c!J^z|V!+@64}ttU4?P^h9)B zfEpby4;H8++6D_y)O86Qjb(!sgG;ci`KrMcgR2JDpr-Y8*wDCX=4~0Q!?xyk4DK3! T&+Ola1Fat_q@)e{=HTc998;7U literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/entity/enemies/Dragon.class b/Java-Knight/target/classes/org/project/entity/enemies/Dragon.class new file mode 100644 index 0000000000000000000000000000000000000000..f95da935af44c7f576ef00f18cd243b47a42c17d GIT binary patch literal 1302 zcmaJ>*>2N76g|_lad6yyr!3t7Cxsfy-k?e)P1Q&N9$K|RJWbM3;>Ph<_OvJxAHrwA zODnY!&xnsgTrUW>jd<{EI``aj&)o5^-{(I7RIsk0k6~H*P0RD;k!UE(R-$8l7Tl9= zU~T!lDcu7>8yyV&1_qF2$iA^%TWv68%)-8g9K+%@3hsBLA6OMvbh?}2T8D;y9eEfU z21BADhWT`uaFwmPmY@h*B#{givs$gCVV49RL_$l~0ZIBObE&YeV+5lb#te*Of?**| zcqMOKGef>5_(_*5#T#vgJLaVvNlYb@obXQ>n8pmlKvSq4FEXb(MmFCxFo#Y>0B4Vycgb=x7==}r~*NjSq?ulS@;hMbbI zJcbFgr|3+e{7_+!dh}g+>^H==9oCSKwXB9XhLN{YDvIRZJE2iO2C*$-BH`R1WQffcS57f}m0^^!k4FqsF)CpoJeIIb9OMA* zCtO=JM|q2>qrYOymFn literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/entity/enemies/Enemy.class b/Java-Knight/target/classes/org/project/entity/enemies/Enemy.class new file mode 100644 index 0000000000000000000000000000000000000000..2d3d1d0020954dead6c88aa4333c0d9954c0e3db GIT binary patch literal 3577 zcmai0SyL2O6#njP4MT$l1Otc;ia3nXQPF6EMgbvAGN2K~EsK|#mT9J^d(z#YWZ(B6 zkV>lZ>PsGyl#mJ!smg2qQmRrp_jc3t3~hYryPfYW-?``9{`=p}KLJePyEI~mD@dqF zBE_(KnXmG^!Of-omBnSP!$9$#1PMpEVQBptqRgA+MqIIEPE+mw=E%=*GyM; z*J#jcy5{7kXk256Rq70^Ab=ezb_rCn#vjhq#m+M-I>k<`CYO6ubZ-gF%ALI`o<%P? z@j&Bs%VZcVhE3|OR?B-wPX4A8854T@RqVq6S>krhvKbESM9C8;KQ06$=75R}1{u=2 zQ@0#PUoTMhx5lg5q-B=4dsBBSG;>^Tx(>sU>`v2#NO#WSoPrlryofP|u88m$l)4Dkpu}`X zs2y2o!v(yg;G&947-#4W$K>CaDS2&(cb7cg3MY{*j4X75VKj})m{KsU;$_S*41_hv z^oJ8kT1pkIRGlF5tCEyE0{@DNR|TbML6~-5GaXHA&#IWi6%t!_i-+Ex5rzp-g29g$5H*w|A#NI6m@&Au(x{$=_W?-PGn*YKxkE zoy*JGS+q*rSm3rU*8XO~t>~2XgAIzKN|kclX6Q>5m%A=65ql|@+e8>ce-zeBn*dcb zzPc8G%Kn9HpBGwYdENITNvdY36^L<`#uhPBAGjJ!XK5;~v{%Orhp0$)WV@-@J+Lfd z>J3qV2KpG zt<||sO(sBy4_ApV z=*2d}&9b36Lq*G~uGGhN_M^~F1MvDOjENb z4emIaqu?us!#iS%a#g`M)F}R6l(Ox`l^CSvAEUy*0D54>J4XFEAs!|<(gP|-dI04} zPoo^^1(YK_Ml^O4K8XeT-lWx!q%TS1NbYyAT>m;0@oCTPTgPtk>B=2jM^COdv5vkR zefIxK!ZF;U?=V{FyN4X;rdba5fudvZa{ zgu5|06UexniI5U>{yMJsj^3jaAvN?H4(2wH%{@lX2A?eJd45di$?q=|KB)A+2Zf^!pMS`_Ra91;U zCK7xfOA#^m{L&P2F%n#X9s%xa2G2!;mx+0g?bAfBU^|tIHx#J&69=wQ>CJ~UqyoyT zfrb--hQ<>25_TgJZD1zC`Tfnb-3o#IY$q6MRB7T5#tf89&`Jc+F0RZ^P!f-jhzn)j zZS_347gE;l$06=u60x>RjP%lPvD9nP=#g{G*BkG=-ps2O(iRU`sRyihs>sdle&V^I zhkz^qzWsFIawO0W+Q1odUgT_t#i|5)on*_R;Lnj|$lyL*h4BOxqW#hzD^{fKRXm`v fkJ`~kwEIwg-;v+< literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/entity/enemies/Goblin.class b/Java-Knight/target/classes/org/project/entity/enemies/Goblin.class new file mode 100644 index 0000000000000000000000000000000000000000..9c2063bc1ce376dfa6aea4d00572639f6309a316 GIT binary patch literal 1172 zcmaJ=?M@Rx6g`&~wk(U30fbz|b)2 z0i7dcy3>TMq}nwFXGjrd5=yypxzZhWrnGl{iN)T4kltr5=GTW2$GC=sfeB0!;@j2- z%WPP7-CWykvsRYkbQEE#;{TD3`NoyDT2rpDn#CBBgw)BW?ujyTPY=E|P;Y1}Yy6SoKh%@%>mG29`HhK8OBiavKXnQyEjZSlI(tP1z7 zRc-K>M8#pR*DY6i=kQ}xZOJwvdq#X;tBQnk?UtxXtFc;@4ZdT1*>nB!0u9^_c2`+0 zn?RWPPaq+t9KIvmL&9V(-`iRCW6kNfHStn$OWqyfPN#VqyeGo5#e>D`U4J0G z9gr%-v+?vXXyXu(V`%&uK7_uSD1g{6Nqxk7-Bp-DU4&DXUC&S22ddlgJKzv inTW80Cn4dYe`aNg+n+fls5g+6?5Z{Lr`D%_)aq}@4FGV)efqMkzy5vq0YD8+0||!X%GFY<<@nZ9r8d)G7%_1GqYR_hr6ctXhGem{ZXm^Qa=?~*UFG>!%@N(5 zouz(^VgVHy|@98EA3`ptx+rQWdwSx6CEGSrIodZQny$bR&Etm37~fj&5pC@NOkd1df?Fjyyw3E7D45i(#r*ir|r>P+Q4SQwkQt+VDHEqrWSAU6j=^vPsy5|3J7g{{wck4K@TYFTS{qPd)!?Wx~(?-6jo>=SkD)QW<;>SBZiq#+)1O39}V0M z2BX2S@MZp_v#mP9ie@UBl@;F7%A?F)^!GCcM&a&oXVVt`LPM!e&#ep&Q=ev!;lmwQ z41quH!{6HomPn<49Ag(%Zre@zgsBT=-Eo9hwYl#L-@rZU-#|{os2X@c9orvD9gFg! zVr6OPfVNj6`1VOkl1yuio>%F%7D~Xea`t>S{~qk;w@AK+LC4rzq|3=&WPT%D0@vs{ zLDs-Ht%3>6A%kz}W|AkeM+MjEWcUs@V&BimDnYs{zhk=m26ON574Qc0B$r+yU;YD` zmzXJMXLoV7oXzZFiGaC_0b(Q$n+(I|X?FrS3OGqCWD4_`Mu|u)(Js17nt;aPC{#>? zg5oB=CnC%Aj#6GCk+x6F>@1xD>tycoYdWIjf|7s=_9dxg>@A5~A*zbobfyUR1N~}P PrCadFu!j5i39}yojDDWH literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/entity/enemies/Vampire.class b/Java-Knight/target/classes/org/project/entity/enemies/Vampire.class new file mode 100644 index 0000000000000000000000000000000000000000..9f048a9d9b5d679eb6aa25000b7fdb4c48399ce7 GIT binary patch literal 1783 zcmah~>2exJ5dKCWEm~~^MpxuRMm_<@-rR>#?8q2dB=|@mD2j6pFoo7ycDHs1yLf`U zLVo%Yl9Y|ha+Mz-@8VZTrDu0tLWXkw%+YlB_V@KS%|HJhyaZ6euNtNpPPu;9^nCY$ zXiL+QqGvu5+;g44eB`oW(hYg$W=SG*3aY9YQ%NYf~k;pfb$N65hOl0*VY%J&%D^mFYbL zmvM#KAL)W&eVq5#l8GCm<9&Rf;X?x-;bVr=|IPT(Gqqh)ge2cfG>l4&JMs*lFMg?tir(=tNICS^>UTORhj988YHU^%U z;C_F^|87f7xYB6*;}m6X+jW{R)E1-aIKnU6JP1Uf;XcFpF-((6)$lX5@a?YD!Uz}E zNuYBy2!I4>lV&TeWx7?u6R=XuY-HA6fbBj*;srF?W}iX-i(IB~lUAK}wW>4~IvJFJ z!mx!~v@>j@8mD}WWa!)Y8|mT@O9was3~`#SL!2+}KEcI|-g%0Pmx@ntX$bQ1+jtGyiFiI(iVLp>(eeNQ literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/entity/players/Assassin.class b/Java-Knight/target/classes/org/project/entity/players/Assassin.class new file mode 100644 index 0000000000000000000000000000000000000000..a207ca2e8114c1e05deae28bdbcc788350b6da65 GIT binary patch literal 1744 zcmaJ?|5h7C6#gbqHY^LIp-`bpw-zu7*wy0iU@J|FO-(5ZLb2*`2t$~%+1ax@DJM_i zzy7I@pr?YRM<2j<>G2Ib-rX#1(!}PEnas_-cfRj_cW(av_v9}CxA1+Iwv>fF^fR2V z^8-;*UX|-DsrTtysJW*@hPhnjA%DajmwPp5T?f*u74zLD0|N}xDyTVrpdN~9?0mN82k0Uq?a<=LFa$;D^hYV zRxjKAh!{pfUsNS`mv^K~jZ9A}*DGtQ$i)cifaU>_X1MSQM`F3I8bMX8$cV-8X*XSo z8iU&QhEh7z0r&3;y{~q|H11JXJp1|2XUD(%^T&@i%biB#)A*8Mfi*&5Cs=LX0=r=6 znyO**K-kiIBxBuePaTd9VBN$9zBaHKjhiionHTSbT-AX{CQEAqt?;T=0g?Zyy)P5T z7Q)-y+jT`aQ&H-m;TOA0*=Feo+-Uluhx>yz|9d;p{OTBTNs1D8-F50a645Gqo(M`V zJxUQ8_=e=~;?xVOfp1CFSG$s^Enf7Br)bzkpA8fmnPFVi9HBq09U51;wOL!QD7Eg|EoE8n0`(Pd1az+jxNQF!>(}YuZ5o literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/entity/players/Knight.class b/Java-Knight/target/classes/org/project/entity/players/Knight.class new file mode 100644 index 0000000000000000000000000000000000000000..391fb6b82f66009fd83c4aaa63c41812e8d84549 GIT binary patch literal 1709 zcmah}>vj`W6#hecXKB8@>4 zBghyy5qiopoNc!gu9o`1_8fj7$aEt*8SeHVQ7V<&Ej!?DMX(Fq3JIhLOreyo4q*)A z1|}?=#Cr^xwp1MilmOzVTAE=z&X`p824zrF9tCd}OibaFfzuY=$Mn%m;v_H_4WZY0 zQ!tF>dXymxhLnl3_`txdg*nVKj7Fe3Lz5#f1md`atw(Y~W>Yw4A%{G9YV__K4zsX5sS?ig{lK z$m{u~u9G`?)%>#!G(-{(#sJQW0T$Dx@0 zMOCL`q%2*r-fHd$f0IW)vSn4{PL=yIyeGnby(?)>W;^omzdnqsS0LAJRJ&~V05J>) zo~TLgtnNsMnwZ8Z*UM+jsgSQy5j6KHR}80)P$c#h)$(g%O@`#sF_!aTQ&7WRQA!8e z=iW`BcU3(Y#4VEk_3Pume}6Q?auOm8_EM3cu*^AP|9p9~kDlIQ4>R;76+3(W+Fnm=_J{6m7Eb zNzv2}VV>UK&}|C_Nq{qpONS&vW;wI`8ppO@!g!4|9mg}~OAJ4a3|HxGM(Sxy!@?E1 zPsHXZ;ws(95pDZ5^2G2ht|vkEsa9c-m1h`Te1XYB(!vYOEN(x?LT0-D8y1!ppM!p# zr{mLKUg1ItORw-1!`r|Uw9tVQ#3D;vMrkvQ(TtC`fmrzu#0pCIj)M2$2HB)g#!Whh X>FW+j*Q56a?vl);`!??3Crthea^K5) literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/entity/players/Player.class b/Java-Knight/target/classes/org/project/entity/players/Player.class new file mode 100644 index 0000000000000000000000000000000000000000..f4da2ebf6d129512044c0a3da08f285d1761b6cf GIT binary patch literal 4506 zcmai1>vt4q9e&=vZ3 zC5g0wHW&(f-Fh)stGgnZv#Y-2FXw7yYuT=Qxr=&LNK~zgt&o{oGd<(iooaDZjBPcr z4cir(N;L&FDMuLtkI7L>#dB(g9#?2{ytDR#U7cqn zM1DNjjcYc5dpk!v>D%kghPKC-9jho;2`TjI2w+ z%(6%1WZqq3BDw+w9XEH8^!X&wwko3;=JA+;r|`5wcg0$?$K7hd@-I7ni964?s=lXi zXkat_lY^Vj(l~+9Bu*Om9GLRQbk5d$WE?f|Unb36F=hv6+c1XHNt`h-jir<;~bt%B5z<4&oL!Y<(NDwY$@6y*SbU}Gf+4tR;CS{7ZYt1 zn6|3cxa;{TTqK|%ac0Gxw@t@0t%A?2m{s>y3ePJHEW1l)$>K>U=a)ptCscEwWR(}p zd7aw9G%n$VBxVg<#ubI#o1jLEhp`q)c46@hv$m*_UK9Om23{19X^BGW$+I(T$(JOf zFDvXAn2b-;C0sXPVUCuTJhoT=z`EL9NAu|5YzEDk7n>CABF&pKpFsli8BPH{TH%Q7 z4TYhY1W(Gp7z+|k*+50+NNe4$Sx!9#S7GdVy+2{zvdx91a@i!mbu(Wxhs{7LIM8I7 zR(0MiN;V`3o?EfaX%2=fu`t#}98(*kn+2j78D+Jx=*C$E3frcfs(pT`GH2H>S#xEc zWTxDLRi3r#j=YD538@8z{p&2p4!%(qUfC&@d?}m)Gv4Z3btYM%FHSjV2vI88*3IRH z(!8EA)DCJ+p?yZoOg9;ZDq^xK7I;=9rW%kEEe$uID+Lr%+&;0@8}XcqK*jxTzsF%;3Pfo~<0& zaSH45#o!mLvS+XPHvIZh@Bum^BaBn^jO+TIU$<)0wqJ7Ry%c_+ zuuGZj9#iKj?C{$r$5GKfVX72<*pSFeQlb(Z?IQ7G1}c>*W6V^d${&uHW>CyQ^0cYD zZ1FY06n>)6A@6$56kVUn`C1AeZ$6&p@y`@`m3cc~qpch_Yzn=*ZC$uhPE4 za>I`w`WadC)B6w;tN47wmAq?j*{cso?E~;&YMv~wd6y3#$j%Pr$kh|PggqHSFw#IU z(m?QK9j_$w0ucyXJw%YX!0@!2?S^=eTW$UaLPS9X1$=X)#!j(X#&}&n%>d3YfU~Tk39@yLm&OTR7@s8{d0Zp?RZKBk z7a}|^H+WpeS6DF$w`o0z=AHk>>D_$&Y9sEq!?Ye1bgNispz7SdRTHZtx*kL#(R6%* zwydn{F!wS`zzkdZ61(CB*6S>Wc~cv~)d;Sm4O~a@S_2oeIzmjZH!!^xVmcgPDr!t` zs(m6(!)0lne%hG$&AuR9k=GD53CmHWTo-CSooluG;5<1E@x2< z2N}*$*4IfwJ4;A1k%D%Z2$@j$MkDMTVF|DndP{DM?p8#(rJ?*Lo(rRjDz|@1D^Y50 z$11-StK6|s`HfiRw_}w%H!8mstNaeGgs>&?5_3~xqvksi&89}c-;8zJy;1p2M0t&^ zZ{gc9Z1rxW`u$ktJ9sxnxqqYb2eHaSjeyUD0ZUD{-$OESABkpxAM{aB%6B71+QZmo znzW#)ZA=JzuTjlIJQf1gS|tWHK91N>4gS9K{}u1WC^qAL`e?#;@jb4?9BV(P*YE4+ f2m1LV{rpfrKhn>i>gPTDh8k%~-^cIp2lV_G^i``Y literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/entity/players/Wizard.class b/Java-Knight/target/classes/org/project/entity/players/Wizard.class new file mode 100644 index 0000000000000000000000000000000000000000..5cbc63023a4fb67a915c81ec18841b6ccaa1ea34 GIT binary patch literal 1711 zcmah}T~iZR7=BJbmMkm8s93N@tU!}sU0eDcYKu`MZA2=Vh*rl#a+<7c_U!DQ$k3}! z?>oJ%cl`_PSg1JT5AbJr@AMyZ`tFCCG#R=Vd-lBhemu|n_57dxX8^9?UYd@CfdLFM zoM`baQIt-NtE#1%^yMq=D4$_ATYkVFa?|Ec!(3CIID}yXN$3ni3zlQ4iwpzVTt$PyFx_Lzy_WQR(-vGcg|`^obc|qF z#~4x?js&jK3}-qGg`+IBW4boq5oEg>o(#A8kSLYPot9m2t0C+{uR@F|1XC#GDoGr} zaSh`JPT(zuR7a|Id`bWjlx@XuJj$3Q%~i^vqC5)TD(INRNeyosIEBo?Osduo+^aKa z4WU+eOE4VE_9;Ue3<(`)@Q#MF2BtB?a5Mzf9hw}u0TA0EY<-dwFq_1?2C~SJ$Ck^$ zN`Yw3z&X4}1&k_7pnH?_s_1bRb(pxI;e7)iV4mUh|74vZNgOZp7H<$s>W?t)M+QC) zpy=OQe*AL;pW-tOpBpG(fnlQ4Z`=o0!ge4lMeY5{iP%J)-$*XXC|+5t?Q0)NSEUm!;flyM^AQ zbx67l*LPgeNBvHR{`JjZJ$3D{*hP`s_8RR0Dwk1m9N`sh?)$>maGPPKhf_bO8os0Q z9jr>_i+ItPPSP$5o&?Qp5;OGvif&bCBmqw6=k`g2)a}&5QykjZgZ307bR14;dl>ya zG+d;&9;zpip|4AHACJsY#AUjXBii>%C~^RGe7qlB+1 h_yE2kn*_?ZM&~Gf-5}{o_+G^=lIe8cz#ZJh#J_6J&vXC) literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/item/Item.class b/Java-Knight/target/classes/org/project/item/Item.class new file mode 100644 index 0000000000000000000000000000000000000000..3db1242f701c66f9514c4e119996f6235d620d7b GIT binary patch literal 153 zcmX^0Z`VEs1_oCKPId++Mh4ORqICU&qWrAXrmQu?7#X;N^Gl18Q{6IifT}q`2I_&# cVq;_g8UeJNfq@ZdJ}Uzoh{eDTB$*gE0AD~Q|3(0eFk2X~Ymu!7!0PQXzlpe0J=n(>}J} z*G}Dfppbm&wY^|VAzofN7{e`$rI0pp8>YfS$3M2u{EkH0Uf{ND$8UA~uDvZrA$8<_ za@$>3K~*F*Ya%Ck>7$Y&i3xFMTF#d@*Ip(~Oz8x939%$$+C&L6#P_;8 zey1V$hbhb{Ox-A`!m1P!b2c>y;jZjKRC4}JrmVV-Dw^;z9;v{ zX#^);S7E7o19h;?O-j>~9v92k0^N4N{_MBfYzliaaQtJJn$Gjry$`KUozOOcP<1Cic?=4(+>)4#p34)H$!N=wYRegF%hAw|F+PELo(sG+WY1`4tRGO; z+$B=h{3SAS3~J86D$W*7|rsz6y0|2IxA-z@KFmuvRS%!F>b=ZU`@ikATq9W|?e_Udy~nR3(cxCpVQdP>=eKD8jUCcM!c}R6GHkmNW>TA=h zR%%D+rvC>#6QVc0H@TcDyRY$^Jy?qmfi^;ZsXfHkN1ZWZ^#qq0PD5CKq4i*HUKF8-LTT{QlKVC;?Up7h+pYi0lh8wdK!23@ z7JKj_bRW#lJa*n=cK^NI0eHrF0uO$KAVr84;ZmD<{%-VARyJ2w*10gXHtT%oE<)=; zHOf8`!v1J9C?mv#tN%RXM$H%Y;Pm^0k`O%UH%aIes*$godM3?O%vRjFD0C%Or7+6r zLo=`owI*B_M{Kw!Bon3-rm{ a!wIAN9I%UHB4w8TzQZZbSaA$S57`fvN=&o> literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/item/armors/leatherArmor.class b/Java-Knight/target/classes/org/project/item/armors/leatherArmor.class new file mode 100644 index 0000000000000000000000000000000000000000..5088285c378858f165a895bf2d7c6360eb78b6da GIT binary patch literal 337 zcma)2Jxc>Y5PfrB8_$a-Vw*w;l33(A8-pMrLg27buHRf1v*9iqHXHw!m0*z{;Exh# zNeUam8F=&FFdxi(eShu&OwmmdAQXr)#7GD|V_)-)H7ixQTszg|(l*9!^9LUY$yl$o zyC=kh*=$$}vY5PfrB8_!cO_9=o0iG|nMC;^cK0!JFd^_z1^Hso$)b1}awRlvd@;Exh# zF@;SaJMiYc$9ypR{qy++V2E}M557Q<*JZYJAE*N zW}(-F+x&zLkA(QuY;37U+6_$qZNFd24~Z@WAL|}*gg9f2Sv|mK2DI)(n(je6<{r)& Y-RFQS1tKKOlD|4!;F1-e!RR6V1>GG@AOHXW literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/item/consumables/Consumable.class b/Java-Knight/target/classes/org/project/item/consumables/Consumable.class new file mode 100644 index 0000000000000000000000000000000000000000..2b9e334fdb2d493608b4ac0c6b4272f60fb55bba GIT binary patch literal 389 zcmZut%TB{E5S(q(20}`BUXeJ_aHv0^h)Y!@qzDe6+?`+*SBZ@h2Z_((gv5al;G+=h zfl=VM4kGl>4-v!|U`W_m%10?GX%^zTSgO(yhG*JncTVV!(>%lm z;lwrz@z7Xb7uu;>l-9IeEsILEV)pY65fKj8nlD*F2xj(95t2+Bb=B2{YHq!ru$S3V zR=I4nkH3?FyVort&DN&hc;EPA%| z&H8suNSs@a6tw0{qobah5x|vx_d7P*^cGN>*=^By*uTXkn6a8VRwaRseW-8 z3x<|YIPUz9uCd3d&!AFyMZNN+TBXa@1L5(<2*p2y1pU^XdVSfnlsi4Ne>M`20*Bb( zMW_=2sa0^?;%gQn4<}+^ zOJ8q&-wEjp%dvt>LZVhT^2i{oBBvn_jZj&pNGGs@XT2RKLS`s~o_Olr#+{w0v!J1f zbw-Y)uzOQNveu~^DoTXoWzsJ{ed$@^f%Pr-UJ{C3%aJ$XWFWnMWSCIux~8xV!7{EF zkI7(U`Gk}1KiExn8Tw2*tgXmbhHBOgHXjI&MGT1IEO-BqZoX16NyYaZqMRPowd(ylC*?2l!FO z>Jbyv$fdfv`qk@K%lpUc8-OF&CL)L$h*=mxoMFY6O{XLMmS`x)Rif=Y2;T9%z^R8P zLwwiuT(!qAVpl4Knu$>)444+iU@_$X%|Dd9>3elSWDJR>P=~zDn}Q)~7b;^IN6J9j z!UQr5bAv3xQ?7b+j>3aslv4L)+m{SEyHFiOhI+Yv3!D&AHZg^116d0*THVr6G=r&S ziEH5nLMxiHFpmWaD}F1!<;HBPI#f+IcHm!838|{4BfN zTl}6QM}v&ePJk>87mH+<=(d9>c|f9=w$tVd*i#5uCaZS`ltvqX74obvAXbSCl3VCqbC3W literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/item/weapons/Sword.class b/Java-Knight/target/classes/org/project/item/weapons/Sword.class new file mode 100644 index 0000000000000000000000000000000000000000..59df48334be20bb43db06d9026179fcace9038ae GIT binary patch literal 321 zcmaJ-yH3ME5S;ZReqg}R(DCRT3S6cjqCtri$)Yhb_1QkbS&lEdILUWWAyM!Fd=z3G zXkk~Ho!PtHz1z>P_YVLwoP@AodvGGS7!fYCc}`bGH?rze)yrkNlVYX2b^5fAgwa%W zs=p(+$zm}sJotq3KdbVcHZ{Rc#s$H-*R>=ZXR4DAn`J4@qbOU>oMyTbZ6S;r^l#GX zU(}j#nf>4VmJsH8V=6gUL$7c@@}?16fh&0Yy}^jxMZg%cn!siT1lRFd?7x9tSy(t= Y9QMHn@R>!-qMwU6#1SigJfns98~npZU;qFB literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/item/weapons/Weapon.class b/Java-Knight/target/classes/org/project/item/weapons/Weapon.class new file mode 100644 index 0000000000000000000000000000000000000000..aba5e91a02edf4c8c2e681d221e66369e5a729f5 GIT binary patch literal 806 zcmaJb#0wG? zf(L#8KMFB-bwvXevUKYm@67D(`RA|iKL8x!ejN@fKHLx1b)z9WdfGcSESPyX(8-mS?f;ugd;$w7ZgP>lhclt>w=XT@$p^xi=jf)i9 zL(E15UN>fm!0l&8^luK5R6k$LMmm3`MpGiKK{i&?p~@4Jm!Mm`P3D5m;2+iH$qu-W z#hfZT-KEl{o)3(FwNUv)bCK=;6bfprIUkOjjs*dcXXTnW{mX2TkM+~Uv>u$T_o2Bh zbhuXsf@?e-b1%GE$E=yrCGOz{&rN1;h*ub!y|0j7`xJg}`xK4OmaxUMMFJ?{l3YUr zt9;r-_ReV7#!Y4vur^}fjFGY5!ER~OXYTM@@Syhv{x_^S_+w#yIAc`Dx|KFv8_RR) yfMy*E32xzbDHz!t@QmIkmOC)rRtbY+n+`+!?v*lvJC~9hf0MT^CEv9c_kIK6caQr3 literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/item/weapons/knife.class b/Java-Knight/target/classes/org/project/item/weapons/knife.class new file mode 100644 index 0000000000000000000000000000000000000000..d5c87555fc19632abe9129f8226d8062e2793d49 GIT binary patch literal 321 zcmaKoy-veG49EY@cS2|a55ULPGLVshstcl0q=*F+=4&|MLYk|tX?ZRtqz*g)4~1}A z*5Z@?_Rq3?cmDp_d;z${Q3MON4=08Tk8rBZOSUk&mQ|OjPR_G;DHgh2W{+D>@W!fD z-Gtx{^L$kL2nZ*8yWU#$ED82-R1%yU{lt(Is+D)E`AnJzF>5$;T zswLs9_<#5{A-dNqQ^~37XGPm9FKe+DIET;Q>y7xh2w5YhE7%+X;YFIH!6)d0!NLJ+ XzYlO}01q)o@vabu7%=hUSuLc$_d-WX literal 0 HcmV?d00001 diff --git a/Java-Knight/target/classes/org/project/item/weapons/wood.class b/Java-Knight/target/classes/org/project/item/weapons/wood.class new file mode 100644 index 0000000000000000000000000000000000000000..c215821a9585505abbbf18b08a8da86ad0157f81 GIT binary patch literal 318 zcmaJ-Jx>Bb5Pfsscb;#)zSF&ny)yPeLkYcOrUH*2qgy2cls(B{( zo$2J#kGVKFqK*mv&YNM<@gH1rY?g^rsV40`B|IYZg~q3tEH2>rGsTC-3@i7N1r zj|Jt`-QRpXOhoeNbd+i{oHXZYmH=9Ps(&8c5O2{HA@5Gc10G*_gFtmeJqCR*7Sd0H zdU7l78TS5=&P_#~7(P$BYO+eRHQyA2NeP{Fs0O7h8!O+7Ch?G82-#QRdw0ijV>qBK zX>=%!9xYs1v@+5eFuK?}$ufD@@`|L3_A8iuIE7&!O;LDOfDMvm=<=In2`0hTC{m%w z{tSjHHp!D2vJ6v}EToaWh3&MALt6f2?H3qNWN47&ITfrb!WlT55;D}VvjAN953Vf) I*Hww#FEZ(g8UO$Q literal 0 HcmV?d00001 -- 2.54.0 From 526f07f2c7bc3e00bd6733132f21b80e28926bb1 Mon Sep 17 00:00:00 2001 From: mahdiLenovaF Date: Thu, 14 May 2026 11:38:52 +0330 Subject: [PATCH 3/5] complite main class + add some comment --- .../src/main/java/org/project/Main.java | 134 ++++++++++++------ .../org/project/entity/enemies/Dragon.java | 10 +- .../org/project/entity/enemies/Enemy.java | 2 +- .../org/project/entity/enemies/Skeleton.java | 4 + .../org/project/entity/players/Player.java | 11 +- .../java/org/project/item/armors/Armor.java | 7 + .../org/project/item/weapons/DragonWepon.java | 2 +- .../java/org/project/item/weapons/knife.java | 2 +- .../java/org/project/item/weapons/wood.java | 2 +- .../target/classes/org/project/Main.class | Bin 8056 -> 8604 bytes .../org/project/entity/enemies/Dragon.class | Bin 1302 -> 1739 bytes .../org/project/entity/enemies/Enemy.class | Bin 3577 -> 3579 bytes .../org/project/entity/enemies/Skeleton.class | Bin 1617 -> 1693 bytes .../org/project/entity/players/Player.class | Bin 4506 -> 4637 bytes .../org/project/item/armors/Armor.class | Bin 1364 -> 1461 bytes .../project/item/weapons/DragonWepon.class | Bin 712 -> 712 bytes .../org/project/item/weapons/knife.class | Bin 321 -> 321 bytes .../org/project/item/weapons/wood.class | Bin 318 -> 318 bytes 18 files changed, 125 insertions(+), 49 deletions(-) diff --git a/Java-Knight/src/main/java/org/project/Main.java b/Java-Knight/src/main/java/org/project/Main.java index b55ddbd..86c56a9 100644 --- a/Java-Knight/src/main/java/org/project/Main.java +++ b/Java-Knight/src/main/java/org/project/Main.java @@ -26,6 +26,7 @@ public class Main { public static Entity enemy; public static Scanner input = new Scanner(System.in); public static ArrayList keys = new ArrayList(); + public static boolean running = true; public static void main(String[] args) { @@ -33,45 +34,50 @@ public class Main { startMenu(); - while (true){ + while (running){ // when exit ruuning will be false do{ - System.out.println("==============================="); - Location fightLoc = fightMenu(); - enemy = fightLoc.getEnemie(); - System.out.println(enemy.toString() + "| HP:" + enemy.getHp()); - System.out.println("Do you want fight?"); - System.out.println("1.Yes"); - System.out.println("2.No(Go to another location)"); - int n = input.nextInt(); - if(n==1){ - gameplay(); - if(!player.isalive()){ - System.out.println("==============================="); - System.out.println( YELLOW + "Goodby!"); - return; + + try { // if we have null location we handle with this try/catch + System.out.println("==============================="); + Location fightLoc = fightMenu(); // make location with random enemy + enemy = fightLoc.getEnemie(); + System.out.println(enemy.toString() + "| HP:" + enemy.getHp()); + System.out.println("Do you want fight?"); + System.out.println("1.Yes"); + System.out.println("2.No(Go to another location)"); + int n = input.nextInt(); + if(n==1){ + gameplay(); // if you want play go to gameplay() + if(!player.isalive()){ // result of match + System.out.println("==============================="); + System.out.println( YELLOW + "Goodby!"); + return; + } + else { + System.out.println(BLUE); + player.repair(); + System.out.println(RESET); + } } - else { - System.out.println(BLUE); - player.repair(); - System.out.println(RESET); + else if(n >= 3){ + System.out.println("Invalid input"); } - } - else if(n >= 3){ - System.out.println("Invalid input"); + }catch (NullPointerException exception){ + System.out.println( YELLOW + "Goodby!"); + return; } - }while (true); + }while (running); } - // TODO: IMPLEMENT GAMEPLAY } - - public static void setKeys(){ + //make keys array + public static void setKeys(){ // set key array for enemies boolean goblinkey=false; boolean skeletonkey = false; boolean vampirekey = false; @@ -80,7 +86,9 @@ public class Main { keys.add(vampirekey); } - + /** + this method choose for player in game + */ public static void startMenu(){ System.out.println("----------Welcome to Java-Knight----------"); setKeys(); @@ -91,7 +99,7 @@ public class Main { System.out.println("2. \uD83E\uDDD9\u200D♂\uFE0F Wizard (High HP)"); System.out.println("3. \uD83D\uDDE1\uFE0F️ Assassin (High Mana)"); - boolean validInput = false; + boolean validInput = false; // check for vaild input while (!validInput){ System.out.print("chose:"); int choose =input.nextInt(); @@ -125,8 +133,13 @@ public class Main { } } + + /** + * make a location + * @return location with random enemy + */ public static Location fightMenu(){ - boolean dragonOpen = true; + boolean dragonOpen = true; // check drangon is open for (Boolean b : keys){ if(b == false){ dragonOpen = false; @@ -140,7 +153,7 @@ public class Main { System.out.println("2.Sea"); System.out.println("3.Jungle"); - for(boolean b : keys){ + for(boolean b : keys){ // for every key chek and write lock or tik if(b){ System.out.print("✔\uFE0F"); @@ -151,6 +164,8 @@ public class Main { } + + if(dragonOpen) { System.out.println("4.Dranon"); } @@ -158,11 +173,12 @@ public class Main { System.out.println("Dragon"); } + System.out.println("0.EXIT (CLOSE GAME)"); - int n = (int) ((Math.random()) *3); + int n = (int) ((Math.random()) *3); // a random number for random enemy Entity enemy = null; if(n == 0){ enemy = new Goblin(); @@ -182,6 +198,11 @@ public class Main { System.out.print("chose:"); int choose =input.nextInt(); switch (choose){ + case 0: + { + running = false; + return null; + } case 1: { location = new Location("Desert" , enemy); @@ -237,8 +258,12 @@ public class Main { } + + /** + * main loop of game + */ public static void gameplay(){ - boolean playerTurn = true; + boolean playerTurn = true; // flag for check for turn while (player.isalive() && enemy.isalive()){ @@ -252,7 +277,7 @@ public class Main { System.out.println("\n"+GREEN + "It's your Turn" +RESET); while (true){ - if(playerAttakMenu()){ + if(playerAttakMenu()){ // maybe not enough mp and should choose again break; } @@ -260,15 +285,24 @@ public class Main { playerTurn = !playerTurn; - if(enemy instanceof Skeleton && !enemy.isalive()){ + // for skeleton relive + if(enemy instanceof Skeleton && !enemy.isalive() && !((Skeleton) enemy).getResurrect()){ System.out.println("\n"+ RED); enemy.specialAbility(player); System.out.println(RESET); playerTurn = !playerTurn; } + // for win senario if(!enemy.isalive()){ System.out.println("you WIN"); - int n = (int) (Math.random()*2); + if(enemy instanceof Dragon){ + System.out.println(YELLOW + "Congratulation \n + you are the kingdom of Gogorio" + RESET); + ((Player) player).setKing(); // king senario; + } + + + + int n = (int) (Math.random()*2); // 50% present enemy have key if(n== 0){ if(enemy instanceof Goblin){ if(keys.get(0) == true){ @@ -301,22 +335,23 @@ public class Main { } - if(!enemy.getpossible()){ + if(!enemy.getpossible()){ // enemy is possible act? System.out.println(enemy.toString() + " Can't do any act"); enemy.truepossible(); playerTurn = !playerTurn; continue; } + if(enemy.getpossible() && !playerTurn){ System.out.println("\n" + RED +"It's enemy Turn" + RESET); - enemyAttakMenu(); + enemyAttakMenu(); // randoum act from enemy; playerTurn = !playerTurn; } - if(!player.isalive()){ + if(!player.isalive()){ // result System.out.println("you lose"); return; } @@ -331,6 +366,10 @@ public class Main { } + + /** + * selet a random act for each enemy + */ public static void enemyAttakMenu(){ if(enemy instanceof Goblin || enemy instanceof Vampire){ int n = (int) (Math.random()*3); @@ -347,7 +386,7 @@ public class Main { } - else if(enemy instanceof Skeleton){ + else if(enemy instanceof Skeleton){ // skeleton use special ability when he dead if(enemy.getHp() <= 0){ enemy.heavyattack(player); } @@ -355,12 +394,27 @@ public class Main { enemy.lightattack(player); } } - + + else if( enemy instanceof Dragon){ + int n = (int)(Math.random()*3); + if(n==0){ + enemy.specialAbility(player); + } + else { + enemy.lightattack(player); + } + + + } } + /** + * choose a act for player + * @return was the act successful or no + */ public static boolean playerAttakMenu() { System.out.print("1.Light attak| "); diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java b/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java index 3380543..95bf668 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.java @@ -14,12 +14,14 @@ public class Dragon extends Enemy{ public void specialAbility(Entity target){ - heavyattack(target); - //sout : fire! + target.getArmor().brokeArmor(); + System.out.println(toString()+"\uD83D\uDD25 FIRE!! special ability" ); + target.takeDamage(2 * weapon.getDamage()); + + } public String toString(){ - String str = "Dragon |" + "Hp:" + getHp(); - return str; + return "\uD83D\uDC09 Dragon"; } } diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java b/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java index 9ab8e09..7a96b13 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java @@ -37,7 +37,7 @@ public abstract class Enemy implements Entity { public void heavyattack(Entity target){ - System.out.println(toString() + " do a heavy attaked with " + weapon.getDamage() + " damages"); + System.out.println(toString() + " do a heavy attaked with " + weapon.getDamage() * 2 + " damages"); target.takeDamage(2 * weapon.getDamage()); } diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java b/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java index a0fc717..4bf4bee 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.java @@ -28,6 +28,10 @@ public class Skeleton extends Enemy { } + public boolean getResurrect(){ + return resurrect; + } + public String toString(){ return "☠\uFE0F Skeleton "; diff --git a/Java-Knight/src/main/java/org/project/entity/players/Player.java b/Java-Knight/src/main/java/org/project/entity/players/Player.java index e60f6e5..c4656f0 100644 --- a/Java-Knight/src/main/java/org/project/entity/players/Player.java +++ b/Java-Knight/src/main/java/org/project/entity/players/Player.java @@ -72,7 +72,7 @@ public abstract class Player implements Entity { armor.use(this); } else { - System.out.println("you take " + (damage - armor.getDefense())); + System.out.println("you take " + (damage - armor.getDefense()) + " Damage"); hp -=damage; } @@ -115,6 +115,15 @@ public abstract class Player implements Entity { System.out.println( "Repair: we full your Hp , repair your armor and give you some Mp"); } + public void setKing(){ + this.maxHP =1000; + this.hp=maxHP; + this.maxMP = 1000; + this.mp = maxMP; + armor.repair(); + + } + public String getName() { return name; } diff --git a/Java-Knight/src/main/java/org/project/item/armors/Armor.java b/Java-Knight/src/main/java/org/project/item/armors/Armor.java index be19f8f..22c9a11 100644 --- a/Java-Knight/src/main/java/org/project/item/armors/Armor.java +++ b/Java-Knight/src/main/java/org/project/item/armors/Armor.java @@ -25,6 +25,9 @@ public abstract class Armor implements Item { public boolean checkBreak() { + if(isBroke){ + return true; + } if (durability <= 0) { isBroke = true; defense = 0; @@ -64,4 +67,8 @@ public abstract class Armor implements Item { public boolean isBroke() { return isBroke; } + + public void brokeArmor(){ + isBroke =true; + } } diff --git a/Java-Knight/src/main/java/org/project/item/weapons/DragonWepon.java b/Java-Knight/src/main/java/org/project/item/weapons/DragonWepon.java index cfa2e68..080ea52 100644 --- a/Java-Knight/src/main/java/org/project/item/weapons/DragonWepon.java +++ b/Java-Knight/src/main/java/org/project/item/weapons/DragonWepon.java @@ -5,7 +5,7 @@ import org.project.entity.Entity; public class DragonWepon extends Weapon{ public DragonWepon(){ - super(40 , 10); + super(25 , 10); } public void use(Entity target){ diff --git a/Java-Knight/src/main/java/org/project/item/weapons/knife.java b/Java-Knight/src/main/java/org/project/item/weapons/knife.java index 4b83f59..cf60f97 100644 --- a/Java-Knight/src/main/java/org/project/item/weapons/knife.java +++ b/Java-Knight/src/main/java/org/project/item/weapons/knife.java @@ -2,6 +2,6 @@ package org.project.item.weapons; public class knife extends Weapon{ public knife(){ - super(15 , 8); + super(20 , 8); } } diff --git a/Java-Knight/src/main/java/org/project/item/weapons/wood.java b/Java-Knight/src/main/java/org/project/item/weapons/wood.java index eceb5b8..39acdf7 100644 --- a/Java-Knight/src/main/java/org/project/item/weapons/wood.java +++ b/Java-Knight/src/main/java/org/project/item/weapons/wood.java @@ -3,6 +3,6 @@ package org.project.item.weapons; public class wood extends Weapon{ public wood(){ - super(10, 8); + super(15, 8); } } diff --git a/Java-Knight/target/classes/org/project/Main.class b/Java-Knight/target/classes/org/project/Main.class index bd4f4439273785ebcf6911d94ae32be2f70a25d4..503fd244fe2a5532ce07cdce9ebad381f5f4187e 100644 GIT binary patch literal 8604 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 UZ@+%`NsRMe&c$UHS$yvQ0p`K)WdHyG diff --git a/Java-Knight/target/classes/org/project/entity/enemies/Dragon.class b/Java-Knight/target/classes/org/project/entity/enemies/Dragon.class index f95da935af44c7f576ef00f18cd243b47a42c17d..8624c156f8136aded1844c76533b062a81c33a31 100644 GIT binary patch delta 848 zcmZuvOHUI~6#nkC%(TN0N)e$dbVhm16k$}vSA8K5tyV=)Pz=|iB=@gAt9-t69*VlL0U*97-9v>pYTeq$Drv(^;>#V#zAyT=uwb@$k6M01+(nA ztJbn_+P+mXc?hqV%_w=vbJwhf5yxR1kW$86xhw&(M`` zcx>04^=!wV_dSc3vNALrl^`Bd(2s%Y&%q!osGCV@Wk`VzgQ2^`*Q`m`S?2zt?XQql z@wwwy7zXuy%KcD?Zo&PC=K`Mtu6&QT5M*YCTQb`?QOD_(9b6EwMOXo0jwGTaI}j(Whn94R_KjBOOh(kW zjvJJYb{hlDv?C3hicemy{b3Ay0Btd`Q0<`}X_7>cYoKo87Tq!O-Jz4meX?ZI9$*oV GkopBEVyeOb delta 481 zcmZXOOG^S_6o%h##?cr@ypNa6Tc*xfncXvr76l3}f_}jeqE?vLAOu0{mhwTrp=EAd zNVKmOE&2idinh@i6N*}V=e*zHJ2KKZvQcWlU}Ev)gJnw)vsh=I>&Tf3Ref_AbmWgYTb@i?&i~fkD~t8jbUI@~YA)Gq)W@ z8A~WRux#B~;Vs)6Tjx8HZrfyt^F1lfZzRRae&LK|-5!!f1M}hhjO&00RW0ig~sWoh13z08-bV8H> diff --git a/Java-Knight/target/classes/org/project/entity/enemies/Enemy.class b/Java-Knight/target/classes/org/project/entity/enemies/Enemy.class index 2d3d1d0020954dead6c88aa4333c0d9954c0e3db..73539c8e1adda5edd80d86c6f172d792c2635928 100644 GIT binary patch delta 72 zcmew<{abp&c@D`G1{MY;1_lO=O$%I delta 70 zcmew@{Zo3wc@FU;24)5(1_lPTO$@ zF|$v;%_76dGWiF~Pb((|9R@}Q3!ruSK$;OqvubT&;9mn|FfmvHNj9*c0)rKh%>z-u zV9j8|z%cn8tA@2Ik~lL&oPn9a8LZm{=mQ1@4xkcvNKDGi$tON`zuhfyz(Z^nG(%DQ zqsb@FdSYxTr}TvtwT`}VlW?3Lt4%Ev1T&pT*-0lJwaI?qbUU%A4^x-zF6TwmjwO;J zJ?iyg`u}#Tv}d`X+WvVB3s_XKRF1n?=0EE1TWf?yKK2E*(9=XBp6XTclaG8k3T*Y< zzF+oM0ijR6+6j+jKsaK0Pl_-jk!_eoR9uu+skDlyln~rOydXC{crL7kB76xIub?B1 z0A3@A0W{(b`b8?|wE_XY!5jLN`ZtnrK;_BKIUXFNQiCGx6;blS% z$;?nvCX&wZsC3e4r(e3V#TjsVl9GH_0H^FY9z~xeG>;bG;ric1CIIKcrHF8M7hQn^%%I| zH(!ndH)EwuB^hJ=eR`G EH`7FLQ~&?~ diff --git a/Java-Knight/target/classes/org/project/item/armors/Armor.class b/Java-Knight/target/classes/org/project/item/armors/Armor.class index 6467b83ab1ec768e61f0a2e9c0e91be804b89fc0..bef4b725930458517900db922b8b3d709ad9a931 100644 GIT binary patch delta 281 zcmcb@wUwLe)W2Q(7#J8_8H_h_@iB2F73F8AIu_;T7flvr@@M3loXT`dsF;C?ff1-k zS!)Y}*h~gimNk<-n3e677&w4}G7RhtvJ9LI@(cnD3JjtQiVRW=Nr8OsVamXW~# JXfP9lApo5;7>@t| diff --git a/Java-Knight/target/classes/org/project/item/weapons/DragonWepon.class b/Java-Knight/target/classes/org/project/item/weapons/DragonWepon.class index 46c55d85f60b502ab7a60e080593a5b7c446d83b..6947e93134439686f42e70311e2b579b6a691672 100644 GIT binary patch delta 13 UcmX@XdV+O>855)AWOJs803R{~`Tzg` delta 13 UcmX@XdV+O>855(%WOJs803Uq>2><{9 diff --git a/Java-Knight/target/classes/org/project/item/weapons/knife.class b/Java-Knight/target/classes/org/project/item/weapons/knife.class index d5c87555fc19632abe9129f8226d8062e2793d49..3ab8b243c890812136dbb321f3e8674d74ae2640 100644 GIT binary patch delta 13 UcmX@ebdYHS7bBy{WNt Date: Thu, 14 May 2026 15:22:32 +0330 Subject: [PATCH 4/5] finish --- .../src/main/java/org/project/Main.java | 8 +++---- .../org/project/entity/enemies/Enemy.java | 22 +++++++++--------- .../org/project/entity/enemies/Goblin.java | 2 +- .../org/project/entity/players/Assassin.java | 4 +++- .../org/project/entity/players/Player.java | 20 ++++++++++++---- .../org/project/entity/players/Wizard.java | 6 ++++- .../java/org/project/item/armors/Armor.java | 4 ++-- .../org/project/item/consumables/Flask.java | 2 +- .../java/org/project/item/weapons/knife.java | 2 +- .../java/org/project/item/weapons/wood.java | 2 +- .../target/classes/org/project/Main.class | Bin 8604 -> 8625 bytes .../org/project/entity/enemies/Enemy.class | Bin 3579 -> 3586 bytes .../org/project/entity/enemies/Goblin.class | Bin 1172 -> 1174 bytes .../org/project/entity/players/Assassin.class | Bin 1744 -> 1745 bytes .../org/project/entity/players/Player.class | Bin 4637 -> 4637 bytes .../org/project/entity/players/Wizard.class | Bin 1711 -> 1856 bytes .../org/project/item/consumables/Flask.class | Bin 568 -> 568 bytes .../org/project/item/weapons/knife.class | Bin 321 -> 321 bytes .../org/project/item/weapons/wood.class | Bin 318 -> 318 bytes 19 files changed, 44 insertions(+), 28 deletions(-) diff --git a/Java-Knight/src/main/java/org/project/Main.java b/Java-Knight/src/main/java/org/project/Main.java index 86c56a9..bd07ebc 100644 --- a/Java-Knight/src/main/java/org/project/Main.java +++ b/Java-Knight/src/main/java/org/project/Main.java @@ -295,15 +295,15 @@ public class Main { // for win senario if(!enemy.isalive()){ System.out.println("you WIN"); + int n = (int) (Math.random()*2); // 50% present enemy have key if(enemy instanceof Dragon){ - System.out.println(YELLOW + "Congratulation \n + you are the kingdom of Gogorio" + RESET); + System.out.println(YELLOW + "Congratulation \n You are the kingdom of Gogorio" + + " 1000 Hp | 1000 Mp" + RESET); ((Player) player).setKing(); // king senario; } - - int n = (int) (Math.random()*2); // 50% present enemy have key - if(n== 0){ + else if(n== 0){ if(enemy instanceof Goblin){ if(keys.get(0) == true){ System.out.println("You have got this key befor"); diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java b/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java index 7a96b13..da46654 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.java @@ -28,7 +28,10 @@ public abstract class Enemy implements Entity { } + public abstract void specialAbility(Entity target); + + @Override public void lightattack(Entity target){ System.out.println(toString() + " do a light attaked with " + weapon.getDamage() + " damages"); target.takeDamage(weapon.getDamage()); @@ -36,13 +39,15 @@ public abstract class Enemy implements Entity { } + @Override public void heavyattack(Entity target){ System.out.println(toString() + " do a heavy attaked with " + weapon.getDamage() * 2 + " damages"); - target.takeDamage(2 * weapon.getDamage()); + target.takeDamage((2 * weapon.getDamage()) - 10); } + @Override public void takeDamage(int damage) { if(!armor.checkBreak()){ @@ -57,39 +62,37 @@ public abstract class Enemy implements Entity { }; } + @Override public int getHp() { return hp; } - public int getMp() { return mp; } - public int getMaxHP(){ return maxHp; } public int getMaxMP(){ return maxMp; } - + @Override public Weapon getWeapon() { return weapon; } public Armor getArmor(){return armor;} - + @Override public void falsepossible(){ ispossible = false; } public void truepossible(){ - ispossible=true;} + ispossible=true; + } public boolean getpossible(){ return ispossible; } - public abstract void specialAbility(Entity target); - @Override public boolean isalive(){ @@ -99,9 +102,6 @@ public abstract class Enemy implements Entity { @Override public abstract String toString(); public String getName(){return "";} - - @Override - public void repair(){} public void defend() {} public void healHp(int health){} diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java b/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java index 028ff65..19f763e 100644 --- a/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java +++ b/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.java @@ -13,7 +13,7 @@ public class Goblin extends Enemy { public void specialAbility(Entity target){ System.out.println("\uD83D\uDC79 use critical hit"); - target.takeDamage(2 * weapon.getDamage()); + target.takeDamage(2 * weapon.getDamage() - 5); this.mp -=10; } diff --git a/Java-Knight/src/main/java/org/project/entity/players/Assassin.java b/Java-Knight/src/main/java/org/project/entity/players/Assassin.java index 9a1d57d..00f1d99 100644 --- a/Java-Knight/src/main/java/org/project/entity/players/Assassin.java +++ b/Java-Knight/src/main/java/org/project/entity/players/Assassin.java @@ -11,11 +11,13 @@ public class Assassin extends Player{ } public void specialAbility(Entity target){ - System.out.println(this.getName() + "use special ability, (you are invisible now"); + System.out.println(this.getName() + "use special ability, (you are invisible now) " + + "+ Damge:" +weapon.getDamage() + fistDamage ); mp -= 30; target.falsepossible(); target.takeDamage(weapon.getDamage() + fistDamage); + } diff --git a/Java-Knight/src/main/java/org/project/entity/players/Player.java b/Java-Knight/src/main/java/org/project/entity/players/Player.java index c4656f0..4f943b3 100644 --- a/Java-Knight/src/main/java/org/project/entity/players/Player.java +++ b/Java-Knight/src/main/java/org/project/entity/players/Player.java @@ -18,6 +18,9 @@ public abstract class Player implements Entity { protected boolean isalive; protected int Xp; + + + public Player(String name, int hp, int mp, Weapon weapon, Armor armor , int fistDamage) { this.name = name; this.hp = hp; @@ -33,6 +36,8 @@ public abstract class Player implements Entity { } + public abstract void specialAbility(Entity target); + @Override public void lightattack(Entity target){ @@ -99,12 +104,13 @@ public abstract class Player implements Entity { } + @Override public String toString(){ return name+ " |Hp: " + hp +"/" + maxHP + " | Mp: " +mp +"/" + maxMP + "| Xp:" +this.Xp ; } - public abstract void specialAbility(Entity target); + @Override public void repair(){ this.Xp +=1; this.maxHP +=5; @@ -121,14 +127,14 @@ public abstract class Player implements Entity { this.maxMP = 1000; this.mp = maxMP; armor.repair(); - } + @Override public String getName() { return name; } - + @Override public int getHp() { return hp; } @@ -138,9 +144,12 @@ public abstract class Player implements Entity { return maxHP; } + @Override public int getMp() { return mp; } + + @Override public boolean getpossible(){ return true;} @Override @@ -148,11 +157,12 @@ public abstract class Player implements Entity { return maxMP; } + @Override public Weapon getWeapon() { return weapon; } - + @Override public Armor getArmor() { return armor; } @@ -162,7 +172,7 @@ public abstract class Player implements Entity { return hp > 0; } - + // we should override this function but they are for enemies public void falsepossible(){} public void truepossible(){} } diff --git a/Java-Knight/src/main/java/org/project/entity/players/Wizard.java b/Java-Knight/src/main/java/org/project/entity/players/Wizard.java index 6320c27..02e5320 100644 --- a/Java-Knight/src/main/java/org/project/entity/players/Wizard.java +++ b/Java-Knight/src/main/java/org/project/entity/players/Wizard.java @@ -13,7 +13,11 @@ public class Wizard extends Player{ System.out.println(this.getName() + "use special ability"); mp -= 30; target.takeDamage(weapon.getDamage() + fistDamage); - this.healHp(30); + this.hp += 30; + System.out.println(toString()+ "have got 30 Hp"); + if(hp > maxHP){ + hp = maxHP; + } } diff --git a/Java-Knight/src/main/java/org/project/item/armors/Armor.java b/Java-Knight/src/main/java/org/project/item/armors/Armor.java index 22c9a11..507497a 100644 --- a/Java-Knight/src/main/java/org/project/item/armors/Armor.java +++ b/Java-Knight/src/main/java/org/project/item/armors/Armor.java @@ -25,7 +25,7 @@ public abstract class Armor implements Item { public boolean checkBreak() { - if(isBroke){ + if(isBroke){ // if armor broke by dragon return true return true; } if (durability <= 0) { @@ -70,5 +70,5 @@ public abstract class Armor implements Item { public void brokeArmor(){ isBroke =true; - } + } // for dragon attak } diff --git a/Java-Knight/src/main/java/org/project/item/consumables/Flask.java b/Java-Knight/src/main/java/org/project/item/consumables/Flask.java index c20f3dc..5f2bf40 100644 --- a/Java-Knight/src/main/java/org/project/item/consumables/Flask.java +++ b/Java-Knight/src/main/java/org/project/item/consumables/Flask.java @@ -6,7 +6,7 @@ public class Flask extends Consumable { @Override public void use(Entity target) { - target.healHp(target.getMaxHP() / 4); + target.healHp(target.getMaxHP() / 2); } } diff --git a/Java-Knight/src/main/java/org/project/item/weapons/knife.java b/Java-Knight/src/main/java/org/project/item/weapons/knife.java index cf60f97..4b83f59 100644 --- a/Java-Knight/src/main/java/org/project/item/weapons/knife.java +++ b/Java-Knight/src/main/java/org/project/item/weapons/knife.java @@ -2,6 +2,6 @@ package org.project.item.weapons; public class knife extends Weapon{ public knife(){ - super(20 , 8); + super(15 , 8); } } diff --git a/Java-Knight/src/main/java/org/project/item/weapons/wood.java b/Java-Knight/src/main/java/org/project/item/weapons/wood.java index 39acdf7..67851cc 100644 --- a/Java-Knight/src/main/java/org/project/item/weapons/wood.java +++ b/Java-Knight/src/main/java/org/project/item/weapons/wood.java @@ -3,6 +3,6 @@ package org.project.item.weapons; public class wood extends Weapon{ public wood(){ - super(15, 8); + super(16, 8); } } diff --git a/Java-Knight/target/classes/org/project/Main.class b/Java-Knight/target/classes/org/project/Main.class index 503fd244fe2a5532ce07cdce9ebad381f5f4187e..cfbf971f5bdfb75b730ee4ca02699bdbc30f455e 100644 GIT binary patch delta 1116 zcmXYv3rv<}7>2L=mpDZ!g2Yk(K$64+Q5XXXigFf`C7>Bf%0aLcP$(lHoTipF#6Gqp zu+1_t7l}}aI1`#?D4V1P%}}RcC{fw8S(`;K+V^hn;W>WywWls|e`4cam$8ls-2I%n zD&|^^E?zeKBCFFSz}Ie{5gs0HpHpZryL(G6^h*z4<;0Nnrn6UI;mTztIcti-p1X6p za*bg(e#KEZ73CBst;o-9p6)u!RmoPC=XRgxu`wS9Qg9>{chc}@0aI9Lc~1B<^ za4#?6!BTu#Mj)9?C5s5MiD5Z$El}lIL>ee z-)S5ti^P0^CJ4__N`H=rLjmL&1aB*lDg{w%P<*0b8WcjS z9;RJW=~Sq}GmUea&d&zXkY;j2v*e&ixv3&b_bFQbiczp)6{R>mrbiWT*0XwC3-yHZ zl&C^IsnwdTa?O#YB-JWeb(*hwrKnA*`bKH$(gK~*B3)3r2DMm2TB4iE)QGZd&dRpA zs6eSkoR?wS$r%&17#YwuXKToR(ml6{)A zXS9!0HL_66WagJMq_)Wds z(mDRsPjXV9!FgVuM!%mfYN9SFC_zm==o P2Jt^yV;f@~xBu`T7!@8` delta 1078 zcmXYv4@^~M9EP9wPPkljMM?zs^5+IB6qp9O5?HaWT88MRkS+`bMPR`t0ZU26Im^Ex zbWC7U&2XVkr(OuCrl6%wWTi&oiZTa;iEFXeTE(o->YVM{Iqx~=_n!Cp-cz1N&&i{X zr~rNx$*%0Aq!Lf5x1cPyVqI}=MNz5O9q5jCZ?LX7BJ8g086|dZTAKqxtjNG1*D$vx zFoM6Zm*-cc7kLZ()A;XbNei4AsD;+L;QFw|*jU0iGVv#i`*@CUmJ-V{YwG>K^DYr#-!fZ zG@2pru$3lWHv?;FHsg8Fc9&T>14 za|+_Tg1Mj&y7eHJG?^a7a#@L7(JZd&alV#^KF#Br=F_hXzEc+8YbDpUh5>mQ)LOGu z72MKBMpVTg+RC5W#b4IKu*1_*4QCtJ?Bh~=EclQ`qCsOm;{LxJ^$|4j%Qixt4O(x- zIIV=iyUKu3%u8qKX(0HnF!Zmmpo`%)e(Jy%%`KAP0hAGcTJbWy5n+I87J8Y zl^<@|nXCX3t1p+i9!>1haR9tp&U>cO>%Nv;dCg1E=6)tQ6|2dZxn4J z#xQKK{Gut6rplpM1?nM%DPGY^P?Dx8MUN;|Gn8JaL}eN&Uo%yrS@P;JRcf|s%;S1J zp$2($NORP#x$4wBUDVU+(R_WYbPZ~OhLxdFE!LQp*!+}f^VbSxngWLyh6A)ITgwqP zo1gV}c$8nl7}I6NMEp88kBM4^ORGsxKFKQJNfnvc#Vk{)iM^K9Dx*~8Y|_i@RweuN zDsP(|JE%>Z&=x+@_Ll6(%c|OgLvIkJYT~q)M^$6Sy@f~nc~*5~s-C4fK%U-Zo8Duu zny6JX%{q)vM`+bCPU|?G@|hyF(5qHcpmtN14sPfSKdY19b&fmwM0S0u2{QH51-bN@ yA`On1M0Fdmmkh@q!|w~FsaH>_&+xfs*j(51`oYk>p#sC}B@L-eBUZortA7Ary%6jG diff --git a/Java-Knight/target/classes/org/project/entity/enemies/Enemy.class b/Java-Knight/target/classes/org/project/entity/enemies/Enemy.class index 73539c8e1adda5edd80d86c6f172d792c2635928..ca2917270ae65127c3e392e9758545744fd8f70c 100644 GIT binary patch delta 433 zcmYjNO-n*S6g}g6hRwVzgQrPuDoe;dAo|cWGAhAU(jq^~Os({lK~ODP1l6kjh4%e} z!bP-b(QjzeA892)_q{@7;LMzR?!D(Q?cw{-b3pI+UYsA*tV(mOYBjCP>z1hxidM`W z(hOZ-4_g2PN|g6(Cc^Mz9Ak)}z*Rq7jA0b9%eVd7N11yC4tPo+$F(|irz=Wdp3%gB zJbXjag%?&_$TNDOF-~C!)0o6e*WPGnZ`9sPbG;9l1xPF+geCTh@rfhFm_`y=tg!29 z*Lr?N8XR{E*HEbXv&W{=D=HWSBmCr$d4J{nPe zt&Rr$$gs%Tnr7jImQ`46JDsO=r6TSfxRIkLWvV8-{r$o`eW-wv&QBCrFWR~|qi;1K dN{(mTm^EuodOIo5_n*E>H%44ETCc{2_yqzTN>Ts- delta 482 zcmZutO-lk%6g^MJ7{{@i!ZA^VRM1>mNuLM_DQ?m}h&20fOsgq_pf>FyS_Ex^`!^yA zY1>bU{z2{CbY~_)qRqSaymQVy_r04)FZ>*ox+!T`3=LkKw+~FClW&?G^YW@Y_Aew*a&t!NoO2A99Qyvxs;Im*;_bhy8VaY=7LmbhXGD=~eMxToAK89)I zs!tPTOCe6^+Lx@a!-EZbJ!=(f5$AaVr`$Uqli@U*OG~eazWhnw{MX$<$<7O@TBzEm f@Hq1&fiqNSQOyP#eXRc{-Jn}_UbMS!>azF-PN7W= diff --git a/Java-Knight/target/classes/org/project/entity/enemies/Goblin.class b/Java-Knight/target/classes/org/project/entity/enemies/Goblin.class index 9c2063bc1ce376dfa6aea4d00572639f6309a316..7a5621625cbbc756ad2f9cbbb8190361edb63fdc 100644 GIT binary patch delta 75 zcmbQjIgN9}Yi8M024)5(1_lPzO$_`(qT3k6wOO^cFvxCWP|n~;naswbCM(Gx$e_X? Y%wP^wB?eK;V8LJsYi8+W24)5(1_lP@O$_`(qT3k6wOO^cFvxCWP|ldl!J;NB&LGI3#30OI W4pbusQORJzU_^-T6=@dg0$Fbfm_ diff --git a/Java-Knight/target/classes/org/project/entity/players/Assassin.class b/Java-Knight/target/classes/org/project/entity/players/Assassin.class index a207ca2e8114c1e05deae28bdbcc788350b6da65..44185f6bbdab6d46bf3e12acfe2c4ece659081b3 100644 GIT binary patch delta 20 bcmcb>dy#j8D+{CUWH%NaM$OGdEOAT#L*)gZ delta 18 Zcmcb}dx3X@D+{B}WH%O_&BZKnOaMC!1$6)b diff --git a/Java-Knight/target/classes/org/project/entity/players/Player.class b/Java-Knight/target/classes/org/project/entity/players/Player.class index 1e823a709f68a0d8917db42e593315c741b2fc0e..75e643b4625bb7a99cdb82937ae352f4ce0266ea 100644 GIT binary patch delta 590 zcmYjNT}u>U7(K7+M>{(+J7eyL8=VMpKoc&Z6PKmk_y7H^jQDztt2lu; z`3Xw*%8IX)96$}O!H+>!ud_Nt`5WlKP4w_g;1=%SHXdOFFK`!m+(V9Df~erXfN8wq zd5GS@qKhJN4Lsp}^gF!H$|rp^@BlgYE_%8$7RRX<+r6ttsM(|Ii_M9sT5_@j;WF?+gH>#*|n2@ E0s6gdTmS$7 delta 652 zcmYk2OHUJV6vfZq7J)MDOqI5v76C^Jgi@-l0^wD|!vq2$Kv5EuN7U35M5&hY&`Q*W z3pdvV8)Cu&S0*HU0oKOA&QIXCkcEc{PG&RzGdK7C&bfEj+%*rLmPo#2Pxq~^JXy@l zXHyHAY$jJY3|;)?iU;6E5akHLhbmk~HNRI7##P+FH8fGRq6P_EM+a)rgLy zgDEzdsT8iNzet7oyCpxgbk77dOmhDz)FF))Omo|Zj&MmkToP|>j0-A3#5+lONBd@p zc*IPPdA>QAm?vh@fr#3OC@=6o2@x$s6!Bh8yxrB$tO1P``-Ezz3mZ+E7{Y=SM6E3dQYi?ng4~v&ZLHGJ(df!I za5GOp!k$2Y1qg0o%5aZopZn3qsZ^5b#;4j3FK)WTmOvd0g}vw zndOnfXm%{2b77v7QiR;Svb*2<(uiYV_`-acSH3X#S${8Ts-@uL{?fnX*&3<-09h_AK?;x0+D~f$fEWrRN$>t?{(BtDQ@LCv*v&a%k z&Ks5m3sO6i#r{;)i}yYGSve&)l-fQccS0g_&a(?%z&UnC8ggGAGMMqBD2`>y#D8~! zkYI!uQTdM;j~QZ$VfmIgZ%I&L^q!yUou4Wt=_^)bI*7VqvLYMH!VFeflQ<&$gDBqh RaHEG+YSOW!TF0Tm!~bC*O>F=G delta 337 zcmX@Wx1N{l)W2Q(7#J8_8R9l_{bds7Vvu66<6*F8uwi6i%ScVk@hF(=#C&P83X7hH zKO=+W+XegHZlC$6q4&|uruRGg6&N+bGpiDdQZzXj0vQ=Z7)y&&6^aW|lQR=@6cUp% zb23XR`PmqPxfntiLfIL@co>)&!Y8k1xy%y9$e=oTBdZ*jicfxic4+}SL(JrLtoDo! zli#r#I64BI#Kph_Bsm%6fGj5QZf2bvGk zWjr~aO}9WmZX1K`Mj)4o0c4;U11pf^W#DJv1NxGmL5D$r!H7W+$#7%1;l>P}3|>G( lnHjvn`h6IDfixe`q#&TEAD9eahyaRl0r`;((G0N+k^sg*J+c4* diff --git a/Java-Knight/target/classes/org/project/item/consumables/Flask.class b/Java-Knight/target/classes/org/project/item/consumables/Flask.class index 26a3b1930a0b175728b861d07746a4f49a1cb737..0d6a6f82552e01dbb5c75444d4d883d5481fb6e7 100644 GIT binary patch delta 13 UcmdnNvV&#AH%3O*$=?|r0VN*<@&Et; delta 13 UcmdnNvV&#AH%3PG$=?|r0VOE}^Z)<= diff --git a/Java-Knight/target/classes/org/project/item/weapons/knife.class b/Java-Knight/target/classes/org/project/item/weapons/knife.class index 3ab8b243c890812136dbb321f3e8674d74ae2640..d5c87555fc19632abe9129f8226d8062e2793d49 100644 GIT binary patch delta 13 UcmX@ebdYHS7b7G8WNt Date: Thu, 14 May 2026 16:47:42 +0330 Subject: [PATCH 5/5] run and write README1 --- .../src/main/java/org/project/Main.class | Bin 0 -> 7882 bytes .../main/java/org/project/entity/Entity.class | Bin 0 -> 658 bytes .../org/project/entity/enemies/Dragon.class | Bin 0 -> 1570 bytes .../org/project/entity/enemies/Enemy.class | Bin 0 -> 3032 bytes .../org/project/entity/enemies/Goblin.class | Bin 0 -> 1005 bytes .../org/project/entity/enemies/Skeleton.class | Bin 0 -> 1504 bytes .../org/project/entity/enemies/Vampire.class | Bin 0 -> 1613 bytes .../org/project/entity/players/Assassin.class | Bin 0 -> 1632 bytes .../org/project/entity/players/Knight.class | Bin 0 -> 1520 bytes .../org/project/entity/players/Player.class | Bin 0 -> 4026 bytes .../org/project/entity/players/Wizard.class | Bin 0 -> 1667 bytes .../src/main/java/org/project/item/Item.class | Bin 0 -> 153 bytes .../java/org/project/item/armors/Armor.class | Bin 0 -> 1130 bytes .../org/project/item/armors/EnemyArmor.class | Bin 0 -> 246 bytes .../org/project/item/armors/KnightArmor.class | Bin 0 -> 248 bytes .../project/item/armors/leatherArmor.class | Bin 0 -> 250 bytes .../org/project/item/armors/woodenArmor.class | Bin 0 -> 248 bytes .../project/item/consumables/Consumable.class | Bin 0 -> 299 bytes .../org/project/item/consumables/Flask.class | Bin 0 -> 416 bytes .../org/project/item/consumables/Teriak.class | Bin 0 -> 418 bytes .../project/item/weapons/DragonWepon.class | Bin 0 -> 558 bytes .../java/org/project/item/weapons/Sword.class | Bin 0 -> 240 bytes .../org/project/item/weapons/Weapon.class | Bin 0 -> 601 bytes .../java/org/project/item/weapons/knife.class | Bin 0 -> 240 bytes .../java/org/project/item/weapons/knife.java | 2 +- .../java/org/project/item/weapons/wood.class | Bin 0 -> 238 bytes .../java/org/project/location/Location.class | Bin 0 -> 550 bytes README.md | 2 +- README1.MD | 86 ++++++++++++++++++ 29 files changed, 88 insertions(+), 2 deletions(-) create mode 100644 Java-Knight/src/main/java/org/project/Main.class create mode 100644 Java-Knight/src/main/java/org/project/entity/Entity.class create mode 100644 Java-Knight/src/main/java/org/project/entity/enemies/Dragon.class create mode 100644 Java-Knight/src/main/java/org/project/entity/enemies/Enemy.class create mode 100644 Java-Knight/src/main/java/org/project/entity/enemies/Goblin.class create mode 100644 Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.class create mode 100644 Java-Knight/src/main/java/org/project/entity/enemies/Vampire.class create mode 100644 Java-Knight/src/main/java/org/project/entity/players/Assassin.class create mode 100644 Java-Knight/src/main/java/org/project/entity/players/Knight.class create mode 100644 Java-Knight/src/main/java/org/project/entity/players/Player.class create mode 100644 Java-Knight/src/main/java/org/project/entity/players/Wizard.class create mode 100644 Java-Knight/src/main/java/org/project/item/Item.class create mode 100644 Java-Knight/src/main/java/org/project/item/armors/Armor.class create mode 100644 Java-Knight/src/main/java/org/project/item/armors/EnemyArmor.class create mode 100644 Java-Knight/src/main/java/org/project/item/armors/KnightArmor.class create mode 100644 Java-Knight/src/main/java/org/project/item/armors/leatherArmor.class create mode 100644 Java-Knight/src/main/java/org/project/item/armors/woodenArmor.class create mode 100644 Java-Knight/src/main/java/org/project/item/consumables/Consumable.class create mode 100644 Java-Knight/src/main/java/org/project/item/consumables/Flask.class create mode 100644 Java-Knight/src/main/java/org/project/item/consumables/Teriak.class create mode 100644 Java-Knight/src/main/java/org/project/item/weapons/DragonWepon.class create mode 100644 Java-Knight/src/main/java/org/project/item/weapons/Sword.class create mode 100644 Java-Knight/src/main/java/org/project/item/weapons/Weapon.class create mode 100644 Java-Knight/src/main/java/org/project/item/weapons/knife.class create mode 100644 Java-Knight/src/main/java/org/project/item/weapons/wood.class create mode 100644 Java-Knight/src/main/java/org/project/location/Location.class create mode 100644 README1.MD diff --git a/Java-Knight/src/main/java/org/project/Main.class b/Java-Knight/src/main/java/org/project/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..2be909eebea496415e2f960d2ddd83fce69ee362 GIT binary patch literal 7882 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 Trv7b_4!-yDT~I<2#+1JSNYC!& literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/entity/Entity.class b/Java-Knight/src/main/java/org/project/entity/Entity.class new file mode 100644 index 0000000000000000000000000000000000000000..95425d7a21e856883f5d7cca1464611b1f60e4e8 GIT binary patch literal 658 zcmZ`$%T5A85bQzO1r`()ANWQt%f)mJOVW7E2h!t_6!O_S(_q6QgX$P(=mi-0-gRGj z7&w9OM-rvP!GyuSd-?B#lh!TSM;vF*pLT1=A9yrmu;41uA~Co~7%aM-uewWhN#cZ` zVu(IxQ1H3z;?u>AZtF0}6QR0{&?P}ps!>txG>lUQ4Y&0xn~*&8P-&T`Ehh|$WWVE> z#1Vt$U;aleX5QRH9hCa)Ci($|E6a5HqjYHCw@80^&%hQL24Y5LE9D6a%C?jx zd>}Ar_eDTYPPt{=lc|V&1~tm@{p@p=7TYxW3PYMw>c!J^z|V!+@64}ttU4?P^h9)B zfEpby4;H8++6D_y)O86Qjb(!sgG;ci`KrMcgR2JDpr-Y8*wDCX=4~0Q!?xyk4DK3! T&+Ola1Fat_q@)e{=HTc998;7U literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.class b/Java-Knight/src/main/java/org/project/entity/enemies/Dragon.class new file mode 100644 index 0000000000000000000000000000000000000000..3d6d7d01c35ccd8814ede9134d363fcd806aea61 GIT binary patch literal 1570 zcmah}TTc@~6#j-*wp|v1Dgs_x1#LlD#k=)}rD(NYixA_}v`osvcBk1LH2ehrfselU zuEt>0=(F*^@E43{FT}+*+N3)>Gv|Eg@_l=L{`&GAKp9Up^e~J|w`sOrxhfjUw3KL> zF9mN)$1~?#-jvRgpp6cOq=8-NW$3+XIhMN4kjNJnHKZ7hc0h2qC0)-fJEFBQ>%Z&J zkkru!Lqoq0w3{ItcN31X)P^a@!xE7vLpfimRO4nl5?l%rEp{42;e*J47yg5+V;@E|j2am88*?a*8zdUfgF&yma!my2X&k^o z4TlUI#u0|WRsMpTHg}q4ZNnoDsJU`oF$`CO8%vsxT+2~4d4`!hGPcCF+qvO zIrfHBpjIgR3P=tJ*gR>;LP?A(?CnMWxjl`hiJT7Rs zXy6hqGaQNcri*wO(!}^2Z}FxG6kYMfQZ#TC*N8Dio!Gui<|~E86mBr|Z@u}p_3l-6 zySd4dTqf^#e$Q7kJ&KliglhG%Rk<)-9XV&2TusqktXaBcW2nnp}4qV&3xI z`@#Uze*Z`$x1>~_a(Vl{P%CoTOW_WEM9fd-=y{WN=Ylt2baDtk24}v4J^O^jS7@}PKS6&_HVm`$)X_sv10(3C zlUpc72vtJ#Z}L;0F~G2i;Sbn9xryu-90zSDr*=(##OY0(TltJDJ@|u|L6ZE2kVXch zG|x`Z3?fD`5g{L-m61gvbNwAHVH$qopdppO9IZVx`{!v*(P@SLxABm6{)m5sCs@GP EZ%@Ok#sB~S literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.class b/Java-Knight/src/main/java/org/project/entity/enemies/Enemy.class new file mode 100644 index 0000000000000000000000000000000000000000..dd44e1379f86a0d73ce624ce79ddda7f53756688 GIT binary patch literal 3032 zcmai0Yf}?f7=BJjvJe)eAXq>&Dr$&IwANeEdO;|upj0eYtgVM+B}+EhG`pbme*F)f ze(1N3U;3f#2%YkwKcIi9Go3!?Y=9(e>tyDVRFFoEw9h@izl)I$VB#^MZ zitBmyqGQqUg*F_)uz{l{j^TJifacabs%Ko>6^5yIT8GYdGqY8@?9cgCOP0nGG-kv^ z8Ycu=eV3PgxkN*moNPB!de+42 zI47{LB#YL#Th2-UzU>#d^L$zMJ%Qt?-Kw*p=3Kx<1D8y^fiZ!e5cdR(igMOrVtPZw zj?A~?3f?qu)xYywr{D;D3S*2#*{G; zyrY79S0EMQYc?!~-DtttR=g`fS0+-~Y=erh>fH^f_m6f6M91Ac?cFnNm#y0?rA4cH zPwHar^eR@)md^D>+hHdPv^(}v!I!=-bBsoN!IG>U2g{YRoalW{Rz<=nQGA zqU_Vz?d=S=s^o$`6F9;m-j$7}W(=5hld*Th7#iFY=y)O>&)R7~)32`7eYR8o&ZS{{ z(y><=41?#lWr@3Z)v8FFJs;1jOy{|w-;Q!kZGa# z@A*|(nX&wWoA+8lQAb2F?ua?J41AlC<-B8g!_%%?T&axho(gp*4UG5JDpm;mVI4krJjUwBN=?MLbeuU> zK1Yg~Etjq8xFbE!@(g?>aCDbXVWt}RhVAvd zK4Y5l8Pb#wl%{-#H06^(+DrZz=DFVIm!!NH=}7u_i1gq(47GHm_phT%Ej{T|>*!1O zN7pfs=5pXyf(72=dJJt`_tJn~?)uP)edwW4%B&#_@U0m{3PVwW2e_lT7DxlNH#tlq zJRANEhtnHKrC*?L11C4}8nA)$Cu-k+;Bo{z8av5F9_l(u>BlMS;kLwEv_nZe(I_!i z*u;%MW~?T((3QxC3O-5GPw{;lrC^TunyEk41WU3HY+(EcTuncC0b?-u&gSzfXuP8z z(>3MWcQwo=X0;8^F%EfKjeUeOHIs)(Ii{gJHh$(NNLXASj&uDW6x!7coh0uv4(rODP=f^x`*KnI$kcL}l>jX>&QMp8u}o^ENVS@jnYEdCgE3p@$I zH`aK7e?a^K@k^Mh$*;HiK(m972r6ttPxDKe(xH;^BaG;CL|YU~kn12RIi1TGBJI}% z8;1X}2oSJI1BV7{Qd+w2HG5v*)$+C{Y9uIiVyA5a6*iBHFNZA?=4=DZb!+f_GoyYkZ6Te*r`pf{*|J literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.class b/Java-Knight/src/main/java/org/project/entity/enemies/Goblin.class new file mode 100644 index 0000000000000000000000000000000000000000..5e5cd652b04c8810e2b4db27e1208a997c50eb3e GIT binary patch literal 1005 zcmZuv?M@R>5Ixftwk!*j0Ds{3vt~QU(SvNElp|o>VUgNwc)6Ax)U?OSS{o5877M6Yl<6c-EmIrDGU|hLI3x zlu+zV6P}W4-x8c5MVv{fnzh<`Z`cKDA0mpC{(!iARJl^x96|=;8nOl^FiFVl+MjI8 zvAw3XvESxixfQ>o2vh6Pi}bB`f%Mdd3WV)e(#R3=XJ3Av9h?+9ZBc9lQptwx6nCW3 zaRt*Ft{RxZHNwOt00gZS!Z{vSFuNtX#T8#SBYp+UYA70*!#rWGx8eWh^2V<_l7R-h z@^El}_vgyRSYWtIVL6nJ z1t{>6hF_9bp7)*YL;hQdPC&k#S;!PlL0iX2oPSR32ZL`O<4Fuq zW5Dob@f*gnQ%A@z4U`XY{Rj&?>FpDg5-4vS!pi8|-(mfO%Ob@|V@UG~Ph*^=oM6DG ccoxIXuqTd4W>>zl>v9N5139)8_6e;11t8G-E&u=k literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.class b/Java-Knight/src/main/java/org/project/entity/enemies/Skeleton.class new file mode 100644 index 0000000000000000000000000000000000000000..481d70c4d39f1020c6bbbf1b62da838da5df2fcd GIT binary patch literal 1504 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 literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/entity/players/Player.class b/Java-Knight/src/main/java/org/project/entity/players/Player.class new file mode 100644 index 0000000000000000000000000000000000000000..35b35bbbd52804548a78c89033acb71fe9d5ad77 GIT binary patch literal 4026 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 F#J|O|z54(F literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/item/Item.class b/Java-Knight/src/main/java/org/project/item/Item.class new file mode 100644 index 0000000000000000000000000000000000000000..3db1242f701c66f9514c4e119996f6235d620d7b GIT binary patch literal 153 zcmX^0Z`VEs1_oCKPId++Mh4ORqICU&qWrAXrmQu?7#X;N^Gl18Q{6IifT}q`2I_&# cVq;_g8UeJNfq@ZdJ}Uzoh{eDTB$*gE0AD~QQ3x)En0xD%yRudnLq7ejQ6VL|?iM(ygSeMe4Y_~>#iVyw+ zUQ8e+KKKLtQO0w(n+la|GI!_Bxo6HjcYgo*`3t}nR&5x_STG%AkyCJwf=_{e9JCw$ z+uD(?#|pW%upP!P6f%{S{XDKAZ^3qO9gf0$Cu;a7QAdz|80(fFM6FKL_17gRScm$9 zZg;hUs!HjIgQC>ghrKAMg~wt1Mbe`V#w1;61)n!Bos2t}NDAbn&m{$u4yG_o{;<0d zb(+F|U}08a;y*!Es#3^Ss@0W!1@l$skm%x0*w$})t(uPB1+`;lGCfgwqq1|6K(}Km z^tY1mOzQ3WM_q4jL^^0Dh8$4zUL4e$yTM7yl#BF95VCo@q2p9@f~^uOsX>F>cXhlw z=#26ziApz3UqIS5=`*#}-s|+Dy50^&xt%0eWpL&Ky)mFL!)Y2aA`aOQ2a`zalSr?V zNDCQl;EXb?H#y+0$<8D9k%|MAEZ1SU~nrNROh)4G6p#giqLl)oZtp7N*g4Mop9 zN7>6z8&eGB%qd|;B5IKifZbT^CQlJAWlWHChO~3I%fDqT5n;l}kCFa1o9K7`G`%ii zE_=MIB;7N*m*kGI7FeZcJ|#aS`y(>kA$Ol=o>63HS!s!|zFTq)@R;lJmC(X4^a-IA ztZdjq3Hiu968<}ghC Nn$%UE-zUPrgTF#os+Rx& literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/item/armors/EnemyArmor.class b/Java-Knight/src/main/java/org/project/item/armors/EnemyArmor.class new file mode 100644 index 0000000000000000000000000000000000000000..38ddf5557415484dec799dfa0b8c90cc40deb0dd GIT binary patch literal 246 zcmZ`!y9&ZU5S%kl&*u+VC>F-T{D24|3WC@u_7^?mg2~C52!588VBrV&QQ}4fD|cab zW|@KA=j;9eFh!lC1j~b6g#(wNrOiG(8Xe1R7OG4pp)iRyr*K>h26w1Zm5msj-h3Wx zJopTqf0=12lgl?~^@0t9J<&VK&{(KcF7qUkW-X!vZTL#(W-Di^5RG4O5R0=w8y=lm l6r*-fCgh~Lu!sSE-)Zt2*!AP65EgHNoE}_qREd{RdjoN-G+_V$ literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/item/armors/KnightArmor.class b/Java-Knight/src/main/java/org/project/item/armors/KnightArmor.class new file mode 100644 index 0000000000000000000000000000000000000000..4bb0f6f3a1be19c6c177232227f2d560db37b041 GIT binary patch literal 248 zcmZ`!y9&ZU5S+`~7$1eLg=nD`<_AO&Q4qyONuR_+PfSkE#Q(AqEc^gJO5BKrjk_?r zv&_Kk^L2j!n4;=JgKop{V8UW(O11M(N*;Ke`6AfK(zU`*teGt`zM<*Pi2xY~r#kuL69<|^hhQIPtNb8rYRAzH90 mXi<#XM2XNP)`3nN;Pjn(;|6y9D9VJzV;~nrB!x%2hRPcoAvHn( literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/item/armors/leatherArmor.class b/Java-Knight/src/main/java/org/project/item/armors/leatherArmor.class new file mode 100644 index 0000000000000000000000000000000000000000..2722c707fad5660ea0fa1ad31e9568e113dc002e GIT binary patch literal 250 zcmZ`!y9&ZU5S+{FG`_*sLP((&<_AO&Q4qvNvA@JaPmCvL;(u8Q7Jh&qC2qvR#$A}5 zS!Q7O`MN&=mMUl`a6~HD26nebgyn$UmjuK)18pz4vk)ur9LgfwG&^A8+ literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/item/armors/woodenArmor.class b/Java-Knight/src/main/java/org/project/item/armors/woodenArmor.class new file mode 100644 index 0000000000000000000000000000000000000000..96ede18118044171f3151aa13b0b5f80a9a71f08 GIT binary patch literal 248 zcmZ`!y9&ZU5S%k67vn2GU?Ey07Ul;;5K$1sMoFKdDQd^OIlZNMq4Am(~4DF@N#HvVRp*K-{AjMg$LMLJ_OXB_{hx_Opp$krj mmc^(|)Mz@y`Y;Fq_JF(Y4ea`H)M=KFft(x`IU0m3XubhHE;WY$ literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/item/consumables/Consumable.class b/Java-Knight/src/main/java/org/project/item/consumables/Consumable.class new file mode 100644 index 0000000000000000000000000000000000000000..ebd23ad7b57b8d138b134193e79a8d4319e94775 GIT binary patch literal 299 zcmZWkv1$TA6r880s~6*$!ZL!Dn!^2ngfyZcNKz!&-<^xBc)N197szL&5>og9epJX? z3l(f;-h1 zCJT)?i~pRNIsZ3@GoN4Y9{`5v>rkL-Xc%asML0>bxx38Lg$N2aEJW-EX_A+*KZ``} z4t{b%>mp3T;*y|Rw%0`)9SypHE(}7yP7z5F7BB9w3WWAt6j%Q9_@;7Bq_bzh#5yA% zgddHUgoZV-Jq??L<2vbIKcmRcAGv&x-V1^`4HI!)#xs%K$$t5PGG{%srgh4ne$H)= zpx>rt7Kl+OJ$eN_Tlh~tjUO6Fbv&w5eWZl6ot1NY( eRtVE^R?rv{t+1xx*Camx=%5FkEqk0R*#8Fi(N_Qf literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/item/consumables/Teriak.class b/Java-Knight/src/main/java/org/project/item/consumables/Teriak.class new file mode 100644 index 0000000000000000000000000000000000000000..091a4b2a697dc2dc525736ff30f43eea566b412b GIT binary patch literal 418 zcmZXR+e*Vg5QhIr4{6ibc-CGhh!?gN%mXOilnRAb1WWF>aj9E#D9J|jvAmLc;REV-;_z9f{|ouGjl>NXq~4Y-8XDn%w*>1V&c420TL>XCRF-7K90<7~R{u+GSP zDWcJwP;L)8fsIYV@ha(GKVz9G@xb-H^iC4Ip-SX+5l>_`HVyL&Mb3KI9n&6w(Y8Kd`M);19(hvYbe`)|22P-wUl? zyfUPZ9nXnQ7*b}ZQ@hrXK~{yPBL|&f|4+UZaNGBKf|4<0Z4tG&%Wc7sFl(J07En-O z=vc%OLuodP@FFLAw%YN+kRkLmaQ%RxYSy~5k+EMc-$E-6X=+$OQN^l`HR-PWZ#07@ zZHYVKg+e+i>Da&~T}S+0{Mb#JRCVl{Gd*81Gs6bGSousW3I`a}5AD1mL-~a#s literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/item/weapons/Weapon.class b/Java-Knight/src/main/java/org/project/item/weapons/Weapon.class new file mode 100644 index 0000000000000000000000000000000000000000..bd9ac087a064b9db490cd20c808f65bb47da90f0 GIT binary patch literal 601 zcmZuu%TB^T6g{^ODs2&8;0r|E2$C<&80uaPE#oro)WFtRhMe(l`CJfScyNqg|Q5rSFunL;r3 z;||x)H^WFC54$bdKNGEMM)cu;<4UzTZt$z-j?!lXnS58}75D^)k)u)n+}3G4?6>7% zs63soxwq6BvBm>yAQU-jYGJ%`P0i2QVBEw4$3?zvGp=*a*PlW4jhI9e#GjHm4%I2rkAlY5|ud<|1p*3o)2HO WGAUT(SoxQl`%7J7>MF}MtbGDWUTS3k literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/item/weapons/knife.class b/Java-Knight/src/main/java/org/project/item/weapons/knife.class new file mode 100644 index 0000000000000000000000000000000000000000..eecd190c0f411c84d46f7fccabe026c287b26f34 GIT binary patch literal 240 zcmZ`!%?g5G5S%abH%p(O=n!a!e1Yf^1wwQw>}>TFU!|Xz)^l|VI`jZNRJ3|;7iMRc z8QA@NUvB_2bSyNW=xEwdp)vGiehji)p7^c^M8T8b&f`p`*I-jm25l@-QA`+AFAV)i zhr!VOn>wfBz!?9tz?<+_*~SY&Wuj+Ek++Y-B%T( jR$&raqy|uk0p`$kT;mD$s4XqR>LHNTfJPRZcmwSplv6Rx literal 0 HcmV?d00001 diff --git a/Java-Knight/src/main/java/org/project/item/weapons/knife.java b/Java-Knight/src/main/java/org/project/item/weapons/knife.java index 4b83f59..8a67796 100644 --- a/Java-Knight/src/main/java/org/project/item/weapons/knife.java +++ b/Java-Knight/src/main/java/org/project/item/weapons/knife.java @@ -2,6 +2,6 @@ package org.project.item.weapons; public class knife extends Weapon{ public knife(){ - super(15 , 8); + super(18 , 8); } } diff --git a/Java-Knight/src/main/java/org/project/item/weapons/wood.class b/Java-Knight/src/main/java/org/project/item/weapons/wood.class new file mode 100644 index 0000000000000000000000000000000000000000..7f01656ca13baa58b5f9fd1fc01d6e0b756bb4d9 GIT binary patch literal 238 zcmZ`!I|{;35S&fS*IzCmVj&m{a{;jt1wm|-SSR|B7ffD=QO{*1Sa<*rC2rEY3$ruJ z4D5csuQz}NIxaNm78)%WFbRECoPxYii8z#jEJYgJMU<=T671_qFsCw;<&0pARx3ZW zU=wwbo0OF5I#bF5+ayIfV3MdLx$Khk>PeL8}x5Kd