Client LuaCsForBarotrauma
CharacterAbilityModifyValue.cs
1
namespace
Barotrauma.Abilities
2
{
3
class
CharacterAbilityModifyValue
:
CharacterAbility
4
{
5
private
readonly
float
addedValue;
6
private
readonly
float
multiplyValue;
7
8
public
CharacterAbilityModifyValue
(
CharacterAbilityGroup
characterAbilityGroup,
ContentXElement
abilityElement) : base(characterAbilityGroup, abilityElement)
9
{
10
addedValue = abilityElement.
GetAttributeFloat
(
"addedvalue"
, 0f);
11
multiplyValue = abilityElement.
GetAttributeFloat
(
"multiplyvalue"
, 1f);
12
if
(MathUtils.NearlyEqual(addedValue, 0.0f) && MathUtils.NearlyEqual(multiplyValue, 1.0f))
13
{
14
DebugConsole.ThrowError($
"Error in talent {CharacterTalent.DebugIdentifier}, {nameof(CharacterAbilityModifyValue)} - added value is 0 and multiplier is 1, the ability will do nothing."
,
15
contentPackage: abilityElement.
ContentPackage
);
16
}
17
}
18
19
protected
override
void
ApplyEffect
(
AbilityObject
abilityObject)
20
{
21
if
(abilityObject is
IAbilityValue
abilityValue)
22
{
23
abilityValue.Value += addedValue;
24
abilityValue.Value *= multiplyValue;
25
}
26
}
27
}
28
}
Barotrauma.Abilities.AbilityObject
Definition:
AbilityObjects.cs:6
Barotrauma.Abilities.CharacterAbilityGroup
Definition:
CharacterAbilityGroup.cs:9
Barotrauma.Abilities.CharacterAbility
Definition:
CharacterAbility.cs:7
Barotrauma.Abilities.CharacterAbilityModifyValue
Definition:
CharacterAbilityModifyValue.cs:4
Barotrauma.Abilities.CharacterAbilityModifyValue.ApplyEffect
override void ApplyEffect(AbilityObject abilityObject)
Definition:
CharacterAbilityModifyValue.cs:19
Barotrauma.Abilities.CharacterAbilityModifyValue.CharacterAbilityModifyValue
CharacterAbilityModifyValue(CharacterAbilityGroup characterAbilityGroup, ContentXElement abilityElement)
Definition:
CharacterAbilityModifyValue.cs:8
Barotrauma.ContentXElement
Definition:
ContentXElement.cs:13
Barotrauma.ContentXElement.GetAttributeFloat
float GetAttributeFloat(string key, float def)
Barotrauma.ContentXElement.ContentPackage
ContentPackage? ContentPackage
Definition:
ContentXElement.cs:14
Barotrauma.Abilities.IAbilityValue
Definition:
AbilityInterfaces.cs:14
Barotrauma.Abilities
Definition:
AbilityCondition.cs:5
Barotrauma
BarotraumaShared
SharedSource
Characters
Talents
Abilities
CharacterAbilityModifyValue.cs
Generated by
1.9.1