Passed
Push — dev ( 712ebc...eb43f6 )
by Nico
21:22
created

ModuleRumpWrapperSensor   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 10
dl 0
loc 20
ccs 0
cts 12
cp 0
rs 10
c 1
b 0
f 0
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A apply() 0 3 1
A getValue() 0 12 2
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Stu\Lib\ModuleRumpWrapper;
6
7
use Stu\Module\Ship\Lib\ModuleValueCalculator;
8
use Stu\Orm\Entity\ShipInterface;
9
10
final class ModuleRumpWrapperSensor extends ModuleRumpWrapperBase implements ModuleRumpWrapperInterface
11
{
12
    public function getValue(): int
13
    {
14
        $module = current($this->modules);
15
        if ($module === false) {
16
            return 0;
17
        }
18
19
        return (new ModuleValueCalculator())->calculateModuleValue(
20
            $this->rump,
21
            $module->getModule(),
22
            null,
23
            $this->rump->getBaseSensorRange()
24
        );
25
    }
26
27
    public function apply(ShipInterface $ship): void
28
    {
29
        $ship->setSensorRange($this->getValue());
30
    }
31
}
32