@@ -77,11 +77,11 @@ |
||
| 77 | 77 | */ |
| 78 | 78 | public function setCharacterPosition($id, int $row, int $column): void { |
| 79 | 79 | if(!$this->hasItems(["id" => $id])) { |
| 80 | - throw new \OutOfBoundsException("Character $id is not in the team"); |
|
| 80 | + throw new \OutOfBoundsException("character $id is not in the team"); |
|
| 81 | 81 | } elseif(count($this->getItems(["positionRow" => $row])) >= $this->maxRowSize) { |
| 82 | - throw new InvalidCharacterPositionException("Row $row is full.", InvalidCharacterPositionException::ROW_FULL); |
|
| 82 | + throw new InvalidCharacterPositionException("row $row is full.", InvalidCharacterPositionException::ROW_FULL); |
|
| 83 | 83 | } elseif($this->hasItems(["positionRow" => $row, "positionColumn" => $column])) { |
| 84 | - throw new InvalidCharacterPositionException("Row $row column $column is occupied.", InvalidCharacterPositionException::POSITION_OCCUPIED); |
|
| 84 | + throw new InvalidCharacterPositionException("row $row column $column is occupied.", InvalidCharacterPositionException::POSITION_OCCUPIED); |
|
| 85 | 85 | } |
| 86 | 86 | $character = $this->getItems(["id" => $id])[0]; |
| 87 | 87 | $character->positionRow = $row; |
@@ -52,9 +52,11 @@ |
||
| 52 | 52 | /** |
| 53 | 53 | * @throws NotImplementedException |
| 54 | 54 | */ |
| 55 | - public function do(CombatBase $combat, Character $character): void { |
|
| 55 | + public function do { |
|
| 56 | + (CombatBase $combat, Character $character): void { |
|
| 56 | 57 | /** @var CharacterSpecialSkill $skill */ |
| 57 | 58 | $skill = $character->usableSkills[0]; |
| 59 | + } |
|
| 58 | 60 | $targets = []; |
| 59 | 61 | switch($skill->skill->target) { |
| 60 | 62 | case Skill::TARGET_ENEMY: |
@@ -37,7 +37,7 @@ discard block |
||
| 37 | 37 | "character1" => $character1, "character2" => $target, |
| 38 | 38 | ]; |
| 39 | 39 | $effect = new CharacterEffect([ |
| 40 | - "id" => "skill{$skill->skill->id}Effect", |
|
| 40 | + "id" => "skill{$skill->skill->id}effect", |
|
| 41 | 41 | "type" => $skill->skill->type, |
| 42 | 42 | "stat" => ((in_array($skill->skill->type, Skill::NO_STAT_TYPES, true)) ? null : $skill->skill->stat), |
| 43 | 43 | "value" => $skill->value, |
@@ -70,7 +70,7 @@ discard block |
||
| 70 | 70 | $targets = $combat->getEnemyTeam($character)->toArray(); |
| 71 | 71 | break; |
| 72 | 72 | default: |
| 73 | - throw new NotImplementedException("Target {$skill->skill->target} for special skills is not implemented."); |
|
| 73 | + throw new NotImplementedException("target {$skill->skill->target} for special skills is not implemented."); |
|
| 74 | 74 | } |
| 75 | 75 | foreach($targets as $target) { |
| 76 | 76 | $this->doSingleTarget($character, $target, $skill, $combat); |
@@ -54,9 +54,11 @@ |
||
| 54 | 54 | /** |
| 55 | 55 | * @throws NotImplementedException |
| 56 | 56 | */ |
| 57 | - public function do(CombatBase $combat, Character $character): void { |
|
| 57 | + public function do { |
|
| 58 | + (CombatBase $combat, Character $character): void { |
|
| 58 | 59 | /** @var CharacterAttackSkill $skill */ |
| 59 | 60 | $skill = $character->usableSkills[0]; |
| 61 | + } |
|
| 60 | 62 | $targets = []; |
| 61 | 63 | /** @var Character $primaryTarget */ |
| 62 | 64 | $primaryTarget = $combat->selectAttackTarget($character); |
@@ -74,7 +74,7 @@ |
||
| 74 | 74 | $targets = $combat->getTeam($primaryTarget)->getItems(["positionColumn" => $primaryTarget->positionColumn]); |
| 75 | 75 | break; |
| 76 | 76 | default: |
| 77 | - throw new NotImplementedException("Target {$skill->skill->target} for attack skills is not implemented."); |
|
| 77 | + throw new NotImplementedException("target {$skill->skill->target} for attack skills is not implemented."); |
|
| 78 | 78 | } |
| 79 | 79 | /** @var Character $target */ |
| 80 | 80 | foreach($targets as $target) { |
@@ -10,6 +10,8 @@ |
||
| 10 | 10 | public function getName(): string; |
| 11 | 11 | public function getPriority(): int; |
| 12 | 12 | public function shouldUse(CombatBase $combat, Character $character): bool; |
| 13 | - public function do(CombatBase $combat, Character $character): void; |
|
| 14 | -} |
|
| 13 | + public function do { |
|
| 14 | + (CombatBase $combat, Character $character): void; |
|
| 15 | + } |
|
| 16 | + } |
|
| 15 | 17 | ?> |
| 16 | 18 | \ No newline at end of file |
@@ -26,8 +26,10 @@ |
||
| 26 | 26 | return (in_array($character, $this->findHealers($combat)->toArray(), true) && $this->selectHealingTarget($character, $combat) !== null); |
| 27 | 27 | } |
| 28 | 28 | |
| 29 | - public function do(CombatBase $combat, Character $character): void { |
|
| 29 | + public function do { |
|
| 30 | + (CombatBase $combat, Character $character): void { |
|
| 30 | 31 | $result = []; |
| 32 | + } |
|
| 31 | 33 | /** @var Character $patient */ |
| 32 | 34 | $patient = $this->selectHealingTarget($character, $combat); |
| 33 | 35 | $result["result"] = $combat->successCalculator->hasHealed($character); |
@@ -30,8 +30,10 @@ |
||
| 30 | 30 | * Hit chance = Attacker's hit - Defender's dodge, but at least 15% |
| 31 | 31 | * Damage = Attacker's damage - defender's defense |
| 32 | 32 | */ |
| 33 | - public function do(CombatBase $combat, Character $character): void { |
|
| 33 | + public function do { |
|
| 34 | + (CombatBase $combat, Character $character): void { |
|
| 34 | 35 | $result = []; |
| 36 | + } |
|
| 35 | 37 | $defender = $combat->selectAttackTarget($character); |
| 36 | 38 | if($defender === null) { |
| 37 | 39 | return; |
@@ -32,7 +32,7 @@ |
||
| 32 | 32 | */ |
| 33 | 33 | protected function setTemplate(string $template): void { |
| 34 | 34 | if(!is_file($template)) { |
| 35 | - throw new \RuntimeException("File $template does not exist."); |
|
| 35 | + throw new \RuntimeException("file $template does not exist."); |
|
| 36 | 36 | } |
| 37 | 37 | $this->template = $template; |
| 38 | 38 | } |
@@ -2,7 +2,7 @@ |
||
| 2 | 2 | declare(strict_types=1); |
| 3 | 3 | |
| 4 | 4 | require __DIR__ . "/../vendor/autoload.php"; |
| 5 | -Testbench\Bootstrap::setup(__DIR__ . '/_temp', function (\Nette\Configurator $configurator): void { |
|
| 5 | +Testbench\Bootstrap::setup(__DIR__ . '/_temp', function(\Nette\Configurator $configurator): void { |
|
| 6 | 6 | $configurator->addParameters(["appDir" => __DIR__, ]); |
| 7 | 7 | $configurator->addConfig(__DIR__ . "/tests.neon"); |
| 8 | 8 | }); |