Passed
Push — dev ( 0aa780...31f66c )
by Janko
11:20
created

SpacecraftAttackCauseEnum::isOneWay()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 7
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 6
nc 1
nop 0
dl 0
loc 8
ccs 7
cts 7
cp 1
crap 1
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace Stu\Module\Spacecraft\Lib\Battle;
4
5
use Stu\Module\Spacecraft\Lib\Destruction\SpacecraftDestructionCauseEnum;
6
7
enum SpacecraftAttackCauseEnum
8
{
9
    case SHIP_FIGHT;
10
    case ALERT_YELLOW;
11
    case ALERT_RED;
12
    case COLONY_DEFENSE;
13
    case ACTIVATE_TRACTOR;
14
    case BOARD_SHIP;
15
    case THOLIAN_WEB_REFLECTION;
16
    case TARGET_CAPTURED_IN_THOLIAN_WEB;
17
18 1
    public function isOneWay(): bool
19
    {
20 1
        return match ($this) {
21 1
            self::ACTIVATE_TRACTOR,
22 1
            self::BOARD_SHIP,
23 1
            self::THOLIAN_WEB_REFLECTION,
24 1
            self::TARGET_CAPTURED_IN_THOLIAN_WEB => true,
25 1
            default => false
26 1
        };
27
    }
28
29 1
    public function getDestructionCause(): SpacecraftDestructionCauseEnum
30
    {
31 1
        return match ($this) {
32 1
            self::ALERT_YELLOW => SpacecraftDestructionCauseEnum::ALERT_YELLOW,
33 1
            self::ALERT_RED => SpacecraftDestructionCauseEnum::ALERT_RED,
34 1
            default => SpacecraftDestructionCauseEnum::SHIP_FIGHT
35 1
        };
36
    }
37
}
38