ProtectionOfTheGods   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

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

6 Methods

Rating   Name   Duplication   Size   Complexity  
A getEffects() 0 3 1
A getName() 0 3 1
A getDescription() 0 3 1
A __toString() 0 3 1
A getRequiredTalentPoints() 0 3 1
A getRequiredAscension() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace AardsGerds\Game\Build\Talent\SecretKnowledge\EighthAscension;
6
7
use AardsGerds\Game\Build\Talent\Effect\EffectCollection;
8
use AardsGerds\Game\Build\Talent\Effect\Immortality;
9
use AardsGerds\Game\Build\Talent\SecretKnowledge\Ascension;
10
use AardsGerds\Game\Build\Talent\SecretKnowledge\SecretKnowledgeTalent;
11
use AardsGerds\Game\Build\Talent\TalentPoints;
12
use JetBrains\PhpStorm\Immutable;
13
14
#[Immutable]
15
final class ProtectionOfTheGods implements SecretKnowledgeTalent
16
{
17
    public function getEffects(): EffectCollection
18
    {
19
        return new EffectCollection([new Immortality()]);
20
    }
21
22
    public static function getName(): string
23
    {
24
        return 'Protection Of The Gods';
25
    }
26
27
    public static function getDescription(): string
28
    {
29
        return 'You are immune to mortal wounds and illness.';
30
    }
31
32
    public static function getRequiredTalentPoints(): TalentPoints
33
    {
34
        return new TalentPoints(20);
35
    }
36
37
    public static function getRequiredAscension(): Ascension
38
    {
39
        return Ascension::eighthAscension();
40
    }
41
42
    public function __toString(): string
43
    {
44
        return self::getName();
45
    }
46
}
47