diff --git a/addons/all_in_one/addon.gproj b/addons/all_in_one/addon.gproj index 623e32e2d..ee34e677f 100755 --- a/addons/all_in_one/addon.gproj +++ b/addons/all_in_one/addon.gproj @@ -3,7 +3,7 @@ GameProject { GUID "60C4E0B49618CC62" TITLE "ACE All in One" Dependencies { - "58D0FB3206B6F859" "60C4CE4888FF4621" "60E573C9B04CC408" "5DBD560C5148E1DA" "5EB744C5F42E0800" "60C53A9372ED3964" "606C369BAC3F6CC3" "60C4C12DAE90727B" "65860252A17554C7" "60EAEA0389DB3CC2" "611CB1D409001EB0" "61B7763A8AEB53B7" "646D52AF8BB3FF15" "61226BB18D360BDD" "64475DC102F2BDA4" "62F802951CC8A37E" "68EAA4976497C46A" + "58D0FB3206B6F859" "60C4CE4888FF4621" "60E573C9B04CC408" "5DBD560C5148E1DA" "5EB744C5F42E0800" "60C53A9372ED3964" "606C369BAC3F6CC3" "60C4C12DAE90727B" "65860252A17554C7" "60EAEA0389DB3CC2" "611CB1D409001EB0" "61B7763A8AEB53B7" "646D52AF8BB3FF15" "61226BB18D360BDD" "64475DC102F2BDA4" "62F802951CC8A37E" "68EAA4976497C46A" "646E06BB853A7778" } Configurations { GameProjectConfig PC { diff --git a/addons/all_in_one/dev.gproj b/addons/all_in_one/dev.gproj index ab6555320..204f6aa93 100644 --- a/addons/all_in_one/dev.gproj +++ b/addons/all_in_one/dev.gproj @@ -3,7 +3,7 @@ GameProject { GUID "65AD7BE594439A52" TITLE "ACE All in One Dev" Dependencies { - "58D0FB3206B6F859" "65AD7D0D9941A380" "65AD7C139EB4C1A1" "65AD7C379CBD394D" "65AD7BCC9F6B3B4E" "65AD7CF69FAF1FDD" "65AD7D2E9866FA6E" "6586079789278413" "65B343F799FB521B" "65AD7CE59E8DB349" "65AD7D4099944EBD" "65AD7D1E9EEAFA53" "65AD7C249E4ECDFB" "65AD7CB89F219E38" "65AD7C75826B46C6" "65AD7CD09CAEC4E2" "68EAA4B96976D557" + "58D0FB3206B6F859" "65AD7D0D9941A380" "65AD7C139EB4C1A1" "65AD7C379CBD394D" "65AD7BCC9F6B3B4E" "65AD7CF69FAF1FDD" "65AD7D2E9866FA6E" "6586079789278413" "65B343F799FB521B" "65AD7CE59E8DB349" "65AD7D4099944EBD" "65AD7D1E9EEAFA53" "65AD7C249E4ECDFB" "65AD7CB89F219E38" "65AD7C75826B46C6" "65AD7CD09CAEC4E2" "68EAA4B96976D557" "68F77A54920B80AF" } Configurations { GameProjectConfig PC { diff --git a/addons/ballistics/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf b/addons/ballistics/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf new file mode 100644 index 000000000..b099f983d --- /dev/null +++ b/addons/ballistics/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf @@ -0,0 +1,13 @@ +ACE_EntityCatalogMultiListEntry : "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf" { + m_aEntities { + SCR_EntityCatalogInventoryItem "{68F60CE8757407E8}" { + m_sEntityPrefab "{03C6EB1EBD25AA33}Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Mrads.et" + m_aEntityDataList { + SCR_ArsenalItem "{68F60CE875732DB6}" { + m_eItemType SNIPER_RIFLE + m_iSupplyCost 0 + } + } + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf.meta b/addons/ballistics/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf.meta new file mode 100644 index 000000000..b8ff4eada --- /dev/null +++ b/addons/ballistics/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{12790B4E7D42F952}Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf b/addons/ballistics/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf new file mode 100644 index 000000000..39ca1d2be --- /dev/null +++ b/addons/ballistics/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf @@ -0,0 +1,22 @@ +ACE_EntityCatalogMultiListEntry : "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf" { + m_aEntities { + SCR_EntityCatalogInventoryItem "{68F60CE9B49FF3B1}" { + m_sEntityPrefab "{4EE236EE814D3584}Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_WpMils.et" + m_aEntityDataList { + SCR_ArsenalItem "{68F60CE9B49FF3C9}" { + m_eItemType SNIPER_RIFLE + m_iSupplyCost 0 + } + } + } + SCR_EntityCatalogInventoryItem "{68FC1033FC9003A7}" { + m_sEntityPrefab "{03C6EB1EBD25AA33}Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Mrads.et" + m_aEntityDataList { + SCR_ArsenalItem "{68FC1033FC90C3DA}" { + m_eItemType SNIPER_RIFLE + m_iSupplyCost 0 + } + } + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf.meta b/addons/ballistics/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf.meta new file mode 100644 index 000000000..34fe78e69 --- /dev/null +++ b/addons/ballistics/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{382ACD2D23811DDE}Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.cs_cz.conf b/addons/ballistics/Language/ACE_Ballistics_localization.cs_cz.conf new file mode 100644 index 000000000..6c660ac43 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.cs_cz.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + "Ballistic Tables in mrads" + "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + "Ballistic Tables in WP mils" + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/US/US_InventoryItems.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.cs_cz.conf.meta similarity index 77% rename from addons/core/Configs/EntityCatalog/US/US_InventoryItems.conf.meta rename to addons/ballistics/Language/ACE_Ballistics_localization.cs_cz.conf.meta index f496e754c..1488e1d3e 100644 --- a/addons/core/Configs/EntityCatalog/US/US_InventoryItems.conf.meta +++ b/addons/ballistics/Language/ACE_Ballistics_localization.cs_cz.conf.meta @@ -1,5 +1,5 @@ MetaFileClass { - Name "{5F7EC52FC40A03E2}Configs/EntityCatalog/US/US_InventoryItems.conf" + Name "{3D9C3869C6CB0F04}Language/ACE_Ballistics_localization.cs_cz.conf" Configurations { CONFResourceClass PC { } diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.de_de.conf b/addons/ballistics/Language/ACE_Ballistics_localization.de_de.conf new file mode 100644 index 000000000..9c60a6e65 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.de_de.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Sammlung von Schusstafeln in Milliradians für Kugeln, die kompatibel sind mit deiner Waffe." + "Schusstafeln in mrads" + "Sammlung von Schusstafeln in Warschauer Pakt mils für Kugeln, die kompatibel sind mit deiner Waffe." + "Schusstafeln in WP mils" + } +} \ No newline at end of file diff --git a/addons/tactical_periscope/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.de_de.conf.meta similarity index 77% rename from addons/tactical_periscope/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta rename to addons/ballistics/Language/ACE_Ballistics_localization.de_de.conf.meta index ca1cb77ce..75168a5ee 100644 --- a/addons/tactical_periscope/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta +++ b/addons/ballistics/Language/ACE_Ballistics_localization.de_de.conf.meta @@ -1,5 +1,5 @@ MetaFileClass { - Name "{E908001749419691}Configs/EntityCatalog/FIA/FIA_InventoryItems.conf" + Name "{E8E2225AD5681E24}Language/ACE_Ballistics_localization.de_de.conf" Configurations { CONFResourceClass PC { } diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.en_us.conf b/addons/ballistics/Language/ACE_Ballistics_localization.en_us.conf new file mode 100644 index 000000000..6c660ac43 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.en_us.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + "Ballistic Tables in mrads" + "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + "Ballistic Tables in WP mils" + } +} \ No newline at end of file diff --git a/addons/tactical_ladder/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.en_us.conf.meta similarity index 77% rename from addons/tactical_ladder/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta rename to addons/ballistics/Language/ACE_Ballistics_localization.en_us.conf.meta index ca1cb77ce..7ef1f6717 100644 --- a/addons/tactical_ladder/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta +++ b/addons/ballistics/Language/ACE_Ballistics_localization.en_us.conf.meta @@ -1,5 +1,5 @@ MetaFileClass { - Name "{E908001749419691}Configs/EntityCatalog/FIA/FIA_InventoryItems.conf" + Name "{B612A811BF9B1B25}Language/ACE_Ballistics_localization.en_us.conf" Configurations { CONFResourceClass PC { } diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.es_es.conf b/addons/ballistics/Language/ACE_Ballistics_localization.es_es.conf new file mode 100644 index 000000000..6c660ac43 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.es_es.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + "Ballistic Tables in mrads" + "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + "Ballistic Tables in WP mils" + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.es_es.conf.meta similarity index 77% rename from addons/core/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta rename to addons/ballistics/Language/ACE_Ballistics_localization.es_es.conf.meta index ca1cb77ce..66bd61232 100644 --- a/addons/core/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta +++ b/addons/ballistics/Language/ACE_Ballistics_localization.es_es.conf.meta @@ -1,5 +1,5 @@ MetaFileClass { - Name "{E908001749419691}Configs/EntityCatalog/FIA/FIA_InventoryItems.conf" + Name "{735EE5985199703A}Language/ACE_Ballistics_localization.es_es.conf" Configurations { CONFResourceClass PC { } diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.fr_fr.conf b/addons/ballistics/Language/ACE_Ballistics_localization.fr_fr.conf new file mode 100644 index 000000000..6c660ac43 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.fr_fr.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + "Ballistic Tables in mrads" + "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + "Ballistic Tables in WP mils" + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.fr_fr.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.fr_fr.conf.meta new file mode 100644 index 000000000..ff399c3ee --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.fr_fr.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{C8F610AFB71A9338}Language/ACE_Ballistics_localization.fr_fr.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.it_it.conf b/addons/ballistics/Language/ACE_Ballistics_localization.it_it.conf new file mode 100644 index 000000000..6c660ac43 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.it_it.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + "Ballistic Tables in mrads" + "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + "Ballistic Tables in WP mils" + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.it_it.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.it_it.conf.meta new file mode 100644 index 000000000..5d58dfa18 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.it_it.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{48EA9F9B1A3810C1}Language/ACE_Ballistics_localization.it_it.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.ja_jp.conf b/addons/ballistics/Language/ACE_Ballistics_localization.ja_jp.conf new file mode 100644 index 000000000..6c660ac43 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.ja_jp.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + "Ballistic Tables in mrads" + "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + "Ballistic Tables in WP mils" + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.ja_jp.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.ja_jp.conf.meta new file mode 100644 index 000000000..4f721c3c7 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.ja_jp.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{58F122092449206A}Language/ACE_Ballistics_localization.ja_jp.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.ko_kr.conf b/addons/ballistics/Language/ACE_Ballistics_localization.ko_kr.conf new file mode 100644 index 000000000..52c6a58ef --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.ko_kr.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "사용 중인 총에 맞는 탄환의 밀리라디안(Mil) 단위 탄도표입니다." + "탄도표 (Mil 단위)" + "사용 중인 총에 맞는 탄환의 바르샤바 조약기구 규격의 밀리라디안(WP Mil) 단위 탄도표입니다." + "탄도표 (WP Mil 단위)" + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.ko_kr.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.ko_kr.conf.meta new file mode 100644 index 000000000..71db23b11 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.ko_kr.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{F84F0AA5B7642355}Language/ACE_Ballistics_localization.ko_kr.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.pl_pl.conf b/addons/ballistics/Language/ACE_Ballistics_localization.pl_pl.conf new file mode 100644 index 000000000..6c660ac43 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.pl_pl.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + "Ballistic Tables in mrads" + "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + "Ballistic Tables in WP mils" + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.pl_pl.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.pl_pl.conf.meta new file mode 100644 index 000000000..d090a9781 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.pl_pl.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{A43EAC5F098BBF29}Language/ACE_Ballistics_localization.pl_pl.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.pt_br.conf b/addons/ballistics/Language/ACE_Ballistics_localization.pt_br.conf new file mode 100644 index 000000000..6c660ac43 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.pt_br.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + "Ballistic Tables in mrads" + "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + "Ballistic Tables in WP mils" + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.pt_br.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.pt_br.conf.meta new file mode 100644 index 000000000..34f368bc2 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.pt_br.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{7149369332757593}Language/ACE_Ballistics_localization.pt_br.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.ru_ru.conf b/addons/ballistics/Language/ACE_Ballistics_localization.ru_ru.conf new file mode 100644 index 000000000..6c660ac43 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.ru_ru.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + "Ballistic Tables in mrads" + "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + "Ballistic Tables in WP mils" + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.ru_ru.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.ru_ru.conf.meta new file mode 100644 index 000000000..9ec1278ca --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.ru_ru.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{2408223BAF0C10E5}Language/ACE_Ballistics_localization.ru_ru.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.st b/addons/ballistics/Language/ACE_Ballistics_localization.st new file mode 100644 index 000000000..d42e00303 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.st @@ -0,0 +1,45 @@ +StringTable { + ItemClassName "CustomStringTableItem" + Items { + CustomStringTableItem "{68F762272F79489D}" { + Id "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + Target_en_us "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + Target_de_de "Sammlung von Schusstafeln in Milliradians für Kugeln, die kompatibel sind mit deiner Waffe." + Target_ko_kr "사용 중인 총에 맞는 탄환의 밀리라디안(Mil) 단위 탄도표입니다." + Target_zh_cn "收集與您步槍相容子彈之密位 (mrad) 彈道數據表" + Modified 1769403357 + Author "Kexanone" + LastChanged "YuanYu" + } + CustomStringTableItem "{68F7622720A91AF2}" { + Id "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + Target_en_us "Ballistic Tables in mrads" + Target_de_de "Schusstafeln in mrads" + Target_ko_kr "탄도표 (Mil 단위)" + Target_zh_cn "mrad 密位彈道表" + Modified 1769403386 + Author "Kexanone" + LastChanged "YuanYu" + } + CustomStringTableItem "{68F76227713095DD}" { + Id "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + Target_en_us "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + Target_de_de "Sammlung von Schusstafeln in Warschauer Pakt mils für Kugeln, die kompatibel sind mit deiner Waffe." + Target_ko_kr "사용 중인 총에 맞는 탄환의 바르샤바 조약기구 규격의 밀리라디안(WP Mil) 단위 탄도표입니다." + Target_zh_cn "收集與您步槍相容子彈之華沙公約密位彈道數據表" + Modified 1769403437 + Author "Kexanone" + LastChanged "YuanYu" + } + CustomStringTableItem "{68F7622774AC7852}" { + Id "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + Target_en_us "Ballistic Tables in WP mils" + Target_de_de "Schusstafeln in WP mils" + Target_ko_kr "탄도표 (WP Mil 단위)" + Target_zh_cn "華約密位彈道表" + Modified 1769403497 + Author "Kexanone" + LastChanged "YuanYu" + } + } +} diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.st.meta b/addons/ballistics/Language/ACE_Ballistics_localization.st.meta new file mode 100644 index 000000000..85b4ce97c --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.st.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{DA71C3C62240FAC9}Language/ACE_Ballistics_localization.st" + Configurations { + StringTableResourceClass PC { + } + StringTableResourceClass XBOX_ONE : PC { + } + StringTableResourceClass XBOX_SERIES : PC { + } + StringTableResourceClass PS4 : PC { + } + StringTableResourceClass PS5 : PC { + } + StringTableResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.uk_ua.conf b/addons/ballistics/Language/ACE_Ballistics_localization.uk_ua.conf new file mode 100644 index 000000000..6c660ac43 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.uk_ua.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "Collection of ballistic tables in milliradians for bullets compatible with your rifle." + "Ballistic Tables in mrads" + "Collection of ballistic tables in Warsaw Pact mils for bullets compatible with your rifle." + "Ballistic Tables in WP mils" + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.uk_ua.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.uk_ua.conf.meta new file mode 100644 index 000000000..0f26c5604 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.uk_ua.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{AE5077CDC322AEB0}Language/ACE_Ballistics_localization.uk_ua.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.zh_cn.conf b/addons/ballistics/Language/ACE_Ballistics_localization.zh_cn.conf new file mode 100644 index 000000000..0eaca0231 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.zh_cn.conf @@ -0,0 +1,14 @@ +StringTableRuntime { + Ids { + "ACE_Ballistics-Item_BallisticTables_Mrads_Description" + "ACE_Ballistics-Item_BallisticTables_Mrads_Name" + "ACE_Ballistics-Item_BallisticTables_WpMils_Description" + "ACE_Ballistics-Item_BallisticTables_WpMils_Name" + } + Texts { + "收集與您步槍相容子彈之密位 (mrad) 彈道數據表" + "mrad 密位彈道表" + "收集與您步槍相容子彈之華沙公約密位彈道數據表" + "華約密位彈道表" + } +} diff --git a/addons/ballistics/Language/ACE_Ballistics_localization.zh_cn.conf.meta b/addons/ballistics/Language/ACE_Ballistics_localization.zh_cn.conf.meta new file mode 100644 index 000000000..c3c1efbf1 --- /dev/null +++ b/addons/ballistics/Language/ACE_Ballistics_localization.zh_cn.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{74E019F0FA827EAD}Language/ACE_Ballistics_localization.zh_cn.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Base.et b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Base.et new file mode 100644 index 000000000..7b21a7070 --- /dev/null +++ b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Base.et @@ -0,0 +1,22 @@ +GameEntity : "{35D7F1189BE00E94}Prefabs/Items/Equipment/BallisticTable/BallisticTable_base.et" { + ID "508AB2013EEE1E00" + components { + ACE_BallisticTableComponent "{60CAB3ECC903C006}" { + m_eUnitType MILS_WP + m_eAnimVariable MAP + } + ActionsManagerComponent "{508AB5952B584B2E}" { + additionalActions { + ACE_Ballistics_ChangePageAction "{60CE81CBD818F194}" { + } + ACE_Ballistics_ChangePageAction "{60CE81CBDFE69B53}" { + } + ACE_NoUserAction "{6304F6F3DBC43D4B}" { + } + ACE_NoUserAction "{6304F6F3DE4511D0}" { + } + } + } + } + coords 128.463 1 127.348 +} \ No newline at end of file diff --git a/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Base.et.meta b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Base.et.meta new file mode 100644 index 000000000..89aac8564 --- /dev/null +++ b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Base.et.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{889DC9D8BF3E3DD5}Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Base.et" + Configurations { + EntityTemplateResourceClass PC { + } + EntityTemplateResourceClass XBOX_ONE : PC { + } + EntityTemplateResourceClass XBOX_SERIES : PC { + } + EntityTemplateResourceClass PS4 : PC { + } + EntityTemplateResourceClass PS5 : PC { + } + EntityTemplateResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Mrads.et b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Mrads.et new file mode 100644 index 000000000..d0d1a34e5 --- /dev/null +++ b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Mrads.et @@ -0,0 +1,29 @@ +GameEntity : "{889DC9D8BF3E3DD5}Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Base.et" { + ID "508AB2013EEE1E00" + components { + ACE_BallisticTableComponent "{60CAB3ECC903C006}" { + m_eUnitType MILLIRADIANS + m_sACE_TableLayoutName "{94BEF98329CC0B81}UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_Mrads.layout" + } + InventoryItemComponent "{5222EB4D0C73006B}" { + Attributes SCR_ItemAttributeCollection "{5222EB4D0A2B466B}" { + ItemDisplayName UIInfo "{5222EB4D07D865FA}" { + Name "#ACE_Ballistics-Item_BallisticTables_Mrads_Name" + Description "#ACE_Ballistics-Item_BallisticTables_Mrads_Description" + } + } + } + MeshObject "{60CA7A7326F832F8}" { + Materials { + MaterialAssignClass "{68F60CD71F644B3F}" { + SourceMaterial "RangeTable_01" + AssignedMaterial "{798B20DC6F50AD7F}Assets/Items/Misc/BallisticTable/Data/RangeTable_01_M252.emat" + } + MaterialAssignClass "{68F60CD71F644B18}" { + SourceMaterial "RangeTable_01_2B14_MLOD" + AssignedMaterial "{F1AD919094330676}Assets/Items/Misc/BallisticTable/Data/RangeTable_01_M252_MLOD.emat" + } + } + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Mrads.et.meta b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Mrads.et.meta new file mode 100644 index 000000000..5cff758fd --- /dev/null +++ b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Mrads.et.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{03C6EB1EBD25AA33}Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Mrads.et" + Configurations { + EntityTemplateResourceClass PC { + } + EntityTemplateResourceClass XBOX_ONE : PC { + } + EntityTemplateResourceClass XBOX_SERIES : PC { + } + EntityTemplateResourceClass PS4 : PC { + } + EntityTemplateResourceClass PS5 : PC { + } + EntityTemplateResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_WpMils.et b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_WpMils.et new file mode 100644 index 000000000..7dc78b28d --- /dev/null +++ b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_WpMils.et @@ -0,0 +1,13 @@ +GameEntity : "{889DC9D8BF3E3DD5}Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_Base.et" { + ID "508AB2013EEE1E00" + components { + InventoryItemComponent "{5222EB4D0C73006B}" { + Attributes SCR_ItemAttributeCollection "{5222EB4D0A2B466B}" { + ItemDisplayName UIInfo "{5222EB4D07D865FA}" { + Name "#ACE_Ballistics-Item_BallisticTables_WpMils_Name" + Description "#ACE_Ballistics-Item_BallisticTables_WpMils_Description" + } + } + } + } +} \ No newline at end of file diff --git a/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_WpMils.et.meta b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_WpMils.et.meta new file mode 100644 index 000000000..00de27829 --- /dev/null +++ b/addons/ballistics/Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_WpMils.et.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{4EE236EE814D3584}Prefabs/Items/Equipment/BallisticTable/ACE_BallisticTable_WpMils.et" + Configurations { + EntityTemplateResourceClass PC { + } + EntityTemplateResourceClass XBOX_ONE : PC { + } + EntityTemplateResourceClass XBOX_SERIES : PC { + } + EntityTemplateResourceClass PS4 : PC { + } + EntityTemplateResourceClass PS5 : PC { + } + EntityTemplateResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_Mrads.layout b/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_Mrads.layout new file mode 100644 index 000000000..ee03001b6 --- /dev/null +++ b/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_Mrads.layout @@ -0,0 +1,85 @@ +FrameWidgetClass : "{FC58AB2BEBBA6D0E}UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_WpMils.layout" { + { + VerticalLayoutWidgetClass "{60CACB3CF08B74DA}" { + Prefab "{60CACB3CF08B74DA}" + { + HorizontalLayoutWidgetClass "{60CACB3CDBF6E604}" { + Prefab "{60CACB3CDBF6E604}" + { + VerticalLayoutWidgetClass "{60CA76C7FD2D43DD}" { + Prefab "{60CA76C7FD2D43DD}" + { + VerticalLayoutWidgetClass "{60CACB206FBC43A0}" { + Prefab "{60CACB206FBC43A0}" + { + GridLayoutWidgetClass "{60CACB2005A3A282}" { + Prefab "{60CACB2005A3A282}" + { + HorizontalLayoutWidgetClass "{60CACB21CD9DB8CA}" { + Prefab "{60CACB21CD9DB8CA}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "Lead"\ + "1 m/s" + } + } + } + } + } + } + } + VerticalLayoutWidgetClass "{60CACB2315EED092}" { + Prefab "{60CACB2315EED092}" + { + GridLayoutWidgetClass "{60CACB2315EED09C}" { + Prefab "{60CACB2315EED09C}" + { + HorizontalLayoutWidgetClass "{60CACB2315EED09A}" { + Prefab "{60CACB2315EED09A}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "MRAD" + } + } + } + HorizontalLayoutWidgetClass "{60CACB2315EED084}" { + Prefab "{60CACB2315EED084}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "MRAD" + } + } + } + HorizontalLayoutWidgetClass "{60CACB2315EED087}" { + Prefab "{60CACB2315EED087}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "MRAD" + } + } + } + HorizontalLayoutWidgetClass "{60CACB2315EED081}" { + Prefab "{60CACB2315EED081}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "" + } + } + } + } + } + } + } + } + } + } + } + } + } + } +} \ No newline at end of file diff --git a/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_Mrads.layout.meta b/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_Mrads.layout.meta new file mode 100644 index 000000000..b63249431 --- /dev/null +++ b/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_Mrads.layout.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{94BEF98329CC0B81}UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_US.layout" + Configurations { + LayoutResourceClass PC { + } + LayoutResourceClass XBOX_ONE : PC { + } + LayoutResourceClass XBOX_SERIES : PC { + } + LayoutResourceClass PS4 : PC { + } + LayoutResourceClass PS5 : PC { + } + LayoutResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_WpMils.layout b/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_WpMils.layout new file mode 100644 index 000000000..981b0d23a --- /dev/null +++ b/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_WpMils.layout @@ -0,0 +1,179 @@ +FrameWidgetClass : "{6E4CC0DD94FAB365}UI/layouts/Gadgets/BallisticTable/BallisticTable.layout" { + { + VerticalLayoutWidgetClass "{60CACB3CF08B74DA}" { + Prefab "{60CACB3CF08B74DA}" + { + HorizontalLayoutWidgetClass "{60CA7A7A3FA5D448}" { + Prefab "{60CA7A7A3FA5D448}" + { + ImageWidgetClass "{630471A2C42EBD87}" { + Prefab "{630471A2C42EBD87}" + "Is Visible" 0 + } + } + } + HorizontalLayoutWidgetClass "{60CACB3CDBF6E604}" { + Prefab "{60CACB3CDBF6E604}" + { + VerticalLayoutWidgetClass "{60CA76C7FD2D43DD}" { + Prefab "{60CA76C7FD2D43DD}" + { + VerticalLayoutWidgetClass "{60CACB206FBC43A0}" { + Prefab "{60CACB206FBC43A0}" + { + GridLayoutWidgetClass "{60CACB2005A3A282}" { + Prefab "{60CACB2005A3A282}" + ColumnFill { + 1 1 1 1 1 0 0 0 + } + { + HorizontalLayoutWidgetClass "{60CACB20278C4D64}" { + Prefab "{60CACB20278C4D64}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "Target"\ + "Range" + } + } + } + HorizontalLayoutWidgetClass "{60CACB2005A3A28B}" { + Prefab "{60CACB2005A3A28B}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "Bullet"\ + "Drop" + } + } + } + HorizontalLayoutWidgetClass "{60CACB2005A3A28E}" { + Prefab "{60CACB2005A3A28E}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "Wind"\ + "4 m/s" + } + } + } + HorizontalLayoutWidgetClass "{60CACB21CD9DB8CA}" { + Prefab "{60CACB21CD9DB8CA}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "Lead"\ + "1 m/s" + } + } + } + HorizontalLayoutWidgetClass "{60CACB21CD25DE44}" { + Prefab "{60CACB21CD25DE44}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "" + } + } + } + HorizontalLayoutWidgetClass "{689EB4E7B58AA73D}" { + Prefab "{689EB4E7B58AA73D}" + "Is Visible" 0 + } + HorizontalLayoutWidgetClass "{68A0BBD0BB5EF4A7}" { + Prefab "{68A0BBD0BB5EF4A7}" + "Is Visible" 0 + } + VerticalLayoutWidgetClass "{689EB4E47E5C3698}" { + Prefab "{689EB4E47E5C3698}" + "Is Visible" 0 + } + } + } + } + } + VerticalLayoutWidgetClass "{60CACB2315EED092}" { + Prefab "{60CACB2315EED092}" + { + GridLayoutWidgetClass "{60CACB2315EED09C}" { + Prefab "{60CACB2315EED09C}" + ColumnFill { + 1 1 1 1 1 0 0 0 0 + } + { + HorizontalLayoutWidgetClass "{60CACB2315EED084}" { + Prefab "{60CACB2315EED084}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "MIL" + } + } + } + HorizontalLayoutWidgetClass "{60CACB2315EED081}" { + Prefab "{60CACB2315EED081}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "" + } + } + } + HorizontalLayoutWidgetClass "{689EB4E6C52CA1A4}" { + Prefab "{689EB4E6C52CA1A4}" + "Is Visible" 0 + } + HorizontalLayoutWidgetClass "{689EB4E6DCB44754}" { + Prefab "{689EB4E6DCB44754}" + "Is Visible" 0 + } + HorizontalLayoutWidgetClass "{689EB4E6D4BB90BB}" { + Prefab "{689EB4E6D4BB90BB}" + "Is Visible" 0 + } + HorizontalLayoutWidgetClass "{689EB4E6D4BB90B9}" { + Prefab "{689EB4E6D4BB90B9}" + "Is Visible" 0 + } + } + } + } + } + VerticalLayoutWidgetClass "{613A662D9616B408}" { + Prefab "{613A662D9616B408}" + { + GridLayoutWidgetClass "{613A662D9616B40A}" { + Prefab "{613A662D9616B40A}" + { + HorizontalLayoutWidgetClass "{613A662D9616B434}" { + Prefab "{613A662D9616B434}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Text "ZERO" + } + } + } + HorizontalLayoutWidgetClass "{613A662D9616B436}" { + Prefab "{613A662D9616B436}" + { + TextWidgetClass "{60CA7A78C5ED06C0}" { + Prefab "{60CA7A78C5ED06C0}" + Slot LayoutSlot "{60CA7A7DFDCBF5E1}" { + } + Text "100 M" + } + } + } + } + } + } + } + } + } + } + } + } + } + } +} \ No newline at end of file diff --git a/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_WpMils.layout.meta b/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_WpMils.layout.meta new file mode 100644 index 000000000..aa53663be --- /dev/null +++ b/addons/ballistics/UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_WpMils.layout.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{FC58AB2BEBBA6D0E}UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_USSR.layout" + Configurations { + LayoutResourceClass PC { + } + LayoutResourceClass XBOX_ONE : PC { + } + LayoutResourceClass XBOX_SERIES : PC { + } + LayoutResourceClass PS4 : PC { + } + LayoutResourceClass PS5 : PC { + } + LayoutResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/addon.gproj b/addons/ballistics/addon.gproj new file mode 100644 index 000000000..2c1cb8fd8 --- /dev/null +++ b/addons/ballistics/addon.gproj @@ -0,0 +1,83 @@ +GameProject { + ID "ACE_Ballistics" + GUID "646E06BB853A7778" + TITLE "ACE Ballistics" + Dependencies { + "58D0FB3206B6F859" "60C4CE4888FF4621" + } + Configurations { + GameProjectConfig PC { + WidgetManagerSettings WidgetManagerSettings "{AC4BE58770485E02}" { + StringTables { + StringTableDefinition "{68F76221BDA994F4}" { + StringTableSource "{DA71C3C62240FAC9}Language/ACE_Ballistics_localization.st" + Languages { + LanguageDefinition "{68F76221B3A582B7}" { + Code "cs_cz" + StringTableRuntime "{3D9C3869C6CB0F04}Language/ACE_Ballistics_localization.cs_cz.conf" + } + LanguageDefinition "{68F76221B3A582F9}" { + Code "de_de" + StringTableRuntime "{E8E2225AD5681E24}Language/ACE_Ballistics_localization.de_de.conf" + } + LanguageDefinition "{68F76221B3A58279}" { + Code "en_us" + StringTableRuntime "{B612A811BF9B1B25}Language/ACE_Ballistics_localization.en_us.conf" + } + LanguageDefinition "{68F76221B3A5826E}" { + Code "es_es" + StringTableRuntime "{735EE5985199703A}Language/ACE_Ballistics_localization.es_es.conf" + } + LanguageDefinition "{68F76221B3A58242}" { + Code "fr_fr" + StringTableRuntime "{C8F610AFB71A9338}Language/ACE_Ballistics_localization.fr_fr.conf" + } + LanguageDefinition "{68F76221B3A581BB}" { + Code "it_it" + StringTableRuntime "{48EA9F9B1A3810C1}Language/ACE_Ballistics_localization.it_it.conf" + } + LanguageDefinition "{68F76221B3A581AF}" { + Code "ja_jp" + StringTableRuntime "{58F122092449206A}Language/ACE_Ballistics_localization.ja_jp.conf" + } + LanguageDefinition "{68F76221B3A58198}" { + Code "ko_kr" + StringTableRuntime "{F84F0AA5B7642355}Language/ACE_Ballistics_localization.ko_kr.conf" + } + LanguageDefinition "{68F76221B3A5818C}" { + Code "pl_pl" + StringTableRuntime "{A43EAC5F098BBF29}Language/ACE_Ballistics_localization.pl_pl.conf" + } + LanguageDefinition "{68F76221B3A581FC}" { + Code "pt_br" + StringTableRuntime "{7149369332757593}Language/ACE_Ballistics_localization.pt_br.conf" + } + LanguageDefinition "{68F76221B3A581DB}" { + Code "ru_ru" + StringTableRuntime "{2408223BAF0C10E5}Language/ACE_Ballistics_localization.ru_ru.conf" + } + LanguageDefinition "{68F76221B3A58091}" { + Code "uk_ua" + StringTableRuntime "{AE5077CDC322AEB0}Language/ACE_Ballistics_localization.uk_ua.conf" + } + LanguageDefinition "{68F76221B3A58082}" { + Code "zh_cn" + StringTableRuntime "{74E019F0FA827EAD}Language/ACE_Ballistics_localization.zh_cn.conf" + } + } + } + } + } + } + GameProjectConfig XBOX_ONE { + } + GameProjectConfig XBOX_SERIES { + } + GameProjectConfig PS4 { + } + GameProjectConfig PS5 { + } + GameProjectConfig HEADLESS { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/dev.gproj b/addons/ballistics/dev.gproj new file mode 100644 index 000000000..ddc612f0b --- /dev/null +++ b/addons/ballistics/dev.gproj @@ -0,0 +1,83 @@ +GameProject { + ID "ACE_Ballistics_Dev" + GUID "68F77A54920B80AF" + TITLE "ACE Ballistics Dev" + Dependencies { + "58D0FB3206B6F859" "65AD7D0D9941A380" + } + Configurations { + GameProjectConfig PC { + WidgetManagerSettings WidgetManagerSettings "{AC4BE58770485E02}" { + StringTables { + StringTableDefinition "{68F76221BDA994F4}" { + StringTableSource "{DA71C3C62240FAC9}Language/ACE_Ballistics_localization.st" + Languages { + LanguageDefinition "{68F76221B3A582B7}" { + Code "cs_cz" + StringTableRuntime "{3D9C3869C6CB0F04}Language/ACE_Ballistics_localization.cs_cz.conf" + } + LanguageDefinition "{68F76221B3A582F9}" { + Code "de_de" + StringTableRuntime "{E8E2225AD5681E24}Language/ACE_Ballistics_localization.de_de.conf" + } + LanguageDefinition "{68F76221B3A58279}" { + Code "en_us" + StringTableRuntime "{B612A811BF9B1B25}Language/ACE_Ballistics_localization.en_us.conf" + } + LanguageDefinition "{68F76221B3A5826E}" { + Code "es_es" + StringTableRuntime "{735EE5985199703A}Language/ACE_Ballistics_localization.es_es.conf" + } + LanguageDefinition "{68F76221B3A58242}" { + Code "fr_fr" + StringTableRuntime "{C8F610AFB71A9338}Language/ACE_Ballistics_localization.fr_fr.conf" + } + LanguageDefinition "{68F76221B3A581BB}" { + Code "it_it" + StringTableRuntime "{48EA9F9B1A3810C1}Language/ACE_Ballistics_localization.it_it.conf" + } + LanguageDefinition "{68F76221B3A581AF}" { + Code "ja_jp" + StringTableRuntime "{58F122092449206A}Language/ACE_Ballistics_localization.ja_jp.conf" + } + LanguageDefinition "{68F76221B3A58198}" { + Code "ko_kr" + StringTableRuntime "{F84F0AA5B7642355}Language/ACE_Ballistics_localization.ko_kr.conf" + } + LanguageDefinition "{68F76221B3A5818C}" { + Code "pl_pl" + StringTableRuntime "{A43EAC5F098BBF29}Language/ACE_Ballistics_localization.pl_pl.conf" + } + LanguageDefinition "{68F76221B3A581FC}" { + Code "pt_br" + StringTableRuntime "{7149369332757593}Language/ACE_Ballistics_localization.pt_br.conf" + } + LanguageDefinition "{68F76221B3A581DB}" { + Code "ru_ru" + StringTableRuntime "{2408223BAF0C10E5}Language/ACE_Ballistics_localization.ru_ru.conf" + } + LanguageDefinition "{68F76221B3A58091}" { + Code "uk_ua" + StringTableRuntime "{AE5077CDC322AEB0}Language/ACE_Ballistics_localization.uk_ua.conf" + } + LanguageDefinition "{68F76221B3A58082}" { + Code "zh_cn" + StringTableRuntime "{74E019F0FA827EAD}Language/ACE_Ballistics_localization.zh_cn.conf" + } + } + } + } + } + } + GameProjectConfig XBOX_ONE { + } + GameProjectConfig XBOX_SERIES { + } + GameProjectConfig PS4 { + } + GameProjectConfig PS5 { + } + GameProjectConfig HEADLESS { + } + } +} \ No newline at end of file diff --git a/addons/ballistics/license.txt b/addons/ballistics/license.txt new file mode 100644 index 000000000..6ebf24cf1 --- /dev/null +++ b/addons/ballistics/license.txt @@ -0,0 +1,18 @@ +ACE Anvil - An experimental realism mod for Arma Reforger +Copyright (C) 2024 acemod + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +When publishing a derivative of this product you may not use a name that +might create the impression that your version is an official release. + +A full copy of this license can be found at the following address: +https://github.com/acemod/ACE-Anvil/blob/master/LICENSE. diff --git a/addons/ballistics/scripts/Game/ACE_Ballistics/Components/Gadgets/ACE_BallisticTableComponent.c b/addons/ballistics/scripts/Game/ACE_Ballistics/Components/Gadgets/ACE_BallisticTableComponent.c new file mode 100644 index 000000000..225c5909f --- /dev/null +++ b/addons/ballistics/scripts/Game/ACE_Ballistics/Components/Gadgets/ACE_BallisticTableComponent.c @@ -0,0 +1,101 @@ +//------------------------------------------------------------------------------------------------ +class ACE_BallisticTableComponentClass : SCR_BallisticTableComponentClass +{ + [Attribute(SCR_Enum.GetDefault(SCR_EOpticsAngleUnits.MILLIRADIANS), uiwidget: UIWidgets.ComboBox, enums: ParamEnumArray.FromEnum(SCR_EOpticsAngleUnits), category: "Layouts")] + protected SCR_EOpticsAngleUnits m_eUnitType; + + [Attribute(defvalue: "{FC58AB2BEBBA6D0E}UI/layouts/Gadgets/BallisticTable/ACE_BallisticTable_WpMils.layout", uiwidget: UIWidgets.ResourceNamePicker, category: "Layouts")] + protected ResourceName m_sACE_TableLayoutName; + + //------------------------------------------------------------------------------------------------ + void UpdateBallisticData() + { + m_aPages.Clear(); + + SCR_ChimeraCharacter player = SCR_ChimeraCharacter.Cast(SCR_PlayerController.GetLocalControlledEntity()); + if (!player) + return; + + array weapons = {}; + player.GetWeaponManager().GetWeapons(weapons); + array allBulletPrefab = {}; + array speedCoefs = {}; + array defaultZeroingRanges = {}; + + foreach (BaseWeaponComponent weapon : weapons) + { + if (weapon.GetWeaponType() == EWeaponType.WT_HANDGUN) + continue; + + float defaultZeroingRange = weapon.GetCurrentSightsZeroing(); + array muzzles = {}; + weapon.GetMuzzlesList(muzzles); + + foreach (BaseMuzzleComponent muzzle : muzzles) + { + float speedCoef = muzzle.GetBulletInitSpeedCoef(); + + foreach (ResourceName bulletPrefab : ACE_BulletTools.GetDefaultResourceNamesFromMuzzle(muzzle)) + { + int idx = allBulletPrefab.Find(bulletPrefab); + if ((idx >= 0) && (speedCoefs[idx] == speedCoef) && (defaultZeroingRanges[idx] == defaultZeroingRange)) + continue; + + allBulletPrefab.Insert(bulletPrefab); + speedCoefs.Insert(speedCoef); + defaultZeroingRanges.Insert(defaultZeroingRange); + } + } + } + + m_aPages.Reserve(allBulletPrefab.Count()); + + foreach (int i, ResourceName bulletPrefab : allBulletPrefab) + { + ACE_VisualisedBallisticConfig page = new ACE_VisualisedBallisticConfig(bulletPrefab, speedCoefs[i], defaultZeroingRanges[i], m_sACE_TableLayoutName, m_eUnitType); + page.GenerateBallisticData(); + m_aPages.Insert(page); + } + } +} + +//------------------------------------------------------------------------------------------------ +class ACE_BallisticTableComponent : SCR_BallisticTableComponent +{ + //------------------------------------------------------------------------------------------------ + protected override void ModeSwitch(EGadgetMode mode, IEntity charOwner) + { + if (mode == EGadgetMode.IN_HAND && charOwner == SCR_PlayerController.GetLocalControlledEntity()) + { + ACE_BallisticTableComponentClass data = ACE_BallisticTableComponentClass.Cast(GetComponentData(GetOwner())); + if (data) + { + data.UpdateBallisticData(); + m_iNumberOfPages = data.GetNumberOfPages(); + } + } + + super.ModeSwitch(mode, charOwner); + } + + //------------------------------------------------------------------------------------------------ + //! Disable broadcasting of pages + [RplRpc(RplChannel.Reliable, RplRcver.Broadcast)] + override void RpcDo_SyncPageChange(int selectedPage) + { + } + + //------------------------------------------------------------------------------------------------ + //! Disable broadcasting of pages + override bool RplSave(ScriptBitWriter writer) + { + return true; + } + + //------------------------------------------------------------------------------------------------ + //! Disable broadcasting of pages + override bool RplLoad(ScriptBitReader reader) + { + return true; + } +} diff --git a/addons/ballistics/scripts/Game/ACE_Ballistics/Components/Gadgets/Configs/ACE_VisualisedBallisticConfig.c b/addons/ballistics/scripts/Game/ACE_Ballistics/Components/Gadgets/Configs/ACE_VisualisedBallisticConfig.c new file mode 100644 index 000000000..54327d4a3 --- /dev/null +++ b/addons/ballistics/scripts/Game/ACE_Ballistics/Components/Gadgets/Configs/ACE_VisualisedBallisticConfig.c @@ -0,0 +1,99 @@ +class ACE_VisualisedBallisticConfig : SCR_VisualisedBallisticConfig +{ + protected float m_fInitSpeedCoef; + protected float m_fDefaultZeroingRange; + + protected static const float WIND_SPEED = 4.0; // [m/s] + protected static const float TARGET_SPEED = 1.0; // [m/s] + protected static const float MIN_DROP = -30.0; // [mrad] + + //------------------------------------------------------------------------------------------------ + void ACE_VisualisedBallisticConfig(ResourceName projectilePrefab, float initSpeedCoef = 1.0, float defaultZeroingRange = 100.0, ResourceName tableLayoutName = "", SCR_EOpticsAngleUnits unitType = SCR_EOpticsAngleUnits.MILLIRADIANS) + { + m_sProjectilePrefab = projectilePrefab; + m_sDisplayedText = FilePath.StripExtension(FilePath.StripPath(projectilePrefab)); + float initialSpeed = initSpeedCoef * ACE_BulletTools.GetInitialSpeed(projectilePrefab); + m_sDisplayedText += string.Format(" (%1 m/s)", Math.Round(initialSpeed)); + m_eUnitType = unitType; + m_fProjectileInitSpeedCoef = initSpeedCoef; + m_iRangeStep = 50; + m_iMinRange = 100; + m_iMaxRange = 1500; + m_iElevationChangeDownRange = 50; + m_fDefaultZeroingRange = defaultZeroingRange; + m_fStandardDispersion = defaultZeroingRange; + + m_sLayoutName = tableLayoutName; + m_sRowPrefab = "{F75FE2331AF70BF8}UI/layouts/Gadgets/BallisticTable/ContentRowLayout.layout"; + m_sCellPrefab = "{801F5CED215A1CFF}UI/layouts/Gadgets/BallisticTable/Content.layout"; + m_aGridFillWeights = {1, 1, 1, 1, 1}; + m_sAverageDispersionFormat = "%1 m"; + } + + //------------------------------------------------------------------------------------------------ + override bool GenerateBallisticData() + { + if (VerifyDataExistence(m_iBallisticDataId)) + return true; + + float initialSpeed = m_fProjectileInitSpeedCoef * ACE_BulletTools.GetInitialSpeed(m_sProjectilePrefab); + IEntitySource projectileSource = Resource.Load(m_sProjectilePrefab).GetResource().ToBaseContainer(); + + array> ballisticValues = {}; + float time; + float zeroDrop = ComputeProjectileDrop(projectileSource, m_fDefaultZeroingRange, initialSpeed, time); + + for (int range = m_iMinRange; range <= m_iMaxRange; range += m_iRangeStep) + { + array row = {range}; + row.Resize(4); + + float drop = ComputeProjectileDrop(projectileSource, range, initialSpeed, time); + + if (drop < MIN_DROP) + break; + + row[1] = drop; + float drift = ACE_BulletTools.ComputeLateralDrift(projectileSource, initialSpeed, WIND_SPEED, time); + float windage = SCR_Math.ConvertFromRadians(Math.Atan2(drift, range), m_eUnitType); + row[2] = ACE_Math.Round(windage, 1); + float lead = SCR_Math.ConvertFromRadians(Math.Atan2(TARGET_SPEED * time, range), m_eUnitType); + row[3] = ACE_Math.Round(lead, 1); + ballisticValues.Insert(row); + } + + // Shift drops by default zeroing drop + for (int i = 0; i < ballisticValues.Count(); ++i) + { + ballisticValues[i][1] = ACE_Math.Round(ballisticValues[i][1] - zeroDrop, 1); + } + + SCR_BallisticData ballisticData = new SCR_BallisticData(ballisticValues, m_sProjectilePrefab, m_bDirectFireMode, m_iRangeStep, m_fProjectileInitSpeedCoef); + ballisticData.ACE_SetUnitType(m_eUnitType); + ballisticData.ACE_SetDefaultZeroingRange(m_fDefaultZeroingRange); + + if (!SCR_BallisticData.s_aBallistics) + SCR_BallisticData.s_aBallistics = {}; + + SCR_BallisticData.s_aBallistics.Insert(ballisticData); + m_iBallisticDataId = SCR_BallisticData.s_aBallistics.Count() - 1; + return true; + } + + //------------------------------------------------------------------------------------------------ + override bool VerifyDataExistence(inout int id = -1) + { + if (!super.VerifyDataExistence(id)) + return false; + + SCR_BallisticData ballisticData = SCR_BallisticData.s_aBallistics[id]; + return (ballisticData.ACE_GetUnitType() == m_eUnitType) && (ballisticData.ACE_GetDefaultZeroingRange() == m_fDefaultZeroingRange); + } + + //------------------------------------------------------------------------------------------------ + protected float ComputeProjectileDrop(IEntitySource projectileSource, float range, float initialSpeed, out float time) + { + float elevationAngle = ACE_BulletTools.ComputeElevationAngleForRange(projectileSource, range, initialSpeed, time); + return -SCR_Math.ConvertFromRadians(elevationAngle, m_eUnitType); + } +} diff --git a/addons/ballistics/scripts/Game/ACE_Ballistics/Components/Gadgets/Configs/SCR_BallisticData.c b/addons/ballistics/scripts/Game/ACE_Ballistics/Components/Gadgets/Configs/SCR_BallisticData.c new file mode 100644 index 000000000..87eff0769 --- /dev/null +++ b/addons/ballistics/scripts/Game/ACE_Ballistics/Components/Gadgets/Configs/SCR_BallisticData.c @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------------------------ +modded class SCR_BallisticData : ScriptAndConfig +{ + protected SCR_EOpticsAngleUnits m_eACE_UnitType; + protected float m_eACE_DefaultZeroingRange; + + //------------------------------------------------------------------------------------------------ + void ACE_SetUnitType(SCR_EOpticsAngleUnits unitType) + { + m_eACE_UnitType = unitType; + } + + //------------------------------------------------------------------------------------------------ + SCR_EOpticsAngleUnits ACE_GetUnitType() + { + return m_eACE_UnitType; + } + + //------------------------------------------------------------------------------------------------ + void ACE_SetDefaultZeroingRange(float range) + { + m_eACE_DefaultZeroingRange = range; + } + + //------------------------------------------------------------------------------------------------ + float ACE_GetDefaultZeroingRange() + { + return m_eACE_DefaultZeroingRange; + } +} diff --git a/addons/ballistics/scripts/Game/ACE_Ballistics/UserActions/ACE_Ballistics_ChangeBallisticPageAction.c b/addons/ballistics/scripts/Game/ACE_Ballistics/UserActions/ACE_Ballistics_ChangeBallisticPageAction.c new file mode 100644 index 000000000..5f14033ed --- /dev/null +++ b/addons/ballistics/scripts/Game/ACE_Ballistics/UserActions/ACE_Ballistics_ChangeBallisticPageAction.c @@ -0,0 +1,9 @@ +//------------------------------------------------------------------------------------------------ +class ACE_Ballistics_ChangePageAction : SCR_ChangeBallisticPageAction +{ + //------------------------------------------------------------------------------------------------ + override bool HasLocalEffectOnlyScript() + { + return true; + } +} diff --git a/addons/ballistics/thumbnail.png b/addons/ballistics/thumbnail.png new file mode 100644 index 000000000..3d4283142 Binary files /dev/null and b/addons/ballistics/thumbnail.png differ diff --git a/addons/captives/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf b/addons/captives/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf new file mode 100644 index 000000000..1186cc782 --- /dev/null +++ b/addons/captives/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf @@ -0,0 +1,14 @@ +ACE_EntityCatalogMultiListEntry { + m_aEntities { + SCR_EntityCatalogInventoryItem "{64FC20C065CA64F5}" { + m_sEntityPrefab "{CBF9B9942E07B6B8}Prefabs/Items/Equipment/Accessories/ZipCuffs/ACE_Captives_ZipCuffs.et" + m_aEntityDataList { + SCR_ArsenalItem "{64FC20C19D482C89}" { + m_eItemType EQUIPMENT + m_eItemMode CONSUMABLE + m_iSupplyCost 0 + } + } + } + } +} \ No newline at end of file diff --git a/addons/captives/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta b/addons/captives/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta new file mode 100644 index 000000000..28b784c60 --- /dev/null +++ b/addons/captives/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItemsBase.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/captives/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf b/addons/captives/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf deleted file mode 100644 index ac6929e87..000000000 --- a/addons/captives/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf +++ /dev/null @@ -1,18 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C630E453BCB39DC}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{64FC20C065CA64F5}" { - m_sEntityPrefab "{CBF9B9942E07B6B8}Prefabs/Items/Equipment/Accessories/ZipCuffs/ACE_Captives_ZipCuffs.et" - m_aEntityDataList { - SCR_ArsenalItem "{64FC20C19D482C89}" { - m_eItemType EQUIPMENT - m_eItemMode CONSUMABLE - m_iSupplyCost 0 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/captives/Configs/EntityCatalog/US/US_InventoryItems.conf b/addons/captives/Configs/EntityCatalog/US/US_InventoryItems.conf deleted file mode 100644 index 18144b2d1..000000000 --- a/addons/captives/Configs/EntityCatalog/US/US_InventoryItems.conf +++ /dev/null @@ -1,18 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD59F0753ABE}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{64FC20C065CA64F5}" { - m_sEntityPrefab "{CBF9B9942E07B6B8}Prefabs/Items/Equipment/Accessories/ZipCuffs/ACE_Captives_ZipCuffs.et" - m_aEntityDataList { - SCR_ArsenalItem "{64FC20C19D482C89}" { - m_eItemType EQUIPMENT - m_eItemMode CONSUMABLE - m_iSupplyCost 0 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/captives/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf b/addons/captives/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf deleted file mode 100644 index bcb41f324..000000000 --- a/addons/captives/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf +++ /dev/null @@ -1,18 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD5F7414CA4A}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{64FC20C065CA64F5}" { - m_sEntityPrefab "{CBF9B9942E07B6B8}Prefabs/Items/Equipment/Accessories/ZipCuffs/ACE_Captives_ZipCuffs.et" - m_aEntityDataList { - SCR_ArsenalItem "{64FC20C19D482C89}" { - m_eItemType EQUIPMENT - m_eItemMode CONSUMABLE - m_iSupplyCost 0 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/captives/Prefabs/Helpers/ACE_Captives_SurrenderHelperCompartment.et b/addons/captives/Prefabs/Helpers/ACE_Captives_SurrenderHelperCompartment.et index 3f27e5726..a4d86a925 100644 --- a/addons/captives/Prefabs/Helpers/ACE_Captives_SurrenderHelperCompartment.et +++ b/addons/captives/Prefabs/Helpers/ACE_Captives_SurrenderHelperCompartment.et @@ -1,6 +1,14 @@ ACE_Captives_SurrenderHelperCompartment : "{0D226790BE615DC7}Prefabs/Helpers/ACE_AnimationHelperCompartment.et" { ID "4B42E71698F5739C" components { + SCR_BaseCompartmentManagerComponent "{2CD4A765A7D52986}" { + CompartmentSlots { + CargoCompartmentSlot Performer { + GetOutAction SCR_GetOutAction "{69AD265674DA6E68}" { + } + } + } + } VehicleAnimationComponent "{50B812962B17E60B}" { AnimInstance "{EF71DF39A69DC55A}Assets/Helpers/Workspace/ACE_Captives_Surrender.asi" AnimInjection AnimationAttachmentInfo "{50B812961A339FD2}" { diff --git a/addons/captives/Prefabs/Helpers/ACE_Captives_TiedHelperCompartment.et b/addons/captives/Prefabs/Helpers/ACE_Captives_TiedHelperCompartment.et index d69e02bad..d8d44f808 100644 --- a/addons/captives/Prefabs/Helpers/ACE_Captives_TiedHelperCompartment.et +++ b/addons/captives/Prefabs/Helpers/ACE_Captives_TiedHelperCompartment.et @@ -12,7 +12,7 @@ ACE_Captives_TiedHelperCompartment : "{0D226790BE615DC7}Prefabs/Helpers/ACE_Anim SCR_BaseCompartmentManagerComponent "{2CD4A765A7D52986}" { CompartmentSlots { CargoCompartmentSlot Performer { - GetOutAction CompartmentUserAction "{64771541B779685D}" { + GetOutAction CompartmentUserAction "{69AD26567CC01AEE}" { } } } diff --git a/addons/captives/scripts/Game/ACE_Captives/UserActions/SCR_RemoveCasualtyUserAction.c b/addons/captives/scripts/Game/ACE_Captives/UserActions/SCR_RemoveCasualtyUserAction.c index d46dfaf7e..5e6c65dc7 100644 --- a/addons/captives/scripts/Game/ACE_Captives/UserActions/SCR_RemoveCasualtyUserAction.c +++ b/addons/captives/scripts/Game/ACE_Captives/UserActions/SCR_RemoveCasualtyUserAction.c @@ -25,10 +25,6 @@ modded class SCR_RemoveCasualtyUserAction : SCR_CompartmentUserAction if (!captiveChar) return; - SCR_CompartmentAccessComponent captiveCompartmentAccess = SCR_CompartmentAccessComponent.Cast(captiveChar.GetCompartmentAccessComponent()); - if (captiveCompartmentAccess) - captiveCompartmentAccess.KickFromVehicle(GetRelevantDoorIndex(pUserEntity)); - ACE_AnimationHelperCompartment helper = ACE_AnimationTools.AnimateWithHelperCompartment(ACE_EAnimationHelperID.TIED, captiveChar); if (!helper) return; @@ -119,21 +115,21 @@ modded class SCR_RemoveCasualtyUserAction : SCR_CompartmentUserAction if (!userChar) return false; - // Cannot be performed when already carrying - SCR_CharacterControllerComponent userCharController = SCR_CharacterControllerComponent.Cast(userChar.GetCharacterController()); - if (!userCharController || userCharController.ACE_IsCarrier()) - { - SetCannotPerformReason("#ACE-UserAction_Carrying"); + BaseCompartmentSlot compartment = GetCompartmentSlot(); + if (!compartment) return false; - } - SCR_CompartmentAccessComponent compartmentAccess = SCR_CompartmentAccessComponent.Cast(userChar.GetCompartmentAccessComponent()); - if (!compartmentAccess) + SCR_ChimeraCharacter captiveChar = SCR_ChimeraCharacter.Cast(compartment.GetOccupant()); + if (!captiveChar) return false; - BaseCompartmentSlot compartment = GetCompartmentSlot(); - if (!compartment) + string cannotPerformReason; + SCR_CharacterControllerComponent userCharController = SCR_CharacterControllerComponent.Cast(userChar.GetCharacterController()); + if (!userCharController || !userCharController.ACE_CanCarry(captiveChar, cannotPerformReason)) + { + SetCannotPerformReason(cannotPerformReason); return false; + } return true; } diff --git a/addons/carrying/Prefabs/Helpers/ACE_Carrying_BaseHelperCompartment.et b/addons/carrying/Prefabs/Helpers/ACE_Carrying_BaseHelperCompartment.et index 95da23f44..b85b99d8f 100644 --- a/addons/carrying/Prefabs/Helpers/ACE_Carrying_BaseHelperCompartment.et +++ b/addons/carrying/Prefabs/Helpers/ACE_Carrying_BaseHelperCompartment.et @@ -11,6 +11,8 @@ ACE_Carrying_HelperCompartment : "{0D226790BE615DC7}Prefabs/Helpers/ACE_Animatio SCR_BaseCompartmentManagerComponent "{2CD4A765A7D52986}" { CompartmentSlots { CargoCompartmentSlot Performer { + GetOutAction CompartmentUserAction "{69AD265654380459}" { + } OverrideEntryPositionInfo PointInfo "{670E0D3DB86D5304}" { } OverrideExitPositionInfo PointInfo "{670E0D3DB3C80C6C}" { diff --git a/addons/carrying/Scripts/Game/ACE_Carrying/UserActions/SCR_RemoveCasualtyUserAction.c b/addons/carrying/Scripts/Game/ACE_Carrying/UserActions/SCR_RemoveCasualtyUserAction.c index 262c74204..994481847 100644 --- a/addons/carrying/Scripts/Game/ACE_Carrying/UserActions/SCR_RemoveCasualtyUserAction.c +++ b/addons/carrying/Scripts/Game/ACE_Carrying/UserActions/SCR_RemoveCasualtyUserAction.c @@ -5,9 +5,6 @@ modded class SCR_RemoveCasualtyUserAction : SCR_CompartmentUserAction //! Initate carry when possible override protected void PerformRemoveCasualtyAction(IEntity pOwnerEntity, IEntity pUserEntity) { - // First call the base implementation, which ejects the character from the vehicle - super.PerformRemoveCasualtyAction(pOwnerEntity, pUserEntity); - BaseCompartmentSlot compartment = GetCompartmentSlot(); if (!compartment) return; @@ -24,12 +21,10 @@ modded class SCR_RemoveCasualtyUserAction : SCR_CompartmentUserAction if (!userCharController) return; - // We just eject AI for now. Trying to carrying them immediatly breaks their animation - if (!EntityUtils.IsPlayer(casualtyChar)) - return; - string cannotPerformReason; if (userCharController.ACE_Carrying_CanCarryCasualty(casualtyChar, cannotPerformReason)) userCharController.ACE_Carrying_CarryCasualty(casualtyChar); + else + super.PerformRemoveCasualtyAction(pOwnerEntity, pUserEntity); // Just eject them if not carriable } } diff --git a/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf b/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf new file mode 100644 index 000000000..bdc38f217 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf @@ -0,0 +1,24 @@ +ACE_EntityCatalogMultiListEntry { + m_sIdentifier "ACE Equipment" + m_aEntities { + SCR_EntityCatalogInventoryItem "{60FD565F7DFBE6A4}" { + m_sEntityPrefab "{181B4ADA65725D59}Prefabs/Items/Core/ACE_Banana.et" + m_aEntityDataList { + SCR_ArsenalItem "{60FD565F75061ED6}" { + m_eItemType NON_LETHAL_THROWABLE + m_iSupplyCost 0 + } + } + } + SCR_EntityCatalogInventoryItem "{60FD565F20A453B3}" { + m_sEntityPrefab "{9310D03C4A62286F}Prefabs/Weapons/Grenades/ACE_FragBanana.et" + m_aEntityDataList { + SCR_ArsenalItem "{60FD565F5B120DC6}" { + m_eItemType LETHAL_THROWABLE + m_iSupplyCost 3 + } + } + } + } + m_iACE_Priority -25 +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta b/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta new file mode 100644 index 000000000..28b784c60 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItemsBase.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf b/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf new file mode 100644 index 000000000..a0b3ea597 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf @@ -0,0 +1,4 @@ +ACE_EntityCatalogMultiListEntry { + m_sIdentifier "ACE Medical" + m_iACE_Priority -35 +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf.meta b/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf.meta new file mode 100644 index 000000000..a7d63222d --- /dev/null +++ b/addons/core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{A5E3827C546B8210}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf b/addons/core/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf deleted file mode 100644 index d631a6652..000000000 --- a/addons/core/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf +++ /dev/null @@ -1,26 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD58703CABF4}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{60FD565F7DFBE6A4}" { - m_sEntityPrefab "{181B4ADA65725D59}Prefabs/Items/Core/ACE_Banana.et" - m_aEntityDataList { - SCR_ArsenalItem "{60FD565F75061ED6}" { - m_eItemType NON_LETHAL_THROWABLE - m_iSupplyCost 0 - } - } - } - SCR_EntityCatalogInventoryItem "{60FD565F20A453B3}" { - m_sEntityPrefab "{9310D03C4A62286F}Prefabs/Weapons/Grenades/ACE_FragBanana.et" - m_aEntityDataList { - SCR_ArsenalItem "{60FD565F5B120DC6}" { - m_eItemType LETHAL_THROWABLE - m_iSupplyCost 3 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf b/addons/core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf new file mode 100644 index 000000000..2d3098ef3 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf @@ -0,0 +1,29 @@ +SCR_EntityCatalogMultiList { + m_aMultiLists { + SCR_EntityCatalogMultiListEntry "{5C630E453CE20F8F}" { + m_iACE_Priority -70 + } + SCR_EntityCatalogMultiListEntry "{5C630E4538D3163D}" { + m_iACE_Priority -60 + } + SCR_EntityCatalogMultiListEntry "{5C630E453CA0B981}" { + m_iACE_Priority -50 + } + SCR_EntityCatalogMultiListEntry "{5C68AD58703CABF4}" { + m_iACE_Priority -40 + } + SCR_EntityCatalogMultiListEntry "{5C630E453BCB39DC}" { + m_iACE_Priority -30 + } + SCR_EntityCatalogMultiListEntry "{5C630E453B60C320}" { + m_iACE_Priority -20 + } + SCR_EntityCatalogMultiListEntry "{5C630E453B27FB86}" { + m_iACE_Priority -10 + } + ACE_EntityCatalogMultiListEntry "{69D210804C2BFE9E}" : "{A5E3827C546B8210}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf" { + } + ACE_EntityCatalogMultiListEntry "{69D102AC05BFC4DC}" : "{382ACD2D23811DDE}Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf" { + } + } +} \ No newline at end of file diff --git a/addons/captives/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta b/addons/core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf.meta similarity index 100% rename from addons/captives/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf.meta rename to addons/core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf.meta diff --git a/addons/core/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf b/addons/core/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf new file mode 100644 index 000000000..c41933b32 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf @@ -0,0 +1,2 @@ +ACE_EntityCatalogMultiListEntry : "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf" { +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf.meta b/addons/core/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf.meta new file mode 100644 index 000000000..59be24be2 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{E7D9069BE26B7A4C}Configs/EntityCatalog/ACE_UK_InventoryItems.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Ammunition_All.conf b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Ammunition_All.conf new file mode 100644 index 000000000..043707a49 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Ammunition_All.conf @@ -0,0 +1,3 @@ +SCR_EntityCatalogMultiListEntry { + m_iACE_Priority -60 +} \ No newline at end of file diff --git a/addons/medical_core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Ammunition_All.conf.meta similarity index 74% rename from addons/medical_core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta rename to addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Ammunition_All.conf.meta index e60da21c0..765355db8 100644 --- a/addons/medical_core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Ammunition_All.conf.meta @@ -1,5 +1,5 @@ MetaFileClass { - Name "{5F7EC52FC40A03E2}Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf" + Name "{9B8732534F2FCDAE}Configs/EntityCatalog/UK/Arsenal Lists/UK_Ammunition_All.conf" Configurations { CONFResourceClass PC { } @@ -9,9 +9,9 @@ MetaFileClass { } CONFResourceClass PS4 : PC { } - CONFResourceClass HEADLESS : PC { - } CONFResourceClass PS5 : PC { } + CONFResourceClass HEADLESS : PC { + } } } \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_BackpacksVests_All.conf b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_BackpacksVests_All.conf new file mode 100644 index 000000000..b0d41ef9e --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_BackpacksVests_All.conf @@ -0,0 +1,3 @@ +SCR_EntityCatalogMultiListEntry { + m_iACE_Priority -20 +} \ No newline at end of file diff --git a/addons/medical_core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf.meta b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_BackpacksVests_All.conf.meta similarity index 73% rename from addons/medical_core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf.meta rename to addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_BackpacksVests_All.conf.meta index 49381bb91..636707ef3 100644 --- a/addons/medical_core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf.meta +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_BackpacksVests_All.conf.meta @@ -1,5 +1,5 @@ MetaFileClass { - Name "{E908001749419691}Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf" + Name "{89C89802F8B15EF0}Configs/EntityCatalog/UK/Arsenal Lists/UK_BackpacksVests_All.conf" Configurations { CONFResourceClass PC { } @@ -9,9 +9,9 @@ MetaFileClass { } CONFResourceClass PS4 : PC { } - CONFResourceClass HEADLESS : PC { - } CONFResourceClass PS5 : PC { } + CONFResourceClass HEADLESS : PC { + } } } \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Clothing_All.conf b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Clothing_All.conf new file mode 100644 index 000000000..d13f2664e --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Clothing_All.conf @@ -0,0 +1,3 @@ +SCR_EntityCatalogMultiListEntry { + m_iACE_Priority -10 +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Clothing_All.conf.meta b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Clothing_All.conf.meta new file mode 100644 index 000000000..dd8741a2d --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Clothing_All.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{2A937B904F3FA670}Configs/EntityCatalog/UK/Arsenal Lists/UK_Clothing_All.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Equipment_All.conf b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Equipment_All.conf new file mode 100644 index 000000000..9f5d327ac --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Equipment_All.conf @@ -0,0 +1,3 @@ +SCR_EntityCatalogMultiListEntry { + m_iACE_Priority -30 +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Equipment_All.conf.meta b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Equipment_All.conf.meta new file mode 100644 index 000000000..faf27f22f --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Equipment_All.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{92B601BD2DC5A55F}Configs/EntityCatalog/UK/Arsenal Lists/UK_Equipment_All.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Explosives_All.conf b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Explosives_All.conf new file mode 100644 index 000000000..e001fab76 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Explosives_All.conf @@ -0,0 +1,3 @@ +SCR_EntityCatalogMultiListEntry { + m_iACE_Priority -40 +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Explosives_All.conf.meta b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Explosives_All.conf.meta new file mode 100644 index 000000000..ab28dc1c8 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Explosives_All.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{0F0D0C941E412EE7}Configs/EntityCatalog/UK/Arsenal Lists/UK_Explosives_All.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_WeaponAttachments_All.conf b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_WeaponAttachments_All.conf new file mode 100644 index 000000000..854beddfc --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_WeaponAttachments_All.conf @@ -0,0 +1,3 @@ +SCR_EntityCatalogMultiListEntry { + m_iACE_Priority -50 +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_WeaponAttachments_All.conf.meta b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_WeaponAttachments_All.conf.meta new file mode 100644 index 000000000..21650723d --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_WeaponAttachments_All.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{37FBA7E7466F4CB9}Configs/EntityCatalog/UK/Arsenal Lists/UK_WeaponAttachments_All.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Weapons_All.conf b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Weapons_All.conf new file mode 100644 index 000000000..23d083d1d --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Weapons_All.conf @@ -0,0 +1,3 @@ +SCR_EntityCatalogMultiListEntry { + m_iACE_Priority -70 +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Weapons_All.conf.meta b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Weapons_All.conf.meta new file mode 100644 index 000000000..083d66647 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/Arsenal Lists/UK_Weapons_All.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{C2EE8603146E36CB}Configs/EntityCatalog/UK/Arsenal Lists/UK_Weapons_All.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/UK/UK_InventoryItems.conf b/addons/core/Configs/EntityCatalog/UK/UK_InventoryItems.conf new file mode 100644 index 000000000..e315d7a65 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/UK/UK_InventoryItems.conf @@ -0,0 +1,8 @@ +SCR_EntityCatalogMultiList { + m_aMultiLists { + ACE_EntityCatalogMultiListEntry "{69D247D5F3DF316A}" : "{A5E3827C546B8210}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf" { + } + ACE_EntityCatalogMultiListEntry "{69D247D5F0D5014E}" : "{E7D9069BE26B7A4C}Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf" { + } + } +} \ No newline at end of file diff --git a/addons/facepaint/Configs/EntityCatalog/UK/UK_InventoryItems.conf.meta b/addons/core/Configs/EntityCatalog/UK/UK_InventoryItems.conf.meta similarity index 100% rename from addons/facepaint/Configs/EntityCatalog/UK/UK_InventoryItems.conf.meta rename to addons/core/Configs/EntityCatalog/UK/UK_InventoryItems.conf.meta diff --git a/addons/core/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf b/addons/core/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf new file mode 100644 index 000000000..c41933b32 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf @@ -0,0 +1,2 @@ +ACE_EntityCatalogMultiListEntry : "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf" { +} \ No newline at end of file diff --git a/addons/tactical_ladder/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf.meta b/addons/core/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf.meta similarity index 81% rename from addons/tactical_ladder/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf.meta rename to addons/core/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf.meta index e300bbe36..9ff7b4525 100644 --- a/addons/tactical_ladder/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf.meta +++ b/addons/core/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf.meta @@ -1,5 +1,5 @@ MetaFileClass { - Name "{C53421647C3D0D2E}Configs/EntityCatalog/USSR/USSR_InventoryItems.conf" + Name "{12790B4E7D42F952}Configs/EntityCatalog/US/ACE_US_InventoryItems.conf" Configurations { CONFResourceClass PC { } diff --git a/addons/core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf b/addons/core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf new file mode 100644 index 000000000..30be64e2e --- /dev/null +++ b/addons/core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf @@ -0,0 +1,29 @@ +SCR_EntityCatalogMultiList { + m_aMultiLists { + SCR_EntityCatalogMultiListEntry "{5C68AD59AB9FBDDC}" { + m_iACE_Priority -70 + } + SCR_EntityCatalogMultiListEntry "{5C68AD59AA6FA1B8}" { + m_iACE_Priority -60 + } + SCR_EntityCatalogMultiListEntry "{5C68AD59AA315A22}" { + m_iACE_Priority -50 + } + SCR_EntityCatalogMultiListEntry "{5CA0A9E60B892D2A}" { + m_iACE_Priority -40 + } + SCR_EntityCatalogMultiListEntry "{5C68AD59F0753ABE}" { + m_iACE_Priority -30 + } + SCR_EntityCatalogMultiListEntry "{5C68AD59AA2B2FF4}" { + m_iACE_Priority -20 + } + SCR_EntityCatalogMultiListEntry "{5C68AD59AA1A6D59}" { + m_iACE_Priority -10 + } + ACE_EntityCatalogMultiListEntry "{69D102AC212B4389}" : "{A5E3827C546B8210}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf" { + } + ACE_EntityCatalogMultiListEntry "{69D2108069E4B053}" : "{12790B4E7D42F952}Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf" { + } + } +} \ No newline at end of file diff --git a/addons/captives/Configs/EntityCatalog/US/US_InventoryItems.conf.meta b/addons/core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta similarity index 100% rename from addons/captives/Configs/EntityCatalog/US/US_InventoryItems.conf.meta rename to addons/core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta diff --git a/addons/core/Configs/EntityCatalog/US/US_InventoryItems.conf b/addons/core/Configs/EntityCatalog/US/US_InventoryItems.conf deleted file mode 100644 index 8435bbfce..000000000 --- a/addons/core/Configs/EntityCatalog/US/US_InventoryItems.conf +++ /dev/null @@ -1,26 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5CA0A9E60B892D2A}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{60FD565F7DFBE6A4}" { - m_sEntityPrefab "{181B4ADA65725D59}Prefabs/Items/Core/ACE_Banana.et" - m_aEntityDataList { - SCR_ArsenalItem "{60FD565F75061ED6}" { - m_eItemType NON_LETHAL_THROWABLE - m_iSupplyCost 0 - } - } - } - SCR_EntityCatalogInventoryItem "{60FD565F20A453B3}" { - m_sEntityPrefab "{9310D03C4A62286F}Prefabs/Weapons/Grenades/ACE_FragBanana.et" - m_aEntityDataList { - SCR_ArsenalItem "{60FD565F5B120DC6}" { - m_eItemType LETHAL_THROWABLE - m_iSupplyCost 3 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf b/addons/core/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf new file mode 100644 index 000000000..c41933b32 --- /dev/null +++ b/addons/core/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf @@ -0,0 +1,2 @@ +ACE_EntityCatalogMultiListEntry : "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf" { +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf.meta b/addons/core/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf.meta new file mode 100644 index 000000000..3fba1bccb --- /dev/null +++ b/addons/core/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{382ACD2D23811DDE}Configs/EntityCatalog/USSR/ACE_USSR_InventoryItems.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf b/addons/core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf new file mode 100644 index 000000000..e67b1973b --- /dev/null +++ b/addons/core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf @@ -0,0 +1,29 @@ +SCR_EntityCatalogMultiList { + m_aMultiLists { + SCR_EntityCatalogMultiListEntry "{5C68AD5F14BDB1A7}" { + m_iACE_Priority -70 + } + SCR_EntityCatalogMultiListEntry "{5C68AD5F148714C4}" { + m_iACE_Priority -60 + } + SCR_EntityCatalogMultiListEntry "{5C68AD5F137C9AFF}" { + m_iACE_Priority -50 + } + SCR_EntityCatalogMultiListEntry "{5C68AD5F1351A624}" { + m_iACE_Priority -40 + } + SCR_EntityCatalogMultiListEntry "{5C68AD5F7414CA4A}" { + m_iACE_Priority -30 + } + SCR_EntityCatalogMultiListEntry "{5C68AD5F13464B23}" { + m_iACE_Priority -20 + } + SCR_EntityCatalogMultiListEntry "{5C68AD5F13240031}" { + m_iACE_Priority -10 + } + ACE_EntityCatalogMultiListEntry "{69D102AC4014161D}" : "{A5E3827C546B8210}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf" { + } + ACE_EntityCatalogMultiListEntry "{69D2108063218CBD}" : "{382ACD2D23811DDE}Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf" { + } + } +} \ No newline at end of file diff --git a/addons/captives/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf.meta b/addons/core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta similarity index 100% rename from addons/captives/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf.meta rename to addons/core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta diff --git a/addons/core/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf b/addons/core/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf deleted file mode 100644 index 820562a90..000000000 --- a/addons/core/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf +++ /dev/null @@ -1,26 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD5F1351A624}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{60FD565F7DFBE6A4}" { - m_sEntityPrefab "{181B4ADA65725D59}Prefabs/Items/Core/ACE_Banana.et" - m_aEntityDataList { - SCR_ArsenalItem "{60FD565F75061ED6}" { - m_eItemType NON_LETHAL_THROWABLE - m_iSupplyCost 0 - } - } - } - SCR_EntityCatalogInventoryItem "{60FD565F20A453B3}" { - m_sEntityPrefab "{9310D03C4A62286F}Prefabs/Weapons/Grenades/ACE_FragBanana.et" - m_aEntityDataList { - SCR_ArsenalItem "{60FD565F5B120DC6}" { - m_eItemType LETHAL_THROWABLE - m_iSupplyCost 3 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/core/Prefabs/Helpers/ACE_AnimationHelperCompartment.et b/addons/core/Prefabs/Helpers/ACE_AnimationHelperCompartment.et index d71eb9577..7fc26363a 100644 --- a/addons/core/Prefabs/Helpers/ACE_AnimationHelperCompartment.et +++ b/addons/core/Prefabs/Helpers/ACE_AnimationHelperCompartment.et @@ -19,6 +19,12 @@ ACE_AnimationHelperCompartment : "{278E487E19D82680}Prefabs/Vehicles/Core/Vehicl } CompartmentSlots { CargoCompartmentSlot Performer { + CompartmentAction CompartmentUserAction "{69AD265658BC24AA}" { + } + JumpOutAction CompartmentUserAction "{69AD265659781649}" { + } + SwitchSeatAction CompartmentUserAction "{69AD26565F43CFA0}" { + } PassengerPositionInfo EntitySlotInfo s1 { } ForcedFreeLook 1 @@ -45,9 +51,6 @@ ACE_AnimationHelperCompartment : "{278E487E19D82680}Prefabs/Vehicles/Core/Vehicl m_fDist_Desired 1 m_fFOV 74 } - ActionsManagerComponent "{2CD4A765B4482F53}" { - Enabled 0 - } VehicleAnimationComponent "{50B812962B17E60B}" { AnimGraph "{30A78C04E5385196}Assets/Helpers/Workspace/ACE_AnimationHelperCompartment.agr" AnimInstance "{A0A5BCBD5629BADB}Assets/Helpers/Workspace/ACE_AnimationHelperCompartment.asi" diff --git a/addons/core/scripts/Game/ACE_Core/Character/SCR_CharacterControllerComponent.c b/addons/core/scripts/Game/ACE_Core/Character/SCR_CharacterControllerComponent.c index 2f5da6e9d..d28735ca1 100644 --- a/addons/core/scripts/Game/ACE_Core/Character/SCR_CharacterControllerComponent.c +++ b/addons/core/scripts/Game/ACE_Core/Character/SCR_CharacterControllerComponent.c @@ -73,6 +73,10 @@ modded class SCR_CharacterControllerComponent : CharacterControllerComponent //------------------------------------------------------------------------------------------------ bool ACE_CanCarry(IEntity entity, out string cannotPerformReason) { + SCR_ChimeraCharacter ownerChar = SCR_ChimeraCharacter.Cast(GetOwner()); + if (!ownerChar || ownerChar.IsInVehicle()) + return false; + if (ACE_IsCarrier()) { cannotPerformReason = "#ACE-UserAction_Carrying"; diff --git a/addons/core/scripts/Game/ACE_Core/EntityCatalog/ACE_EntityCatalogMultiListEntry.c b/addons/core/scripts/Game/ACE_Core/EntityCatalog/ACE_EntityCatalogMultiListEntry.c new file mode 100644 index 000000000..98d6e0bf3 --- /dev/null +++ b/addons/core/scripts/Game/ACE_Core/EntityCatalog/ACE_EntityCatalogMultiListEntry.c @@ -0,0 +1,6 @@ +//---------------------------------------------------------------------------- +//! Same as vanilla, but can be a standalone conf file +[BaseContainerProps(configRoot: true), SCR_BaseContainerCustomEntityCatalogMultiListEntry("m_sIdentifier", "m_aEntities")] +class ACE_EntityCatalogMultiListEntry : SCR_EntityCatalogMultiListEntry +{ +} diff --git a/addons/core/scripts/Game/ACE_Core/EntityCatalog/SCR_EntityCatalogMultiList.c b/addons/core/scripts/Game/ACE_Core/EntityCatalog/SCR_EntityCatalogMultiList.c new file mode 100644 index 000000000..991550c20 --- /dev/null +++ b/addons/core/scripts/Game/ACE_Core/EntityCatalog/SCR_EntityCatalogMultiList.c @@ -0,0 +1,11 @@ +//------------------------------------------------------------------------------------------------ +[BaseContainerProps(configRoot: true), SCR_BaseContainerCustomEntityCatalogCatalog(EEntityCatalogType, "m_eEntityCatalogType", "m_aEntityEntryList", "m_aMultiLists")] +modded class SCR_EntityCatalogMultiList: SCR_EntityCatalog +{ + //------------------------------------------------------------------------------------------------ + protected override void InitCatalog() + { + ACE_Sorting, ACE_CompateEntityCatalogMultiListEntryPriority>.InsertionSort(m_aMultiLists); + super.InitCatalog(); + } +} diff --git a/addons/core/scripts/Game/ACE_Core/EntityCatalog/SCR_EntityCatalogMultiListEntry.c b/addons/core/scripts/Game/ACE_Core/EntityCatalog/SCR_EntityCatalogMultiListEntry.c new file mode 100644 index 000000000..de89fb368 --- /dev/null +++ b/addons/core/scripts/Game/ACE_Core/EntityCatalog/SCR_EntityCatalogMultiListEntry.c @@ -0,0 +1,17 @@ +//------------------------------------------------------------------------------------------------ +[BaseContainerProps(), SCR_BaseContainerCustomEntityCatalogMultiListEntry("m_sIdentifier", "m_aEntities")] +modded class SCR_EntityCatalogMultiListEntry +{ + [SortAttribute(), Attribute(desc: "Sort priority of the entry. Lower value means higher priority.")] + int m_iACE_Priority; +} + +//------------------------------------------------------------------------------------------------ +class ACE_CompateEntityCatalogMultiListEntryPriority : SCR_SortCompare +{ + //------------------------------------------------------------------------------------------------ + override static int Compare(SCR_EntityCatalogMultiListEntry left, SCR_EntityCatalogMultiListEntry right) + { + return left.m_iACE_Priority < right.m_iACE_Priority; + } +} diff --git a/addons/core/scripts/Game/ACE_Core/Global/Sorting/ACE_Sorting.c b/addons/core/scripts/Game/ACE_Core/Global/Sorting/ACE_Sorting.c new file mode 100644 index 000000000..94defbf65 --- /dev/null +++ b/addons/core/scripts/Game/ACE_Core/Global/Sorting/ACE_Sorting.c @@ -0,0 +1,31 @@ +//--------------------------------------------------------------------------------------------------- +class ACE_Sorting +{ + //--------------------------------------------------------------------------------------------------- + //! Sorts container inplace with insertion sort, a stable and adpative sorting algorithm + //! \param[in] a Container to sort + //! \param[in] inverse Sort in ascending order when false + static void InsertionSort(TContainer a, bool inverse = false) + { + for (int i = 1, count = a.Count(); i < count; i++) + { + T tmp = a[i]; + + for (int j = i; j > 0; j--) + { + if (!inverse) + { + if (!TCompare.Compare(tmp, a[j - 1])) + break; + } + else + { + if (!TCompare.Compare(a[j - 1], tmp)) + break; + } + + a.SwapItems(j - 1, j); + } + } + } +} diff --git a/addons/core/scripts/Game/ACE_Core/Vehicle/SCR_CompartmentAccessComponent.c b/addons/core/scripts/Game/ACE_Core/Vehicle/SCR_CompartmentAccessComponent.c index eb1527eb4..111fd8fc7 100644 --- a/addons/core/scripts/Game/ACE_Core/Vehicle/SCR_CompartmentAccessComponent.c +++ b/addons/core/scripts/Game/ACE_Core/Vehicle/SCR_CompartmentAccessComponent.c @@ -5,10 +5,6 @@ modded class SCR_CompartmentAccessComponent : CompartmentAccessComponent protected bool m_bACE_IsRequestingGettingIn = false; protected bool m_bACE_IsRequestingGettingOut = false; - // Parameters for rescheduling failed get in/out - protected static const int ATTEMPT_TIMEOUT = 500; - protected static const int MAX_ATTEMPTS = 20; - //------------------------------------------------------------------------------------------------ void ACE_GetInVehicle(notnull IEntity vehicle, BaseCompartmentSlot compartment = null, bool forceTeleport = true, int doorInfoIndex = -1, ECloseDoorAfterActions closeDoor = ECloseDoorAfterActions.INVALID, bool performWhenPaused = false) { @@ -20,12 +16,12 @@ modded class SCR_CompartmentAccessComponent : CompartmentAccessComponent return; ACE_SetIsRequestingGettingIn(true); - Rpc(RpcDo_ACE_GetInVehicle_Owner, vehicleRpl.Id(), compartment.GetCompartmentSlotID(), compartment.GetCompartmentMgrID(), forceTeleport, doorInfoIndex, closeDoor, performWhenPaused, 0); + Rpc(RpcDo_ACE_GetInVehicle_Owner, vehicleRpl.Id(), compartment.GetCompartmentSlotID(), compartment.GetCompartmentMgrID(), forceTeleport, doorInfoIndex, closeDoor, performWhenPaused); } //------------------------------------------------------------------------------------------------ [RplRpc(RplChannel.Reliable, RplRcver.Owner)] - protected void RpcDo_ACE_GetInVehicle_Owner(RplId vehicleID, int slotID, int mgrID, bool forceTeleport, int doorInfoIndex, ECloseDoorAfterActions closeDoor, bool performWhenPaused, int iAttempt) + protected void RpcDo_ACE_GetInVehicle_Owner(RplId vehicleID, int slotID, int mgrID, bool forceTeleport, int doorInfoIndex, ECloseDoorAfterActions closeDoor, bool performWhenPaused) { RplComponent vehicleRpl = RplComponent.Cast(Replication.FindItem(vehicleID)); @@ -56,27 +52,8 @@ modded class SCR_CompartmentAccessComponent : CompartmentAccessComponent return; } - if (GetInVehicle(vehicle, compartment, forceTeleport, doorInfoIndex, closeDoor, performWhenPaused)) - { - ACE_SetIsRequestingGettingIn(false); - return; - } - - if (GetVehicleIn(GetOwner()) == vehicle) - { - ACE_SetIsRequestingGettingIn(false); - return; - } - - if (++iAttempt >= MAX_ATTEMPTS) - { - Debug.Error("Maximum number of attempts exceeded!"); - ACE_SetIsRequestingGettingIn(false); - return; - } - - // Reschedule moving out if it failed, for instance, when called while moving out - GetGame().GetCallqueue().CallLater(RpcDo_ACE_GetInVehicle_Owner, ATTEMPT_TIMEOUT, false, vehicleID, slotID, mgrID, forceTeleport, doorInfoIndex, closeDoor, performWhenPaused, iAttempt); + GetInVehicle(vehicle, compartment, forceTeleport, doorInfoIndex, closeDoor, performWhenPaused); + ACE_SetIsRequestingGettingIn(false); } //------------------------------------------------------------------------------------------------ @@ -123,71 +100,32 @@ modded class SCR_CompartmentAccessComponent : CompartmentAccessComponent void ACE_MoveOutVehicle(vector target_transform[4], bool sendIntoRagdoll = false, bool performWhenPaused = false) { ACE_SetIsRequestingGettingOut(true); - Rpc(RpcDo_ACE_MoveOutVehicle_Owner, target_transform[0], target_transform[1], target_transform[2], target_transform[3], sendIntoRagdoll, performWhenPaused, 0); + Rpc(RpcDo_ACE_MoveOutVehicle_Owner, target_transform[0], target_transform[1], target_transform[2], target_transform[3], sendIntoRagdoll, performWhenPaused); } //------------------------------------------------------------------------------------------------ //! Transform is passed in parts, since fixed arrays are not supported by ScriptCallQueue::CallLater [RplRpc(RplChannel.Reliable, RplRcver.Owner)] - protected void RpcDo_ACE_MoveOutVehicle_Owner(vector v0, vector v1, vector v2, vector v3, bool sendIntoRagdoll, bool performWhenPaused, int iAttempt) + protected void RpcDo_ACE_MoveOutVehicle_Owner(vector v0, vector v1, vector v2, vector v3, bool sendIntoRagdoll, bool performWhenPaused) { vector target_transform[4] = {v0, v1, v2, v3}; - - if (GetOutVehicle_NoDoor(target_transform, sendIntoRagdoll, performWhenPaused)) - { - ACE_SetIsRequestingGettingOut(false); - return; - } - - if (!GetVehicleIn(GetOwner())) - { - ACE_SetIsRequestingGettingOut(false); - return; - } - - if (++iAttempt >= MAX_ATTEMPTS) - { - Debug.Error("Maximum number of attempts exceeded!"); - ACE_SetIsRequestingGettingOut(false); - return; - } - - // Reschedule moving out if it failed, for instance, when called while moving in - GetGame().GetCallqueue().CallLater(RpcDo_ACE_MoveOutVehicle_Owner, ATTEMPT_TIMEOUT, false, v0, v1, v2, v3, sendIntoRagdoll, performWhenPaused, iAttempt); + GetOutVehicle_NoDoor(target_transform, sendIntoRagdoll, performWhenPaused); + ACE_SetIsRequestingGettingOut(false); } //------------------------------------------------------------------------------------------------ void ACE_GetOutVehicle(EGetOutType type, int doorInfoIndex, ECloseDoorAfterActions closeDoor, bool performWhenPaused) { ACE_SetIsRequestingGettingOut(true); - Rpc(RpcDo_ACE_GetOutVehicle_Owner, type, doorInfoIndex, closeDoor, performWhenPaused, 0); + Rpc(RpcDo_ACE_GetOutVehicle_Owner, type, doorInfoIndex, closeDoor, performWhenPaused); } //------------------------------------------------------------------------------------------------ [RplRpc(RplChannel.Reliable, RplRcver.Owner)] - protected void RpcDo_ACE_GetOutVehicle_Owner(EGetOutType type, int doorInfoIndex, ECloseDoorAfterActions closeDoor, bool performWhenPaused, int iAttempt) + protected void RpcDo_ACE_GetOutVehicle_Owner(EGetOutType type, int doorInfoIndex, ECloseDoorAfterActions closeDoor, bool performWhenPaused) { - if (GetOutVehicle(type, doorInfoIndex, closeDoor, performWhenPaused)) - { - ACE_SetIsRequestingGettingOut(false); - return; - } - - if (!GetVehicleIn(GetOwner())) - { - ACE_SetIsRequestingGettingOut(false); - return; - } - - if (++iAttempt >= MAX_ATTEMPTS) - { - Debug.Error("Maximum number of attempts exceeded!"); - ACE_SetIsRequestingGettingOut(false); - return; - } - - // Reschedule getting out if it failed, for instance, when called while getting in - GetGame().GetCallqueue().CallLater(RpcDo_ACE_GetOutVehicle_Owner, ATTEMPT_TIMEOUT, false, type, doorInfoIndex, closeDoor, performWhenPaused, iAttempt); + GetOutVehicle(type, doorInfoIndex, closeDoor, performWhenPaused); + ACE_SetIsRequestingGettingOut(false); } //------------------------------------------------------------------------------------------------ diff --git a/addons/facepaint/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf b/addons/facepaint/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf deleted file mode 100644 index b919c388e..000000000 --- a/addons/facepaint/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf +++ /dev/null @@ -1,17 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C630E453BCB39DC}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{65270736038395D9}" { - m_sEntityPrefab "{28FA34E692783ACB}Prefabs/Items/ACE_Facepaint_01_USSR.et" - m_aEntityDataList { - SCR_ArsenalItem "{62F30440549B386D}" { - m_eItemType EQUIPMENT - m_iSupplyCost 0 - } - } - } - } - } - } -} diff --git a/addons/facepaint/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf.meta b/addons/facepaint/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf.meta deleted file mode 100644 index 7d8f7d436..000000000 --- a/addons/facepaint/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf.meta +++ /dev/null @@ -1,19 +0,0 @@ -MetaFileClass { - Name "{E908001749419691}Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf" - Configurations { - CONFResourceClass PC { - } - CONFResourceClass XBOX_ONE : PC { - } - CONFResourceClass XBOX_SERIES : PC { - } - CONFResourceClass PS4 : PC { - } - CONFResourceClass PS5 : PC { - } - CONFResourceClass HEADLESS : PC { - } - CONFResourceClass Xbox : PC { - } - } -} \ No newline at end of file diff --git a/addons/facepaint/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf b/addons/facepaint/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf new file mode 100644 index 000000000..fb372e95f --- /dev/null +++ b/addons/facepaint/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf @@ -0,0 +1,13 @@ +ACE_EntityCatalogMultiListEntry : "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf" { + m_aEntities { + SCR_EntityCatalogInventoryItem "{68EB10F5497121E7}" { + m_sEntityPrefab "{1642314A5C9B5C13}Prefabs/Items/ACE_Facepaint_01_UK.et" + m_aEntityDataList { + SCR_ArsenalItem "{62F30440549B386D}" { + m_eItemType EQUIPMENT + m_iSupplyCost 0 + } + } + } + } +} \ No newline at end of file diff --git a/addons/core/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf.meta b/addons/facepaint/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf.meta similarity index 81% rename from addons/core/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf.meta rename to addons/facepaint/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf.meta index e300bbe36..26fdded58 100644 --- a/addons/core/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf.meta +++ b/addons/facepaint/Configs/EntityCatalog/UK/ACE_InventoryItems_EntityCatalog_Equipment_UK.conf.meta @@ -1,5 +1,5 @@ MetaFileClass { - Name "{C53421647C3D0D2E}Configs/EntityCatalog/USSR/USSR_InventoryItems.conf" + Name "{E7D9069BE26B7A4C}Configs/EntityCatalog/UK/ACE_UK_InventoryItems.conf" Configurations { CONFResourceClass PC { } diff --git a/addons/facepaint/Configs/EntityCatalog/UK/UK_InventoryItems.conf b/addons/facepaint/Configs/EntityCatalog/UK/UK_InventoryItems.conf deleted file mode 100644 index 25783af62..000000000 --- a/addons/facepaint/Configs/EntityCatalog/UK/UK_InventoryItems.conf +++ /dev/null @@ -1,17 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{62DD3B2896AEA994}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{68EB10F5497121E7}" { - m_sEntityPrefab "{1642314A5C9B5C13}Prefabs/Items/ACE_Facepaint_01_UK.et" - m_aEntityDataList { - SCR_ArsenalItem "{62F30440549B386D}" { - m_eItemType EQUIPMENT - m_iSupplyCost 0 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/facepaint/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf b/addons/facepaint/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf new file mode 100644 index 000000000..5cadcecdf --- /dev/null +++ b/addons/facepaint/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf @@ -0,0 +1,13 @@ +ACE_EntityCatalogMultiListEntry : "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf" { + m_aEntities { + SCR_EntityCatalogInventoryItem "{65270736F5B33C47}" { + m_sEntityPrefab "{B3F2B47340817ED6}Prefabs/Items/ACE_Facepaint_01_US.et" + m_aEntityDataList { + SCR_ArsenalItem "{62F30440549B386D}" { + m_eItemType EQUIPMENT + m_iSupplyCost 0 + } + } + } + } +} \ No newline at end of file diff --git a/addons/facepaint/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf.meta b/addons/facepaint/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf.meta new file mode 100644 index 000000000..9ff7b4525 --- /dev/null +++ b/addons/facepaint/Configs/EntityCatalog/US/ACE_InventoryItems_EntityCatalog_Equipment_US.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{12790B4E7D42F952}Configs/EntityCatalog/US/ACE_US_InventoryItems.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/facepaint/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf b/addons/facepaint/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf deleted file mode 100644 index 03b82074f..000000000 --- a/addons/facepaint/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf +++ /dev/null @@ -1,17 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD59F0753ABE}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{65270736F5B33C47}" { - m_sEntityPrefab "{B3F2B47340817ED6}Prefabs/Items/ACE_Facepaint_01_US.et" - m_aEntityDataList { - SCR_ArsenalItem "{62F30440549B386D}" { - m_eItemType EQUIPMENT - m_iSupplyCost 0 - } - } - } - } - } - } -} diff --git a/addons/facepaint/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta b/addons/facepaint/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta deleted file mode 100644 index 7c752023a..000000000 --- a/addons/facepaint/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta +++ /dev/null @@ -1,19 +0,0 @@ -MetaFileClass { - Name "{5F7EC52FC40A03E2}Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf" - Configurations { - CONFResourceClass PC { - } - CONFResourceClass XBOX_ONE : PC { - } - CONFResourceClass XBOX_SERIES : PC { - } - CONFResourceClass PS4 : PC { - } - CONFResourceClass PS5 : PC { - } - CONFResourceClass HEADLESS : PC { - } - CONFResourceClass Xbox : PC { - } - } -} \ No newline at end of file diff --git a/addons/facepaint/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf b/addons/facepaint/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf new file mode 100644 index 000000000..37f2d931c --- /dev/null +++ b/addons/facepaint/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf @@ -0,0 +1,13 @@ +ACE_EntityCatalogMultiListEntry : "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf" { + m_aEntities { + SCR_EntityCatalogInventoryItem "{65270736CC1B1935}" { + m_sEntityPrefab "{28FA34E692783ACB}Prefabs/Items/ACE_Facepaint_01_USSR.et" + m_aEntityDataList { + SCR_ArsenalItem "{62F30440549B386D}" { + m_eItemType EQUIPMENT + m_iSupplyCost 0 + } + } + } + } +} \ No newline at end of file diff --git a/addons/facepaint/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf.meta b/addons/facepaint/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf.meta new file mode 100644 index 000000000..3fba1bccb --- /dev/null +++ b/addons/facepaint/Configs/EntityCatalog/USSR/ACE_InventoryItems_EntityCatalog_Equipment_USSR.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{382ACD2D23811DDE}Configs/EntityCatalog/USSR/ACE_USSR_InventoryItems.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/facepaint/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf b/addons/facepaint/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf deleted file mode 100644 index a75392eb4..000000000 --- a/addons/facepaint/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf +++ /dev/null @@ -1,17 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD5F7414CA4A}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{65270736CC1B1935}" { - m_sEntityPrefab "{28FA34E692783ACB}Prefabs/Items/ACE_Facepaint_01_USSR.et" - m_aEntityDataList { - SCR_ArsenalItem "{62F30440549B386D}" { - m_eItemType EQUIPMENT - m_iSupplyCost 0 - } - } - } - } - } - } -} diff --git a/addons/facepaint/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta b/addons/facepaint/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta deleted file mode 100644 index b243b658d..000000000 --- a/addons/facepaint/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta +++ /dev/null @@ -1,19 +0,0 @@ -MetaFileClass { - Name "{C53421647C3D0D2E}Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf" - Configurations { - CONFResourceClass PC { - } - CONFResourceClass XBOX_ONE : PC { - } - CONFResourceClass XBOX_SERIES : PC { - } - CONFResourceClass PS4 : PC { - } - CONFResourceClass PS5 : PC { - } - CONFResourceClass HEADLESS : PC { - } - CONFResourceClass Xbox : PC { - } - } -} \ No newline at end of file diff --git a/addons/medical_core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf b/addons/medical_core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf new file mode 100644 index 000000000..538bb80ab --- /dev/null +++ b/addons/medical_core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf @@ -0,0 +1,14 @@ +ACE_EntityCatalogMultiListEntry { + m_aEntities { + SCR_EntityCatalogInventoryItem "{5E110E1DDFEFF41F}" { + m_sEntityPrefab "{5B2FD067D70C1E8F}Prefabs/Items/Medicine/EpinephrineInjection/ACE_Medical_EpinephrineInjection.et" + m_aEntityDataList { + SCR_ArsenalItem "{5E110E1D8B6C3689}" { + m_eItemType HEAL + m_eItemMode CONSUMABLE + m_iSupplyCost 3 + } + } + } + } +} \ No newline at end of file diff --git a/addons/medical_core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf.meta b/addons/medical_core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf.meta new file mode 100644 index 000000000..a7d63222d --- /dev/null +++ b/addons/medical_core/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{A5E3827C546B8210}Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Medical.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/medical_core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf b/addons/medical_core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf deleted file mode 100644 index 0e417e519..000000000 --- a/addons/medical_core/Configs/EntityCatalog/FIA/InventoryItems_EntityCatalog_FIA.conf +++ /dev/null @@ -1,18 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C630E453BCB39DC}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{5E110E1E69A89740}" { - m_sEntityPrefab "{5B2FD067D70C1E8F}Prefabs/Items/Medicine/EpinephrineInjection/ACE_Medical_EpinephrineInjection.et" - m_aEntityDataList { - SCR_ArsenalItem "{5E110E1D8B6C3689}" { - m_eItemType HEAL - m_eItemMode CONSUMABLE - m_iSupplyCost 3 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/medical_core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf b/addons/medical_core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf deleted file mode 100644 index 47ab0fd2a..000000000 --- a/addons/medical_core/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf +++ /dev/null @@ -1,18 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD59F0753ABE}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{5E110E1DC68C3537}" { - m_sEntityPrefab "{5B2FD067D70C1E8F}Prefabs/Items/Medicine/EpinephrineInjection/ACE_Medical_EpinephrineInjection.et" - m_aEntityDataList { - SCR_ArsenalItem "{5E110E1D8B6C3689}" { - m_eItemType HEAL - m_eItemMode CONSUMABLE - m_iSupplyCost 3 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/medical_core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf b/addons/medical_core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf deleted file mode 100644 index 6d5868fcc..000000000 --- a/addons/medical_core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf +++ /dev/null @@ -1,18 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD5F7414CA4A}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{5E110E1DDFEFF41F}" { - m_sEntityPrefab "{5B2FD067D70C1E8F}Prefabs/Items/Medicine/EpinephrineInjection/ACE_Medical_EpinephrineInjection.et" - m_aEntityDataList { - SCR_ArsenalItem "{5E110E1D8B6C3689}" { - m_eItemType HEAL - m_eItemMode CONSUMABLE - m_iSupplyCost 3 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/medical_core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta b/addons/medical_core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta deleted file mode 100644 index ec038fee9..000000000 --- a/addons/medical_core/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta +++ /dev/null @@ -1,17 +0,0 @@ -MetaFileClass { - Name "{C53421647C3D0D2E}Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf" - Configurations { - CONFResourceClass PC { - } - CONFResourceClass XBOX_ONE : PC { - } - CONFResourceClass XBOX_SERIES : PC { - } - CONFResourceClass PS4 : PC { - } - CONFResourceClass HEADLESS : PC { - } - CONFResourceClass PS5 : PC { - } - } -} \ No newline at end of file diff --git a/addons/tactical_ladder/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf b/addons/tactical_ladder/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf new file mode 100644 index 000000000..f3b8d6f39 --- /dev/null +++ b/addons/tactical_ladder/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf @@ -0,0 +1,13 @@ +ACE_EntityCatalogMultiListEntry { + m_aEntities { + SCR_EntityCatalogInventoryItem "{62F93B32BC86C49C}" { + m_sEntityPrefab "{62F304402A707F68}Prefabs/Items/Equipment/TacticalLadder/ACE_TacticalLadder.et" + m_aEntityDataList { + SCR_ArsenalItem "{62F30440549B386D}" { + m_eItemType EQUIPMENT + m_iSupplyCost 30 + } + } + } + } +} \ No newline at end of file diff --git a/addons/tactical_ladder/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta b/addons/tactical_ladder/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta new file mode 100644 index 000000000..28b784c60 --- /dev/null +++ b/addons/tactical_ladder/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItemsBase.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/tactical_ladder/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf b/addons/tactical_ladder/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf deleted file mode 100644 index e780f238a..000000000 --- a/addons/tactical_ladder/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf +++ /dev/null @@ -1,17 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C630E453BCB39DC}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{62F93B316FA2BAD0}" { - m_sEntityPrefab "{62F304402A707F68}Prefabs/Items/Equipment/TacticalLadder/ACE_TacticalLadder.et" - m_aEntityDataList { - SCR_ArsenalItem "{62F30440549B386D}" { - m_eItemType EQUIPMENT - m_iSupplyCost 30 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/tactical_ladder/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf b/addons/tactical_ladder/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf deleted file mode 100644 index c1ba01f3d..000000000 --- a/addons/tactical_ladder/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf +++ /dev/null @@ -1,17 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD59F0753ABE}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{62F304402A707F68}" { - m_sEntityPrefab "{62F304402A707F68}Prefabs/Items/Equipment/TacticalLadder/ACE_TacticalLadder.et" - m_aEntityDataList { - SCR_ArsenalItem "{62F30440549B386D}" { - m_eItemType EQUIPMENT - m_iSupplyCost 30 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/tactical_ladder/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta b/addons/tactical_ladder/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta deleted file mode 100644 index 185e41b20..000000000 --- a/addons/tactical_ladder/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta +++ /dev/null @@ -1,17 +0,0 @@ -MetaFileClass { - Name "{5F7EC52FC40A03E2}Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf" - Configurations { - CONFResourceClass PC { - } - CONFResourceClass XBOX_ONE : PC { - } - CONFResourceClass XBOX_SERIES : PC { - } - CONFResourceClass PS4 : PC { - } - CONFResourceClass PS5 : PC { - } - CONFResourceClass HEADLESS : PC { - } - } -} \ No newline at end of file diff --git a/addons/tactical_ladder/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf b/addons/tactical_ladder/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf deleted file mode 100644 index 01388cc24..000000000 --- a/addons/tactical_ladder/Configs/EntityCatalog/USSR/USSR_InventoryItems.conf +++ /dev/null @@ -1,17 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD5F7414CA4A}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{62F93B32BC86C49C}" { - m_sEntityPrefab "{62F304402A707F68}Prefabs/Items/Equipment/TacticalLadder/ACE_TacticalLadder.et" - m_aEntityDataList { - SCR_ArsenalItem "{62F30440549B386D}" { - m_eItemType EQUIPMENT - m_iSupplyCost 30 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/tactical_periscope/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf b/addons/tactical_periscope/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf new file mode 100644 index 000000000..61b093fcd --- /dev/null +++ b/addons/tactical_periscope/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf @@ -0,0 +1,13 @@ +ACE_EntityCatalogMultiListEntry { + m_aEntities { + SCR_EntityCatalogInventoryItem "{64A4F8C560780ED7}" { + m_sEntityPrefab "{452112928EC197AD}Prefabs/Items/Equipment/Periscope/ACE_TacticalPeriscope.et" + m_aEntityDataList { + SCR_ArsenalItem "{64A4F8C50A157DCF}" { + m_eItemType EQUIPMENT + m_iSupplyCost 15 + } + } + } + } +} \ No newline at end of file diff --git a/addons/tactical_periscope/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta b/addons/tactical_periscope/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta new file mode 100644 index 000000000..28b784c60 --- /dev/null +++ b/addons/tactical_periscope/Configs/EntityCatalog/ACE_InventoryItems_EntityCatalog_Equipment.conf.meta @@ -0,0 +1,17 @@ +MetaFileClass { + Name "{0AFC873567388CDE}Configs/EntityCatalog/ACE_InventoryItemsBase.conf" + Configurations { + CONFResourceClass PC { + } + CONFResourceClass XBOX_ONE : PC { + } + CONFResourceClass XBOX_SERIES : PC { + } + CONFResourceClass PS4 : PC { + } + CONFResourceClass PS5 : PC { + } + CONFResourceClass HEADLESS : PC { + } + } +} \ No newline at end of file diff --git a/addons/tactical_periscope/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf b/addons/tactical_periscope/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf deleted file mode 100644 index 11dab6311..000000000 --- a/addons/tactical_periscope/Configs/EntityCatalog/FIA/FIA_InventoryItems.conf +++ /dev/null @@ -1,17 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C630E453BCB39DC}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{64A4F8C577C079CA}" { - m_sEntityPrefab "{452112928EC197AD}Prefabs/Items/Equipment/Periscope/ACE_TacticalPeriscope.et" - m_aEntityDataList { - SCR_ArsenalItem "{64A4F8C50A157DCF}" { - m_eItemType EQUIPMENT - m_iSupplyCost 15 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/tactical_periscope/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf b/addons/tactical_periscope/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf deleted file mode 100644 index 01523e1f4..000000000 --- a/addons/tactical_periscope/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf +++ /dev/null @@ -1,17 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD59F0753ABE}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{64A4F8C5108615E4}" { - m_sEntityPrefab "{452112928EC197AD}Prefabs/Items/Equipment/Periscope/ACE_TacticalPeriscope.et" - m_aEntityDataList { - SCR_ArsenalItem "{64A4F8C50A157DCF}" { - m_eItemType EQUIPMENT - m_iSupplyCost 15 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/tactical_periscope/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta b/addons/tactical_periscope/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta deleted file mode 100644 index 185e41b20..000000000 --- a/addons/tactical_periscope/Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf.meta +++ /dev/null @@ -1,17 +0,0 @@ -MetaFileClass { - Name "{5F7EC52FC40A03E2}Configs/EntityCatalog/US/InventoryItems_EntityCatalog_US.conf" - Configurations { - CONFResourceClass PC { - } - CONFResourceClass XBOX_ONE : PC { - } - CONFResourceClass XBOX_SERIES : PC { - } - CONFResourceClass PS4 : PC { - } - CONFResourceClass PS5 : PC { - } - CONFResourceClass HEADLESS : PC { - } - } -} \ No newline at end of file diff --git a/addons/tactical_periscope/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf b/addons/tactical_periscope/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf deleted file mode 100644 index bcdb0a0a7..000000000 --- a/addons/tactical_periscope/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf +++ /dev/null @@ -1,17 +0,0 @@ -SCR_EntityCatalogMultiList { - m_aMultiLists { - SCR_EntityCatalogMultiListEntry "{5C68AD5F7414CA4A}" { - m_aEntities { - SCR_EntityCatalogInventoryItem "{64A4F8C560780ED7}" { - m_sEntityPrefab "{452112928EC197AD}Prefabs/Items/Equipment/Periscope/ACE_TacticalPeriscope.et" - m_aEntityDataList { - SCR_ArsenalItem "{64A4F8C50A157DCF}" { - m_eItemType EQUIPMENT - m_iSupplyCost 15 - } - } - } - } - } - } -} \ No newline at end of file diff --git a/addons/tactical_periscope/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta b/addons/tactical_periscope/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta deleted file mode 100644 index 44514319b..000000000 --- a/addons/tactical_periscope/Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf.meta +++ /dev/null @@ -1,17 +0,0 @@ -MetaFileClass { - Name "{C53421647C3D0D2E}Configs/EntityCatalog/USSR/InventoryItems_EntityCatalog_USSR.conf" - Configurations { - CONFResourceClass PC { - } - CONFResourceClass XBOX_ONE : PC { - } - CONFResourceClass XBOX_SERIES : PC { - } - CONFResourceClass PS4 : PC { - } - CONFResourceClass PS5 : PC { - } - CONFResourceClass HEADLESS : PC { - } - } -} \ No newline at end of file diff --git a/docs/src/content/docs/components/ballistics.mdx b/docs/src/content/docs/components/ballistics.mdx new file mode 100644 index 000000000..e6d532102 --- /dev/null +++ b/docs/src/content/docs/components/ballistics.mdx @@ -0,0 +1,23 @@ +--- +title: Ballistics +--- + +Increases windage of bullets and adds ballistic table items. + +## Details + +### Ballistic Tables + +The ballistic table items automatically update themselves to contain data of all currently carried weapons. Ballistic table items come with different units: One with mrad and one with Warshaw Pact mils. + +For optimal usage, one should also carry a pocket weather meter, such as the [Kacestrel 4500](../weather) from **ACE Weather** and a rangefinder like [Vector 21](https://docs.rhsmods.org/rhs-status-quo-user-documentation/arma-reforger/rhs-status-quo/blufor/gadgets/vector-21) and [PDU-4](https://docs.rhsmods.org/rhs-status-quo-user-documentation/arma-reforger/rhs-status-quo/redfor/gadgets/pdu-4) from **RHS Status Quo**. + +## Usage + +### Using a Ballistic Table + +1. Determine distance of target with a rangefinder and crosswind speed with a pocket weather meter. +2. Put ballistic table in hand and select page for the correct bullet by inspecting it. +3. Move to the row of the target distance and read bullet drop and windage correction. Interpolate the values if the target range lies between two rows. +4. Apply the corrections by using the reticle markings or [adjust the scope](../scopes) if you have **ACE Scopes**. + For a bullet drop of e.g. -7.9 mrad, simply adjust the elevation of the scope to 7.9 mrad.