@@ -35,7 +35,9 @@ discard block |
||
| 35 | 35 | if ($this->wageReq == null) {
|
| 36 | 36 | $wage = $this->wageOnSkill(); |
| 37 | 37 | $wage += $this->spareChange(); |
| 38 | - if ($wage < 0) $wage = $wage * (-1); |
|
| 38 | + if ($wage < 0) { |
|
| 39 | + $wage = $wage * (-1); |
|
| 40 | + } |
|
| 39 | 41 | $this->wageReq = round($wage, 2); |
| 40 | 42 | } |
| 41 | 43 | return $this->wageReq; |
@@ -46,13 +48,27 @@ discard block |
||
| 46 | 48 | */ |
| 47 | 49 | private function wageOnSkill() |
| 48 | 50 | {
|
| 49 | - if ($this->skillAvg > 98) return 5.0; |
|
| 50 | - if ($this->skillAvg > 90) return 3.5; |
|
| 51 | - if ($this->skillAvg > 80) return 2.0; |
|
| 52 | - if ($this->skillAvg > 76) return 1.5; |
|
| 53 | - if ($this->skillAvg > 70) return 1.0; |
|
| 54 | - if ($this->skillAvg > 60) return .76; |
|
| 55 | - if ($this->skillAvg > 50) return .20; |
|
| 51 | + if ($this->skillAvg > 98) { |
|
| 52 | + return 5.0; |
|
| 53 | + } |
|
| 54 | + if ($this->skillAvg > 90) { |
|
| 55 | + return 3.5; |
|
| 56 | + } |
|
| 57 | + if ($this->skillAvg > 80) { |
|
| 58 | + return 2.0; |
|
| 59 | + } |
|
| 60 | + if ($this->skillAvg > 76) { |
|
| 61 | + return 1.5; |
|
| 62 | + } |
|
| 63 | + if ($this->skillAvg > 70) { |
|
| 64 | + return 1.0; |
|
| 65 | + } |
|
| 66 | + if ($this->skillAvg > 60) { |
|
| 67 | + return .76; |
|
| 68 | + } |
|
| 69 | + if ($this->skillAvg > 50) { |
|
| 70 | + return .20; |
|
| 71 | + } |
|
| 56 | 72 | return 0.5; |
| 57 | 73 | |
| 58 | 74 | } |
@@ -12,15 +12,15 @@ |
||
| 12 | 12 | */ |
| 13 | 13 | abstract class DsManagerModel implements ActiveModel |
| 14 | 14 | {
|
| 15 | - /** |
|
| 16 | - * @var |
|
| 17 | - */ |
|
| 18 | - public $id; |
|
| 15 | + /** |
|
| 16 | + * @var |
|
| 17 | + */ |
|
| 18 | + public $id; |
|
| 19 | 19 | |
| 20 | - /** |
|
| 21 | - * @return mixed |
|
| 22 | - */ |
|
| 23 | - abstract function toArray(); |
|
| 20 | + /** |
|
| 21 | + * @return mixed |
|
| 22 | + */ |
|
| 23 | + abstract function toArray(); |
|
| 24 | 24 | /** |
| 25 | 25 | * @param array $array |
| 26 | 26 | * @return mixed |
@@ -25,7 +25,7 @@ |
||
| 25 | 25 | * @param array $array |
| 26 | 26 | * @return mixed |
| 27 | 27 | */ |
| 28 | - public static function fromArray($array =[]) |
|
| 28 | + public static function fromArray($array = []) |
|
| 29 | 29 | {
|
| 30 | 30 | $class = get_called_class(); |
| 31 | 31 | $class = new $class(); |
@@ -63,7 +63,7 @@ |
||
| 63 | 63 | */ |
| 64 | 64 | function __toString() |
| 65 | 65 | {
|
| 66 | - return "" . $this->moduleCode; |
|
| 66 | + return "".$this->moduleCode; |
|
| 67 | 67 | } |
| 68 | 68 | |
| 69 | 69 | |
@@ -31,7 +31,9 @@ discard block |
||
| 31 | 31 | {
|
| 32 | 32 | $this->moduleCode = $module; |
| 33 | 33 | $this->configuration = Config::get("modules.modules", "api/")[$module];
|
| 34 | - if ($this->configuration == null) throw new \InvalidArgumentException("Not a valid Module supplied");
|
|
| 34 | + if ($this->configuration == null) { |
|
| 35 | + throw new \InvalidArgumentException("Not a valid Module supplied"); |
|
| 36 | + } |
|
| 35 | 37 | } |
| 36 | 38 | |
| 37 | 39 | /** |
@@ -98,8 +100,9 @@ discard block |
||
| 98 | 100 | $roles = \App\Lib\Helpers\Config::get('modules.roles', "api/");
|
| 99 | 101 | $rolesKeys = array_keys($roles); |
| 100 | 102 | foreach ($this->configuration["roles"] as $index => $playNum) {
|
| 101 | - if ($playNum != 0 || $complete) |
|
| 102 | - $rolesNeeded[$rolesKeys[$index]] = $playNum; |
|
| 103 | + if ($playNum != 0 || $complete) { |
|
| 104 | + $rolesNeeded[$rolesKeys[$index]] = $playNum; |
|
| 105 | + } |
|
| 103 | 106 | } |
| 104 | 107 | |
| 105 | 108 | return $rolesNeeded; |
@@ -8,76 +8,76 @@ |
||
| 8 | 8 | {
|
| 9 | 9 | |
| 10 | 10 | |
| 11 | - /** |
|
| 12 | - * @group Modules |
|
| 13 | - * @group config |
|
| 14 | - */ |
|
| 15 | - public function testAllTheModulesGot11Players() |
|
| 16 | - {
|
|
| 17 | - $modules = \App\Lib\Helpers\Config::get('modules.modules');
|
|
| 18 | - $this->assertNotEmpty($modules); |
|
| 19 | - foreach ($modules as $key => $module) {
|
|
| 20 | - $this->assertNotEmpty($module["roles"]); |
|
| 21 | - $count = 0; |
|
| 22 | - foreach ($module["roles"] as $roleNum) {
|
|
| 23 | - $count += $roleNum; |
|
| 24 | - } |
|
| 25 | - $this->assertTrue(11 === $count, "Not correct Players for $key"); |
|
| 26 | - } |
|
| 27 | - } |
|
| 11 | + /** |
|
| 12 | + * @group Modules |
|
| 13 | + * @group config |
|
| 14 | + */ |
|
| 15 | + public function testAllTheModulesGot11Players() |
|
| 16 | + {
|
|
| 17 | + $modules = \App\Lib\Helpers\Config::get('modules.modules');
|
|
| 18 | + $this->assertNotEmpty($modules); |
|
| 19 | + foreach ($modules as $key => $module) {
|
|
| 20 | + $this->assertNotEmpty($module["roles"]); |
|
| 21 | + $count = 0; |
|
| 22 | + foreach ($module["roles"] as $roleNum) {
|
|
| 23 | + $count += $roleNum; |
|
| 24 | + } |
|
| 25 | + $this->assertTrue(11 === $count, "Not correct Players for $key"); |
|
| 26 | + } |
|
| 27 | + } |
|
| 28 | 28 | |
| 29 | - /** |
|
| 30 | - * @group Roles |
|
| 31 | - * @group config |
|
| 32 | - */ |
|
| 33 | - public function testCorrectDisplayModuleDescriptionRole() |
|
| 34 | - {
|
|
| 35 | - $modules = \App\Lib\Helpers\Config::get('modules.modules');
|
|
| 36 | - $this->assertNotEmpty($modules); |
|
| 37 | - $roles = \App\Lib\Helpers\Config::get('modules.roles');
|
|
| 38 | - $rolesKeys = array_keys($roles); |
|
| 29 | + /** |
|
| 30 | + * @group Roles |
|
| 31 | + * @group config |
|
| 32 | + */ |
|
| 33 | + public function testCorrectDisplayModuleDescriptionRole() |
|
| 34 | + {
|
|
| 35 | + $modules = \App\Lib\Helpers\Config::get('modules.modules');
|
|
| 36 | + $this->assertNotEmpty($modules); |
|
| 37 | + $roles = \App\Lib\Helpers\Config::get('modules.roles');
|
|
| 38 | + $rolesKeys = array_keys($roles); |
|
| 39 | 39 | |
| 40 | - foreach ($modules as $key => $module) {
|
|
| 41 | - $this->assertNotEmpty($module["roles"]); |
|
| 42 | - foreach ($module["roles"] as $index => $playNum) {
|
|
| 43 | - if ($playNum != 0) {
|
|
| 44 | - $this->assertGreaterThan(0, $playNum); |
|
| 45 | - $this->assertNotNull($roles[$rolesKeys[$index]]["description"]); |
|
| 46 | - } |
|
| 47 | - } |
|
| 48 | - } |
|
| 49 | - } |
|
| 40 | + foreach ($modules as $key => $module) {
|
|
| 41 | + $this->assertNotEmpty($module["roles"]); |
|
| 42 | + foreach ($module["roles"] as $index => $playNum) {
|
|
| 43 | + if ($playNum != 0) {
|
|
| 44 | + $this->assertGreaterThan(0, $playNum); |
|
| 45 | + $this->assertNotNull($roles[$rolesKeys[$index]]["description"]); |
|
| 46 | + } |
|
| 47 | + } |
|
| 48 | + } |
|
| 49 | + } |
|
| 50 | 50 | |
| 51 | - /** |
|
| 52 | - * @group rand |
|
| 53 | - * |
|
| 54 | - */ |
|
| 55 | - public function testRandomizer() |
|
| 56 | - {
|
|
| 57 | - $yes = 0; |
|
| 58 | - $no = 0; |
|
| 59 | - for ($i = 1; $i <= 100; $i++) {
|
|
| 60 | - if (\App\Lib\DsManager\Helpers\Randomizer::boolOnPercentage(20)) {
|
|
| 61 | - $yes++; |
|
| 62 | - } else {
|
|
| 63 | - $no++; |
|
| 64 | - } |
|
| 65 | - } |
|
| 66 | - $this->assertNotEmpty($yes); |
|
| 67 | - $this->assertNotEmpty($no); |
|
| 68 | - $this->assertGreaterThan($yes, $no); |
|
| 69 | - } |
|
| 51 | + /** |
|
| 52 | + * @group rand |
|
| 53 | + * |
|
| 54 | + */ |
|
| 55 | + public function testRandomizer() |
|
| 56 | + {
|
|
| 57 | + $yes = 0; |
|
| 58 | + $no = 0; |
|
| 59 | + for ($i = 1; $i <= 100; $i++) {
|
|
| 60 | + if (\App\Lib\DsManager\Helpers\Randomizer::boolOnPercentage(20)) {
|
|
| 61 | + $yes++; |
|
| 62 | + } else {
|
|
| 63 | + $no++; |
|
| 64 | + } |
|
| 65 | + } |
|
| 66 | + $this->assertNotEmpty($yes); |
|
| 67 | + $this->assertNotEmpty($no); |
|
| 68 | + $this->assertGreaterThan($yes, $no); |
|
| 69 | + } |
|
| 70 | 70 | |
| 71 | - /** |
|
| 72 | - * @group randFiller |
|
| 73 | - * |
|
| 74 | - */ |
|
| 75 | - public function testRandomFiller() |
|
| 76 | - {
|
|
| 77 | - $rndF = new \App\Lib\DsManager\Helpers\RandomFiller(); |
|
| 78 | - for ($i = 1; $i <= 10; $i++) {
|
|
| 79 | - $this->assertNotEmpty($rndF->getLocale()); |
|
| 80 | - } |
|
| 81 | - } |
|
| 71 | + /** |
|
| 72 | + * @group randFiller |
|
| 73 | + * |
|
| 74 | + */ |
|
| 75 | + public function testRandomFiller() |
|
| 76 | + {
|
|
| 77 | + $rndF = new \App\Lib\DsManager\Helpers\RandomFiller(); |
|
| 78 | + for ($i = 1; $i <= 10; $i++) {
|
|
| 79 | + $this->assertNotEmpty($rndF->getLocale()); |
|
| 80 | + } |
|
| 81 | + } |
|
| 82 | 82 | |
| 83 | 83 | } |
@@ -5,19 +5,19 @@ |
||
| 5 | 5 | |
| 6 | 6 | class CreateTeamTable |
| 7 | 7 | {
|
| 8 | - /** |
|
| 9 | - * Run the migrations. |
|
| 10 | - * |
|
| 11 | - * @return void |
|
| 12 | - */ |
|
| 13 | - public function run() |
|
| 14 | - {
|
|
| 15 | - Capsule::schema()->dropIfExists('teams');
|
|
| 16 | - Capsule::schema()->create('teams', function (Blueprint $table) {
|
|
| 17 | - $table->increments('id');
|
|
| 18 | - $table->string('name');
|
|
| 19 | - $table->string('nationality',2);
|
|
| 20 | - $table->timestamps(); |
|
| 21 | - }); |
|
| 22 | - } |
|
| 8 | + /** |
|
| 9 | + * Run the migrations. |
|
| 10 | + * |
|
| 11 | + * @return void |
|
| 12 | + */ |
|
| 13 | + public function run() |
|
| 14 | + {
|
|
| 15 | + Capsule::schema()->dropIfExists('teams');
|
|
| 16 | + Capsule::schema()->create('teams', function (Blueprint $table) {
|
|
| 17 | + $table->increments('id');
|
|
| 18 | + $table->string('name');
|
|
| 19 | + $table->string('nationality',2);
|
|
| 20 | + $table->timestamps(); |
|
| 21 | + }); |
|
| 22 | + } |
|
| 23 | 23 | } |
@@ -13,10 +13,10 @@ |
||
| 13 | 13 | public function run() |
| 14 | 14 | {
|
| 15 | 15 | Capsule::schema()->dropIfExists('teams');
|
| 16 | - Capsule::schema()->create('teams', function (Blueprint $table) {
|
|
| 16 | + Capsule::schema()->create('teams', function(Blueprint $table) {
|
|
| 17 | 17 | $table->increments('id');
|
| 18 | 18 | $table->string('name');
|
| 19 | - $table->string('nationality',2);
|
|
| 19 | + $table->string('nationality', 2);
|
|
| 20 | 20 | $table->timestamps(); |
| 21 | 21 | }); |
| 22 | 22 | } |
@@ -5,35 +5,35 @@ |
||
| 5 | 5 | |
| 6 | 6 | class CreateCoachesTable |
| 7 | 7 | {
|
| 8 | - /** |
|
| 9 | - * Run the migrations. |
|
| 10 | - * |
|
| 11 | - * @return void |
|
| 12 | - */ |
|
| 13 | - public function run() |
|
| 14 | - {
|
|
| 15 | - Capsule::schema()->dropIfExists('coaches');
|
|
| 16 | - Capsule::schema()->create('coaches', function (Blueprint $table) {
|
|
| 17 | - $table->increments('id');
|
|
| 18 | - $table->string('name');
|
|
| 19 | - $table->string('surname');
|
|
| 20 | - $table->tinyInteger('age');
|
|
| 21 | - $table->string('nationality',2);
|
|
| 22 | - $table->float('skillAvg');
|
|
| 23 | - $table->float('wageReq');
|
|
| 24 | - $table->string('favouriteModule',10);
|
|
| 25 | - $table->integer('team_id')->nullable();
|
|
| 26 | - $table->timestamps(); |
|
| 27 | - }); |
|
| 28 | - } |
|
| 8 | + /** |
|
| 9 | + * Run the migrations. |
|
| 10 | + * |
|
| 11 | + * @return void |
|
| 12 | + */ |
|
| 13 | + public function run() |
|
| 14 | + {
|
|
| 15 | + Capsule::schema()->dropIfExists('coaches');
|
|
| 16 | + Capsule::schema()->create('coaches', function (Blueprint $table) {
|
|
| 17 | + $table->increments('id');
|
|
| 18 | + $table->string('name');
|
|
| 19 | + $table->string('surname');
|
|
| 20 | + $table->tinyInteger('age');
|
|
| 21 | + $table->string('nationality',2);
|
|
| 22 | + $table->float('skillAvg');
|
|
| 23 | + $table->float('wageReq');
|
|
| 24 | + $table->string('favouriteModule',10);
|
|
| 25 | + $table->integer('team_id')->nullable();
|
|
| 26 | + $table->timestamps(); |
|
| 27 | + }); |
|
| 28 | + } |
|
| 29 | 29 | |
| 30 | - /** |
|
| 31 | - * Reverse the migrations. |
|
| 32 | - * |
|
| 33 | - * @return void |
|
| 34 | - */ |
|
| 35 | - public function down() |
|
| 36 | - {
|
|
| 37 | - Schema::drop('coaches');
|
|
| 38 | - } |
|
| 30 | + /** |
|
| 31 | + * Reverse the migrations. |
|
| 32 | + * |
|
| 33 | + * @return void |
|
| 34 | + */ |
|
| 35 | + public function down() |
|
| 36 | + {
|
|
| 37 | + Schema::drop('coaches');
|
|
| 38 | + } |
|
| 39 | 39 | } |
@@ -13,15 +13,15 @@ |
||
| 13 | 13 | public function run() |
| 14 | 14 | {
|
| 15 | 15 | Capsule::schema()->dropIfExists('coaches');
|
| 16 | - Capsule::schema()->create('coaches', function (Blueprint $table) {
|
|
| 16 | + Capsule::schema()->create('coaches', function(Blueprint $table) {
|
|
| 17 | 17 | $table->increments('id');
|
| 18 | 18 | $table->string('name');
|
| 19 | 19 | $table->string('surname');
|
| 20 | 20 | $table->tinyInteger('age');
|
| 21 | - $table->string('nationality',2);
|
|
| 21 | + $table->string('nationality', 2);
|
|
| 22 | 22 | $table->float('skillAvg');
|
| 23 | 23 | $table->float('wageReq');
|
| 24 | - $table->string('favouriteModule',10);
|
|
| 24 | + $table->string('favouriteModule', 10);
|
|
| 25 | 25 | $table->integer('team_id')->nullable();
|
| 26 | 26 | $table->timestamps(); |
| 27 | 27 | }); |
@@ -5,26 +5,26 @@ |
||
| 5 | 5 | |
| 6 | 6 | class CreatePlayersTable |
| 7 | 7 | {
|
| 8 | - /** |
|
| 9 | - * Run the migrations. |
|
| 10 | - * |
|
| 11 | - * @return void |
|
| 12 | - */ |
|
| 13 | - public function run() |
|
| 14 | - {
|
|
| 15 | - Capsule::schema()->dropIfExists('players');
|
|
| 16 | - Capsule::schema()->create('players', function (Blueprint $table) {
|
|
| 17 | - $table->increments('id');
|
|
| 18 | - $table->string('name');
|
|
| 19 | - $table->string('surname');
|
|
| 20 | - $table->tinyInteger('age');
|
|
| 21 | - $table->string('nationality',2);
|
|
| 22 | - $table->float('skillAvg');
|
|
| 23 | - $table->float('wageReq');
|
|
| 24 | - $table->float('val');
|
|
| 25 | - $table->string('role',2);
|
|
| 26 | - $table->integer('team_id')->nullable();
|
|
| 27 | - $table->timestamps(); |
|
| 28 | - }); |
|
| 29 | - } |
|
| 8 | + /** |
|
| 9 | + * Run the migrations. |
|
| 10 | + * |
|
| 11 | + * @return void |
|
| 12 | + */ |
|
| 13 | + public function run() |
|
| 14 | + {
|
|
| 15 | + Capsule::schema()->dropIfExists('players');
|
|
| 16 | + Capsule::schema()->create('players', function (Blueprint $table) {
|
|
| 17 | + $table->increments('id');
|
|
| 18 | + $table->string('name');
|
|
| 19 | + $table->string('surname');
|
|
| 20 | + $table->tinyInteger('age');
|
|
| 21 | + $table->string('nationality',2);
|
|
| 22 | + $table->float('skillAvg');
|
|
| 23 | + $table->float('wageReq');
|
|
| 24 | + $table->float('val');
|
|
| 25 | + $table->string('role',2);
|
|
| 26 | + $table->integer('team_id')->nullable();
|
|
| 27 | + $table->timestamps(); |
|
| 28 | + }); |
|
| 29 | + } |
|
| 30 | 30 | } |
@@ -13,16 +13,16 @@ |
||
| 13 | 13 | public function run() |
| 14 | 14 | {
|
| 15 | 15 | Capsule::schema()->dropIfExists('players');
|
| 16 | - Capsule::schema()->create('players', function (Blueprint $table) {
|
|
| 16 | + Capsule::schema()->create('players', function(Blueprint $table) {
|
|
| 17 | 17 | $table->increments('id');
|
| 18 | 18 | $table->string('name');
|
| 19 | 19 | $table->string('surname');
|
| 20 | 20 | $table->tinyInteger('age');
|
| 21 | - $table->string('nationality',2);
|
|
| 21 | + $table->string('nationality', 2);
|
|
| 22 | 22 | $table->float('skillAvg');
|
| 23 | 23 | $table->float('wageReq');
|
| 24 | 24 | $table->float('val');
|
| 25 | - $table->string('role',2);
|
|
| 25 | + $table->string('role', 2);
|
|
| 26 | 26 | $table->integer('team_id')->nullable();
|
| 27 | 27 | $table->timestamps(); |
| 28 | 28 | }); |
@@ -2,7 +2,7 @@ |
||
| 2 | 2 | |
| 3 | 3 | use Illuminate\Database\Capsule\Manager as Capsule; |
| 4 | 4 | |
| 5 | -$dotenv = new Dotenv\Dotenv(__DIR__ . "/../"); |
|
| 5 | +$dotenv = new Dotenv\Dotenv(__DIR__."/../"); |
|
| 6 | 6 | $dotenv->load(); |
| 7 | 7 | |
| 8 | 8 | /** |
@@ -4,9 +4,9 @@ discard block |
||
| 4 | 4 | |
| 5 | 5 | $dotenv = new Dotenv\Dotenv(__DIR__ . "/../"); |
| 6 | 6 | try {
|
| 7 | - $dotenv->load(); |
|
| 7 | + $dotenv->load(); |
|
| 8 | 8 | } catch (Exception $e) {
|
| 9 | - //yummy exception |
|
| 9 | + //yummy exception |
|
| 10 | 10 | } |
| 11 | 11 | |
| 12 | 12 | /** |
@@ -14,14 +14,14 @@ discard block |
||
| 14 | 14 | */ |
| 15 | 15 | $capsule = new Capsule; |
| 16 | 16 | $capsule->addConnection(array( |
| 17 | - 'driver' => 'mysql', |
|
| 18 | - 'host' => 'localhost', |
|
| 19 | - 'database' => 'dsmanager', |
|
| 20 | - 'username' => getenv('USERNAME'),
|
|
| 21 | - 'password' => getenv('PASSWORD'),
|
|
| 22 | - 'charset' => 'utf8', |
|
| 23 | - 'collation' => 'utf8_general_ci', |
|
| 24 | - 'prefix' => '' |
|
| 17 | + 'driver' => 'mysql', |
|
| 18 | + 'host' => 'localhost', |
|
| 19 | + 'database' => 'dsmanager', |
|
| 20 | + 'username' => getenv('USERNAME'),
|
|
| 21 | + 'password' => getenv('PASSWORD'),
|
|
| 22 | + 'charset' => 'utf8', |
|
| 23 | + 'collation' => 'utf8_general_ci', |
|
| 24 | + 'prefix' => '' |
|
| 25 | 25 | )); |
| 26 | 26 | $capsule->setAsGlobal(); |
| 27 | 27 | $capsule->bootEloquent(); |
@@ -31,8 +31,8 @@ |
||
| 31 | 31 | |
| 32 | 32 | /** |
| 33 | 33 | * MatchResult constructor. |
| 34 | - * @param $goalHome |
|
| 35 | - * @param $goalAway |
|
| 34 | + * @param integer $goalHome |
|
| 35 | + * @param integer $goalAway |
|
| 36 | 36 | * @param Team $home |
| 37 | 37 | * @param Team $away |
| 38 | 38 | */ |
@@ -2,8 +2,8 @@ |
||
| 2 | 2 | |
| 3 | 3 | namespace App\Lib\DsManager\Models; |
| 4 | 4 | |
| 5 | -use App\Lib\DsManager\Helpers\Randomizer; |
|
| 6 | -use App\Lib\DsManager\Models\Common\DsManagerModel; |
|
| 5 | +use App\Lib\DsManager\Helpers\Randomizer; |
|
| 6 | +use App\Lib\DsManager\Models\Common\DsManagerModel; |
|
| 7 | 7 | use App\Lib\Helpers\Config; |
| 8 | 8 | |
| 9 | 9 | |
@@ -13,118 +13,118 @@ |
||
| 13 | 13 | */ |
| 14 | 14 | class MatchResult extends DsManagerModel |
| 15 | 15 | {
|
| 16 | - /** |
|
| 17 | - * @var |
|
| 18 | - */ |
|
| 19 | - private $goalHome; |
|
| 20 | - /** |
|
| 21 | - * @var |
|
| 22 | - */ |
|
| 23 | - private $goalAway; |
|
| 24 | - /** |
|
| 25 | - * @var Team |
|
| 26 | - */ |
|
| 27 | - private $homeTeam; |
|
| 28 | - /** |
|
| 29 | - * @var Team |
|
| 30 | - */ |
|
| 31 | - private $awayTeam; |
|
| 16 | + /** |
|
| 17 | + * @var |
|
| 18 | + */ |
|
| 19 | + private $goalHome; |
|
| 20 | + /** |
|
| 21 | + * @var |
|
| 22 | + */ |
|
| 23 | + private $goalAway; |
|
| 24 | + /** |
|
| 25 | + * @var Team |
|
| 26 | + */ |
|
| 27 | + private $homeTeam; |
|
| 28 | + /** |
|
| 29 | + * @var Team |
|
| 30 | + */ |
|
| 31 | + private $awayTeam; |
|
| 32 | 32 | |
| 33 | - /** |
|
| 34 | - * MatchResult constructor. |
|
| 35 | - * @param $goalHome |
|
| 36 | - * @param $goalAway |
|
| 37 | - * @param Team $home |
|
| 38 | - * @param Team $away |
|
| 39 | - */ |
|
| 40 | - public function __construct($goalHome, $goalAway, Team $home, Team $away) |
|
| 41 | - {
|
|
| 42 | - $this->goalHome = $goalHome; |
|
| 43 | - $this->goalAway = $goalAway; |
|
| 44 | - $this->homeTeam = $home; |
|
| 45 | - $this->awayTeam = $away; |
|
| 46 | - } |
|
| 33 | + /** |
|
| 34 | + * MatchResult constructor. |
|
| 35 | + * @param $goalHome |
|
| 36 | + * @param $goalAway |
|
| 37 | + * @param Team $home |
|
| 38 | + * @param Team $away |
|
| 39 | + */ |
|
| 40 | + public function __construct($goalHome, $goalAway, Team $home, Team $away) |
|
| 41 | + {
|
|
| 42 | + $this->goalHome = $goalHome; |
|
| 43 | + $this->goalAway = $goalAway; |
|
| 44 | + $this->homeTeam = $home; |
|
| 45 | + $this->awayTeam = $away; |
|
| 46 | + } |
|
| 47 | 47 | |
| 48 | - /** |
|
| 49 | - * @return array |
|
| 50 | - */ |
|
| 51 | - public function getWinnerLoser() |
|
| 52 | - {
|
|
| 53 | - $isDraw = false; |
|
| 54 | - $winner = $this->awayTeam; |
|
| 55 | - $loser = $this->homeTeam; |
|
| 56 | - if ($this->goalAway == $this->goalHome) {
|
|
| 57 | - $isDraw = true; |
|
| 58 | - } else if ($this->goalHome < $this->goalAway) {
|
|
| 59 | - $winner = $this->awayTeam; |
|
| 60 | - $loser = $this->homeTeam; |
|
| 61 | - } |
|
| 62 | - return [ |
|
| 63 | - 'is_draw' => $isDraw, |
|
| 64 | - 'winner_id' => $winner->id, |
|
| 65 | - 'loser_id' => $loser->id |
|
| 66 | - ]; |
|
| 67 | - } |
|
| 48 | + /** |
|
| 49 | + * @return array |
|
| 50 | + */ |
|
| 51 | + public function getWinnerLoser() |
|
| 52 | + {
|
|
| 53 | + $isDraw = false; |
|
| 54 | + $winner = $this->awayTeam; |
|
| 55 | + $loser = $this->homeTeam; |
|
| 56 | + if ($this->goalAway == $this->goalHome) {
|
|
| 57 | + $isDraw = true; |
|
| 58 | + } else if ($this->goalHome < $this->goalAway) {
|
|
| 59 | + $winner = $this->awayTeam; |
|
| 60 | + $loser = $this->homeTeam; |
|
| 61 | + } |
|
| 62 | + return [ |
|
| 63 | + 'is_draw' => $isDraw, |
|
| 64 | + 'winner_id' => $winner->id, |
|
| 65 | + 'loser_id' => $loser->id |
|
| 66 | + ]; |
|
| 67 | + } |
|
| 68 | 68 | |
| 69 | - /** |
|
| 70 | - * @return array |
|
| 71 | - */ |
|
| 72 | - public function toArray() |
|
| 73 | - {
|
|
| 74 | - $result = []; |
|
| 75 | - $result['home_team_id'] = $this->homeTeam->id; |
|
| 76 | - $result['away_team_id'] = $this->awayTeam->id; |
|
| 77 | - $result['goal_home'] = $this->goalHome; |
|
| 78 | - $result['goal_away'] = $this->goalAway; |
|
| 79 | - $result['info'] = $this->getWinnerLoser(); |
|
| 80 | - $result['info']['scorers'] = $this->getScorers(); |
|
| 81 | - $result['simulated'] = true; |
|
| 82 | - return $result; |
|
| 83 | - } |
|
| 84 | - /** |
|
| 85 | - * @return array |
|
| 86 | - */ |
|
| 87 | - private function getScorers() |
|
| 88 | - {
|
|
| 89 | - $scorers = [ |
|
| 90 | - 'home' => [], |
|
| 91 | - 'away' => [] |
|
| 92 | - ]; |
|
| 93 | - for ($i = 0; $i < $this->goalHome; $i++) {
|
|
| 94 | - $scorers['home'][] = $this->pickAScorer($this->homeTeam); |
|
| 95 | - } |
|
| 96 | - for ($i = 0; $i < $this->goalAway; $i++) {
|
|
| 97 | - $scorers['away'][] = $this->pickAScorer($this->awayTeam); |
|
| 98 | - } |
|
| 99 | - return $scorers; |
|
| 100 | - } |
|
| 69 | + /** |
|
| 70 | + * @return array |
|
| 71 | + */ |
|
| 72 | + public function toArray() |
|
| 73 | + {
|
|
| 74 | + $result = []; |
|
| 75 | + $result['home_team_id'] = $this->homeTeam->id; |
|
| 76 | + $result['away_team_id'] = $this->awayTeam->id; |
|
| 77 | + $result['goal_home'] = $this->goalHome; |
|
| 78 | + $result['goal_away'] = $this->goalAway; |
|
| 79 | + $result['info'] = $this->getWinnerLoser(); |
|
| 80 | + $result['info']['scorers'] = $this->getScorers(); |
|
| 81 | + $result['simulated'] = true; |
|
| 82 | + return $result; |
|
| 83 | + } |
|
| 84 | + /** |
|
| 85 | + * @return array |
|
| 86 | + */ |
|
| 87 | + private function getScorers() |
|
| 88 | + {
|
|
| 89 | + $scorers = [ |
|
| 90 | + 'home' => [], |
|
| 91 | + 'away' => [] |
|
| 92 | + ]; |
|
| 93 | + for ($i = 0; $i < $this->goalHome; $i++) {
|
|
| 94 | + $scorers['home'][] = $this->pickAScorer($this->homeTeam); |
|
| 95 | + } |
|
| 96 | + for ($i = 0; $i < $this->goalAway; $i++) {
|
|
| 97 | + $scorers['away'][] = $this->pickAScorer($this->awayTeam); |
|
| 98 | + } |
|
| 99 | + return $scorers; |
|
| 100 | + } |
|
| 101 | 101 | |
| 102 | - /** |
|
| 103 | - * @param Team $team |
|
| 104 | - * @return Player |
|
| 105 | - */ |
|
| 106 | - private function pickAScorer(Team $team) |
|
| 107 | - {
|
|
| 108 | - $player = null; |
|
| 109 | - if (Randomizer::boolOnPercentage(70)) {
|
|
| 110 | - $roles = Config::get('modules.roles');
|
|
| 111 | - $forwards = array_splice($roles, count($roles) / 2); |
|
| 112 | - $pos = array_rand($forwards); |
|
| 113 | - unset($forwards[$pos]); |
|
| 114 | - $player = $team->getBestPlayerForRole($pos); |
|
| 115 | - while (empty($player)) {
|
|
| 116 | - if (!empty($forwards)) {
|
|
| 117 | - $pos = array_rand($forwards); |
|
| 118 | - unset($forwards[$pos]); |
|
| 119 | - $player = $team->getBestPlayerForRole($pos); |
|
| 120 | - } else {
|
|
| 121 | - $player = $team->roster[array_rand($team->roster)]; |
|
| 122 | - } |
|
| 123 | - } |
|
| 124 | - } else {
|
|
| 125 | - $player = $team->roster[array_rand($team->roster)]; |
|
| 126 | - } |
|
| 127 | - return $player; |
|
| 128 | - } |
|
| 102 | + /** |
|
| 103 | + * @param Team $team |
|
| 104 | + * @return Player |
|
| 105 | + */ |
|
| 106 | + private function pickAScorer(Team $team) |
|
| 107 | + {
|
|
| 108 | + $player = null; |
|
| 109 | + if (Randomizer::boolOnPercentage(70)) {
|
|
| 110 | + $roles = Config::get('modules.roles');
|
|
| 111 | + $forwards = array_splice($roles, count($roles) / 2); |
|
| 112 | + $pos = array_rand($forwards); |
|
| 113 | + unset($forwards[$pos]); |
|
| 114 | + $player = $team->getBestPlayerForRole($pos); |
|
| 115 | + while (empty($player)) {
|
|
| 116 | + if (!empty($forwards)) {
|
|
| 117 | + $pos = array_rand($forwards); |
|
| 118 | + unset($forwards[$pos]); |
|
| 119 | + $player = $team->getBestPlayerForRole($pos); |
|
| 120 | + } else {
|
|
| 121 | + $player = $team->roster[array_rand($team->roster)]; |
|
| 122 | + } |
|
| 123 | + } |
|
| 124 | + } else {
|
|
| 125 | + $player = $team->roster[array_rand($team->roster)]; |
|
| 126 | + } |
|
| 127 | + return $player; |
|
| 128 | + } |
|
| 129 | 129 | |
| 130 | 130 | } |
| 131 | 131 | \ No newline at end of file |