Skip to content

Commit cdd02f0

Browse files
authored
Add garrison context action (#54)
* Add context action * Add temporary test building pos query class * Add on placing canceled event * Implement garrison context action * Improve building pos query function * Revise module activation * Revise init actions * Implement GME_VehicleHelper methods * Add exception handling to init actions * Prevent race condition between canceling and notification * Implement additional group helper methods * Add support for spawning helicopter crew * Implement method for getting faction from editable entity * Implement invoker for when a group's members spawned * Add support for AI groups to GetGroup * Move "add garrison" logic to a module * Rename building pos query file * Add support for flat roofs and balconies * Hide module icon * Get nearest building from module * Add method for requesting the spawning of an interactive module * Localize context action and helper module * Remove logging * Remove unused method
1 parent b76ebba commit cdd02f0

26 files changed

+768
-42
lines changed

addons/GME/Configs/Editor/ActionLists/Context/TempEdit.conf

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,12 @@ SCR_EditorActionList {
1010
m_bEnableShortcutLogics 0
1111
m_bShowOnCooldownNotification 0
1212
}
13+
GME_AddGarrisonContextAction "{617456553DC30FA6}" {
14+
m_Info SCR_UIInfo "{617456555A0E135F}" {
15+
Name "#GME-ActionList_AddGarrison_Name"
16+
Description "#GME-ActionList_AddGarrison_Description"
17+
Icon "{21BAFC03CB14EAD3}UI/Textures/Editor/ContextMenu/ContextAction_BaseSupply.edds"
18+
}
19+
}
1320
}
1421
}

