Skip to content

Commit

Permalink
converted to HEMTT; huge resturcture; included new pylon feature; opt…
Browse files Browse the repository at this point in the history
…ics mode
  • Loading branch information
cineafx committed Apr 14, 2024
1 parent 06d30af commit b833e08
Show file tree
Hide file tree
Showing 34 changed files with 6,899 additions and 240 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ Thumbs.db
CHANGELOG.md
keys/*
.hemtt/local
.hemttout/


Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
Expand Down
12 changes: 12 additions & 0 deletions .hemtt/project.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name = "cine_addizeus"
prefix = "cine_addizeus"
author = "cineafx"
mainprefix = "z"
[files]
include = [
"mod.cpp",
"README.md",
"AUTHORS.txt",
"LICENSE",
"logo_cine_addizeus_ca.paa"
]
358 changes: 339 additions & 19 deletions LICENSE

Large diffs are not rendered by default.

146 changes: 11 additions & 135 deletions addons/ace_actions/ACE_ZeusActions.hpp
Original file line number Diff line number Diff line change
@@ -1,161 +1,37 @@
class ACE_ZeusActions {
class zeus_cellphone {
class GVAR(cellphone) {
displayName = "Cellphone";
condition = "true";
statement = "closeDialog 0; createDialog 'Rsc_ACE_PhoneInterface';";
icon = "\z\ace\addons\explosives\Data\UI\Cellphone_UI.paa";
};
class ZeusUnits {
class zeus_Gear {
class GVAR(gear) {
displayName = "Gear";
condition = "false";
statement = "_player action ['Gear', ((curatorSelected select 0) select 0)];";
icon = "\a3\ui_f\data\gui\Rsc\RscDisplayArsenal\backpack_ca.paa";
};
class zeus_Arsenal {
class GVAR(arsenal) {
displayName = "Arsenal";
condition = "true && if (count (curatorSelected select 0) > 0) then {(((curatorSelected select 0) select 0) isKindOf 'Man');} else {false;}";
statement = "[curatorSelected # 0 # 0, curatorSelected # 0 # 0, true] call ace_arsenal_fnc_openBox";
icon = "\a3\ui_f\data\gui\Rsc\RscDisplayArsenal\backpack_ca.paa";
};
class zeus_pylons {
class GVAR(pylons) {
displayName = "Configure pylons";
condition = "true && if (count (curatorSelected select 0) > 0) then {(((curatorSelected select 0) select 0) isKindOf 'AllVehicles') && !(((curatorSelected select 0) select 0) isKindOf 'Man');} else {false;}";
statement = "[((curatorSelected select 0) select 0), true] call ace_pylons_fnc_showDialog;";
icon = "\a3\ui_f\data\gui\Rsc\RscDisplayArsenal\spaceGarage_ca.paa";
};
class zeus_dangerZone {
displayName = "Danger zone";
condition = "true";
statement = "";
icon = "\a3\ui_f\data\IGUI\RscIngameUI\RscUnitInfoAirRTDFull\ico_cpt_park_ON_ca.paa";
class zeus_Neutralize {
displayName = "Neutralize";
condition = "true";
statement = QUOTE([(curatorSelected select 0)] call FUNC(neutralizeUnit));
icon = "\a3\ui_f\data\gui\Cfg\Debriefing\endDeath_ca.paa";
};
class zeus_convertToPhoneIed {
displayName = "Convert to phone IED";
condition = "true";
statement = QUOTE([(curatorSelected select 0) select 0] call FUNC(convertToPhoneIed));
icon = "\z\ace\addons\explosives\Data\UI\Cellphone_UI.paa";
};
class zeus_InflictDamage_light_few {
displayName = "Inflict Damage (light, few)";
condition = "true";
statement = QUOTE([ARR_3((curatorSelected select 0), 0.05, 5)] call FUNC(InflictDamage));
icon = "";
};
class zeus_InflictDamage_heavy_few {
displayName = "Inflict Damage (heavy, few)";
condition = "true";
statement = QUOTE([ARR_3((curatorSelected select 0), 0.95, 5)] call FUNC(InflictDamage));
icon = "";
};
class zeus_InflictDamage_light_many {
displayName = "Inflict Damage (light, many)";
condition = "true";
statement = QUOTE([ARR_3((curatorSelected select 0), 0.05, 50)] call FUNC(InflictDamage));
icon = "";
};
class zeus_InflictDamage_heavy_many {
displayName = "Inflict Damage (heavy, many)";
condition = "true";
statement = QUOTE([ARR_3((curatorSelected select 0), 0.95, 50)] call FUNC(InflictDamage));
icon = "";
};
class zeus_CookOff {
displayName = "Cook Off";
class GVAR(pylons_full) {
displayName = "Configure any pylons";
condition = "true && if (count (curatorSelected select 0) > 0) then {(((curatorSelected select 0) select 0) isKindOf 'AllVehicles') && !(((curatorSelected select 0) select 0) isKindOf 'Man');} else {false;}";
statement = "[((curatorSelected select 0) select 0)] call ace_cookoff_fnc_cookOff;";
icon = "\a3\ui_f\data\IGUI\Cfg\MPTable\armored_ca.paa";
};
};
class zeus_VCOM {
displayName = "VCOM";
condition = "isClass(configFile >> 'CfgPatches' >> 'VCOM_AI')";
statement = "";
icon = "\a3\ui_f\data\gui\Rsc\RscDisplayMain\menu_options_ca.paa";
class zeus_VCOM_enable {
displayName = "Enable VCOM";
condition = "true";
statement = "{_x setvariable ['VCOM_NOAI',false,true];} forEach (curatorSelected select 0);";
icon = "\a3\ui_f\data\gui\RscCommon\RscCheckBox\CheckBox_checked_ca.paa";
};
class zeus_VCOM_disable {
displayName = "Disable VCOM";
condition = "true";
statement = "{_x setvariable ['VCOM_NOAI',true,true];} forEach (curatorSelected select 0);";
icon = "\a3\ui_f\data\gui\RscCommon\RscCheckBox\CheckBox_unchecked_ca.paa";
};
class zeus_VCOM_enable_wp {
displayName = "Enable VCOM creating waypoints";
condition = "true";
statement = "{_x setvariable ['VCOM_NOPATHING_Unit',false,true];} forEach (curatorSelected select 0);";
icon = "\a3\ui_f\data\gui\RscCommon\RscCheckBox\CheckBox_checked_ca.paa";
};
class zeus_VCOM_disable_wp {
displayName = "Disable VCOM creating waypoints";
condition = "true";
statement = "{_x setvariable ['VCOM_NOPATHING_Unit',true,true];} forEach (curatorSelected select 0);";
icon = "\a3\ui_f\data\gui\RscCommon\RscCheckBox\CheckBox_unchecked_ca.paa";
};
};
class zeus_vehicle_locking {
displayName = "Vehicle lock";
condition = "true && if (count (curatorSelected select 0) > 0) then {(((curatorSelected select 0) select 0) isKindOf 'AllVehicles') && !(((curatorSelected select 0) select 0) isKindOf 'Man');} else {false;}";
statement = "";
icon = "\a3\ui_f\data\gui\Rsc\RscDisplayDynamicGroups\Lock.paa";
class zeus_vehicle_unlocked {
displayName = "Unlocked";
condition = "true";
statement = "{_x setVehicleLock 'UNLOCKED';} forEach (curatorSelected select 0);";
icon = "";
};
class zeus_vehicle_default {
displayName = "Default";
condition = "true";
statement = "{_x setVehicleLock 'DEFAULT';} forEach (curatorSelected select 0);";
icon = "";
};
class zeus_vehicle_locked {
displayName = "Locked";
condition = "true";
statement = "{_x setVehicleLock 'LOCKED';} forEach (curatorSelected select 0);";
icon = "";
};
class zeus_vehicle_locked_player {
displayName = "Locked player";
condition = "true";
statement = "{_x setVehicleLock 'LOCKEDPLAYER';} forEach (curatorSelected select 0);";
icon = "";
};
};
class zeus_vehicle_sensorList {
displayName = "Vehicle sensors";
condition = "true && if (count (curatorSelected select 0) > 0) then {(((curatorSelected select 0) select 0) isKindOf 'Air') && !(((curatorSelected select 0) select 0) isKindOf 'Man');} else {false;}";
statement = "true;";
icon = "\a3\ui_f\data\IGUI\Cfg\Actions\RadarOn_ca.paa";
insertChildren = QUOTE(call FUNC(insertVehicleSensorList));
};
class zeus_rating {
displayName = "Rating";
condition = "true";
statement = "";
icon = "\a3\ui_f\data\gui\Rsc\RscDisplayCreateJIRAIssue\jira_ca.paa";
class zeus_rating_minus_1000 {
displayName = "Rating -10000";
condition = "true";
statement = "{_x addRating -10000;} forEach (curatorSelected select 0);";
icon = "\a3\ui_f\data\gui\RscCommon\RscCheckBox\CheckBox_checked_ca.paa";
};
class zeus_rating_reset {
displayName = "Rating reset";
condition = "true";
statement = "{_x addRating -(rating _x);} forEach (curatorSelected select 0);";
icon = "\a3\ui_f\data\gui\RscCommon\RscCheckBox\CheckBox_unchecked_ca.paa";
statement = QUOTE([ARR_2((curatorSelected select 0) select 0,true)] call FUNC(showFullPylonsDialog));
icon = "\a3\ui_f\data\gui\Rsc\RscDisplayArsenal\spaceGarage_ca.paa";
};
};
#include "ACE_ZeusActions_DangerZone.hpp"
#include "ACE_ZeusActions_Ai.hpp"
#include "ACE_ZeusActions_Vehicles.hpp"
};
};
81 changes: 81 additions & 0 deletions addons/ace_actions/ACE_ZeusActions_Ai.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
class GVAR(ai) {
displayName = "AI";
condition = "";
statement = "";
icon = "\a3\ui_f\data\gui\Rsc\RscDisplayMain\menu_options_ca.paa";

class GVAR(aiMode) {
displayName = "CINE Ai";
condition = "isClass(configFile >> 'CfgPatches' >> 'cine_addizeus_ai')";
statement = "";
icon = "\a3\ui_f\data\gui\cfg\hints\commanding_ca.paa";
class GVAR(aiMode_HunterAggressive) {
displayName = "HunterAi (Aggressive)";
condition = "true";
statement = QUOTE([ARR_2(curatorSelected select 0,['AGGRESSIVE_PUSH'])] call EFUNC(ai,hunterAi));
icon = "\a3\ui_f\data\igui\cfg\simpleTasks\types\run_ca.paa";
};
class GVAR(aiMode_HunterTactical) {
displayName = "HunterAi (Tactical)";
condition = "true";
statement = QUOTE([ARR_2(curatorSelected select 0,['TACTICAL'])] call EFUNC(ai,hunterAi));
icon = "\a3\ui_f\data\igui\cfg\simpleTasks\types\attack_ca.paa";
};
class GVAR(aiMode_Zombie) {
displayName = "ZombieAi (sideEnemy)";
condition = "true";
statement = QUOTE([curatorSelected select 0] call EFUNC(ai,zombieAi));
icon = "\a3\ui_f\data\gui\cfg\hints\ActionMenu_ca.paa";
};
};

class GVAR(VCOM) {
displayName = "VCOM";
condition = "isClass(configFile >> 'CfgPatches' >> 'VCOM_AI')";
statement = "";
icon = "\a3\ui_f\data\gui\Rsc\RscDisplayMain\menu_options_ca.paa";
class GVAR(VCOM_enable) {
displayName = "Enable VCOM";
condition = "true";
statement = "{_x setvariable ['VCOM_NOAI',false,true];} forEach (curatorSelected select 0);";
icon = ICON_CHECKED;
};
class GVAR(VCOM_disable) {
displayName = "Disable VCOM";
condition = "true";
statement = "{_x setvariable ['VCOM_NOAI',true,true];} forEach (curatorSelected select 0);";
icon = ICON_UNCHECKED;
};
class GVAR(VCOM_enable_wp) {
displayName = "Enable VCOM creating waypoints";
condition = "true";
statement = "{_x setvariable ['VCOM_NOPATHING_Unit',false,true];} forEach (curatorSelected select 0);";
icon = ICON_CHECKED;
};
class GVAR(VCOM_disable_wp) {
displayName = "Disable VCOM creating waypoints";
condition = "true";
statement = "{_x setvariable ['VCOM_NOPATHING_Unit',true,true];} forEach (curatorSelected select 0);";
icon = ICON_UNCHECKED;
};
};

class GVAR(ai_rating) {
displayName = "Rating";
condition = "true";
statement = "";
icon = "\a3\ui_f\data\gui\Rsc\RscDisplayCreateJIRAIssue\jira_ca.paa";
class GVAR(ai_rating_minus_1000) {
displayName = "Rating -10000";
condition = "true";
statement = "{_x addRating -10000;} forEach (curatorSelected select 0);";
icon = "\a3\ui_f\data\gui\RscCommon\RscCheckBox\CheckBox_checked_ca.paa";
};
class GVAR(ai_rating_reset) {
displayName = "Rating reset";
condition = "true";
statement = "{_x addRating -(rating _x);} forEach (curatorSelected select 0);";
icon = "\a3\ui_f\data\gui\RscCommon\RscCheckBox\CheckBox_unchecked_ca.paa";
};
};
};
49 changes: 49 additions & 0 deletions addons/ace_actions/ACE_ZeusActions_DangerZone.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
class GVAR(dangerZone) {
displayName = "Danger zone";
condition = "true";
statement = "";
icon = "\a3\ui_f\data\IGUI\RscIngameUI\RscUnitInfoAirRTDFull\ico_cpt_park_ON_ca.paa";

class GVAR(dangerZone_Neutralize) {
displayName = "Neutralize";
condition = "true";
statement = QUOTE([(curatorSelected select 0)] call FUNC(neutralizeUnit));
icon = "\a3\ui_f\data\gui\Cfg\Debriefing\endDeath_ca.paa";
};
class GVAR(dangerZone_convertToPhoneIed) {
displayName = "Convert to phone IED";
condition = "true";
statement = QUOTE([(curatorSelected select 0) select 0] call FUNC(convertToPhoneIed));
icon = "\z\ace\addons\explosives\Data\UI\Cellphone_UI.paa";
};
class GVAR(dangerZone_InflictDamage_light_few) {
displayName = "Inflict Damage (light, few)";
condition = "true";
statement = QUOTE([ARR_3((curatorSelected select 0),0.05,5)] call FUNC(InflictDamage));
icon = "";
};
class GVAR(dangerZone_InflictDamage_heavy_few) {
displayName = "Inflict Damage (heavy, few)";
condition = "true";
statement = QUOTE([ARR_3((curatorSelected select 0),0.95,5)] call FUNC(InflictDamage));
icon = "";
};
class GVAR(dangerZone_InflictDamage_light_many) {
displayName = "Inflict Damage (light, many)";
condition = "true";
statement = QUOTE([ARR_3((curatorSelected select 0),0.05,50)] call FUNC(InflictDamage));
icon = "";
};
class GVAR(dangerZone_InflictDamage_heavy_many) {
displayName = "Inflict Damage (heavy, many)";
condition = "true";
statement = QUOTE([ARR_3((curatorSelected select 0),0.95,50)] call FUNC(InflictDamage));
icon = "";
};
class GVAR(dangerZone_CookOff) {
displayName = "Cook Off";
condition = "true && if (count (curatorSelected select 0) > 0) then {(((curatorSelected select 0) select 0) isKindOf 'AllVehicles') && !(((curatorSelected select 0) select 0) isKindOf 'Man');} else {false;}";
statement = "[((curatorSelected select 0) select 0)] call ace_cookoff_fnc_cookOff;";
icon = "\a3\ui_f\data\IGUI\Cfg\MPTable\armored_ca.paa";
};
};
Loading

0 comments on commit b833e08

Please sign in to comment.