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_WeaponLoadAction.c
Go to the documentation of this file.
1
class
SCR_WeaponLoadAction
:
ScriptedUserAction
2
{
3
private
IEntity
m_Owner;
4
private
IEntity
m_LastObserver;
5
6
private
BaseWeaponComponent
m_Weapon;
7
8
//------------------------------------------------------------------------------------------------
9
override
bool
CanBeShownScript(
IEntity
user)
10
{
11
m_LastObserver = user;
12
return
CanBePerformedScript(user);
13
}
14
15
//------------------------------------------------------------------------------------------------
17
override
bool
CanBePerformedScript(
IEntity
user)
18
{
19
return
false
;
20
/*
21
if(!m_Weapon)
22
return false;
23
24
IEntity parent = m_Owner.GetParent();
25
if (!parent)
26
return false;
27
28
auto genericUser = GenericEntity.Cast(user);
29
30
// Check if user is in a compartment
31
ChimeraCharacter char = ChimeraCharacter.Cast(genericUser);
32
if (char)
33
{
34
CompartmentAccessComponent comp = char.GetCompartmentAccessComponent();
35
if (comp && comp.IsInCompartment())
36
return false;
37
}
38
39
// Check for compatible magazines
40
SCR_InventoryManagerComponent inventory = SCR_InventoryManagerComponent.Cast(genericUser.FindComponent(SCR_InventoryManagerComponent));
41
if (inventory && inventory.GetMagazineCountByWeapon(m_Weapon) <= 0)
42
return false;
43
45
MortarMuzzleComponent mortarMuzzleComponent = MortarMuzzleComponent.Cast(m_Weapon.GetCurrentMuzzle());
46
if (mortarMuzzleComponent && mortarMuzzleComponent.GetAmmoCount() >= mortarMuzzleComponent.GetMaxAmmoCount())
47
return false;
48
49
return true;
50
*/
51
}
52
53
//---------------------------------------------------------
55
override
void
PerformAction
(
IEntity
pOwnerEntity,
IEntity
pUserEntity)
56
{
57
/*
58
GenericEntity genericUserEntity = GenericEntity.Cast(pUserEntity);
59
BaseInventoryManagerComponent baseInventoryManager = BaseInventoryManagerComponent.Cast(genericUserEntity.FindComponent(BaseInventoryManagerComponent));
60
SCR_InventoryManagerComponent inventoryManager = SCR_InventoryManagerComponent.Cast(baseInventoryManager);
61
62
MortarMuzzleComponent mortarMuzzleComponent = MortarMuzzleComponent.Cast(m_Weapon.GetCurrentMuzzle());
63
if (mortarMuzzleComponent && mortarMuzzleComponent.GetAmmoCount() < mortarMuzzleComponent.GetMaxAmmoCount())
64
{
65
IEntity shell = inventoryManager.OnGetMagazine(mortarMuzzleComponent.GetMagazineWell());
66
if (shell)
67
{
68
inventoryManager.Remove(shell, null, true);
69
mortarMuzzleComponent.LoadMortar(shell);
70
}
71
}
72
*/
73
}
74
75
//------------------------------------------------------------------------------------------------
76
override
bool
GetActionNameScript(out
string
outName)
77
{
78
if
(m_LastObserver)
79
{
80
GenericEntity
watcher =
GenericEntity
.Cast(m_LastObserver);
81
outName =
"Load"
;
82
return
true
;
83
}
84
85
return
false
;
86
}
87
88
//------------------------------------------------------------------------------------------------
89
override
void
Init
(
IEntity
pOwnerEntity,
GenericComponent
pManagerComponent)
90
{
91
m_Owner = pOwnerEntity;
92
m_Weapon =
BaseWeaponComponent
.Cast(m_Owner.FindComponent(
BaseWeaponComponent
));
93
}
94
95
//------------------------------------------------------------------------------------------------
96
/*override bool HasLocalEffectOnlyScript()
97
{
98
return true;
99
}*/
100
};
Init
override void Init()
Definition
CharacterCameraHandlerComponent.c:40
BaseWeaponComponent
Definition
BaseWeaponComponent.c:13
GenericComponent
Definition
GenericComponent.c:13
GenericEntity
Definition
GenericEntity.c:16
IEntity
Definition
IEntity.c:13
SCR_WeaponLoadAction
Definition
SCR_WeaponLoadAction.c:2
ScriptedUserAction
Definition
ScriptedUserAction.c:13
PerformAction
@ PerformAction
Definition
EUserActionEvent.c:15
scripts
Game
UserActions
SCR_WeaponLoadAction.c
Generated by
1.17.0