Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
CustomIntCondition.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
CustomIntCondition
:
AchievementCondition
8
{
9
[JsonProperty(
"Value"
)]
10
private
int
_value
;
11
12
private
int
_maxValue
;
13
14
public
int
Value
15
{
16
get
17
{
18
return
_value
;
19
}
20
set
21
{
22
int
num =
Utils
.Clamp(value, 0,
_maxValue
);
23
if
(
_tracker
!=
null
)
24
{
25
((
ConditionIntTracker
)
_tracker
).SetValue(num);
26
}
27
_value
= num;
28
if
(
_value
==
_maxValue
)
29
{
30
Complete
();
31
}
32
}
33
}
34
35
private
CustomIntCondition
(
string
name,
int
maxValue)
36
: base(name)
37
{
38
_maxValue
= maxValue;
39
_value
= 0;
40
}
41
42
public
override
void
Clear
()
43
{
44
_value
= 0;
45
base.Clear();
46
}
47
48
public
override
void
Load
(JObject state)
49
{
50
base.Load(state);
51
_value
= (int)state[
"Value"
];
52
if
(
_tracker
!=
null
)
53
{
54
((
ConditionIntTracker
)
_tracker
).SetValue(
_value
, reportUpdate:
false
);
55
}
56
}
57
58
protected
override
IAchievementTracker
CreateAchievementTracker
()
59
{
60
return
new
ConditionIntTracker
(
_maxValue
);
61
}
62
63
public
static
AchievementCondition
Create
(
string
name,
int
maxValue)
64
{
65
return
new
CustomIntCondition
(name, maxValue);
66
}
67
68
public
override
void
Complete
()
69
{
70
if
(
_tracker
!=
null
)
71
{
72
((
ConditionIntTracker
)
_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.ConditionIntTracker
Definition
ConditionIntTracker.cs:6
Terraria.GameContent.Achievements.CustomIntCondition._value
int _value
Definition
CustomIntCondition.cs:10
Terraria.GameContent.Achievements.CustomIntCondition._maxValue
int _maxValue
Definition
CustomIntCondition.cs:12
Terraria.GameContent.Achievements.CustomIntCondition.CreateAchievementTracker
override IAchievementTracker CreateAchievementTracker()
Definition
CustomIntCondition.cs:58
Terraria.GameContent.Achievements.CustomIntCondition.Load
override void Load(JObject state)
Definition
CustomIntCondition.cs:48
Terraria.GameContent.Achievements.CustomIntCondition.Create
static AchievementCondition Create(string name, int maxValue)
Definition
CustomIntCondition.cs:63
Terraria.GameContent.Achievements.CustomIntCondition.Clear
override void Clear()
Definition
CustomIntCondition.cs:42
Terraria.GameContent.Achievements.CustomIntCondition.Value
int Value
Definition
CustomIntCondition.cs:15
Terraria.GameContent.Achievements.CustomIntCondition.CustomIntCondition
CustomIntCondition(string name, int maxValue)
Definition
CustomIntCondition.cs:35
Terraria.GameContent.Achievements.CustomIntCondition.Complete
override void Complete()
Definition
CustomIntCondition.cs:68
Terraria.GameContent.Achievements.CustomIntCondition
Definition
CustomIntCondition.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
CustomIntCondition.cs
Generated by
1.10.0