From ed41752409e31165cd2f19e5c9209587cbb164e3 Mon Sep 17 00:00:00 2001 From: HadiSharifi Date: Fri, 8 May 2026 10:55:10 +0330 Subject: [PATCH] update game loop --- .../src/main/java/org/project/Main.java | 69 ++++++++++++------ .../org/project/entity/enemies/Enemy.java | 40 +++++----- .../org/project/entity/enemies/Goblin.java | 12 +-- .../org/project/entity/enemies/Skeleton.java | 10 ++- .../org/project/entity/enemies/Vampire.java | 10 ++- .../org/project/entity/players/Assassin.java | 22 +++--- .../org/project/entity/players/Knight.java | 18 +++-- .../org/project/entity/players/Player.java | 12 +++ .../org/project/entity/players/Wizard.java | 16 ++-- .../target/classes/org/project/Main.class | Bin 7034 -> 7368 bytes .../org/project/entity/enemies/Enemy.class | Bin 4613 -> 4618 bytes .../org/project/entity/enemies/Goblin.class | Bin 1236 -> 1289 bytes .../org/project/entity/enemies/Skeleton.class | Bin 1441 -> 1494 bytes .../org/project/entity/enemies/Vampire.class | Bin 1554 -> 1607 bytes .../org/project/entity/players/Assassin.class | Bin 2183 -> 2241 bytes .../org/project/entity/players/Knight.class | Bin 1880 -> 1946 bytes .../org/project/entity/players/Player.class | Bin 5260 -> 5654 bytes .../org/project/entity/players/Wizard.class | Bin 1880 -> 1953 bytes 18 files changed, 131 insertions(+), 78 deletions(-) diff --git a/Java-Knight/src/main/java/org/project/Main.java b/Java-Knight/src/main/java/org/project/Main.java index 16bd9f8..aeb9ca5 100644 --- a/Java-Knight/src/main/java/org/project/Main.java +++ b/Java-Knight/src/main/java/org/project/Main.java @@ -20,15 +20,15 @@ import java.util.Scanner; public class Main { public static void main(String[] args) { - Weapon wp = new Sword(12, 5); + Weapon wp = new Sword(12, 15); ArrayList players = new ArrayList<>(); - players.add(new Assassin("Pia", 100, 100, wp, new KnightArmor(0, 1))); - players.add(new Knight("Khan", 100, 100, wp, new KnightArmor(50, 1))); - players.add(new Wizard("Daalou", 100, 100, wp, new KnightArmor(50, 1))); + players.add(new Assassin("Pia", 100, 100, wp, new KnightArmor(8, 1))); + players.add(new Knight("Khan", 100, 120, wp, new KnightArmor(12, 1))); + players.add(new Wizard("Daalou", 100, 90, wp, new KnightArmor(15, 1))); ArrayList enemies = new ArrayList<>(); - enemies.add(new Goblin(100, 100, wp)); - enemies.add(new Skeleton(50, 100, wp)); - enemies.add(new Vampire(90, 110, wp)); + enemies.add(new Goblin(80, 100, wp)); + enemies.add(new Skeleton(70, 100, wp)); + enemies.add(new Vampire(90, 90, wp)); ArrayList locations = new ArrayList<>(); locations.add(new Location("Jungle", enemies)); locations.add(new Location("China", new ArrayList<>(enemies.subList(0, 2)))); @@ -128,16 +128,26 @@ public class Main { System.out.println("choose your action:\n1.light attack 2.heavy attack 3.defend 4.heal 5.special ability"); choice = sc.nextInt(); switch (choice) { - case 1: player.lightAttack(enemy); - break; - case 2: player.heavyAttack(enemy); - break; - case 3: player.defend(); - break; - case 4: player.heal(10); - break; - case 5: player.specialAbility(enemy); - break; + case 1: + player.lightAttack(enemy); + break; + case 2: + player.heavyAttack(enemy); + if (player.isSuccessful()) break; + else {turn = 0; continue;} + case 3: + player.defend(); + if (player.isSuccessful()) break; + else {turn = 0; continue;} + case 4: + player.heal(10); + if (player.isSuccessful()) break; + else {turn = 0; continue;} + + case 5: + player.specialAbility(enemy); + if (player.isSuccessful()) break; + else {turn = 0; continue;} default: System.out.println("invalid choice"); } @@ -149,15 +159,30 @@ public class Main { } if (turn == 1) { System.out.println("-".repeat(30)); + if (player instanceof Assassin) { + if (player.getUsingSpecialAbility()){ + player.setUsingSpecialAbility(false); + turn = 0; + System.out.println(enemy.getClass().getSimpleName() + " skipped it's turn!"); + continue; + } + } System.out.println(enemy.getClass().getSimpleName() + "'s turn: "); turn = 0; choice = new Random().nextInt(3); switch (choice) { - case 0: enemy.attack(player); - break; - case 1: enemy.defend(); - break; - case 2: enemy.heal(10); + case 0: + enemy.attack(player); + if (player.isSuccessful()) break; + else {turn = 1; continue;} + case 1: + enemy.defend(); + if (player.isSuccessful()) break; + else {turn = 0; continue;} + case 2: + enemy.heal(10); + if (player.isSuccessful()) break; + else {turn = 0; continue;} } } System.out.println("[" + player.getClass().getSimpleName() + " - " + player.getHP() + "/" + player.getMaxHP() 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 2af6bd8..399463b 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 @@ -17,6 +17,7 @@ public abstract class Enemy implements Entity { private double attackMultiplier = 1; private boolean hasKey = false; private static boolean keyFound = false; + private boolean successful = true; public Enemy(int hp, int mp, Weapon weapon) { this.hp = hp; @@ -24,30 +25,13 @@ public abstract class Enemy implements Entity { this.mp = mp; this.maxMP = mp; this.weapon = weapon; - if (!keyFound) { - hasKey = Math.random() < .2; - } -// if (hasKey) { -// keyFound = true; -// } - } - //implement this in Main - private boolean checkTargetAbility(Player target) { - if (target instanceof Knight) { - boolean check = target.getUsingSpecialAbility(); - return check; - } - return false; + if (!keyFound) { hasKey = Math.random() < .2;} } @Override public void attack(Entity target) { if (getMP() >= weapon.getManaCost()) { System.out.println(this.getClass().getSimpleName() + ": attacking " + target.getClass().getSimpleName()); - if (checkTargetAbility((Player) target)) { - System.out.println("target is using special ability"); - return; - } double damage = getAttackMultiplier() * weapon.getDamage(); if (target.isDefending()) { target.takeDamage((int) (damage * (1 - target.getDefendRate()))); @@ -58,6 +42,7 @@ public abstract class Enemy implements Entity { setMP(getMP() - weapon.getManaCost()); } else System.out.println("not enough mana"); + setSuccessful(false); } @Override @@ -68,6 +53,7 @@ public abstract class Enemy implements Entity { @Override public void heal(int health) { + System.out.println(this.getClass().getSimpleName() + " is healing " + health + " HPs"); setHP(getHP() + health); } @@ -75,10 +61,14 @@ public abstract class Enemy implements Entity { public void takeDamage(int damage) { if (isDefending()) { setHP(getHP() - (int) ((1 - getDefendRate())) * damage); + System.out.println(this.getClass().getSimpleName() + " took " + (int) ((1 - getDefendRate())) * damage + " damages!"); } - setHP(getHP() - damage); - if (getHP() <= 0) { - setHP(0); + else { + System.out.println(this.getClass().getSimpleName() + " took " + damage + " damages!"); + setHP(getHP() - damage); + if (getHP() <= 0) { + setHP(0); + } } } @@ -169,5 +159,13 @@ public abstract class Enemy implements Entity { } return false; } + + public void setSuccessful (boolean successful) { + this.successful = successful; + } + + public boolean isSuccessful() { + return successful; + } } 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 6f3471d..5e00e92 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 @@ -11,30 +11,32 @@ public class Goblin extends Enemy{ @Override public void attack(Entity target) { - setAttackMultiplier(2); + setAttackMultiplier(1.8); super.attack(target); setAttackMultiplier(1); } @Override public void defend() { - if (getMP() >= 5) { + if (getMP() >= 20) { super.defend(); - setMP(getMP() - 5); + setMP(getMP() - 20); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void heal(int health) { - if (getMP() >= 6) { + if (getMP() >= 15) { super.heal(health); - setMP(getMP() - 6); + setMP(getMP() - 15); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } } 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 42082fe..9573b41 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 @@ -20,23 +20,25 @@ public class Skeleton extends Enemy{ @Override public void defend() { - if (getMP() >= 3) { + if (getMP() >= 8) { super.defend(); - setMP(getMP() - 3); + setMP(getMP() - 8); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void heal(int health) { - if (getMP() >= 6) { + if (getMP() >= 18) { super.heal(health); - setMP(getMP() - 6); + setMP(getMP() - 18); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } 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 969e1af..f490a7f 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 @@ -26,23 +26,25 @@ public class Vampire extends Enemy{ @Override public void defend() { - if (getMP() >= 3) { + if (getMP() >= 15) { super.defend(); - setMP(getMP() - 3); + setMP(getMP() - 15); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void heal(int health) { - if (getMP() >= 6) { + if (getMP() >= 12) { super.heal(health); - setMP(getMP() - 6); + setMP(getMP() - 12); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } } 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 616d290..16b7bad 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 @@ -22,54 +22,58 @@ public class Assassin extends Player { public void heavyAttack(Entity target) { super.heavyAttack(target); if (getUsingSpecialAbility()) { - setAttackMultiplier(3); + setAttackMultiplier(1.8); attack(target); setAttackMultiplier(1); setUsingSpecialAbility(false); } else if (getMP() >= weapon.getManaCost()) { - setAttackMultiplier(2.5); + setAttackMultiplier(1.4); attack(target); setAttackMultiplier(1); setMP(getMP() - weapon.getManaCost()); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void defend() { - if (getMP() >= 4) { + if (getMP() >= 12) { super.defend(); - setMP(getMP() - 4); + setMP(getMP() - 12); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void specialAbility(Entity target) { - if (getMP() >= 20) { + if (getMP() >= 25) { setUsingSpecialAbility(true); - System.out.println("your next heavy-attack will be free!"); - setMP(getMP() - 20); + System.out.println("Assasin using SpecialAbility"); + setMP(getMP() - 25); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void heal(int health) { - if (getMP() >= 5) { + if (getMP() >= 12) { super.heal(health); - setMP(getMP() - 5); + setMP(getMP() - 12); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } 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 895ebbf..8132b0a 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 @@ -22,49 +22,53 @@ public class Knight extends Player { public void heavyAttack(Entity target) { super.heavyAttack(target); if (getMP() >= weapon.getManaCost()) { - setAttackMultiplier(1.8); + setAttackMultiplier(1.5); attack(target); setAttackMultiplier(1); setMP(getMP() - weapon.getManaCost()); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void defend() { - if (getMP() >= 4) { + if (getMP() >= 16) { super.defend(); - setMP(getMP() - 4); + setMP(getMP() - 16); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void specialAbility(Entity target) { - if (getMP() >= 20) { + if (getMP() >= 30) { setUsingSpecialAbility(true); setAttackMultiplier(2); attack(target); setAttackMultiplier(1); - setMP(getMP() - 20); + setMP(getMP() - 30); } else { System.out.println("Not enough MP"); + setUsingSpecialAbility(false); } } @Override public void heal(int health) { - if (getMP() >= 5) { + if (getMP() >= 10) { super.heal(health); - setMP(getMP() - 5); + setMP(getMP() - 10); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } 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 37b4ff7..4915369 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 @@ -22,6 +22,7 @@ public abstract class Player implements Entity, combatOptions { private boolean hasGoblinKey = false; private boolean hasSkeletonKey = false; private boolean hasVampireKey = false; + private boolean successful = true; public Player(String name, int hp, int mp, Weapon weapon, Armor armor) { this.name = name; @@ -70,16 +71,19 @@ public abstract class Player implements Entity, combatOptions { int finalDamage = armor.getDefense() - damage; if (finalDamage < 0) { + System.out.println(this.getClass().getSimpleName() + " took " + -finalDamage + " damages!"); setHP(getHP() + finalDamage); armor.setDefense(0); } else { + System.out.println(this.getClass().getSimpleName() + " took " + damage + " damages!"); armor.setDefense(finalDamage); } } @Override public void heal(int health) { + System.out.println(this.getClass().getSimpleName() + " is healing " + health + " HPs"); setHP(getHP() + health); } @@ -185,4 +189,12 @@ public abstract class Player implements Entity, combatOptions { else { hasVampireKey = true; } } + public void setSuccessful (boolean successful) { + this.successful = successful; + } + + public boolean isSuccessful() { + return successful; + } + } 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 4cc6469..40bda0f 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 @@ -21,31 +21,33 @@ public class Wizard extends Player{ public void heavyAttack(Entity target) { super.heavyAttack(target); if (getMP() >= weapon.getManaCost()) { - setAttackMultiplier(1.6); + setAttackMultiplier(1.3); attack(target); setAttackMultiplier(1); setMP(getMP() - weapon.getManaCost()); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void defend() { - if (getMP() >= 4) { + if (getMP() >= 15) { super.defend(); - setMP(getMP() - 4); + setMP(getMP() - 15); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void specialAbility(Entity target) { if (getMP() >= 20) { - setAttackMultiplier(2); + setAttackMultiplier(1.6); attack(target); setAttackMultiplier(1); setMP(getMP() - 20); @@ -53,17 +55,19 @@ public class Wizard extends Player{ } else { System.out.println("Not enough MP"); + setSuccessful(false); } } @Override public void heal(int health) { - if (getMP() >= 5) { + if (getMP() >= 10) { super.heal(health); - setMP(getMP() - 5); + setMP(getMP() - 10); } else { System.out.println("Not enough MP"); + setSuccessful(false); } } } diff --git a/Java-Knight/target/classes/org/project/Main.class b/Java-Knight/target/classes/org/project/Main.class index 807cb2786fce5fbea6d1a0ed8f1542a498e212b4..1432a2fb6d4ec9cf67bd0196feb762a4bd3e1f7a 100644 GIT binary patch delta 2493 zcmah~3vgUj8UFseH+#3cH`&{59!<$6o94Zn^i80RCbVf|fj(l>P`1_4m@LiOkgVBc zrWt0~VJu@ATX|ds6Tqo}?hF=6A8xc!isJC{F+vfoE%NdKDpo{ZAx-(t-5BExGw#lL zedj;l|2Y4D?quUrtG&-mpL`U+TIoFM-R+IuEHLBAj^Xa^STcFtaGw{0c-F*oa0}c$ zvFl>}Jqmi>#BcC|K<|xp^>L`ZvhEs%|IWl2JT1seCSu+3uD-Qji1)>ZMm#ucAN3Zj zd(p%nKzYyZ*wE&#y&K!rnU_txqQD#lI>>7#{y0Z$b9(?f{%m3|{$hK4jlmba_%U8q z-D@7aDUb#)&f}j3-ZJqodzY^?rFj2s;vLYRLh^PdLUI@}7zJ@c~7WA1k69 z+gW!_06BO#05=|1DleFrRxY}`hK9Pj_bBLD)jjVKO)xJyFdXVzIglJG_lQnU)q2N3 ze>p|OZHl2RGI|CF5?9AY0x%TkpmS>T(4dE^R#wY@hM+Rz`nJ~k4HC!M3~?9W*x zTh|NnC6wF~Pb6YJq4-cuGBh+i*iVbw1YVh0t_gW$BU#jX4=I$IP$hMOrR!ewOc)ranz{|0`*a=%>kCo0869RPLhmcdB#2yIFV95 z^y3otMYMk*@==WCScEOa_Mikw1hEgL_y)@GU4(E1Hp zwcLp^*Y9R6*oD70E(| zGM^V;EQ_Ggh?nFN&RkS~zm#yMQ}MMDlv1Ye1$0W8gj5w{o0Q997&K+8RFK(2gIc9h zs(2mMWDk)e%Uk2{Rx0A!S>ihA5~f%+w2M6HH6&t4y?rEqF|Yi&{Kj4tE>*C=ItHng z!C22AY;asEB;z9LRu*WKsG_Ay=$X=+O$~)CC8AXLpiRLraML78WElZXmSY||u$?p0 zP88fIx%T;j%X(F2g&mdGJK+EpV5j4f@V+{o04l{DPB>h1)G7Iz8FhZ>(^zF-J*#xk z=kv^{TtSsPaIK^AYlSyZrMIYQj><1O(N@XPF{82sTV_<2Vw2c3$>8x(IU5|qIlcK9J{$O12Ho`;#2fVj{Xwz=H?T2d z6bC9&>>_L}Y}?p&hsp3n8oSi^3`u`E3U?ZtT+Qi=hq(OpEVNod2g8;(gVVEMr2_Y= zv%j6iEQR$bTYgVlIC5t!gKu&8QaF{tIZj?;d-Wv#1Y|`>phP&l&h`e|U)lclABmuT z2*(uT->uRN{=qZhpTIwgYSO$tin6dPgLhrZf1XlACs{U%Iz4@EF8CqrNO5thla8yO zO5S3&2DU3AK_UEa*|7a+b)flmExZ&wsp=>FFRz z9vg$7bPGh3`3O66y4M}aNX{r0&2dLOj*pDK%sWaKT%xLW8ZGuzaYbq$qPUsq_Z4(u zKcBc;m{4EE5Dwr*9K@G#E0Nn^<92)#U&pys6^*fy_fu|Y86gZYsl5gV7>>Hzv{AG=(N{fJx{dqAgI(GmVN=F5@H5^5vU*B};U*(>FQ&C!M}U c^_8;LS+qL+2B-fNzY5?-K%||Yf$b>%2&CK`i2wiq delta 2196 zcma)7du)?c6#t#B>({m2=sLO=-PSS2*g6;t84m@)jfr8C#erBJf7GqA>g>i=2n)u> z_nQD;d<+$dsEq`WN76+WjfsyS2}XQ_BKUqk5y1h&-@O~kU&c1~-t(RBobx-+`|Y1T zP~$i-xbI~Eb7bCb#|lT>Ca|@JZwNx-Arog<5V>thdy5$c|Hjv|z_7 ze|txFtk{mf=&*WR+z~BS5@&oaoW)%NqqVD}bAGtT1Dmqhh4U`K-a6Mq7Q<=CXhD(b zmZH6@q*yVZV%%a=T0xI4|PaWeS5?*cSHB zjfQUy_xK~-T6L;}n(mrKpe%JY-S!y$+UQkG~&|Ksxj0+211?G=uYDFJpHwlYaxZ5<-D=DO1Ljq!zR6eDNO$>-o z$?_PS{6m`hVFcYSdmqvo`r!)pA)~RfA0vXEOn0lhHPDZ&V2ZU5-acd}k++!d3W6S2 z(LXQU)f=p>DAd&YnAB=h6miNg9j_J zLCHIPq_$A$@>(X`D^yb%pr_2Vl2jW8pE5jmKYmyE{*?-aidPAs(te? zh7VT{V-%u62X`@sk}n(%iA5O1Gy`?)=xV3aJ{;CKLN3L!p(e*I%#DJp?#C{6_MVC) z_L}o^D|O$gn+fQK2QhZoDon&`-5aV%RMF_*TfdaElpH>c)P=SXq63}7b991*=WNN2 ze$)l`puP_cjVZGT^h&R^1d@2QSC$oQ!glMdJy`B}Es2)OB;t`8tJk`XFu;5+J;gjr zxB^_0xn^+HR?xy52?W%6Ab}FvJ(z&6!tF@n?F6zE|Gfm9%Jzq}&66UVlGw~+CD&oD zPq>cl!{@+|L?C&Y7NPD}Twim2!}aY2kpk-$ZOQYUyD*6#E+}c8efZUM=I6)3bPfGf z_o=Q^zE=bY^;-gNn)@Sxw1D#SaDuHrEpC(DTfnMbE zk(7#lAI|A$RelE5)tI8M#y2p@w2mr?-+>_RWS8895bj1R?m-*w#Z9=6vwlC@;Q{pE zL3YnNO0CDE*nq7(pTkDH$gAjep8N3#4)Vhj^YN1oO*WI?)YkqUNfiXQzjaGyiEnv=7r7sIgG4P*HLYR~eD zGHe4#J%f6VYl^78vq&Yq1uA*7T*d~Up!bP-uh#n|dau#@G`-J|E2!b1bS>}BE0Om% D;9<7q 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 c6897519b6a5d7f981865cac101831ea4e1c1ecb..0f528715cf55c42adb5ee20548f39e99c059640e 100644 GIT binary patch literal 4618 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 diff --git a/Java-Knight/target/classes/org/project/entity/enemies/Skeleton.class b/Java-Knight/target/classes/org/project/entity/enemies/Skeleton.class index 0c217f3aad7d4372cf444c2440014fae024967a9..86f4fe52054f3741c26afff5193677342edcc5a7 100644 GIT binary patch delta 711 zcma)(%Wl(96h+r{o;WV5(l(_{pc1B1d^6~S@`geoKnnClfk9_hYl=jWKuIMANcjk6 zNDMM!Tpo_ZfDhmU_yzs~agJk!DYA5Z?zX+xzT5rMuaf)o&-Wj|8c&bi-=8=Y-e#vgOo_X})h~=6iP~R++4h&n|@)~0By@;Mp{5Gu^ts**-08sqtrBt{Pi@->okh52`)S@W#s+A(W3 r`;EfC5-L(REXcYjwJ*u>m&I@;<=2((kN7^1M|}CG3f`3$9G?6IO$}E^ delta 649 zcmaix%}x_h7>1vjwo{l+2q~pliV{0Ch9Ue_5fwy0R8aX_Z~>E0N&+M#uwd6KVCBxl zMOUmV*d{K#058B>;4X;o8ODaNF(*0aJMT%}=l#C(C)3Edzi)p20+!fry4Ti@O~vCW zC5z;KH9T~&neljT1ot#NsIG)ZVXf-Y#S4#@3|gdW)zj52qs)2C8>LIidU$p#E_l4T ztl4GDTKsaJDA$(+%aYWdAx$@)Rv$eqO9>)9$6Ho(gBV$;9Fzk7BdE$Q(*Rivg!WE@)E> zqRVcJ;R`a~@w1~X#tbMCf$~DYfM)PO?G&_zcq~T)_2etJm|6dk4gjp diff --git a/Java-Knight/target/classes/org/project/entity/enemies/Vampire.class b/Java-Knight/target/classes/org/project/entity/enemies/Vampire.class index ff6ec617daffd582536ff022d097074cb18ba7a1..0d98e39b052e7672b21dc6abeede1c1a01ac5d90 100644 GIT binary patch delta 519 zcmaix$w~u35Qe{5FiaeiAQ~ZyiVG$!Dx!j@C>|u_;2PJs8};NtiQa^~gL#6Syc!P^ z$ib`N%lHB!R!@dprJ<H5FFYF^w=H~jV6`~X(Ds)v8fbeIj7O|}fW$~TXNr&8&r zT)us}Gq5wos%d>!cI5Rrwj7A6WNM;;p?U~;ICZ%)DM*Z9NpuJimb{Z)sZ^_lJ@%!N zW)3*S@UtVyOg~GIlwN~4eG)b7O>{IYFO;ZPy|?p5q1v>^Dq3{V2j$zMd5RoMV}dD8 zI2F+|c@@I^VcBxz!vc$e?t{;Ptn!$PMQik`2J@;_U3)CO5_@N*d(9)KERS_Pp5>31 zpaUwT#aTaH42b6;hUH`!^=Ea3Af0G+1OBs!>6u$Zw?fKl?#EJT>b%==|r>u delta 452 zcmaiwyGjF55Qe|Km^I0wLBdKd-as!*); zu~Zf>BH5FYO-tegj>IG$DZyzDBvZo?4mpxchB@X0%b-(1wn2FcGHVeqEwLFsxgDz& ze!JDK=9o9UjS)wKGtQ+i&oURZg`*=~9`=AOCn+E6Y-k!O-Wysdsfg9Y3t81?O_}5_ zV)K>s8{1R65qtU!$D9!`CU}N%X6gFOk)y-{Wpj@lPEqIF&DoF~;fE3xRK5b3)r yS|=l_fhzRbH?o<;Ke~%z;F8#W4u98Z*V1jHrIdP^f#0M 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 f72bf9218d58fa27d79e74ec6864ef172c4c2f6c..0e8687d3aa1abda2689e699a4dce751614f59640 100644 GIT binary patch delta 993 zcmaJTBB4*e-@ONrhu#ad zMKJg4Gp{e^f%qEC{cPCFZ1{T35LOhdVp?F>(DqC1T1_*IMq3ZThcyL7+z<%VwT8A= z7m#Mtq7*+^0WB5AYDejvnDL!E>%c5#NpB z4CW!*Q57}#sWL)X0^5`;P&L7t8*4&Jv#cZgR6hpBXlQ<5Fs)9*r48J52Fr^ z&;;Tx>NjF$RL%V8Pl;vohd+}TeS@WF&O%<5EEJeTA`;*NM$Bwrp)*4`X%B;LDL*|}C0$EI9 z0kc@Nr7#mAJ5pGH3}1q?O}E)sPP18?alDHORkm=N+g;~&2kHL{nLuZVz?Vn~`GJe% z@+G8@qqn<)43<5V8aDyQp(IP$a-~#h75EM)h2pT{UEz&CfZJ|>kHW*1!+1Mo? zU_LgJG3XX zS&ac7`#}8EW>q(+Dea8KMtS+~Id}4G6qk{M>>!F4D8tXp2(<)? z{I|etnIAUCx;SHwbr5YcR8YeFKYD~`41{=I(&N2+j~+$^8&nfWc&a~0ma1j@mp?0} z?LYo}Jp2h$#!LruQr|~?;3@{}rNDS|v`@I~371{rO=kMxyO0l(LF3)ZYZQ?^r_By7 z23v@kT`ZVRQ0-vi5dQ(jDFphV(GeY2FpNA#&>VO8dQZ;fOR5TGSVF5_V@&IPdbykhEtg2WT)umb!5?;W=S)B9^^a^a(y1Knyjpb7l*4H z-W#`?jI2g$;jDSCi@Qz{+KDyvJea2kH+i3KA&H4aq-pE%a5El11B=&4z;z=j`D;DC vUC@Ts@3ZMcXp*~nJXgcHZYv0~Rs#hLVYN>^;i)H3>sL2as=s7k3bu{_ly`hj diff --git a/Java-Knight/target/classes/org/project/entity/players/Knight.class b/Java-Knight/target/classes/org/project/entity/players/Knight.class index 6c84e155d1dd82941437ecc49721345e4c0d1f8a..e22d5fcfe00f5b5ed86b304bb837da7b316c34c9 100644 GIT binary patch delta 834 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 literal 5260 zcmai2{d*Kw6@F*4$--um(C`r;0g{ryW*1pYwXH0qrb!_I0@%<{sZ}PMAv8tZkHLv&W{-nt4w{%RZ}Qc|#hSQiD^gu?njb zNa|>XuA$GV%x23KM|Nh-l4p4f*|Kdcm=!mBT#Xu5&zNV-(u`G_)u5dc1?@UIM0&mD zKI(FQvTWup!ycZtY$}i)cj@TFTEa0r&&bbB%-fz-wk@+l6{E6Yy^al{LN6HZL1)^w zN{3A)xlzX^S!n0NN`w*3lzNZCsi%ie;-}20~kPY(uYxc*!W58aj{ES(x-H zM3|E^@7A#${TgD0GGUC%)D9gxWvaPoJT-P)W(IYn)uv)uK6mN(Ty?{Q+K|=pdE7%< z&znZsDUrh?VG=FREN1;BH+xcTQHS5F;|usAPckY+hcs+kDWz82?67ReC3*P$Iv&86 zG_0L9z2Ox^(w(D8Y4G>_~4YR9@TLS z#~A=_RZaz1JatNf^bt%Za6-qUm|7OolM62SC3I(=k-gscv*l!u)5#uPZ5l-~7sF#Z zzKT;CRuR>RZMZH;Obv#@LQQh(*YHFFU)S*soYv4$51T+pteUinW!pTeB5U0;B|&U; zG83nD>|_sNyW zUeK^T3^a(w>b7caNZ>mfQV|=gWi0O$rw#8|*|X>i4JRWA8y{bpj14KgazmK2+#tg= zKH|(Ut2&NYCG+TfaoVh$Fs5x)j-0${^af%I0<%yaJ<@fc*54bexb%%gkh?1g{cU6P%K8k}+O1N`{}i+#xf;W_gtY z=9g8H$7~FHKC1TmdQ?qi+(ij2b0iB{HH2p*T!|(%D&F0|b0aQ0E^vS3!dfn@tlG(9 z=q}X9Lbo4zzv$r%&AFdzLGZ&SQ28b{$;&ess#(?LyqIQ zUd1R+m|nq|aaZBGhP$+0<=kFBm{@LC;f9)4UJg$$5sTJqxxK!}xwWGOA184Ww-We^ zl)Ara=&x5xt8~tpGqZjP^Q+$hBkwsC;{16y;ew4mtTCfBW1DXO5yzREFXvX4$I#3& z!4nH*Gh+MWq5XdIlM5HvK*fk*+mnnGrjP;1U_Xd-gztI z-?uB?$3ht6&oI7?cEqJq;e`R|BGkyXfMZO06E(6SQ6t+BHM0LuBO5j~vZAVyEtneF zXsMC?lp5JSsgb=B$8Ed{n(4`OE)bdA&<6n$0F9q+d6r4$zyXm zvxqI}o<;P@V<5d{5h;0O(wpLo*qz?gyofy?sFN=8ImDI_*i8F6u^Q`W>3ZVYfQ{(F z7C!GrH(RY9?Bdrw*oymzEJr4W(T9UveNpL9*zgj*&o81>Txse}*omn(;iXBv34?L< zCLA`?#+UI*VCkD+Q_QtodI|TXZ(#Ql_FkMD&)me9HC)2hOsa$L2Q=7hF=U!< zVj_mCXw9Vj88NO2V%%m$+724EljfxOGl)GjWiNIs;Jpe^t_D1ZSMeHww6l5q0cnWg zht!fl?7!HCIW z!;kK)crH@${Z#zGXDI$LDezc16oRYTr-VhSUkVFY7~( zYxoHPgL7;Z1N|>kO8mQvUfZ*TQuoaMp3B&nCOdA==_Q<#`KBc-&{guzK{Nu|3b!EdPFfh%ZF^L>C*SJ5G}m$6EUL0==k)6BL!)?kKNZIZb& zOpHRv?o`e0l&Wi*N`N?G-K|7$Dbk36MkDM5MK>J3bQE}l(6}0{Dx1tX2OBJ zyD_j|j|B2Iej6dYr&0KgNMZi%8X=r$q~KDdF#ikhS0X`Njb@^) z5yU&U0U;fUfZ#tZ`1Avz&cvEVCf;g{NLjL7$I1LO|@8}CN4 zv96Jg>ybeI7%AM4Lzg_86ozF+?$UbJLb(0nNR*0znS|RKY+6Jj6&1mXqk5j>)RlHs!w_qFB a1U8EJKs`TH&qe%=D@o3Nf`8zj*z|uNfE4`z diff --git a/Java-Knight/target/classes/org/project/entity/players/Wizard.class b/Java-Knight/target/classes/org/project/entity/players/Wizard.class index b022891bd88b717c4412f42ffe8ebd7661ecd5d9..8487e46e282e0b68ccc5186d2d82f4d3e9c9a14c 100644 GIT binary patch delta 860 zcma))O-~b16o#MMFT-?z+5#$VQjJvFY0w}7@r$-VrGC{SS{1**cF={l2C{rT__C{Wum zzNvk`KI`?R^;3Oq8qAsG$Se9A_SVXFt!6hG8{1D6f%IyoYT#quWPwFRsBUlA&*}<) zI#Uhhe!tY~m4QLY}oM@H1 z1f_GoU@0n6Tas?wAGWex2CZy|*p8$=mTCP6L?<=hNUy`=3v-YAa$a%J!+9fI8mHJw z1!v-scbte$cbK*O9nNb&zW~B9`dXX8WHZSkN1R!D*hLS!=wd&R?f|}7Q&_}oSM8?Y z=s7c1heMIUHp5nzg4N6F9kOrPi+a>CEk&P*DEBi?9E+o5Ni*Rn(M*EuDslPay86(Y z^0hlWh--{A{U)zs$qj4;}aSn)1b-SmHa$&0LlJhpif6dB`!7*X0K#qy+B StjWVtxCSM(ly&E>c=Q*md>nOY%nL8w|>Up zu0`X^bYxMfX7?aE)!CH0BSbs|6O$|!_vBP3E_;sqY{^?k574cFl$t&yB51%Fh4V&z2;KY$Pqz?Ns`?UvGLBt0HhN_IsxPpsf=P&69O*&29gg2 zLpM8VyA%^W@^+sk+dH&eDxVm_SCAH9iX<1r#A%Ama-K@ZqqlsxfIc8CYSO1+NAH7< zYMLjL?{U%2v+OeCS!Sno{V{C zIN(ezbf$LFnFTGf!JO=Rm~R4+WvwLHW6VC==Z>c