Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
CustomFloatCondition.cs
Go to the documentation of this file.
1
using
Newtonsoft.Json;
2
using
Newtonsoft.Json.Linq;
3
using
Terraria.Achievements
;
4
5
namespace
Terraria.GameContent.Achievements
;
6
7
public
class
CustomFloatCondition
:
AchievementCondition
8
{
9
[JsonProperty(
"Value"
)]
10
private
float
_value
;
11
12
private
float
_maxValue
;
13
14
public
float
Value
15
{
16
get
17
{
18
return
_value
;
19
}
20
set
21
{
22
float
num =
Utils
.Clamp(value, 0f,
_maxValue
);
23
if
(
_tracker
!=
null
)
24
{
25
((
ConditionFloatTracker
)
_tracker
).SetValue(num);
26
}
27
_value
= num;
28
if
(
_value
==
_maxValue
)
29
{
30
Complete
();
31
}
32
}
33
}
34
35
private
CustomFloatCondition
(
string
name,
float
maxValue)
36
: base(name)
37
{
38
_maxValue
= maxValue;
39
_value
= 0f;
40
}
41
42
public
override
void
Clear
()
43
{
44
_value
= 0f;
45
base.Clear();
46
}
47
48
public
override
void
Load
(JObject state)
49
{
50
base.Load(state);
51
_value
= (float)state[
"Value"
];
52
if
(
_tracker
!=
null
)
53
{
54
((
ConditionFloatTracker
)
_tracker
).SetValue(
_value
, reportUpdate:
false
);
55
}
56
}
57
58
protected
override
IAchievementTracker
CreateAchievementTracker
()
59
{
60
return
new
ConditionFloatTracker
(
_maxValue
);
61
}
62
63
public
static
AchievementCondition
Create
(
string
name,
float
maxValue)
64
{
65
return
new
CustomFloatCondition
(name, maxValue);
66
}
67
68
public
override
void
Complete
()
69
{
70
if
(
_tracker
!=
null
)
71
{
72
((
ConditionFloatTracker
)
_tracker
).SetValue(
_maxValue
);
73
}
74
_value
=
_maxValue
;
75
base.Complete();
76
}
77
}
Terraria.Achievements.AchievementCondition._tracker
IAchievementTracker _tracker
Definition
AchievementCondition.cs:13
Terraria.Achievements.AchievementCondition
Definition
AchievementCondition.cs:8
Terraria.Achievements.ConditionFloatTracker
Definition
ConditionFloatTracker.cs:6
Terraria.GameContent.Achievements.CustomFloatCondition.Create
static AchievementCondition Create(string name, float maxValue)
Definition
CustomFloatCondition.cs:63
Terraria.GameContent.Achievements.CustomFloatCondition.CustomFloatCondition
CustomFloatCondition(string name, float maxValue)
Definition
CustomFloatCondition.cs:35
Terraria.GameContent.Achievements.CustomFloatCondition.Complete
override void Complete()
Definition
CustomFloatCondition.cs:68
Terraria.GameContent.Achievements.CustomFloatCondition._value
float _value
Definition
CustomFloatCondition.cs:10
Terraria.GameContent.Achievements.CustomFloatCondition.Value
float Value
Definition
CustomFloatCondition.cs:15
Terraria.GameContent.Achievements.CustomFloatCondition.Load
override void Load(JObject state)
Definition
CustomFloatCondition.cs:48
Terraria.GameContent.Achievements.CustomFloatCondition._maxValue
float _maxValue
Definition
CustomFloatCondition.cs:12
Terraria.GameContent.Achievements.CustomFloatCondition.CreateAchievementTracker
override IAchievementTracker CreateAchievementTracker()
Definition
CustomFloatCondition.cs:58
Terraria.GameContent.Achievements.CustomFloatCondition.Clear
override void Clear()
Definition
CustomFloatCondition.cs:42
Terraria.GameContent.Achievements.CustomFloatCondition
Definition
CustomFloatCondition.cs:8
Terraria.Utils
Definition
Utils.cs:29
Terraria.Achievements.IAchievementTracker
Definition
IAchievementTracker.cs:4
Terraria.Achievements
Definition
Achievement.cs:7
Terraria.GameContent.Achievements
Definition
AchievementsHelper.cs:1
source
Terraria.GameContent.Achievements
CustomFloatCondition.cs
Generated by
1.10.0