@@ -22,7 +22,7 @@ function monster(){
2222 return $ buildMonster ->buildMonster ($ monsterEncounter [0 ]['id ' ]);
2323 }
2424
25- function figth ($ hero , $ monster , $ turn , $ log = '' , $ turnCounter = 1 ){
25+ function figth ($ hero , $ monster , $ turn , $ turnCounter = 1 , $ log_pass = '' ){
2626 $ attacker = null ;
2727 $ defender = null ;
2828 $ stop_battle = false ;
@@ -34,10 +34,10 @@ function figth($hero, $monster, $turn, $log = '', $turnCounter = 1){
3434 $ turn = $ this ->determinFirstTurnToAttack ($ hero , $ monster , $ turn );
3535 } elseif ($ turn ['turn ' ] === 'hero ' ) {
3636 $ turn ['turn ' ] = 'monster ' ;
37- $ turn ['id ' ] = $ monster ->id ;
37+ $ turn ['id ' ] = $ monster ->getId () ;
3838 } else {
3939 $ turn ['turn ' ] = 'hero ' ;
40- $ turn ['id ' ] = $ hero ->id ;
40+ $ turn ['id ' ] = $ hero ->getId () ;
4141 }
4242
4343 if ($ turn ['turn ' ] === 'hero ' ){
@@ -49,62 +49,62 @@ function figth($hero, $monster, $turn, $log = '', $turnCounter = 1){
4949 }
5050
5151 // set damage
52- $ damage = $ attacker ->strength - $ defender ->defence ; // Damage = Attacker strength – Defender defence
52+ $ damage = $ attacker ->getStrength () - $ defender ->getDefence () ; // Damage = Attacker strength – Defender defence
5353
5454
5555 // skils encounter
5656 $ skill = $ this ->skills ();
57- if ($ skill !== null && $ skill ['skill_type ' ] === 'attack ' && $ attacker ->name === "Orderus " ){
57+ if ($ skill !== null && $ skill ['skill_type ' ] === 'attack ' && $ attacker ->getName () === "Orderus " ){
5858 $ oldDamage = $ damage ;
5959 $ damage = $ skill ['number_strikes ' ] * $ damage ; // 2 strikes results double the damage
6060 $ skill_name = "Orderus activated attack skill ' " . $ skill ['name ' ] . "' damage increace from " .$ oldDamage ." To " . $ damage ." -> " ;
6161 }
6262
63- if ($ skill !== null && $ skill ['skill_type ' ] === 'defence ' && $ defender ->name === "Orderus " ){
63+ if ($ skill !== null && $ skill ['skill_type ' ] === 'defence ' && $ defender ->getName () === "Orderus " ){
6464 $ oldDamage = $ damage ;
6565 $ damage = ($ skill ['number_strikes ' ] / 100 ) * $ damage ; // 50 percent of damage/ half of the damage, defence skill
6666 $ skill_name = "Orderus activated defence skill ' " . $ skill ['name ' ] . "' damage reduce from " .$ oldDamage ." To " . $ damage ." -> " ;
6767 }
6868
69- if (rand (0 , 100 ) < $ defender ->luck ){ // the defender gets lucky that turn.
69+ if (rand (0 , 100 ) < $ defender ->getLuck () ){ // the defender gets lucky that turn.
7070 $ damage = 0 ;
7171 $ lucky_damage_pass = ' Luck change to get 0 damage occured. ' ;
7272 }
7373
74- $ defender ->setHealth ($ defender ->health - $ damage ); // The damage is subtracted from the defender’s health.
74+ $ defender ->setHealth ($ defender ->getHealth () - $ damage ); // The damage is subtracted from the defender’s health.
7575
76- if ($ defender ->health <= 0 ) { // stop battle if defender health reaches 0
77- $ defender ->health = 0 ;
76+ if ($ defender ->getHealth () <= 0 ) { // stop battle if defender health reaches 0
77+ $ defender ->setHealth ( 0 ) ;
7878 $ stop_battle = true ;
79- $ log .= 'Attack from ' . $ attacker ->name . ". " .$ skill_name . $ lucky_damage_pass . " Damage inflicted " .$ damage ." to " .$ defender ->name . " health remaning is " .$ defender ->health ." </br> " ;
80- $ log .= 'Battle finished, winner is ' . $ attacker ->name . ' !!!</br> ' ;
79+ $ log_pass -> Log ( 'Attack from ' . $ attacker ->getName () . ". " .$ skill_name . $ lucky_damage_pass . " Damage inflicted " .$ damage ." to " .$ defender ->getName () . " health remaning is " .$ defender ->getHealth () ." </br> " ) ;
80+ $ log_pass -> Log ( 'Battle finished, winner is ' . $ attacker ->getName () . ' !!!</br> ' ) ;
8181 } else {
82- $ log .= 'Attack from ' . $ attacker ->name . ". " .$ skill_name . $ lucky_damage_pass . " Damage inflicted " .$ damage ." to " .$ defender ->name . " health remaning is " .$ defender ->health ." </br> " ; // log battle damage and the defender helth
82+ $ log_pass -> Log ( 'Attack from ' . $ attacker ->getName () . ". " .$ skill_name . $ lucky_damage_pass . " Damage inflicted " .$ damage ." to " .$ defender ->getName () . " health remaning is " .$ defender ->getHealth () ." </br> " ) ; // log battle damage and the defender helth
8383 }
8484
8585 if ($ turnCounter === 20 ) { // turns reached 20 game over
8686 $ stop_battle = true ;
87- $ winner = ($ hero ->health > $ monster ->health ) ? $ hero ->name : $ monster ->name ;
88- $ log .= "Max number of turns 20 has been reached , winner is " . $ winner . "</br> " ;
87+ $ winner = ($ hero ->getHealth () > $ monster ->getHealth ()) ? $ hero ->getName () : $ monster ->getName () ;
88+ $ log_pass -> Log ( "Max number of turns 20 has been reached , winner is " . $ winner . "</br> " ) ;
8989 }
9090
9191 $ turnCounter ++;
9292
93- return [$ hero , $ monster , $ turn , $ stop_battle , $ log , $ turnCounter ];
93+ return [$ hero , $ monster , $ turn , $ stop_battle , $ turnCounter , $ log_pass ];
9494 }
9595
9696 function determinFirstTurnToAttack ($ hero , $ monster , $ turn ){ // The first attack
97- if ($ monster ->speed > $ hero ->speed ) {
98- $ turn = ['turn ' => 'monster ' , 'id ' => $ monster ->id ];
99- } elseif ($ monster ->speed < $ hero ->speed ) {
100- $ turn = ['turn ' => 'hero ' , 'id ' => $ hero ->id ];
101- } elseif ($ monster ->speed === $ hero ->speed ) {
102- if ($ monster ->luck > $ hero ->luck ) {
103- $ turn = ['turn ' => 'monster ' , 'id ' => $ monster ->id ];
104- } elseif ($ monster ->luck < $ hero ->luck ) {
105- $ turn = ['turn ' => 'hero ' , 'id ' =>$ hero ->id ];
106- } elseif ($ monster ->luck === $ hero ->luck ) {
107- $ turn = ['turn ' => 'hero ' , 'id ' => $ hero ->id ];
97+ if ($ monster ->getSpeed () > $ hero ->getSpeed () ) {
98+ $ turn = ['turn ' => 'monster ' , 'id ' => $ monster ->getId () ];
99+ } elseif ($ monster ->getSpeed () < $ hero ->getSpeed () ) {
100+ $ turn = ['turn ' => 'hero ' , 'id ' => $ hero ->getId () ];
101+ } elseif ($ monster ->getSpeed () === $ hero ->getSpeed () ) {
102+ if ($ monster ->getLuck () > $ hero ->getLuck () ) {
103+ $ turn = ['turn ' => 'monster ' , 'id ' => $ monster ->getId () ];
104+ } elseif ($ monster ->getLuck () < $ hero ->getLuck () ) {
105+ $ turn = ['turn ' => 'hero ' , 'id ' =>$ hero ->getId () ];
106+ } elseif ($ monster ->getLuck () === $ hero ->getLuck () ) {
107+ $ turn = ['turn ' => 'hero ' , 'id ' => $ hero ->getId () ];
108108 }
109109 }
110110 return $ turn ;
0 commit comments