Biyernes, Setyembre 28, 2012

<?php
    class Samurai extends Warrior {
        public $gainHealth = array();
       
        public function _constructor() {
            $this->specialSkill = 'Gain 10 Health';
        }
       
        public function Attack(&$character) {
            $arr = array();
            $rand = array();
            $damageDealt = 0;
           
            for ($i = 0; $i < 100; ++$i) {
                $arr[$i] = 0;
                $rand[$i] = $i;

                if ($i < 10) {
                    $this->gainHealth[$i] = 0;
                }
            }

            $evadeRate = $character->getEvade();
            for($i = 0; $i < $evadeRate; ++$i) {
                $this->Swap($rand[$i], $rand[rand($i, 99)]);
                $arr[$rand[$i]] = 1;
            }

            if ($this->isEvade = $arr[rand(0, 99)]) {
                $character->evade();
            } else {
                $damageDealt = $this->attack - $character->defence;
                $character->setHealth($damageDealt);
            }
           
            return $damageDealt;
        }

        public function Swap(&$a, &$b) {
            $tmp = $a;
            $a = $b;
            $b = $tmp;
        }

        public function evade() {
            $this->gainHealth[rand(0, 9)] = 1;

            if ($this->gainHealth[rand(0, 9)] == 1) {
                $this->setHealth($this->getHealth() + 10);
                $this->isSkillActivated = 1;
            }
        }
    }
   
?>

Walang komento:

Mag-post ng isang Komento