@@ -74,7 +74,7 @@ |
||
74 | 74 | }); |
75 | 75 | $resolver->setAllowedTypes("stat", ["string", "null"]); |
76 | 76 | $resolver->setAllowedValues("stat", function(?string $value) { |
77 | - return is_null($value) OR in_array($value, $this->getAllowedStats(), true); |
|
77 | + return is_null($value) or in_array($value, $this->getAllowedStats(), true); |
|
78 | 78 | }); |
79 | 79 | $resolver->setAllowedTypes("value", "integer"); |
80 | 80 | $resolver->setAllowedValues("value", function(int $value) { |
@@ -26,7 +26,7 @@ discard block |
||
26 | 26 | public const TARGET_PARTY = "party"; |
27 | 27 | public const TARGET_ENEMY_PARTY = "enemy_party"; |
28 | 28 | /** @var string[] */ |
29 | - public const NO_STAT_TYPES = [self::TYPE_STUN, self::TYPE_POISON,]; |
|
29 | + public const NO_STAT_TYPES = [self::TYPE_STUN, self::TYPE_POISON, ]; |
|
30 | 30 | |
31 | 31 | /** @var string */ |
32 | 32 | protected $type; |
@@ -60,7 +60,7 @@ discard block |
||
60 | 60 | |
61 | 61 | protected function configureOptions(OptionsResolver $resolver): void { |
62 | 62 | parent::configureOptions($resolver); |
63 | - $allStats = ["type", "stat", "value", "valueGrowth", "duration",]; |
|
63 | + $allStats = ["type", "stat", "value", "valueGrowth", "duration", ]; |
|
64 | 64 | $resolver->setRequired($allStats); |
65 | 65 | $resolver->setAllowedTypes("type", "string"); |
66 | 66 | $resolver->setAllowedValues("type", function(string $value) { |
@@ -38,7 +38,7 @@ |
||
38 | 38 | } |
39 | 39 | |
40 | 40 | public function getHitRate(): int { |
41 | - if(is_string($this->skill->hitRate) AND substr($this->skill->hitRate, -1) === "%") { |
|
41 | + if(is_string($this->skill->hitRate) and substr($this->skill->hitRate, -1) === "%") { |
|
42 | 42 | return (int) $this->skill->hitRate; |
43 | 43 | } |
44 | 44 | return 100; |
@@ -2,8 +2,8 @@ |
||
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) { |
|
6 | - $configurator->addParameters(["appDir" => __DIR__,]); |
|
5 | +Testbench\Bootstrap::setup(__DIR__ . '/_temp', function(\Nette\Configurator $configurator) { |
|
6 | + $configurator->addParameters(["appDir" => __DIR__, ]); |
|
7 | 7 | $configurator->addConfig(__DIR__ . "/tests.neon"); |
8 | 8 | }); |
9 | 9 | ?> |
10 | 10 | \ No newline at end of file |
@@ -48,7 +48,7 @@ |
||
48 | 48 | |
49 | 49 | protected function configureOptions(OptionsResolver $resolver): void { |
50 | 50 | parent::configureOptions($resolver); |
51 | - $allStats = ["baseDamage", "damageGrowth", "strikes", "hitRate",]; |
|
51 | + $allStats = ["baseDamage", "damageGrowth", "strikes", "hitRate", ]; |
|
52 | 52 | $resolver->setRequired($allStats); |
53 | 53 | $resolver->setAllowedTypes("baseDamage", "string"); |
54 | 54 | $resolver->setAllowedTypes("damageGrowth", "string"); |
@@ -50,7 +50,7 @@ discard block |
||
50 | 50 | * @return Character[] |
51 | 51 | */ |
52 | 52 | public function getAliveMembers(): array { |
53 | - return $this->getItems(["hitpoints>" => 0,]); |
|
53 | + return $this->getItems(["hitpoints>" => 0, ]); |
|
54 | 54 | } |
55 | 55 | |
56 | 56 | /** |
@@ -128,7 +128,7 @@ discard block |
||
128 | 128 | return null; |
129 | 129 | } |
130 | 130 | for($i = 1; $i <= PHP_INT_MAX; $i++) { |
131 | - if($this->hasItems(["positionRow" => $i, "hitpoints>" => 0,])) { |
|
131 | + if($this->hasItems(["positionRow" => $i, "hitpoints>" => 0, ])) { |
|
132 | 132 | return $i; |
133 | 133 | } |
134 | 134 | } |
@@ -80,11 +80,11 @@ discard block |
||
80 | 80 | */ |
81 | 81 | public function setCharacterPosition($id, int $row, int $column): void { |
82 | 82 | if(!$this->hasItems(["id" => $id])) { |
83 | - throw new \OutOfBoundsException("Character $id is not in the team"); |
|
83 | + throw new \OutOfBoundsException("character $id is not in the team"); |
|
84 | 84 | } elseif(count($this->getItems(["positionRow" => $row])) >= $this->maxRowSize) { |
85 | - throw new InvalidCharacterPositionException("Row $row is full.", InvalidCharacterPositionException::ROW_FULL); |
|
85 | + throw new InvalidCharacterPositionException("row $row is full.", InvalidCharacterPositionException::ROW_FULL); |
|
86 | 86 | } elseif($this->hasItems(["positionRow" => $row, "positionColumn" => $column])) { |
87 | - throw new InvalidCharacterPositionException("Row $row column $column is occupied.", InvalidCharacterPositionException::POSITION_OCCUPIED); |
|
87 | + throw new InvalidCharacterPositionException("row $row column $column is occupied.", InvalidCharacterPositionException::POSITION_OCCUPIED); |
|
88 | 88 | } |
89 | 89 | $character = $this->getItems(["id" => $id])[0]; |
90 | 90 | $character->positionRow = $row; |
@@ -112,7 +112,7 @@ discard block |
||
112 | 112 | return null; |
113 | 113 | } |
114 | 114 | foreach($this->aliveMembers as $index => $member) { |
115 | - if($member->hitpoints <= $member->maxHitpoints * $threshold AND $member->hitpoints < $lowestHp) { |
|
115 | + if($member->hitpoints <= $member->maxHitpoints * $threshold and $member->hitpoints < $lowestHp) { |
|
116 | 116 | $lowestHp = $member->hitpoints; |
117 | 117 | $lowestIndex = $index; |
118 | 118 | } |
@@ -52,7 +52,7 @@ |
||
52 | 52 | } |
53 | 53 | |
54 | 54 | protected function configureOptions(OptionsResolver $resolver): void { |
55 | - $allStats = ["id", "name", "slot", "type", "strength", "worn",]; |
|
55 | + $allStats = ["id", "name", "slot", "type", "strength", "worn", ]; |
|
56 | 56 | $resolver->setRequired($allStats); |
57 | 57 | $resolver->setAllowedTypes("id", "integer"); |
58 | 58 | $resolver->setAllowedTypes("name", "string"); |
@@ -37,7 +37,7 @@ |
||
37 | 37 | } |
38 | 38 | |
39 | 39 | protected function configureOptions(OptionsResolver $resolver): void { |
40 | - $allStats = ["id", "deployed", "bonusStat", "bonusValue",]; |
|
40 | + $allStats = ["id", "deployed", "bonusStat", "bonusValue", ]; |
|
41 | 41 | $resolver->setRequired($allStats); |
42 | 42 | $resolver->setAllowedTypes("id", "integer"); |
43 | 43 | $resolver->setAllowedTypes("deployed", "boolean"); |
@@ -41,7 +41,7 @@ |
||
41 | 41 | protected $levels; |
42 | 42 | |
43 | 43 | protected function configureOptions(OptionsResolver $resolver): void { |
44 | - $resolver->setRequired(["id", "name", "target", "levels",]); |
|
44 | + $resolver->setRequired(["id", "name", "target", "levels", ]); |
|
45 | 45 | $resolver->setAllowedTypes("id", "int"); |
46 | 46 | $resolver->setAllowedTypes("name", "string"); |
47 | 47 | $resolver->setAllowedTypes("target", "string"); |
@@ -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); |