Arma Reforger Explorer
1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Toggle main menu visibility
Loading...
Searching...
No Matches
SCR_EffectsModuleComponentSerializer.c
Go to the documentation of this file.
1
class
SCR_EffectsModuleComponentSerializer
:
ScriptedComponentSerializer
2
{
3
//------------------------------------------------------------------------------------------------
4
override
static
typename
GetTargetType
()
5
{
6
return
SCR_EffectsModuleComponent
;
7
}
8
9
//------------------------------------------------------------------------------------------------
10
override
protected
ESerializeResult
Serialize
(notnull
IEntity
owner, notnull
GenericComponent
component, notnull
SaveContext
context)
11
{
12
const
SCR_EffectsModuleComponent
effectComponent =
SCR_EffectsModuleComponent
.Cast(component);
13
const
SCR_EffectsModule
effectModule = effectComponent.
GetEffectsModuleConfig
();
14
15
const
bool
paused = effectModule.
IsPaused
();
16
17
int
barragesLeft = -1;
18
int
totalProjectilesInBarrage = -1;
19
int
projectilesLeftInBarrage = -1;
20
const
SCR_BarrageEffectsModule
barrage =
SCR_BarrageEffectsModule
.Cast(effectModule);
21
if
(barrage)
22
{
23
barragesLeft = barrage.
GetBarragesLeft
();
24
25
if
(barragesLeft > 0)
26
{
27
totalProjectilesInBarrage = barrage.
GetTotalProjectilesInBarrage
();
28
projectilesLeftInBarrage = barrage.
GetProjectilesLeftInBarrage
();
29
}
30
}
31
32
if
(!paused && barragesLeft == -1 && projectilesLeftInBarrage == -1)
33
return
ESerializeResult
.DEFAULT;
34
35
context.WriteValue(
"version"
, 1);
36
37
if
(effectModule.
CanPause
())
38
context.WriteDefault(paused,
false
);
39
40
context.WriteDefault(barragesLeft, -1);
41
if
(barragesLeft > 0)
42
{
43
context.WriteDefault(totalProjectilesInBarrage, -1);
44
context.WriteDefault(projectilesLeftInBarrage, -1);
45
}
46
47
return
ESerializeResult
.OK;
48
}
49
50
//------------------------------------------------------------------------------------------------
51
override
protected
bool
Deserialize
(notnull
IEntity
owner, notnull
GenericComponent
component, notnull
LoadContext
context)
52
{
53
SCR_EffectsModuleComponent
effectComponent =
SCR_EffectsModuleComponent
.Cast(component);
54
const
SCR_EffectsModule
effectModule = effectComponent.
GetEffectsModuleConfig
();
55
56
int
version;
57
context.Read(version);
58
59
if
(effectModule.
CanPause
())
60
{
61
bool
paused;
62
if
(context.Read(paused) && paused)
63
effectModule.
SetPaused
(
true
);
64
}
65
66
int
barragesLeft;
67
context.ReadDefault(barragesLeft, -1);
68
69
int
totalProjectilesInBarrage = -1;
70
int
projectilesLeftInBarrage = -1;
71
if
(barragesLeft > 0)
72
{
73
context.ReadDefault(totalProjectilesInBarrage, -1);
74
context.ReadDefault(projectilesLeftInBarrage, -1);
75
}
76
77
const
SCR_BarrageEffectsModule
barrage =
SCR_BarrageEffectsModule
.Cast(effectModule);
78
if
(barrage)
79
{
80
if
(barragesLeft != -1)
81
barrage.
SetBarragesLeft
(barragesLeft);
82
83
if
(totalProjectilesInBarrage != -1)
84
barrage.
SetTotalProjectilesInBarrage
(totalProjectilesInBarrage);
85
86
if
(projectilesLeftInBarrage != -1)
87
barrage.
SetProjectilesLeftInBarrage
(projectilesLeftInBarrage);
88
}
89
90
return
true
;
91
}
92
}
GetTargetType
class SCR_PersistentThreatSector GetTargetType()
Definition
AIControlComponentSerializer.c:12
GenericComponent
Definition
GenericComponent.c:13
IEntity
Definition
IEntity.c:13
LoadContext
Definition
LoadContext.c:17
SCR_BarrageEffectsModule
Definition
SCR_BarrageEffectModule.c:3
SCR_BarrageEffectsModule::GetProjectilesLeftInBarrage
int GetProjectilesLeftInBarrage()
Definition
SCR_BarrageEffectModule.c:169
SCR_BarrageEffectsModule::SetProjectilesLeftInBarrage
void SetProjectilesLeftInBarrage(int projectiles)
Definition
SCR_BarrageEffectModule.c:176
SCR_BarrageEffectsModule::GetBarragesLeft
int GetBarragesLeft()
Definition
SCR_BarrageEffectModule.c:182
SCR_BarrageEffectsModule::SetBarragesLeft
void SetBarragesLeft(int barrages)
Definition
SCR_BarrageEffectModule.c:189
SCR_BarrageEffectsModule::SetTotalProjectilesInBarrage
void SetTotalProjectilesInBarrage(int projectiles)
Definition
SCR_BarrageEffectModule.c:163
SCR_BarrageEffectsModule::GetTotalProjectilesInBarrage
int GetTotalProjectilesInBarrage()
Definition
SCR_BarrageEffectModule.c:156
SCR_EffectsModuleComponent
Definition
SCR_EffectModuleComponent.c:11
SCR_EffectsModuleComponent::GetEffectsModuleConfig
SCR_EffectsModule GetEffectsModuleConfig()
Definition
SCR_EffectModuleComponent.c:28
SCR_EffectsModuleComponentSerializer
Definition
SCR_EffectsModuleComponentSerializer.c:2
SCR_EffectsModuleComponentSerializer::Deserialize
bool Deserialize(notnull IEntity owner, notnull GenericComponent component, notnull LoadContext context)
Definition
SCR_EffectsModuleComponentSerializer.c:51
SCR_EffectsModuleComponentSerializer::Serialize
ESerializeResult Serialize(notnull IEntity owner, notnull GenericComponent component, notnull SaveContext context)
Definition
SCR_EffectsModuleComponentSerializer.c:10
SCR_EffectsModule
Definition
SCR_EffectModule.c:3
SCR_EffectsModule::CanPause
bool CanPause()
Definition
SCR_EffectModule.c:257
SCR_EffectsModule::IsPaused
bool IsPaused()
Definition
SCR_EffectModule.c:267
SCR_EffectsModule::SetPaused
void SetPaused(bool paused)
Definition
SCR_EffectModule.c:277
SaveContext
Definition
SaveContext.c:17
ScriptedComponentSerializer
Definition
ScriptedComponentSerializer.c:13
ESerializeResult
ESerializeResult
Definition
ESerializeResult.c:13
scripts
Game
Plugins
Persistence
System
Serializers
Components
GameMode
Editor
SCR_EffectsModuleComponentSerializer.c
Generated by
1.17.0