addons/GME/Language/GME_localization.cs_cz.conf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
StringTableRuntime {
22
Ids {
3+
"GME-ActionList_AddGarrison_Description"
4+
"GME-ActionList_AddGarrison_Name"
35
"GME-ActionList_TeleportToSquadmate_Description"
46
"GME-ActionList_TeleportToSquadmate_Name"
57
"GME-Editor_Attribute_CompletionRadius_Name"
@@ -25,18 +27,21 @@ StringTableRuntime {
2527
"GME-Editor_AttributeCategory_Waypoint_Name"
2628
"GME-Editor_ContentBrowser_Filter_REINFORCEMENTS_Name"
2729
"GME-Editor_ContentBrowser_FilterCategory_MODULETYPE_Name"
28-
"GME-Notification_PICKED_UP_ITEM"
30+
"GME-Editor_ContentBrowser_Title_ChooseGarrison"
2931
"GME-Modules_Attribute_RTBAndDespawn_Name"
3032
"GME-Modules_Attribute_StayAtLZ_Name"
3133
"GME-Modules_Attribute_VehicleBehavior_Name"
3234
"GME-Modules_LZ_name"
3335
"GME-Modules_RallyPoint_name"
3436
"GME-Modules_SpawnReinforcements_name"
37+
"GME-Notification_PICKED_UP_ITEM"
3538
"GME-Notification_PLACE_PREFAB_FIRST"
3639
"GME-UI_Listbox_OnCancel"
3740
"GME-UI_Listbox_OnConfirm"
3841
}
3942
Texts {
43+
"Spawn units to garrison the building"
44+
"Add Garrison"
4045
"Teleportujte jednotku k jednomu z jejích spolubojovníci"
4146
"Teleportujte se ke spolubojovníci"
4247
"Poloměr dokončení"
@@ -62,13 +67,14 @@ StringTableRuntime {
6267
"Bod trasy"
6368
"Reinforcements"
6469
"Module Type"
65-
"%1 picked up %2"
70+
"Choose garrison"
6671
"RTB and Despawn"
6772
"Stay at LZ"
6873
"Vehicle behaviour"
6974
"LZ"
7075
"Rally Point"
7176
"Spawn Reinforcements"
77+
"%1 picked up %2"
7278
"Place %1 first!"
7379
"Zrušit"
7480
"Potvrdit"

addons/GME/Language/GME_localization.de_de.conf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
StringTableRuntime {
22
Ids {
3+
"GME-ActionList_AddGarrison_Description"
4+
"GME-ActionList_AddGarrison_Name"
35
"GME-ActionList_TeleportToSquadmate_Description"
46
"GME-ActionList_TeleportToSquadmate_Name"
57
"GME-Editor_Attribute_CompletionRadius_Name"
@@ -25,18 +27,21 @@ StringTableRuntime {
2527
"GME-Editor_AttributeCategory_Waypoint_Name"
2628
"GME-Editor_ContentBrowser_Filter_REINFORCEMENTS_Name"
2729
"GME-Editor_ContentBrowser_FilterCategory_MODULETYPE_Name"
28-
"GME-Notification_PICKED_UP_ITEM"
30+
"GME-Editor_ContentBrowser_Title_ChooseGarrison"
2931
"GME-Modules_Attribute_RTBAndDespawn_Name"
3032
"GME-Modules_Attribute_StayAtLZ_Name"
3133
"GME-Modules_Attribute_VehicleBehavior_Name"
3234
"GME-Modules_LZ_name"
3335
"GME-Modules_RallyPoint_name"
3436
"GME-Modules_SpawnReinforcements_name"
37+
"GME-Notification_PICKED_UP_ITEM"
3538
"GME-Notification_PLACE_PREFAB_FIRST"
3639
"GME-UI_Listbox_OnCancel"
3740
"GME-UI_Listbox_OnConfirm"
3841
}
3942
Texts {
43+
"Erstelle Einheiten, die das Gebäude besetzen"
44+
"Besaztung hinzufügen"
4045
"Teleportiere die Einheit zu einem seiner Kameraden"
4146
"Zum Kameraden teleportieren"
4247
"Abschlussradius"
@@ -62,13 +67,14 @@ StringTableRuntime {
6267
"Wegpunkt"
6368
"Verstärkungen"
6469
"Modultyp"
65-
"%1 hat %2 aufgelesen"
70+
"Besatzung auswählen"
6671
"Zurück und Löschen"
6772
"Bei LZ verbleiben"
6873
"Fahrzeugverhalten"
6974
"LZ"
7075
"Sammelpunkt"
7176
"Erstelle Verstärkung"
77+
"%1 hat %2 aufgelesen"
7278
"Plaziere %1 zuerst!"
7379
"Abbrechen"
7480
"Bestätigen"

addons/GME/Language/GME_localization.en_us.conf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
StringTableRuntime {
22
Ids {
3+
"GME-ActionList_AddGarrison_Description"
4+
"GME-ActionList_AddGarrison_Name"
35
"GME-ActionList_TeleportToSquadmate_Description"
46
"GME-ActionList_TeleportToSquadmate_Name"
57
"GME-Editor_Attribute_CompletionRadius_Name"
@@ -25,18 +27,21 @@ StringTableRuntime {
2527
"GME-Editor_AttributeCategory_Waypoint_Name"
2628
"GME-Editor_ContentBrowser_Filter_REINFORCEMENTS_Name"
2729
"GME-Editor_ContentBrowser_FilterCategory_MODULETYPE_Name"
28-
"GME-Notification_PICKED_UP_ITEM"
30+
"GME-Editor_ContentBrowser_Title_ChooseGarrison"
2931
"GME-Modules_Attribute_RTBAndDespawn_Name"
3032
"GME-Modules_Attribute_StayAtLZ_Name"
3133
"GME-Modules_Attribute_VehicleBehavior_Name"
3234
"GME-Modules_LZ_name"
3335
"GME-Modules_RallyPoint_name"
3436
"GME-Modules_SpawnReinforcements_name"
37+
"GME-Notification_PICKED_UP_ITEM"
3538
"GME-Notification_PLACE_PREFAB_FIRST"
3639
"GME-UI_Listbox_OnCancel"
3740
"GME-UI_Listbox_OnConfirm"
3841
}
3942
Texts {
43+
"Spawn units to garrison the building"
44+
"Add Garrison"
4045
"Teleport unit to one of its squadmates"
4146
"Teleport To Squadmate"
4247
"Completion radius"
@@ -62,13 +67,14 @@ StringTableRuntime {
6267
"Waypoint"
6368
"Reinforcements"
6469
"Module Type"
65-
"%1 picked up %2"
70+
"Choose garrison"
6671
"RTB and Despawn"
6772
"Stay at LZ"
6873
"Vehicle behaviour"
6974
"LZ"
7075
"Rally Point"
7176
"Spawn Reinforcements"
77+
"%1 picked up %2"
7278
"Place %1 first!"
7379
"Cancel"
7480
"Confirm"

addons/GME/Language/GME_localization.es_es.conf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
StringTableRuntime {
22
Ids {
3+
"GME-ActionList_AddGarrison_Description"
4+
"GME-ActionList_AddGarrison_Name"
35
"GME-ActionList_TeleportToSquadmate_Description"
46
"GME-ActionList_TeleportToSquadmate_Name"
57
"GME-Editor_Attribute_CompletionRadius_Name"
@@ -25,18 +27,21 @@ StringTableRuntime {
2527
"GME-Editor_AttributeCategory_Waypoint_Name"
2628
"GME-Editor_ContentBrowser_Filter_REINFORCEMENTS_Name"
2729
"GME-Editor_ContentBrowser_FilterCategory_MODULETYPE_Name"
28-
"GME-Notification_PICKED_UP_ITEM"
30+
"GME-Editor_ContentBrowser_Title_ChooseGarrison"
2931
"GME-Modules_Attribute_RTBAndDespawn_Name"
3032
"GME-Modules_Attribute_StayAtLZ_Name"
3133
"GME-Modules_Attribute_VehicleBehavior_Name"
3234
"GME-Modules_LZ_name"
3335
"GME-Modules_RallyPoint_name"
3436
"GME-Modules_SpawnReinforcements_name"
37+
"GME-Notification_PICKED_UP_ITEM"
3538
"GME-Notification_PLACE_PREFAB_FIRST"
3639
"GME-UI_Listbox_OnCancel"
3740
"GME-UI_Listbox_OnConfirm"
3841
}
3942
Texts {
43+
"Spawn units to garrison the building"
44+
"Add Garrison"
4045
"Unidad de teletransporte a uno de sus compañeros de escuadrón"
4146
"Teletransportarse a compañero de escuadrón"
4247
"Radio de consecución"
@@ -62,13 +67,14 @@ StringTableRuntime {
6267
"unto de referencia"
6368
"Reinforcements"
6469
"Module Type"
65-
"%1 picked up %2"
70+
"Choose garrison"
6671
"RTB and Despawn"
6772
"Stay at LZ"
6873
"Vehicle behaviour"
6974
"LZ"
7075
"Rally Point"
7176
"Spawn Reinforcements"
77+
"%1 picked up %2"
7278
"Place %1 first!"
7379
"Cancelar"
7480
"Confirmar"

addons/GME/Language/GME_localization.fr_fr.conf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
StringTableRuntime {
22
Ids {
3+
"GME-ActionList_AddGarrison_Description"
4+
"GME-ActionList_AddGarrison_Name"
35
"GME-ActionList_TeleportToSquadmate_Description"
46
"GME-ActionList_TeleportToSquadmate_Name"
57
"GME-Editor_Attribute_CompletionRadius_Name"
@@ -25,18 +27,21 @@ StringTableRuntime {
2527
"GME-Editor_AttributeCategory_Waypoint_Name"
2628
"GME-Editor_ContentBrowser_Filter_REINFORCEMENTS_Name"
2729
"GME-Editor_ContentBrowser_FilterCategory_MODULETYPE_Name"
28-
"GME-Notification_PICKED_UP_ITEM"
30+
"GME-Editor_ContentBrowser_Title_ChooseGarrison"
2931
"GME-Modules_Attribute_RTBAndDespawn_Name"
3032
"GME-Modules_Attribute_StayAtLZ_Name"
3133
"GME-Modules_Attribute_VehicleBehavior_Name"
3234
"GME-Modules_LZ_name"
3335
"GME-Modules_RallyPoint_name"
3436
"GME-Modules_SpawnReinforcements_name"
37+
"GME-Notification_PICKED_UP_ITEM"
3538
"GME-Notification_PLACE_PREFAB_FIRST"
3639
"GME-UI_Listbox_OnCancel"
3740
"GME-UI_Listbox_OnConfirm"
3841
}
3942
Texts {
43+
"Spawn units to garrison the building"
44+
"Add Garrison"
4045
"Téléporter l'unité à l'un de ses coéquipiers"
4146
"Téléportation vers un coéquipier"
4247
"Radio de consecución"
@@ -62,13 +67,14 @@ StringTableRuntime {
6267
"Point de passage"
6368
"Reinforcements"
6469
"Module Type"
65-
"%1 picked up %2"
70+
"Choose garrison"
6671
"RTB and Despawn"
6772
"Stay at LZ"
6873
"Vehicle behaviour"
6974
"LZ"
7075
"Rally Point"
7176
"Spawn Reinforcements"
77+
"%1 picked up %2"
7278
"Place %1 first!"
7379
"Annuler"
7480
"Confirmer"

addons/GME/Language/GME_localization.it_it.conf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
StringTableRuntime {
22
Ids {
3+
"GME-ActionList_AddGarrison_Description"
4+
"GME-ActionList_AddGarrison_Name"
35
"GME-ActionList_TeleportToSquadmate_Description"
46
"GME-ActionList_TeleportToSquadmate_Name"
57
"GME-Editor_Attribute_CompletionRadius_Name"
@@ -25,18 +27,21 @@ StringTableRuntime {
2527
"GME-Editor_AttributeCategory_Waypoint_Name"
2628
"GME-Editor_ContentBrowser_Filter_REINFORCEMENTS_Name"
2729
"GME-Editor_ContentBrowser_FilterCategory_MODULETYPE_Name"
28-
"GME-Notification_PICKED_UP_ITEM"
30+
"GME-Editor_ContentBrowser_Title_ChooseGarrison"
2931
"GME-Modules_Attribute_RTBAndDespawn_Name"
3032
"GME-Modules_Attribute_StayAtLZ_Name"
3133
"GME-Modules_Attribute_VehicleBehavior_Name"
3234
"GME-Modules_LZ_name"
3335
"GME-Modules_RallyPoint_name"
3436
"GME-Modules_SpawnReinforcements_name"
37+
"GME-Notification_PICKED_UP_ITEM"
3538
"GME-Notification_PLACE_PREFAB_FIRST"
3639
"GME-UI_Listbox_OnCancel"
3740
"GME-UI_Listbox_OnConfirm"
3841
}
3942
Texts {
43+
"Spawn units to garrison the building"
44+
"Add Garrison"
4045
"Teletrasporta l'unità a uno dei suoi compagni di squadra"
4146
"Teletrasporta al compagno di squadra"
4247
"Raggio di completamento"
@@ -62,13 +67,14 @@ StringTableRuntime {
6267
"Destinazione"
6368
"Reinforcements"
6469
"Module Type"
65-
"%1 picked up %2"
70+
"Choose garrison"
6671
"Indietro ed elimina"
6772
"Soggiorna a LZ"
6873
"Comportamento del veicolo"
6974
"LZ"
7075
"Rally Point"
7176
"Genera rinforzi"
77+
"%1 picked up %2"
7278
"Place %1 first!"
7379
"Annulla"
7480
"Confermar"

addons/GME/Language/GME_localization.ja_jp.conf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
StringTableRuntime {
22
Ids {
3+
"GME-ActionList_AddGarrison_Description"
4+
"GME-ActionList_AddGarrison_Name"
35
"GME-ActionList_TeleportToSquadmate_Description"
46
"GME-ActionList_TeleportToSquadmate_Name"
57
"GME-Editor_Attribute_CompletionRadius_Name"
@@ -25,18 +27,21 @@ StringTableRuntime {
2527
"GME-Editor_AttributeCategory_Waypoint_Name"
2628
"GME-Editor_ContentBrowser_Filter_REINFORCEMENTS_Name"
2729
"GME-Editor_ContentBrowser_FilterCategory_MODULETYPE_Name"
28-
"GME-Notification_PICKED_UP_ITEM"
30+
"GME-Editor_ContentBrowser_Title_ChooseGarrison"
2931
"GME-Modules_Attribute_RTBAndDespawn_Name"
3032
"GME-Modules_Attribute_StayAtLZ_Name"
3133
"GME-Modules_Attribute_VehicleBehavior_Name"
3234
"GME-Modules_LZ_name"
3335
"GME-Modules_RallyPoint_name"
3436
"GME-Modules_SpawnReinforcements_name"
37+
"GME-Notification_PICKED_UP_ITEM"
3538
"GME-Notification_PLACE_PREFAB_FIRST"
3639
"GME-UI_Listbox_OnCancel"
3740
"GME-UI_Listbox_OnConfirm"
3841
}
3942
Texts {
43+
"Spawn units to garrison the building"
44+
"Add Garrison"
4045
"ユニットを分隊メンバーの一人にテレポートする"
4146
"分隊へテレポート"
4247
"完了範囲"
@@ -62,13 +67,14 @@ StringTableRuntime {
6267
"ウェイポイント"
6368
"Reinforcements"
6469
"Module Type"
65-
"%1 picked up %2"
70+
"Choose garrison"
6671
"RTB と削除"
6772
"LZ で待機"
6873
"車両の挙動"
6974
"LZ"
7075
"Rally Point"
7176
"増援生成"
77+
"%1 picked up %2"
7278
"Place %1 first!"
7379
"キャンセル"
7480
"確定"

addons/GME/Language/GME_localization.ko_kr.conf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
StringTableRuntime {
22
Ids {
3+
"GME-ActionList_AddGarrison_Description"
4+
"GME-ActionList_AddGarrison_Name"
35
"GME-ActionList_TeleportToSquadmate_Description"
46
"GME-ActionList_TeleportToSquadmate_Name"
57
"GME-Editor_Attribute_CompletionRadius_Name"
@@ -25,18 +27,21 @@ StringTableRuntime {
2527
"GME-Editor_AttributeCategory_Waypoint_Name"
2628
"GME-Editor_ContentBrowser_Filter_REINFORCEMENTS_Name"
2729
"GME-Editor_ContentBrowser_FilterCategory_MODULETYPE_Name"
28-
"GME-Notification_PICKED_UP_ITEM"
30+
"GME-Editor_ContentBrowser_Title_ChooseGarrison"
2931
"GME-Modules_Attribute_RTBAndDespawn_Name"
3032
"GME-Modules_Attribute_StayAtLZ_Name"
3133
"GME-Modules_Attribute_VehicleBehavior_Name"
3234
"GME-Modules_LZ_name"
3335
"GME-Modules_RallyPoint_name"
3436
"GME-Modules_SpawnReinforcements_name"
37+
"GME-Notification_PICKED_UP_ITEM"
3538
"GME-Notification_PLACE_PREFAB_FIRST"
3639
"GME-UI_Listbox_OnCancel"
3740
"GME-UI_Listbox_OnConfirm"
3841
}
3942
Texts {
43+
"Spawn units to garrison the building"
44+
"Add Garrison"
4045
"유닛을 분대원 중 한 명에게 텔레포트합니다."
4146
"분대원에게 텔레포트"
4247
"완료 반경"
@@ -62,13 +67,14 @@ StringTableRuntime {
6267
"경유지"
6368
"Reinforcements"
6469
"Module Type"
65-
"%1 picked up %2"
70+
"Choose garrison"
6671
"귀환 후 삭제"
6772
"LZ에 머물르기"
6873
"차량 행동"
6974
"LZ"
7075
"Rally Point"
7176
"증원군 소환"
77+
"%1 picked up %2"
7278
"Place %1 first!"
7379
"취소"
7480
"확인"

0 commit comments

Comments
 (0)