Arma Reforger Explorer 1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Loading...
Searching...
No Matches
SCR_MapMarkerEntrySquadMember.c
Go to the documentation of this file.
1
4{
7
8 //------------------------------------------------------------------------------------------------
12 void RegisterMarker(SCR_MapMarkerSquadMember marker, int playerID)
13 {
14 m_mGroupMemberMarkers.Insert(playerID, marker);
15 }
16
17 //------------------------------------------------------------------------------------------------
20 void UnregisterMarker(int playerID)
21 {
22 m_mGroupMemberMarkers.Remove(playerID);
23 }
24
25 //------------------------------------------------------------------------------------------------
27 protected void OnPlayerSpawned(int playerId, IEntity player)
28 {
29 if (m_mGroupMemberMarkers.Contains(playerId))
30 return;
31
32 PlayerController playerController = GetGame().GetPlayerManager().GetPlayerController(playerId);
33 if (!playerController)
34 return;
35
36 Faction faction = SCR_FactionManager.SGetPlayerFaction(playerId);
37 if (!faction)
38 return;
39
40 SCR_MapMarkerSquadMember marker = SCR_MapMarkerSquadMember.Cast(m_MarkerMgr.InsertDynamicMarker(SCR_EMapMarkerType.SQUAD_MEMBER, player));
41 if (!marker)
42 return;
43
44 marker.SetFaction(faction);
45 marker.SetPlayerID(playerId);
46 marker.UpdatePlayerAffiliation();
47 RegisterMarker(marker, playerId);
48 }
49
50 //------------------------------------------------------------------------------------------------
52 protected void OnPlayerKilled(notnull SCR_InstigatorContextData instigatorContextData)
53 {
54 SCR_MapMarkerSquadMember marker = m_mGroupMemberMarkers.Get(instigatorContextData.GetVictimPlayerID());
55 if (marker)
56 m_MarkerMgr.RemoveDynamicMarker(marker);
57
58 UnregisterMarker(instigatorContextData.GetVictimPlayerID());
59 }
60
61 //------------------------------------------------------------------------------------------------
63 protected void OnPlayerDeleted(int playerId, IEntity player)
64 {
65 SCR_MapMarkerSquadMember marker = m_mGroupMemberMarkers.Get(playerId);
66 if (marker)
67 m_MarkerMgr.RemoveDynamicMarker(marker);
68
69 UnregisterMarker(playerId);
70 }
71
72 //------------------------------------------------------------------------------------------------
74 {
75 return SCR_EMapMarkerType.SQUAD_MEMBER;
76 }
77
78 //------------------------------------------------------------------------------------------------
79 override void InitClientSettingsDynamic(notnull SCR_MapMarkerEntity marker, notnull SCR_MapMarkerDynamicWComponent widgetComp)
80 {
81 }
82
83 //------------------------------------------------------------------------------------------------
84 override void InitServerLogic()
85 {
86 super.InitServerLogic();
87
89 if (!gameMode)
90 return;
91
93
94 gameMode.GetOnPlayerSpawned().Insert(OnPlayerSpawned);
95 gameMode.GetOnPlayerKilled().Insert(OnPlayerKilled);
96 gameMode.GetOnPlayerDeleted().Insert(OnPlayerDeleted);
97 }
98
99 //------------------------------------------------------------------------------------------------
100 override void OnMapLayerChangedDynamic(notnull SCR_MapMarkerDynamicWComponent widgetComp, int layerID)
101 {
102 if (layerID > 1)
103 widgetComp.SetTextVisible(false);
104 else
105 widgetComp.SetTextVisible(true);
106 }
107}
ArmaReforgerScripted GetGame()
Definition game.c:1398
SCR_AIAnimation_Loitering BaseContainerProps
Commanding menu commanding element class.
SCR_BaseGameMode GetGameMode()
void SCR_FactionManager(IEntitySource src, IEntity parent)
void SCR_GroupsManagerComponent(IEntityComponentSource src, IEntity ent, IEntity parent)
SCR_EMapMarkerType
ScriptInvokerBase< SCR_BaseGameMode_PlayerIdAndEntity > GetOnPlayerSpawned()
ScriptInvokerBase< SCR_BaseGameMode_PlayerIdAndEntity > GetOnPlayerDeleted()
ScriptInvokerBase< SCR_BaseGameMode_OnControllableDestroyed > GetOnPlayerKilled()
Attached to root of marker dynamic base layout.
Marker dynamic entry base.
SCR_MapMarkerManagerComponent m_MarkerMgr
Squad leader marker entry.
SCR_GroupsManagerComponent m_GroupsManager
void OnPlayerSpawned(int playerId, IEntity player)
SCR_BaseGameMode event.
override SCR_EMapMarkerType GetMarkerType()
override void OnMapLayerChangedDynamic(notnull SCR_MapMarkerDynamicWComponent widgetComp, int layerID)
ref map< int, SCR_MapMarkerSquadMember > m_mGroupMemberMarkers
override void InitServerLogic()
override void InitClientSettingsDynamic(notnull SCR_MapMarkerEntity marker, notnull SCR_MapMarkerDynamicWComponent widgetComp)
void OnPlayerKilled(notnull SCR_InstigatorContextData instigatorContextData)
SCR_BaseGameMode event.
void RegisterMarker(SCR_MapMarkerSquadMember marker, int playerID)
void OnPlayerDeleted(int playerId, IEntity player)
SCR_BaseGameMode event.
void UnregisterMarker(int playerID)
Definition Types.c:486