Skip to content

Commit

Permalink
feat: Add AFM Tools menu (#6)
Browse files Browse the repository at this point in the history
* Pause menu dialog PoC

* Move logo to the top

* Add dialog background

* Implement scripted tabs

* Add container for storing list of admins

* Refactor to AFM Tools

* Add stringtable

* Add AFM_SettingsComponent to DefaultPlayerController

* PoC settings debug serialization

* Add AFM_PlainTextContainerSerializer

* Move menu classes to tools folder

* Add support for more types to plain text serializer

* Add support for mission header to settings network component

* Add tools submenu with SCR_MissionHeader and ACE Settings debug

* Improve spinner behaviour

Overlay whole tab area, single widget spinners do not work well as the spinner does not follow the scroll view

* Code quality

* Add ACE Core dependency

* Add "Server Settings" translation
  • Loading branch information
veteran29 authored Dec 29, 2024
1 parent 18d2e85 commit aa7fa9d
Show file tree
Hide file tree
Showing 28 changed files with 979 additions and 2 deletions.
10 changes: 10 additions & 0 deletions addons/core/Configs/AFM_AdminList.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
AFM_AdminList {
m_aAdminUIDs {
AFM_AdminUID veteran29 {
m_sAdminUIDs {
"fc4bef3e-97a7-44c3-9c30-f6d0bae9b2bd"
"fc633ca4-377a-41bf-bd64-9dcbbe739a1c"
}
}
}
}
17 changes: 17 additions & 0 deletions addons/core/Configs/AFM_AdminList.conf.meta
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
MetaFileClass {
Name "{745B5C3C22B7AA9A}Configs/AFM_AdminList.conf"
Configurations {
CONFResourceClass PC {
}
CONFResourceClass XBOX_ONE : PC {
}
CONFResourceClass XBOX_SERIES : PC {
}
CONFResourceClass PS4 : PC {
}
CONFResourceClass PS5 : PC {
}
CONFResourceClass HEADLESS : PC {
}
}
}
8 changes: 8 additions & 0 deletions addons/core/Configs/System/chimeraMenus.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
MenuManager {
MenuPresets {
MenuPreset AFM_ToolsMenu {
Layout "{4A825434A1312E28}UI/layouts/AFM_Tools/AFM_ToolsMenu.layout"
Class "AFM_ToolsMenu"
}
}
}
17 changes: 17 additions & 0 deletions addons/core/Configs/System/chimeraMenus.conf.meta
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
MetaFileClass {
Name "{C747AFB6B750CE9A}Configs/System/chimeraMenus.conf"
Configurations {
CONFResourceClass PC {
}
CONFResourceClass XBOX_ONE : PC {
}
CONFResourceClass XBOX_SERIES : PC {
}
CONFResourceClass PS4 : PC {
}
CONFResourceClass PS5 : PC {
}
CONFResourceClass HEADLESS : PC {
}
}
}
4 changes: 4 additions & 0 deletions addons/core/Language/AFM_Core_localization.en_us.conf
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
StringTableRuntime {
Ids {
"AFM_Core-AFM_Tools"
"AFM_Core-AFM_Tools_ServerSettings"
"AFM_Core-Settings"
"AFM_Core-Settings_Radio"
"AFM_Core-Settings_Radio_Beep_1"
Expand All @@ -9,6 +11,8 @@ StringTableRuntime {
"AFM_Core-Settings_Radio_Beep_Off"
}
Texts {
"AFM Tools"
"Server Settings"
"ArmaForces"
"Radio"
"Beep"
Expand Down
17 changes: 17 additions & 0 deletions addons/core/Language/AFM_Core_localization.en_us.conf.meta
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
MetaFileClass {
Name "{059E1098F15F3D80}Language/AFM_Core_localization.en_us.conf"
Configurations {
CONFResourceClass PC {
}
CONFResourceClass XBOX_ONE : PC {
}
CONFResourceClass XBOX_SERIES : PC {
}
CONFResourceClass PS4 : PC {
}
CONFResourceClass PS5 : PC {
}
CONFResourceClass HEADLESS : PC {
}
}
}
4 changes: 4 additions & 0 deletions addons/core/Language/AFM_Core_localization.pl_pl.conf
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
StringTableRuntime {
Ids {
"AFM_Core-AFM_Tools"
"AFM_Core-AFM_Tools_ServerSettings"
"AFM_Core-Settings"
"AFM_Core-Settings_Radio"
"AFM_Core-Settings_Radio_Beep_1"
Expand All @@ -9,6 +11,8 @@ StringTableRuntime {
"AFM_Core-Settings_Radio_Beep_Off"
}
Texts {
"Narzędzia AFM"
"Ustawienia Serwera"
"ArmaForces"
"Radio"
"Pisk"
Expand Down
17 changes: 17 additions & 0 deletions addons/core/Language/AFM_Core_localization.pl_pl.conf.meta
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
MetaFileClass {
Name "{17B214D6474F998C}Language/AFM_Core_localization.pl_pl.conf"
Configurations {
CONFResourceClass PC {
}
CONFResourceClass XBOX_ONE : PC {
}
CONFResourceClass XBOX_SERIES : PC {
}
CONFResourceClass PS4 : PC {
}
CONFResourceClass PS5 : PC {
}
CONFResourceClass HEADLESS : PC {
}
}
}
19 changes: 18 additions & 1 deletion addons/core/Language/AFM_Core_localization.st
Original file line number Diff line number Diff line change
@@ -1,13 +1,30 @@
StringTable {
ItemClassName "CustomStringTableItem"
Items {
CustomStringTableItem "{6334C6C7D25A5092}" {
Id "AFM_Core-AFM_Tools"
Target_en_us "AFM Tools"
Target_pl_pl "Narzędzia AFM"
Modified 1664403421
Author "veteran29"
LastChanged "veteran29"
}
CustomStringTableItem "{633A22210415B8CF}" {
Id "AFM_Core-AFM_Tools_ServerSettings"
Target_en_us "Server Settings"
Target_pl_pl "Ustawienia Serwera"
Modified 1664754356
Author "veteran29"
LastChanged "veteran29"
}
CustomStringTableItem "{63336833D030E5A6}" {
Id "AFM_Core-Settings"
Target_en_us "ArmaForces"
Target_pl_pl "ArmaForces"
ActorGender NONE
Terminology NONE
NonTranslatable 1
Modified 1664319029
Modified 1664754369
Author "veteran29"
LastChanged "veteran29"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
SCR_PlayerController {
ID "1A9BA6BEFA06E3B1"
components {
AFM_SettingsComponent "{63353E87437476C9}" {
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
MetaFileClass {
Name "{6E2BB64764E3BE9B}Prefabs/Characters/Core/DefaultPlayerController.et"
Configurations {
EntityTemplateResourceClass PC {
}
EntityTemplateResourceClass XBOX_ONE : PC {
}
EntityTemplateResourceClass XBOX_SERIES : PC {
}
EntityTemplateResourceClass PS4 : PC {
}
EntityTemplateResourceClass PS5 : PC {
}
EntityTemplateResourceClass HEADLESS : PC {
}
}
}
77 changes: 77 additions & 0 deletions addons/core/UI/layouts/AFM_Tools/AFM_ToolsMenu.layout
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
FrameWidgetClass {
Name "AFM_ToolsMenu"
components {
SCR_SuperMenuComponent "{632CF105ABB3A644}" {
}
}
{
OverlayWidgetClass "{632CF10E244EE461}" : "{89D4A2D343602766}UI/layouts/WidgetLibrary/BaseElements/WLib_ReadabilityBackground.layout" {
Name "ReadibilityBackground"
Slot FrameWidgetSlot "{632CF10E244EE3A1}" {
Anchor 0 0 1 1
PositionX 0
OffsetLeft 0
PositionY 0
OffsetTop 0
SizeX 0
OffsetRight 0
SizeY 0
OffsetBottom 0
}
}
OverlayWidgetClass "{632C29305E86E90A}" : "{6F1E013D3D33703C}UI/layouts/WidgetLibrary/BaseElements/WLib_MenuBaseTabbed.layout" {
Name "MenuFrame"
Slot FrameWidgetSlot "{54D8A1A69BDC4E85}" {
}
{
SizeLayoutWidgetClass "{589F093B48C39BEF}" {
Prefab "{589F093B48C39BEF}"
{
VerticalLayoutWidgetClass "{589F093B48C39BEC}" {
Prefab "{589F093B48C39BEC}"
{
SizeLayoutWidgetClass "{589F093B48C39BEA}" {
Prefab "{589F093B48C39BEA}"
{
OverlayWidgetClass "{58A07816DC169F57}" {
Prefab "{58A07816DC169F57}"
{
TextWidgetClass "{589F093B48C39BE9}" {
Prefab "{589F093B48C39BE9}"
Text "AFM Tools"
}
}
}
}
}
VerticalLayoutWidgetClass "{589F093AB3EA94A2}" {
Prefab "{589F093AB3EA94A2}"
{
OverlayWidgetClass "{000000001094E915}" {
Prefab "{000000001094E915}"
{
ImageWidgetClass "{632CF1098E878CFB}" {
Name "BackgroundImage"
Slot OverlayWidgetSlot "{632CF1098E878C3B}" {
HorizontalAlign 3
VerticalAlign 3
}
"Z Order" -128
Opacity 0.5
Color 0 0 0 1
Texture "{A592187FD7874100}UI/Textures/Common/[email protected]"
Size 1024 1024
Tiling None
}
}
}
}
}
}
}
}
}
}
}
}
}
17 changes: 17 additions & 0 deletions addons/core/UI/layouts/AFM_Tools/AFM_ToolsMenu.layout.meta
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
MetaFileClass {
Name "{4A825434A1312E28}UI/layouts/AFM_ServerSettings/AFM_ServerSettingsMenu.layout"
Configurations {
LayoutResourceClass PC {
}
LayoutResourceClass XBOX_ONE : PC {
}
LayoutResourceClass XBOX_SERIES : PC {
}
LayoutResourceClass PS4 : PC {
}
LayoutResourceClass PS5 : PC {
}
LayoutResourceClass HEADLESS : PC {
}
}
}
Loading

0 comments on commit aa7fa9d

Please sign in to comment.