mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Merge branch 'master' of https://github.com/KoffeinFlummi/ACE3 into ModuleIcons
This commit is contained in:
commit
60c50e0daf
@ -6,7 +6,7 @@
|
|||||||
displayName = "$STR_ACE_Attach_AttachDetach"; \
|
displayName = "$STR_ACE_Attach_AttachDetach"; \
|
||||||
condition = QUOTE(([ARR_3(_player, _target, '')] call FUNC(canAttach))); \
|
condition = QUOTE(([ARR_3(_player, _target, '')] call FUNC(canAttach))); \
|
||||||
statement = QUOTE( [ARR_2(_player, _target)] call FUNC(openAttachUI);); \
|
statement = QUOTE( [ARR_2(_player, _target)] call FUNC(openAttachUI);); \
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging"}; \
|
exceptions[] = {"isNotDragging"}; \
|
||||||
showDisabled = 0; \
|
showDisabled = 0; \
|
||||||
priority = 0; \
|
priority = 0; \
|
||||||
icon = PATHTOF(UI\attach_ca.paa); \
|
icon = PATHTOF(UI\attach_ca.paa); \
|
||||||
@ -16,7 +16,7 @@
|
|||||||
displayName = "$STR_ACE_Attach_Detach"; \
|
displayName = "$STR_ACE_Attach_Detach"; \
|
||||||
condition = QUOTE(([ARR_2(_player, _target)] call FUNC(canDetach))); \
|
condition = QUOTE(([ARR_2(_player, _target)] call FUNC(canDetach))); \
|
||||||
statement = QUOTE( [ARR_2(_player, _target)] call FUNC(detach) ); \
|
statement = QUOTE( [ARR_2(_player, _target)] call FUNC(detach) ); \
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging"}; \
|
exceptions[] = {"isNotDragging"}; \
|
||||||
showDisabled = 0; \
|
showDisabled = 0; \
|
||||||
priority = 0; \
|
priority = 0; \
|
||||||
icon = PATHTOF(UI\detach_ca.paa); \
|
icon = PATHTOF(UI\detach_ca.paa); \
|
||||||
@ -57,7 +57,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_Attach_AttachDetach";
|
displayName = "$STR_ACE_Attach_AttachDetach";
|
||||||
condition = QUOTE(([ARR_3(_player, _player, '')] call FUNC(canAttach)));
|
condition = QUOTE(([ARR_3(_player, _player, '')] call FUNC(canAttach)));
|
||||||
statement = QUOTE( [ARR_2(_player, _player)] call FUNC(openAttachUI); );
|
statement = QUOTE( [ARR_2(_player, _player)] call FUNC(openAttachUI); );
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging"};
|
exceptions[] = {"isNotDragging"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
priority = 5;
|
priority = 5;
|
||||||
icon = PATHTOF(UI\attach_ca.paa);
|
icon = PATHTOF(UI\attach_ca.paa);
|
||||||
@ -67,7 +67,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_Attach_Detach";
|
displayName = "$STR_ACE_Attach_Detach";
|
||||||
condition = QUOTE(([ARR_2(_player, _player)] call FUNC(canDetach)));
|
condition = QUOTE(([ARR_2(_player, _player)] call FUNC(canDetach)));
|
||||||
statement = QUOTE( [ARR_2(_player, _player)] call FUNC(detach) );
|
statement = QUOTE( [ARR_2(_player, _player)] call FUNC(detach) );
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging"};
|
exceptions[] = {"isNotDragging"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
priority = 5;
|
priority = 5;
|
||||||
icon = PATHTOF(UI\detach_ca.paa);
|
icon = PATHTOF(UI\detach_ca.paa);
|
||||||
|
@ -6,7 +6,7 @@ class CfgPatches {
|
|||||||
weapons[] = {"ACE_IR_Strobe_Item"};
|
weapons[] = {"ACE_IR_Strobe_Item"};
|
||||||
requiredVersion = REQUIRED_VERSION;
|
requiredVersion = REQUIRED_VERSION;
|
||||||
requiredAddons[] = {"ace_interaction"};
|
requiredAddons[] = {"ace_interaction"};
|
||||||
author[] = {"KoffeinFlummi","eRazeri","CAA-Picard"};
|
author[] = {"KoffeinFlummi","eRazeri","esteldunedain"};
|
||||||
authorUrl = "https://github.com/KoffeinFlummi/";
|
authorUrl = "https://github.com/KoffeinFlummi/";
|
||||||
VERSION_CONFIG;
|
VERSION_CONFIG;
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: eRazeri and CAA-Picard
|
* Author: eRazeri and esteldunedain
|
||||||
* Attach an item to the unit
|
* Attach an item to the unit
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: eRazeri and CAA-Picard
|
* Author: eRazeri and esteldunedain
|
||||||
* Detach an item from a unit
|
* Detach an item from a unit
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -39,7 +39,7 @@ class CfgVehicles {
|
|||||||
distance = 4;
|
distance = 4;
|
||||||
condition = QUOTE([ARR_2(_player, _target)] call FUNC(canStopEscorting));
|
condition = QUOTE([ARR_2(_player, _target)] call FUNC(canStopEscorting));
|
||||||
statement = QUOTE([ARR_3(_player,_target, false)] call FUNC(doEscortCaptive));
|
statement = QUOTE([ARR_3(_player,_target, false)] call FUNC(doEscortCaptive));
|
||||||
exceptions[] = {QGVAR(isNotEscorting)};
|
exceptions[] = {"isNotEscorting"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
icon = QUOTE(PATHTOF(UI\captive_ca.paa));
|
icon = QUOTE(PATHTOF(UI\captive_ca.paa));
|
||||||
priority = 2.3;
|
priority = 2.3;
|
||||||
@ -50,7 +50,7 @@ class CfgVehicles {
|
|||||||
distance = 4;
|
distance = 4;
|
||||||
condition = QUOTE([ARR_3(_player, _target, objNull)] call FUNC(canLoadCaptive));
|
condition = QUOTE([ARR_3(_player, _target, objNull)] call FUNC(canLoadCaptive));
|
||||||
statement = QUOTE([ARR_3(_player, _target, objNull)] call FUNC(doLoadCaptive));
|
statement = QUOTE([ARR_3(_player, _target, objNull)] call FUNC(doLoadCaptive));
|
||||||
exceptions[] = {QGVAR(isNotEscorting)};
|
exceptions[] = {"isNotEscorting"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
icon = QUOTE(PATHTOF(UI\captive_ca.paa));
|
icon = QUOTE(PATHTOF(UI\captive_ca.paa));
|
||||||
priority = 2.2;
|
priority = 2.2;
|
||||||
@ -74,7 +74,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_Captives_StopEscorting";
|
displayName = "$STR_ACE_Captives_StopEscorting";
|
||||||
condition = QUOTE([ARR_2(_player, objNull)] call FUNC(canStopEscorting));
|
condition = QUOTE([ARR_2(_player, objNull)] call FUNC(canStopEscorting));
|
||||||
statement = QUOTE([ARR_3(_player,objNull, false)] call FUNC(doEscortCaptive));
|
statement = QUOTE([ARR_3(_player,objNull, false)] call FUNC(doEscortCaptive));
|
||||||
exceptions[] = {QGVAR(isNotEscorting)};
|
exceptions[] = {"isNotEscorting"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
priority = 2.3;
|
priority = 2.3;
|
||||||
hotkey = "C";
|
hotkey = "C";
|
||||||
@ -91,7 +91,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_Captives_StopSurrendering";
|
displayName = "$STR_ACE_Captives_StopSurrendering";
|
||||||
condition = QUOTE([ARR_2(_player, false)] call FUNC(canSurrender));
|
condition = QUOTE([ARR_2(_player, false)] call FUNC(canSurrender));
|
||||||
statement = QUOTE([ARR_2(_player, false)] call FUNC(setSurrendered));
|
statement = QUOTE([ARR_2(_player, false)] call FUNC(setSurrendered));
|
||||||
exceptions[] = {QGVAR(isNotSurrendering)};
|
exceptions[] = {"isNotSurrendering"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
priority = 0;
|
priority = 0;
|
||||||
};
|
};
|
||||||
@ -107,7 +107,7 @@ class CfgVehicles {
|
|||||||
distance = 4; \
|
distance = 4; \
|
||||||
condition = QUOTE([ARR_3(_player, objNull, _target)] call FUNC(canLoadCaptive)); \
|
condition = QUOTE([ARR_3(_player, objNull, _target)] call FUNC(canLoadCaptive)); \
|
||||||
statement = QUOTE([ARR_3(_player, objNull, _target)] call FUNC(doLoadCaptive)); \
|
statement = QUOTE([ARR_3(_player, objNull, _target)] call FUNC(doLoadCaptive)); \
|
||||||
exceptions[] = {QGVAR(isNotEscorting)}; \
|
exceptions[] = {"isNotEscorting"}; \
|
||||||
showDisabled = 0; \
|
showDisabled = 0; \
|
||||||
priority = 1.2; \
|
priority = 1.2; \
|
||||||
hotkey = "L"; \
|
hotkey = "L"; \
|
||||||
|
@ -183,3 +183,4 @@ _vehicle setFuel _fuelLevel;
|
|||||||
["displayTextPicture", FUNC(displayTextPicture)] call FUNC(addEventhandler);
|
["displayTextPicture", FUNC(displayTextPicture)] call FUNC(addEventhandler);
|
||||||
|
|
||||||
["notOnMap", {!visibleMap}] call FUNC(addCanInteractWithCondition);
|
["notOnMap", {!visibleMap}] call FUNC(addCanInteractWithCondition);
|
||||||
|
["isNotInside", {_this select 0 == _this select 1 || {vehicle (_this select 0) == _this select 0}}] call FUNC(addCanInteractWithCondition);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Converts ASL to Arma "Position"
|
* Converts ASL to Arma "Position"
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Add line to draw on debug
|
* Add line to draw on debug
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Adds a new setting at runtime, with all it's metadata.
|
* Adds a new setting at runtime, with all it's metadata.
|
||||||
* If has only local effects.
|
* If has only local effects.
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard and Jaynus
|
* Author: esteldunedain and Jaynus
|
||||||
* Returns the result of the function and caches it up to a given time or event
|
* Returns the result of the function and caches it up to a given time or event
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Returns a orthonormal system of reference aligned with the supplied vector
|
* Returns a orthonormal system of reference aligned with the supplied vector
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Deletes a cached result
|
* Deletes a cached result
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Executes a code on the next frame
|
* Executes a code on the next frame
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Returns the metadata of a setting if it exists
|
* Returns the metadata of a setting if it exists
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Load the user setable settings from the user profile.
|
* Load the user setable settings from the user profile.
|
||||||
* Config < Server UserConfig < Mission Config < Client settings
|
* Config < Server UserConfig < Mission Config < Client settings
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Load the parameters on the server.
|
* Load the parameters on the server.
|
||||||
* Config < Server UserConfig < Mission Config
|
* Config < Server UserConfig < Mission Config
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Converts Arma "Position" to ASL
|
* Converts Arma "Position" to ASL
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Reads a setting value from a module, set it and force it. Logs if the setting is missing from the module.
|
* Reads a setting value from a module, set it and force it. Logs if the setting is missing from the module.
|
||||||
* Must be called on the server, effect is global.
|
* Must be called on the server, effect is global.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Removes a magazine from the unit that has an specific ammo count
|
* Removes a magazine from the unit that has an specific ammo count
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard, based on Killzone-Kid code
|
* Author: esteldunedain, based on Killzone-Kid code
|
||||||
*
|
*
|
||||||
* Removes quotation marks to avoid exploits and optionally html tags from text to avoid conflicts with structured text.
|
* Removes quotation marks to avoid exploits and optionally html tags from text to avoid conflicts with structured text.
|
||||||
*
|
*
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// by CAA-Picard
|
// by esteldunedain
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
if (isServer) then {
|
if (isServer) then {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Sets the value of an ACE_Parameter and makes it public.
|
* Sets the value of an ACE_Parameter and makes it public.
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Change the value of an existing setting if it was not previously forced. Force if neccesary.
|
* Change the value of an existing setting if it was not previously forced. Force if neccesary.
|
||||||
* If executed on clients it has local effect.
|
* If executed on clients it has local effect.
|
||||||
* If executed on server it can have global effect if the last parameter is set to true.
|
* If executed on server it can have global effect if the last parameter is set to true.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Load a setting from config if it was not previosuly forced. Force if neccesary.
|
* Load a setting from config if it was not previosuly forced. Force if neccesary.
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Schedules the publishment of an object variable to reduce network overhead
|
* Schedules the publishment of an object variable to reduce network overhead
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Author: commy2, CAA-Picard
|
Author: commy2, esteldunedain
|
||||||
|
|
||||||
Description:
|
Description:
|
||||||
Converts number to hexadecimal number
|
Converts number to hexadecimal number
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Executes a code once with a given game time delay, using a PFH
|
* Executes a code once with a given game time delay, using a PFH
|
||||||
*
|
*
|
||||||
|
@ -7,7 +7,7 @@ class CfgVehicles {
|
|||||||
displayName = $STR_ACE_Explosives_Menu;
|
displayName = $STR_ACE_Explosives_Menu;
|
||||||
condition = QUOTE(!(_player getVariable [ARR_2('ace_explosives_PlantingExplosive',false)]));
|
condition = QUOTE(!(_player getVariable [ARR_2('ace_explosives_PlantingExplosive',false)]));
|
||||||
statement = "";
|
statement = "";
|
||||||
exceptions[] = {"ACE_Interaction_isNotSwimming"};
|
exceptions[] = {"isNotSwimming"};
|
||||||
showDisabled = 1;
|
showDisabled = 1;
|
||||||
priority = 4;
|
priority = 4;
|
||||||
icon = PATHTOF(UI\Explosives_Menu_ca.paa);
|
icon = PATHTOF(UI\Explosives_Menu_ca.paa);
|
||||||
@ -17,7 +17,7 @@ class CfgVehicles {
|
|||||||
displayName = $STR_ACE_Explosives_Detonate;
|
displayName = $STR_ACE_Explosives_Detonate;
|
||||||
condition = QUOTE([_player] call FUNC(canDetonate));
|
condition = QUOTE([_player] call FUNC(canDetonate));
|
||||||
statement = QUOTE([_player] call FUNC(openTransmitterUI););
|
statement = QUOTE([_player] call FUNC(openTransmitterUI););
|
||||||
exceptions[] = {"ACE_Interaction_isNotSwimming"};
|
exceptions[] = {"isNotSwimming"};
|
||||||
showDisabled = 1;
|
showDisabled = 1;
|
||||||
icon = PATHTOF(UI\Explosives_Menu_ca.paa);
|
icon = PATHTOF(UI\Explosives_Menu_ca.paa);
|
||||||
priority = 2;
|
priority = 2;
|
||||||
@ -27,7 +27,7 @@ class CfgVehicles {
|
|||||||
displayName = $STR_ACE_Explosives_Place;
|
displayName = $STR_ACE_Explosives_Place;
|
||||||
condition = QUOTE((vehicle _player == _player) and {[_player] call FUNC(hasExplosives)});
|
condition = QUOTE((vehicle _player == _player) and {[_player] call FUNC(hasExplosives)});
|
||||||
statement = QUOTE([_player] call FUNC(openPlaceUI););
|
statement = QUOTE([_player] call FUNC(openPlaceUI););
|
||||||
exceptions[] = {"ACE_Interaction_isNotSwimming"};
|
exceptions[] = {"isNotSwimming"};
|
||||||
showDisabled = 1;
|
showDisabled = 1;
|
||||||
icon = PATHTOF(UI\Place_Explosive_ca.paa);
|
icon = PATHTOF(UI\Place_Explosive_ca.paa);
|
||||||
priority = 1;
|
priority = 1;
|
||||||
@ -37,7 +37,7 @@ class CfgVehicles {
|
|||||||
displayName = $STR_ACE_Explosives_Defuse;
|
displayName = $STR_ACE_Explosives_Defuse;
|
||||||
condition = QUOTE([_player] call FUNC(canDefuse));
|
condition = QUOTE([_player] call FUNC(canDefuse));
|
||||||
statement = QUOTE([ARR_2(_player,EGVAR(Interaction,Target))] call FUNC(startDefuse););
|
statement = QUOTE([ARR_2(_player,EGVAR(Interaction,Target))] call FUNC(startDefuse););
|
||||||
exceptions[] = {"ACE_Interaction_isNotSwimming"};
|
exceptions[] = {"isNotSwimming"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
icon = PATHTOF(UI\Defuse_ca.paa);
|
icon = PATHTOF(UI\Defuse_ca.paa);
|
||||||
priority = 0.8;
|
priority = 0.8;
|
||||||
@ -47,7 +47,7 @@ class CfgVehicles {
|
|||||||
displayName = $STR_ACE_Explosives_cellphone_displayName;
|
displayName = $STR_ACE_Explosives_cellphone_displayName;
|
||||||
condition = "('ACE_Cellphone' in (items ace_player))";
|
condition = "('ACE_Cellphone' in (items ace_player))";
|
||||||
statement = "closeDialog 0;createDialog 'Rsc_ACE_PhoneInterface';";
|
statement = "closeDialog 0;createDialog 'Rsc_ACE_PhoneInterface';";
|
||||||
exceptions[] = {"ACE_Interaction_isNotSwimming"};
|
exceptions[] = {"isNotSwimming"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
icon = PATHTOF(Data\UI\Cellphone_UI.paa);
|
icon = PATHTOF(Data\UI\Cellphone_UI.paa);
|
||||||
priority = 0.8;
|
priority = 0.8;
|
||||||
|
@ -3,16 +3,16 @@
|
|||||||
<Project name="ACE">
|
<Project name="ACE">
|
||||||
<Package name="Explosives">
|
<Package name="Explosives">
|
||||||
<Key ID="STR_ACE_Explosives_Menu">
|
<Key ID="STR_ACE_Explosives_Menu">
|
||||||
<English>Explosives >></English>
|
<English>Explosives</English>
|
||||||
<German>Sprengstoffe >></German>
|
<German>Sprengstoffe</German>
|
||||||
<Spanish>Explosivos >></Spanish>
|
<Spanish>Explosivos</Spanish>
|
||||||
<Polish>Ładunki wybuchowe >></Polish>
|
<Polish>Ładunki wybuchowe</Polish>
|
||||||
<French>Explosifs >></French>
|
<French>Explosifs</French>
|
||||||
<Czech>Výbušniny >></Czech>
|
<Czech>Výbušniny</Czech>
|
||||||
<Italian>Esplosivi >></Italian>
|
<Italian>Esplosivi</Italian>
|
||||||
<Hungarian>Robbanóanyagok >></Hungarian>
|
<Hungarian>Robbanóanyagok</Hungarian>
|
||||||
<Portuguese>Explosivos >></Portuguese>
|
<Portuguese>Explosivos</Portuguese>
|
||||||
<Russian>Взрывчатка >></Russian>
|
<Russian>Взрывчатка</Russian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Explosives_Place">
|
<Key ID="STR_ACE_Explosives_Place">
|
||||||
<English>Place >></English>
|
<English>Place >></English>
|
||||||
|
@ -6,7 +6,7 @@ class CfgPatches {
|
|||||||
weapons[] = {};
|
weapons[] = {};
|
||||||
requiredVersion = REQUIRED_VERSION;
|
requiredVersion = REQUIRED_VERSION;
|
||||||
requiredAddons[] = {"ace_common"};
|
requiredAddons[] = {"ace_common"};
|
||||||
author[] = {"KoffeinFlummi", "CAA-Picard"};
|
author[] = {"KoffeinFlummi", "esteldunedain"};
|
||||||
authorUrl = "https://github.com/KoffeinFlummi/";
|
authorUrl = "https://github.com/KoffeinFlummi/";
|
||||||
VERSION_CONFIG;
|
VERSION_CONFIG;
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: KoffeinFlummi and CAA-Picard
|
* Author: KoffeinFlummi and esteldunedain
|
||||||
* Calculates average g-forces and triggers g-effects
|
* Calculates average g-forces and triggers g-effects
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
|
@ -6,7 +6,7 @@ class CfgPatches {
|
|||||||
weapons[] = {"ACE_EarPlugs"};
|
weapons[] = {"ACE_EarPlugs"};
|
||||||
requiredVersion = REQUIRED_VERSION;
|
requiredVersion = REQUIRED_VERSION;
|
||||||
requiredAddons[] = {"ace_common", "ace_interaction"};
|
requiredAddons[] = {"ace_common", "ace_interaction"};
|
||||||
author[] = {"KoffeinFlummi", "CAA-Picard", "HopeJ", "commy2"};
|
author[] = {"KoffeinFlummi", "esteldunedain", "HopeJ", "commy2"};
|
||||||
authorUrl = "https://github.com/KoffeinFlummi/";
|
authorUrl = "https://github.com/KoffeinFlummi/";
|
||||||
VERSION_CONFIG;
|
VERSION_CONFIG;
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Initializes the Map module.
|
* Initializes the Map module.
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: commy2 and CAA-Picard
|
* Author: commy2 and esteldunedain
|
||||||
* Updates and applys the current deafness. Called every 0.1 sec from a PFEH.
|
* Updates and applys the current deafness. Called every 0.1 sec from a PFEH.
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,10 +1,19 @@
|
|||||||
//XEH_clientInit.sqf
|
//XEH_clientInit.sqf
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
_fnc = {
|
// Install the render EH on the main display
|
||||||
_this call FUNC(render);
|
addMissionEventHandler ["Draw3D", DFUNC(render)];
|
||||||
|
|
||||||
|
// This spawn is probably worth keeping, as pfh don't work natively on the briefing screen and IDK how reliable the hack we implemented for them is.
|
||||||
|
// The thread dies as soon as the mission start, so it's not really compiting for scheduler space.
|
||||||
|
[] spawn {
|
||||||
|
// Wait until the map display is detected
|
||||||
|
waitUntil {(!isNull findDisplay 12)};
|
||||||
|
|
||||||
|
// Install the render EH on the map screen
|
||||||
|
((findDisplay 12) displayCtrl 51) ctrlAddEventHandler ["Draw", DFUNC(render)];
|
||||||
};
|
};
|
||||||
addMissionEventHandler ["Draw3D", _fnc];
|
|
||||||
|
|
||||||
["ACE3", QGVAR(InteractKey), "Interact Key",
|
["ACE3", QGVAR(InteractKey), "Interact Key",
|
||||||
{_this call FUNC(keyDown)},
|
{_this call FUNC(keyDown)},
|
||||||
|
@ -20,6 +20,7 @@ PREP(render);
|
|||||||
PREP(renderBaseMenu);
|
PREP(renderBaseMenu);
|
||||||
PREP(renderIcon);
|
PREP(renderIcon);
|
||||||
PREP(renderMenu);
|
PREP(renderMenu);
|
||||||
|
PREP(renderSelector);
|
||||||
PREP(splitPath);
|
PREP(splitPath);
|
||||||
|
|
||||||
GVAR(keyDown) = false;
|
GVAR(keyDown) = false;
|
||||||
|
@ -6,7 +6,7 @@ class CfgPatches {
|
|||||||
weapons[] = {};
|
weapons[] = {};
|
||||||
requiredVersion = REQUIRED_VERSION;
|
requiredVersion = REQUIRED_VERSION;
|
||||||
requiredAddons[] = {"ace_common"};
|
requiredAddons[] = {"ace_common"};
|
||||||
author[] = {"NouberNou", "CAA-Picard"};
|
author[] = {"NouberNou", "esteldunedain"};
|
||||||
authorUrl = "";
|
authorUrl = "";
|
||||||
VERSION_CONFIG;
|
VERSION_CONFIG;
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Insert an ACE action to a class, under a certain path
|
* Insert an ACE action to a class, under a certain path
|
||||||
* Note: This function is NOT global.
|
* Note: This function is NOT global.
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Insert an ACE action to an object, under a certain config path
|
* Insert an ACE action to an object, under a certain config path
|
||||||
* Note: This function is NOT global.
|
* Note: This function is NOT global.
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Collect a entire tree of active actions
|
* Collect a entire tree of active actions
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: NouberNou and CAA-Picard
|
* Author: NouberNou and esteldunedain
|
||||||
* Compile the action menu from config for an object's class
|
* Compile the action menu from config for an object's class
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: NouberNou and CAA-Picard
|
* Author: NouberNou and esteldunedain
|
||||||
* Compile the self action menu from config for an object's class
|
* Compile the self action menu from config for an object's class
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
@ -86,8 +86,11 @@ _actions = [
|
|||||||
"ACE_SelfActions",
|
"ACE_SelfActions",
|
||||||
"Self Actions",
|
"Self Actions",
|
||||||
"\a3\ui_f\data\IGUI\Cfg\Actions\eject_ca.paa",
|
"\a3\ui_f\data\IGUI\Cfg\Actions\eject_ca.paa",
|
||||||
{},
|
{
|
||||||
{ true },
|
// Dummy statement so it's not collapsed when there's no available actions
|
||||||
|
true
|
||||||
|
},
|
||||||
|
{[ACE_player, objNull, ["isNotDragging", "isNotCarrying", "isNotSwimming", "notOnMap", "isNotEscorting", "isNotSurrendering"]] call EFUNC(common,canInteractWith)},
|
||||||
{},
|
{},
|
||||||
[],
|
[],
|
||||||
"Spine3",
|
"Spine3",
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Creates an isolated ACE action
|
* Creates an isolated ACE action
|
||||||
* Note: This function is NOT global.
|
* Note: This function is NOT global.
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Return action point from path
|
* Return action point from path
|
||||||
* Note: This function is NOT global.
|
* Note: This function is NOT global.
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Check if the first path is a subpath of the other
|
* Check if the first path is a subpath of the other
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
|
@ -13,6 +13,9 @@
|
|||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
if(!GVAR(keyDown)) then {
|
if(!GVAR(keyDown)) then {
|
||||||
|
while {dialog} do {
|
||||||
|
closeDialog 0;
|
||||||
|
};
|
||||||
|
|
||||||
// Only interact with others if on foot
|
// Only interact with others if on foot
|
||||||
if (vehicle ACE_player != ACE_player) exitWith {};
|
if (vehicle ACE_player != ACE_player) exitWith {};
|
||||||
|
@ -13,6 +13,10 @@
|
|||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
if(!GVAR(keyDownSelfAction)) then {
|
if(!GVAR(keyDownSelfAction)) then {
|
||||||
|
while {dialog} do {
|
||||||
|
closeDialog 0;
|
||||||
|
};
|
||||||
|
|
||||||
GVAR(keyDownSelfAction) = true;
|
GVAR(keyDownSelfAction) = true;
|
||||||
GVAR(keyDown) = false;
|
GVAR(keyDown) = false;
|
||||||
GVAR(keyDownTime) = diag_tickTime;
|
GVAR(keyDownTime) = diag_tickTime;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Removes an action from a class
|
* Removes an action from a class
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: commy2, NouberNou and CAA-Picard
|
* Author: commy2, NouberNou and esteldunedain
|
||||||
* Removes an action from an object
|
* Removes an action from an object
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: NouberNou and CAA-Picard
|
* Author: NouberNou and esteldunedain
|
||||||
* Render all available nearby interactions
|
* Render all available nearby interactions
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
@ -12,6 +12,8 @@
|
|||||||
*/
|
*/
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
BEGIN_COUNTER(fnc_render);
|
||||||
|
|
||||||
private ["_cursorPos1", "_cursorPos2", "_cursorVec", "_p1", "_p2", "_p", "_v", "_cp", "_forEachIndex", "_renderTargets", "_x", "_cursorScreenPos", "_closestDistance", "_closestSelection", "_pos", "_sPos", "_disSq", "_closest", "_cTime", "_delta", "_foundTarget", "_misMatch", "_hoverPath", "_i"];
|
private ["_cursorPos1", "_cursorPos2", "_cursorVec", "_p1", "_p2", "_p", "_v", "_cp", "_forEachIndex", "_renderTargets", "_x", "_cursorScreenPos", "_closestDistance", "_closestSelection", "_pos", "_sPos", "_disSq", "_closest", "_cTime", "_delta", "_foundTarget", "_misMatch", "_hoverPath", "_i"];
|
||||||
_foundTarget = false;
|
_foundTarget = false;
|
||||||
_cursorPos1 = positionCameraToWorld [0, 0, 0];
|
_cursorPos1 = positionCameraToWorld [0, 0, 0];
|
||||||
@ -97,7 +99,11 @@ if (GVAR(keyDown)) then {
|
|||||||
{
|
{
|
||||||
_action = _x;
|
_action = _x;
|
||||||
|
|
||||||
_pos = (((positionCameraToWorld [0, 0, 0]) call EFUNC(common,positionToASL)) vectorAdd GVAR(selfMenuOffset)) call EFUNC(common,ASLToPosition);
|
_pos = if !(visibleMap) then {
|
||||||
|
(((positionCameraToWorld [0, 0, 0]) call EFUNC(common,positionToASL)) vectorAdd GVAR(selfMenuOffset)) call EFUNC(common,ASLToPosition)
|
||||||
|
} else {
|
||||||
|
[0.5, 0.5]
|
||||||
|
};
|
||||||
[_target, _action, _pos] call FUNC(renderBaseMenu);
|
[_target, _action, _pos] call FUNC(renderBaseMenu);
|
||||||
} forEach _classActions;
|
} forEach _classActions;
|
||||||
};
|
};
|
||||||
@ -107,7 +113,7 @@ if (GVAR(keyDown)) then {
|
|||||||
if(GVAR(keyDown) || GVAR(keyDownSelfAction)) then {
|
if(GVAR(keyDown) || GVAR(keyDownSelfAction)) then {
|
||||||
// Draw the red selector only when there's no cursor
|
// Draw the red selector only when there's no cursor
|
||||||
if !(uiNamespace getVariable [QGVAR(cursorMenuOpened),false]) then {
|
if !(uiNamespace getVariable [QGVAR(cursorMenuOpened),false]) then {
|
||||||
drawIcon3D ["\a3\ui_f\data\IGUI\Cfg\Cursors\selected_ca.paa", [1,0,0,1], _cursorPos2, 1, 1, 0, "", 0.5, 0.025, "TahomaB"];
|
[[0.5,0.5], "\a3\ui_f\data\IGUI\Cfg\Cursors\selected_ca.paa"] call FUNC(renderSelector);
|
||||||
};
|
};
|
||||||
|
|
||||||
_cursorScreenPos = [worldToScreen _cursorPos2, GVAR(cursorPos)] select (uiNamespace getVariable [QGVAR(cursorMenuOpened),false]);
|
_cursorScreenPos = [worldToScreen _cursorPos2, GVAR(cursorPos)] select (uiNamespace getVariable [QGVAR(cursorMenuOpened),false]);
|
||||||
@ -115,14 +121,11 @@ if(GVAR(keyDown) || GVAR(keyDownSelfAction)) then {
|
|||||||
_closestDistance = 1000000;
|
_closestDistance = 1000000;
|
||||||
_closestSelection = -1;
|
_closestSelection = -1;
|
||||||
{
|
{
|
||||||
_pos = _x select 1;
|
_sPos = _x select 1;
|
||||||
_sPos = worldToScreen _pos;
|
_disSq = (((_cursorScreenPos select 0) - (_sPos select 0))^2 + ((_cursorScreenPos select 1) - (_sPos select 1))^2);
|
||||||
if(count _sPos > 0) then {
|
if(_disSq < 0.0125 && _disSq < _closestDistance) then {
|
||||||
_disSq = (((_cursorScreenPos select 0) - (_sPos select 0))^2 + ((_cursorScreenPos select 1) - (_sPos select 1))^2);
|
_closestDistance = _disSq;
|
||||||
if(_disSq < 0.0125 && _disSq < _closestDistance) then {
|
_closestSelection = _forEachIndex;
|
||||||
_closestDistance = _disSq;
|
|
||||||
_closestSelection = _forEachIndex;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
} forEach GVAR(currentOptions);
|
} forEach GVAR(currentOptions);
|
||||||
|
|
||||||
@ -131,15 +134,14 @@ if(GVAR(keyDown) || GVAR(keyDownSelfAction)) then {
|
|||||||
|
|
||||||
_closest = GVAR(currentOptions) select _closestSelection;
|
_closest = GVAR(currentOptions) select _closestSelection;
|
||||||
|
|
||||||
_pos = _closest select 1;
|
_sPos = _closest select 1;
|
||||||
_cTime = diag_tickTime;
|
_cTime = diag_tickTime;
|
||||||
_delta = _cTime - GVAR(lastTime);
|
_delta = _cTime - GVAR(lastTime);
|
||||||
GVAR(lastTime) = _cTime;
|
GVAR(lastTime) = _cTime;
|
||||||
GVAR(rotationAngle) = GVAR(rotationAngle) + (180*_delta);
|
|
||||||
if(GVAR(rotationAngle) > 360) then {
|
GVAR(rotationAngle) = (GVAR(rotationAngle) + (270*_delta)) mod 360;
|
||||||
GVAR(rotationAngle) = GVAR(rotationAngle) - 360;
|
[_sPos, format [QUOTE(PATHTOF(ui\selector%1.paa)), floor (((abs GVAR(rotationAngle)) mod 90) / 6)]] call FUNC(renderSelector);
|
||||||
};
|
|
||||||
drawIcon3D ["\a3\ui_f\data\IGUI\Cfg\Cursors\selectover_ca.paa", [1,0,0,.75], _pos, 0.6*SafeZoneW, 0.6*SafeZoneW, GVAR(rotationAngle), "", 0.5, 0.025, "TahomaB"];
|
|
||||||
_foundTarget = true;
|
_foundTarget = true;
|
||||||
GVAR(actionSelected) = true;
|
GVAR(actionSelected) = true;
|
||||||
GVAR(selectedAction) = (_closest select 0) select 1;
|
GVAR(selectedAction) = (_closest select 0) select 1;
|
||||||
@ -207,3 +209,5 @@ for "_i" from GVAR(iconCount) to (count GVAR(iconCtrls))-1 do {
|
|||||||
};
|
};
|
||||||
GVAR(iconCtrls) resize GVAR(iconCount);
|
GVAR(iconCtrls) resize GVAR(iconCount);
|
||||||
GVAR(iconCount) = 0;
|
GVAR(iconCount) = 0;
|
||||||
|
|
||||||
|
END_COUNTER(fnc_render);
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Author: NouberNou and CAA-Picard
|
* Author: NouberNou and esteldunedain
|
||||||
* Render the interaction menu for a base action
|
* Render the interaction menu for a base action
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
* 0: Object <OBJECT>
|
* 0: Object <OBJECT>
|
||||||
* 1: Action node <ARRAY>
|
* 1: Action node <ARRAY>
|
||||||
* 2: 3D position <ARRAY> (Optional)
|
* 2: 3D position or 2D position <ARRAY> (Optional)
|
||||||
*
|
*
|
||||||
* Return value:
|
* Return value:
|
||||||
* Was the menu rendered <BOOL>
|
* Was the menu rendered <BOOL>
|
||||||
@ -14,6 +14,8 @@
|
|||||||
*/
|
*/
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
BEGIN_COUNTER(fnc_renderBaseMenu)
|
||||||
|
|
||||||
private ["_distance","_pos","_weaponDir","_ref","_cameraPos","_sPos","_activeActionTree"];
|
private ["_distance","_pos","_weaponDir","_ref","_cameraPos","_sPos","_activeActionTree"];
|
||||||
|
|
||||||
EXPLODE_2_PVT(_this,_object,_baseActionNode);
|
EXPLODE_2_PVT(_this,_object,_baseActionNode);
|
||||||
@ -41,15 +43,16 @@ if((count _this) > 2) then {
|
|||||||
_pos = _pos vectorAdd ((visiblePositionASL _object) vectorDiff (getPosASL _object));
|
_pos = _pos vectorAdd ((visiblePositionASL _object) vectorDiff (getPosASL _object));
|
||||||
};
|
};
|
||||||
|
|
||||||
_cameraToActionVec = (_pos call EFUNC(common,positionToASL)) vectorDiff ((positionCameraToWorld [0,0,0]) call EFUNC(common,positionToASL));
|
|
||||||
GVAR(refSystem) = _cameraToActionVec call EFUNC(common,createOrthonormalReference);
|
|
||||||
|
|
||||||
// For non-self actions, exit if the action is too far away
|
// For non-self actions, exit if the action is too far away
|
||||||
if (GVAR(keyDown) &&
|
if (GVAR(keyDown) &&
|
||||||
{(ACE_player modelToWorld (ACE_player selectionPosition "pilot")) distance _pos >= _distance}) exitWith {false};
|
{(ACE_player modelToWorld (ACE_player selectionPosition "pilot")) distance _pos >= _distance}) exitWith {false};
|
||||||
|
|
||||||
// Exit if the action is behind you
|
// Exit if the action is behind you
|
||||||
_sPos = worldToScreen _pos;
|
_sPos = if (count _pos != 2) then {
|
||||||
|
worldToScreen _pos
|
||||||
|
} else {
|
||||||
|
_pos
|
||||||
|
};
|
||||||
if(count _sPos == 0) exitWith {false};
|
if(count _sPos == 0) exitWith {false};
|
||||||
|
|
||||||
// Exit if the action is off screen
|
// Exit if the action is off screen
|
||||||
@ -57,6 +60,8 @@ if ((_sPos select 0) < safeZoneXAbs || (_sPos select 0) > safeZoneXAbs + safeZon
|
|||||||
if ((_sPos select 1) < safeZoneY || (_sPos select 1) > safeZoneY + safeZoneH) exitWith {false};
|
if ((_sPos select 1) < safeZoneY || (_sPos select 1) > safeZoneY + safeZoneH) exitWith {false};
|
||||||
|
|
||||||
|
|
||||||
|
BEGIN_COUNTER(fnc_collectActiveActionTree)
|
||||||
|
|
||||||
// Collect active tree
|
// Collect active tree
|
||||||
private "_uid";
|
private "_uid";
|
||||||
_uid = format [QGVAR(ATCache_%1), _actionData select 0];
|
_uid = format [QGVAR(ATCache_%1), _actionData select 0];
|
||||||
@ -66,6 +71,8 @@ _activeActionTree = [
|
|||||||
_object, _uid, 1.0, "interactMenuClosed"
|
_object, _uid, 1.0, "interactMenuClosed"
|
||||||
] call EFUNC(common,cachedCall);
|
] call EFUNC(common,cachedCall);
|
||||||
|
|
||||||
|
END_COUNTER(fnc_collectActiveActionTree)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
diag_log "Printing: _activeActionTree";
|
diag_log "Printing: _activeActionTree";
|
||||||
_fnc_print = {
|
_fnc_print = {
|
||||||
@ -83,6 +90,12 @@ if (count _activeActionTree == 0) exitWith {false};
|
|||||||
|
|
||||||
//EXPLODE_2_PVT(_activeActionTree,_actionData,_actionChildren);
|
//EXPLODE_2_PVT(_activeActionTree,_actionData,_actionChildren);
|
||||||
|
|
||||||
[[], _activeActionTree, _pos, [180,360]] call FUNC(renderMenu);
|
BEGIN_COUNTER(fnc_renderMenus);
|
||||||
|
|
||||||
|
[[], _activeActionTree, _sPos, [180,360]] call FUNC(renderMenu);
|
||||||
|
|
||||||
|
END_COUNTER(fnc_renderMenus);
|
||||||
|
|
||||||
|
END_COUNTER(fnc_renderBaseMenu)
|
||||||
|
|
||||||
true
|
true
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Author: NouberNou and CAA-Picard
|
* Author: NouberNou and esteldunedain
|
||||||
* Render a single interaction icon
|
* Render a single interaction icon
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
* 0: Text <STRING>
|
* 0: Text <STRING>
|
||||||
* 1: Color <STRING>
|
* 1: Color <STRING>
|
||||||
* 2: 3d position ASL <ARRAY>
|
* 2: 2d position <ARRAY>
|
||||||
* 3: ?
|
* 3: ?
|
||||||
* 4: ?
|
* 4: ?
|
||||||
* 5: ?
|
* 5: ?
|
||||||
@ -18,30 +18,25 @@
|
|||||||
*/
|
*/
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
#define DEFAULT_ICON QUOTE(\z\ace\addons\interaction\ui\dot_ca.paa)
|
#define DEFAULT_ICON QUOTE(\z\ace\addons\interaction\ui\dot_ca.paa)
|
||||||
private ["_color", "_pos", "_sPos", "_ctrl", "_icon"];
|
private ["_color", "_sPos", "_ctrl", "_icon"];
|
||||||
_text = _this select 0;
|
_text = _this select 0;
|
||||||
_color = _this select 1;
|
_color = _this select 1;
|
||||||
_pos = _this select 2;
|
_sPos = _this select 2;
|
||||||
_icon = _this select 6;
|
_icon = _this select 6;
|
||||||
|
|
||||||
//systemChat format ["Icon %1 - %2,%3,%4", _text, _pos select 0, _pos select 1, _pos select 2];
|
//systemChat format ["Icon %1 - %2,%3", _text, _sPos select 0, _sPos select 1];
|
||||||
|
|
||||||
_sPos = worldToScreen _pos;
|
if(GVAR(iconCount) > (count GVAR(iconCtrls))-1) then {
|
||||||
if(count _sPos > 0) then {
|
_displayNum = [[46, 12] select visibleMap,91919] select (uiNamespace getVariable [QGVAR(cursorMenuOpened),false]);
|
||||||
|
GVAR(iconCtrls) pushBack ((findDisplay _displayNum) ctrlCreate ["RscStructuredText", 54021+GVAR(iconCount)]);
|
||||||
if(GVAR(iconCount) > (count GVAR(iconCtrls))-1) then {
|
|
||||||
_displayNum = [46,91919] select (uiNamespace getVariable [QGVAR(cursorMenuOpened),false]);
|
|
||||||
//systemChat format ["Displaynum: %1", _displayNum];
|
|
||||||
GVAR(iconCtrls) pushBack ((findDisplay _displayNum) ctrlCreate ["RscStructuredText", 54021+GVAR(iconCount)]);
|
|
||||||
};
|
|
||||||
_ctrl = GVAR(iconCtrls) select GVAR(iconCount);
|
|
||||||
GVAR(iconCount) = GVAR(iconCount) + 1;
|
|
||||||
if(_icon == "") then {
|
|
||||||
_icon = DEFAULT_ICON;
|
|
||||||
};
|
|
||||||
_text = format ["<img image='%1' color='%2' align='center'/><br/><t color ='%3' size='0.75' align='center'>%4</t>", _icon, _color, _color, _text];
|
|
||||||
_ctrl ctrlSetStructuredText (parseText _text);
|
|
||||||
_ctrl ctrlSetPosition [(_sPos select 0)-(0.2*SafeZoneW), (_sPos select 1)-(0.0095*SafeZoneW), 0.4*SafeZoneW, 0.035*SafeZoneW];
|
|
||||||
//_ctrl ctrlSetBackgroundColor [1, 0, 0, 0.1];
|
|
||||||
_ctrl ctrlCommit 0;
|
|
||||||
};
|
};
|
||||||
|
_ctrl = GVAR(iconCtrls) select GVAR(iconCount);
|
||||||
|
GVAR(iconCount) = GVAR(iconCount) + 1;
|
||||||
|
if(_icon == "") then {
|
||||||
|
_icon = DEFAULT_ICON;
|
||||||
|
};
|
||||||
|
_text = format ["<img image='%1' color='%2' align='center'/><br/><t color='%3' size='0.80' align='center'>%4</t>", _icon, _color, _color, _text];
|
||||||
|
_ctrl ctrlSetStructuredText (parseText _text);
|
||||||
|
_ctrl ctrlSetPosition [(_sPos select 0)-(0.125*SafeZoneW), (_sPos select 1)-(0.0095*SafeZoneW), 0.25*SafeZoneW, 0.1*SafeZoneW];
|
||||||
|
//_ctrl ctrlSetBackgroundColor [1, 0, 0, 0.1];
|
||||||
|
_ctrl ctrlCommit 0;
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Author: NouberNou and CAA-Picard
|
* Author: NouberNou and esteldunedain
|
||||||
* Render an interaction menu and it's children recursively
|
* Render an interaction menu and it's children recursively
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
* 0: Parent path <ARRAY>
|
* 0: Parent path <ARRAY>
|
||||||
* 1: Action data <ARRAY>
|
* 1: Action data <ARRAY>
|
||||||
* 2: 3D position <ARRAY>
|
* 2: 2D position <ARRAY>
|
||||||
* 3: Angle range available for rendering <ARRAY>
|
* 3: Angle range available for rendering <ARRAY>
|
||||||
*
|
*
|
||||||
* Return value:
|
* Return value:
|
||||||
@ -17,12 +17,14 @@
|
|||||||
|
|
||||||
private ["_menuInSelectedPath", "_path", "_menuDepth", "_currentRenderDepth", "_x", "_offset", "_newPos", "_forEachIndex"];
|
private ["_menuInSelectedPath", "_path", "_menuDepth", "_currentRenderDepth", "_x", "_offset", "_newPos", "_forEachIndex"];
|
||||||
|
|
||||||
EXPLODE_4_PVT(_this,_parentPath,_action,_pos,_angles);
|
EXPLODE_4_PVT(_this,_parentPath,_action,_sPos,_angles);
|
||||||
EXPLODE_3_PVT(_action,_actionData,_activeChildren,_actionObject);
|
EXPLODE_3_PVT(_action,_actionData,_activeChildren,_actionObject);
|
||||||
EXPLODE_2_PVT(_angles,_centerAngle,_maxAngleSpan);
|
EXPLODE_2_PVT(_angles,_centerAngle,_maxAngleSpan);
|
||||||
|
|
||||||
_menuDepth = (count GVAR(menuDepthPath));
|
_menuDepth = (count GVAR(menuDepthPath));
|
||||||
|
|
||||||
|
//BEGIN_COUNTER(constructing_paths);
|
||||||
|
|
||||||
// Store path to action
|
// Store path to action
|
||||||
_path = +_parentPath;
|
_path = +_parentPath;
|
||||||
_path pushBack [_actionData select 0,_actionObject];
|
_path pushBack [_actionData select 0,_actionObject];
|
||||||
@ -38,24 +40,39 @@ _menuInSelectedPath = true;
|
|||||||
};
|
};
|
||||||
} forEach _path;
|
} forEach _path;
|
||||||
|
|
||||||
|
//END_COUNTER(constructing_paths);
|
||||||
|
//BEGIN_COUNTER(constructing_colors);
|
||||||
|
|
||||||
// Render icon
|
// Render icon
|
||||||
// ARGB Color (First Hex Pair is transparancy)
|
// ARGB Color (First Hex Pair is transparancy)
|
||||||
_color = "#FFFFFFFF";
|
_color = "#FFFFFFFF";
|
||||||
if(!_menuInSelectedPath) then { //_menuDepth > 0 &&
|
if(!_menuInSelectedPath) then {
|
||||||
if (_menuDepth > 0) then {
|
if (_menuDepth > 0) then {
|
||||||
_color = format ["#%1FFFFFF", [255 * ((((count _path) - 1)/_menuDepth) max 0.25)] call EFUNC(common,toHex)];
|
_color = format ["#%1FFFFFF", [255 * ((((count _path) - 1)/_menuDepth) max 0.25)] call EFUNC(common,toHex)];
|
||||||
} else {
|
} else {
|
||||||
_color = format ["#%1FFFFFF", [255 * 0.75] call EFUNC(common,toHex)];
|
_color = format ["#%1FFFFFF", [255 * 0.75] call EFUNC(common,toHex)];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
[_actionData select 1, _color, _pos, 1, 1, 0, _actionData select 2, 0.5, 0.025, "TahomaB"] call FUNC(renderIcon);
|
|
||||||
|
//END_COUNTER(constructing_colors);
|
||||||
|
//BEGIN_COUNTER(fnc_renderIcons);
|
||||||
|
|
||||||
|
[_actionData select 1, _color, _sPos, 1, 1, 0, _actionData select 2, 0.5, 0.025, "TahomaB"] call FUNC(renderIcon);
|
||||||
|
|
||||||
|
//END_COUNTER(fnc_renderIcons);
|
||||||
|
|
||||||
|
//BEGIN_COUNTER(currentOptions);
|
||||||
|
|
||||||
// Add the action to current options
|
// Add the action to current options
|
||||||
GVAR(currentOptions) pushBack [_this, _pos, _path];
|
GVAR(currentOptions) pushBack [_this, _sPos, _path];
|
||||||
|
|
||||||
|
//END_COUNTER(currentOptions);
|
||||||
|
|
||||||
// Exit without rendering children if it isn't
|
// Exit without rendering children if it isn't
|
||||||
if !(_menuInSelectedPath) exitWith {true};
|
if !(_menuInSelectedPath) exitWith {true};
|
||||||
|
|
||||||
|
//BEGIN_COUNTER(children);
|
||||||
|
|
||||||
private ["_numChildren","_angleSpan","_angle","_angleInterval","_scale","_offset"];
|
private ["_numChildren","_angleSpan","_angle","_angleInterval","_scale","_offset"];
|
||||||
_numChildren = count _activeChildren;
|
_numChildren = count _activeChildren;
|
||||||
_angleSpan = _maxAngleSpan min (55 * ((_numChildren) - 1));
|
_angleSpan = _maxAngleSpan min (55 * ((_numChildren) - 1));
|
||||||
@ -68,14 +85,14 @@ if (_angleSpan < 360) then {
|
|||||||
_angleInterval = _angleSpan / (_numChildren - 1);
|
_angleInterval = _angleSpan / (_numChildren - 1);
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
_angleSpan / (_numChildren);
|
_angleInterval = _angleSpan / (_numChildren);
|
||||||
};
|
};
|
||||||
if (_numChildren == 1) then {
|
if (_numChildren == 1) then {
|
||||||
_angleInterval = 60;
|
_angleInterval = 55;
|
||||||
};
|
};
|
||||||
|
|
||||||
// Scale menu based on the amount of children
|
// Scale menu based on the amount of children
|
||||||
_scale = GVAR(menuScale) * (((0.8 * (0.46 / sin (0.5 * _angleInterval))) min 1.4) max 0.5);
|
_scale = 0.17 * (((0.8 * (0.46 / sin (0.5 * _angleInterval))) min 1.1) max 0.5);
|
||||||
// Animate menu scale
|
// Animate menu scale
|
||||||
if (_menuInSelectedPath && (_menuDepth == count _path)) then {
|
if (_menuInSelectedPath && (_menuDepth == count _path)) then {
|
||||||
_scale = _scale * (0.3 + 0.7 * (((diag_tickTime - GVAR(expandedTime)) * 8) min 1));
|
_scale = _scale * (0.3 + 0.7 * (((diag_tickTime - GVAR(expandedTime)) * 8) min 1));
|
||||||
@ -83,17 +100,18 @@ if (_menuInSelectedPath && (_menuDepth == count _path)) then {
|
|||||||
|
|
||||||
_target = _actionObject;
|
_target = _actionObject;
|
||||||
_player = ACE_player;
|
_player = ACE_player;
|
||||||
|
|
||||||
|
//END_COUNTER(children);
|
||||||
_angle = _centerAngle - _angleSpan / 2;
|
_angle = _centerAngle - _angleSpan / 2;
|
||||||
{
|
{
|
||||||
|
//BEGIN_COUNTER(children);
|
||||||
private ["_offset","_newPos"];
|
private ["_offset","_newPos"];
|
||||||
_offset = ((GVAR(refSystem) select 1) vectorMultiply (-_scale * cos _angle)) vectorAdd
|
_newPos = [(_sPos select 0) -_scale * cos _angle,
|
||||||
((GVAR(refSystem) select 2) vectorMultiply (-_scale * sin _angle));
|
(_sPos select 1) +_scale * (sin _angle) * 4/3];
|
||||||
_newPos = ((_pos call EFUNC(common,positionToASL)) vectorAdd _offset) call EFUNC(common,ASLToPosition);
|
|
||||||
|
|
||||||
//drawLine3D [_pos, _newPos, [1,0,0,0.8]];
|
//drawLine3D [_pos, _newPos, [1,0,0,0.8]];
|
||||||
|
//END_COUNTER(children);
|
||||||
[_path, _x, _newPos, [_angle, 140]] call FUNC(renderMenu);
|
[_path, _x, _newPos, [_angle, 150]] call FUNC(renderMenu);
|
||||||
|
|
||||||
_angle = _angle + _angleInterval;
|
_angle = _angle + _angleInterval;
|
||||||
} forEach _activeChildren;
|
} forEach _activeChildren;
|
||||||
|
30
addons/interact_menu/functions/fnc_renderSelector.sqf
Normal file
30
addons/interact_menu/functions/fnc_renderSelector.sqf
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
/*
|
||||||
|
* Author: esteldunedain
|
||||||
|
* Render a single interaction icon
|
||||||
|
*
|
||||||
|
* Argument:
|
||||||
|
* 0: 2d position <ARRAY>
|
||||||
|
* 1: Icon <STRING>
|
||||||
|
*
|
||||||
|
* Return value:
|
||||||
|
* None
|
||||||
|
*
|
||||||
|
* Public: No
|
||||||
|
*/
|
||||||
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
EXPLODE_2_PVT(_this,_sPos,_icon);
|
||||||
|
|
||||||
|
if(GVAR(iconCount) > (count GVAR(iconCtrls))-1) then {
|
||||||
|
_displayNum = [[46, 12] select visibleMap,91919] select (uiNamespace getVariable [QGVAR(cursorMenuOpened),false]);
|
||||||
|
GVAR(iconCtrls) pushBack ((findDisplay _displayNum) ctrlCreate ["RscStructuredText", 54021+GVAR(iconCount)]);
|
||||||
|
};
|
||||||
|
|
||||||
|
private "_ctrl";
|
||||||
|
_ctrl = GVAR(iconCtrls) select GVAR(iconCount);
|
||||||
|
GVAR(iconCount) = GVAR(iconCount) + 1;
|
||||||
|
|
||||||
|
_ctrl ctrlSetStructuredText (parseText format ["<img image='%1' color='#FF0000' size='1.6' align='center'/>", _icon]);
|
||||||
|
_ctrl ctrlSetPosition [(_sPos select 0)-(0.05*SafeZoneW), (_sPos select 1)-(0.014*SafeZoneW), 0.1*SafeZoneW, 0.035*SafeZoneW];
|
||||||
|
//_ctrl ctrlSetBackgroundColor [1, 0, 0, 0.1];
|
||||||
|
_ctrl ctrlCommit 0;
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Take full path and split it between parent path and action name
|
* Take full path and split it between parent path and action name
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
|
BIN
addons/interact_menu/ui/selector0.paa
Normal file
BIN
addons/interact_menu/ui/selector0.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector1.paa
Normal file
BIN
addons/interact_menu/ui/selector1.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector10.paa
Normal file
BIN
addons/interact_menu/ui/selector10.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector11.paa
Normal file
BIN
addons/interact_menu/ui/selector11.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector12.paa
Normal file
BIN
addons/interact_menu/ui/selector12.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector13.paa
Normal file
BIN
addons/interact_menu/ui/selector13.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector14.paa
Normal file
BIN
addons/interact_menu/ui/selector14.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector2.paa
Normal file
BIN
addons/interact_menu/ui/selector2.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector3.paa
Normal file
BIN
addons/interact_menu/ui/selector3.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector4.paa
Normal file
BIN
addons/interact_menu/ui/selector4.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector5.paa
Normal file
BIN
addons/interact_menu/ui/selector5.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector6.paa
Normal file
BIN
addons/interact_menu/ui/selector6.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector7.paa
Normal file
BIN
addons/interact_menu/ui/selector7.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector8.paa
Normal file
BIN
addons/interact_menu/ui/selector8.paa
Normal file
Binary file not shown.
BIN
addons/interact_menu/ui/selector9.paa
Normal file
BIN
addons/interact_menu/ui/selector9.paa
Normal file
Binary file not shown.
@ -405,6 +405,7 @@ class CfgVehicles {
|
|||||||
icon = ""; // @todo
|
icon = ""; // @todo
|
||||||
enableInside = 1;
|
enableInside = 1;
|
||||||
hotkey = "E";
|
hotkey = "E";
|
||||||
|
exceptions[] = {"notOnMap"};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// by commy2 and CAA-Picard
|
// by commy2 and esteldunedain
|
||||||
|
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ class CfgPatches {
|
|||||||
weapons[] = {};
|
weapons[] = {};
|
||||||
requiredVersion = REQUIRED_VERSION;
|
requiredVersion = REQUIRED_VERSION;
|
||||||
requiredAddons[] = {"ace_interact_menu"};
|
requiredAddons[] = {"ace_interact_menu"};
|
||||||
author[] = {"commy2", "KoffeinFlummi", "CAA-Picard", "bux578"};
|
author[] = {"commy2", "KoffeinFlummi", "esteldunedain", "bux578"};
|
||||||
authorUrl = "https://github.com/commy2/";
|
authorUrl = "https://github.com/commy2/";
|
||||||
VERSION_CONFIG;
|
VERSION_CONFIG;
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Mount unit actions inside passenger submenu
|
* Mount unit actions inside passenger submenu
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Create one action per passenger
|
* Create one action per passenger
|
||||||
*
|
*
|
||||||
* Argument:
|
* Argument:
|
||||||
|
@ -3,28 +3,28 @@
|
|||||||
<Project name="ACE">
|
<Project name="ACE">
|
||||||
<Package name="Interaction">
|
<Package name="Interaction">
|
||||||
<Key ID="STR_ACE_Interaction_MainAction">
|
<Key ID="STR_ACE_Interaction_MainAction">
|
||||||
<English>Interactions >></English>
|
<English>Interactions</English>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_Torso">
|
<Key ID="STR_ACE_Interaction_Torso">
|
||||||
<English>Torso >></English>
|
<English>Torso</English>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_Head">
|
<Key ID="STR_ACE_Interaction_Head">
|
||||||
<English>Head >></English>
|
<English>Head</English>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_ArmLeft">
|
<Key ID="STR_ACE_Interaction_ArmLeft">
|
||||||
<English>Left Arm >></English>
|
<English>Left Arm</English>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_ArmRight">
|
<Key ID="STR_ACE_Interaction_ArmRight">
|
||||||
<English>Right Arm >></English>
|
<English>Right Arm</English>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_LegLeft">
|
<Key ID="STR_ACE_Interaction_LegLeft">
|
||||||
<English>Left Leg >></English>
|
<English>Left Leg</English>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_LegRight">
|
<Key ID="STR_ACE_Interaction_LegRight">
|
||||||
<English>Right Leg >></English>
|
<English>Right Leg</English>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_Weapon">
|
<Key ID="STR_ACE_Interaction_Weapon">
|
||||||
<English>Weapon >></English>
|
<English>Weapon</English>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_InteractionMenu">
|
<Key ID="STR_ACE_Interaction_InteractionMenu">
|
||||||
<English>Interaction Menu</English>
|
<English>Interaction Menu</English>
|
||||||
@ -183,16 +183,16 @@
|
|||||||
<Italian><< Indietro</Italian>
|
<Italian><< Indietro</Italian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_Gestures">
|
<Key ID="STR_ACE_Interaction_Gestures">
|
||||||
<English>Gestures >></English>
|
<English>Gestures</English>
|
||||||
<German>Gesten >></German>
|
<German>Gesten</German>
|
||||||
<Spanish>Gestos >></Spanish>
|
<Spanish>Gestos</Spanish>
|
||||||
<Polish>Gesty >></Polish>
|
<Polish>Gesty</Polish>
|
||||||
<Czech>Gesta >></Czech>
|
<Czech>Gesta</Czech>
|
||||||
<French>Signaux >></French>
|
<French>Signaux</French>
|
||||||
<Russian>Жесты >></Russian>
|
<Russian>Жесты</Russian>
|
||||||
<Hungarian>Kézjelek >></Hungarian>
|
<Hungarian>Kézjelek</Hungarian>
|
||||||
<Portuguese>Gestos >></Portuguese>
|
<Portuguese>Gestos</Portuguese>
|
||||||
<Italian>Segnali gestuali >></Italian>
|
<Italian>Segnali gestuali</Italian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_Gestures_Attack">
|
<Key ID="STR_ACE_Interaction_Gestures_Attack">
|
||||||
<English>Attack</English>
|
<English>Attack</English>
|
||||||
@ -435,16 +435,16 @@
|
|||||||
<Italian>A Terra!</Italian>
|
<Italian>A Terra!</Italian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_TeamManagement">
|
<Key ID="STR_ACE_Interaction_TeamManagement">
|
||||||
<English>Team Management >></English>
|
<English>Team<br/>Management</English>
|
||||||
<German>Team Management >></German>
|
<German>Team<br/>Management</German>
|
||||||
<Spanish>Gestión de equipo >></Spanish>
|
<Spanish>Gestión<br/>de equipo</Spanish>
|
||||||
<French>Gestion d'équipe >></French>
|
<French>Gestion<br/>d'équipe</French>
|
||||||
<Polish>Zarządzanie oddziałem >></Polish>
|
<Polish>Zarządzanie<br/>oddziałem</Polish>
|
||||||
<Czech>Správa týmu >></Czech>
|
<Czech>Správa<br/>týmu</Czech>
|
||||||
<Russian>Управление группой >></Russian>
|
<Russian>Управление<br/>группой</Russian>
|
||||||
<Portuguese>Gerenciamento de Equipe >></Portuguese>
|
<Portuguese>Gerenciamento<br/>de Equipe</Portuguese>
|
||||||
<Italian>Organizzazione Squadra >></Italian>
|
<Italian>Organizzazione<br/>Squadra</Italian>
|
||||||
<Hungarian>Csapat kezelés >></Hungarian>
|
<Hungarian>Csapat<br/>kezelés</Hungarian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_TeamRED">
|
<Key ID="STR_ACE_Interaction_TeamRED">
|
||||||
<English>Red</English>
|
<English>Red</English>
|
||||||
@ -495,52 +495,52 @@
|
|||||||
<Hungarian>Sárga</Hungarian>
|
<Hungarian>Sárga</Hungarian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_JoinTeamRed">
|
<Key ID="STR_ACE_Interaction_JoinTeamRed">
|
||||||
<English>Join Team Red</English>
|
<English>Join Team<br/>Red</English>
|
||||||
<German>Team Rot beitreten</German>
|
<German>Team Rot<br/>beitreten</German>
|
||||||
<Spanish>Unirse al equipo rojo</Spanish>
|
<Spanish>Unirse al<br/>equipo rojo</Spanish>
|
||||||
<French>Rejoindre Rouge</French>
|
<French>Rejoindre<br/>Rouge</French>
|
||||||
<Polish>Dołącz do drużyny czerwonej</Polish>
|
<Polish>Dołącz do drużyny<br/>czerwonej</Polish>
|
||||||
<Czech>Připojit do Červeného Týmu</Czech>
|
<Czech>Připojit do<br/>Červeného Týmu</Czech>
|
||||||
<Russian>Присоединиться к красной группе</Russian>
|
<Russian>Присоединиться<br/>к красной группе</Russian>
|
||||||
<Portuguese>Unir-se à Equipe Vermelha</Portuguese>
|
<Portuguese>Unir-se à<br/>Equipe Vermelha</Portuguese>
|
||||||
<Italian>Entra nella Squadra Rossa</Italian>
|
<Italian>Entra nella<br/>Squadra Rossa</Italian>
|
||||||
<Hungarian>Csatlakozás a piros csapathoz</Hungarian>
|
<Hungarian>Csatlakozás a<br/>piros csapathoz</Hungarian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_JoinTeamGreen">
|
<Key ID="STR_ACE_Interaction_JoinTeamGreen">
|
||||||
<English>Join Team Green</English>
|
<English>Join Team<br/>Green</English>
|
||||||
<German>Team Grün beitreten</German>
|
<German>Team Grün<br/>beitreten</German>
|
||||||
<Spanish>Unirse al equipo verde</Spanish>
|
<Spanish>Unirse al<br/>equipo verde</Spanish>
|
||||||
<French>Rejoindre Verte</French>
|
<French>Rejoindre<br/>Verte</French>
|
||||||
<Polish>Dołącz do drużyny zielonej</Polish>
|
<Polish>Dołącz do<br/>drużyny zielonej</Polish>
|
||||||
<Czech>Připojit do Zeleného Týmu</Czech>
|
<Czech>Připojit do<br/>Zeleného Týmu</Czech>
|
||||||
<Russian>Присоединиться к зеленой группе</Russian>
|
<Russian>Присоединиться<br/>к зеленой группе</Russian>
|
||||||
<Portuguese>Unir-se à Equipe Verde</Portuguese>
|
<Portuguese>Unir-se à<br/>Equipe Verde</Portuguese>
|
||||||
<Italian>Entra nella Squadra Verde</Italian>
|
<Italian>Entra nella<br/>Squadra Verde</Italian>
|
||||||
<Hungarian>Csatlakozás a zöld csapathoz</Hungarian>
|
<Hungarian>Csatlakozás a<br/>zöld csapathoz</Hungarian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_JoinTeamBlue">
|
<Key ID="STR_ACE_Interaction_JoinTeamBlue">
|
||||||
<English>Join Team Blue</English>
|
<English>Join Team<br/>Blue</English>
|
||||||
<German>Team Blau beitreten</German>
|
<German>Team Blau<br/>beitreten</German>
|
||||||
<Spanish>Unirse al equipo azul</Spanish>
|
<Spanish>Unirse al<br/>equipo azul</Spanish>
|
||||||
<French>Rejoindre Bleue</French>
|
<French>Rejoindre<br/>Bleue</French>
|
||||||
<Polish>Dołącz do drużyny niebieskiej</Polish>
|
<Polish>Dołącz do<br/>drużyny niebieskiej</Polish>
|
||||||
<Czech>Připojit do Modrého Týmu</Czech>
|
<Czech>Připojit do<br/>Modrého Týmu</Czech>
|
||||||
<Russian>Присоединиться к синей группе</Russian>
|
<Russian>Присоединиться<br/>к синей группе</Russian>
|
||||||
<Portuguese>Unir-se à Equipe Azul</Portuguese>
|
<Portuguese>Unir-se à<br/>Equipe Azul</Portuguese>
|
||||||
<Italian>Entra nella Squadra Blu</Italian>
|
<Italian>Entra nella<br/>Squadra Blu</Italian>
|
||||||
<Hungarian>Csatlakozás a kék csapathoz</Hungarian>
|
<Hungarian>Csatlakozás a<br/>kék csapathoz</Hungarian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_JoinTeamYellow">
|
<Key ID="STR_ACE_Interaction_JoinTeamYellow">
|
||||||
<English>Join Team Yellow</English>
|
<English>Join Team<br/>Yellow</English>
|
||||||
<German>Team Gelb beitreten</German>
|
<German>Team Gelb<br/>beitreten</German>
|
||||||
<Spanish>Unirse al equipo amarillo</Spanish>
|
<Spanish>Unirse al<br/>equipo amarillo</Spanish>
|
||||||
<French>Rejoindre Jaune</French>
|
<French>Rejoindre<br/>Jaune</French>
|
||||||
<Polish>Dołącz do drużyny żółtej</Polish>
|
<Polish>Dołącz do<br/>drużyny żółtej</Polish>
|
||||||
<Czech>Připojit do Žlutého Týmu</Czech>
|
<Czech>Připojit do<br/>Žlutého Týmu</Czech>
|
||||||
<Russian>Присоединиться к желтой группе</Russian>
|
<Russian>Присоединиться<br/>к желтой группе</Russian>
|
||||||
<Portuguese>Unir-se à Equipe Amarela</Portuguese>
|
<Portuguese>Unir-se à<br/>Equipe Amarela</Portuguese>
|
||||||
<Italian>Entra nella Squadra Gialla</Italian>
|
<Italian>Entra nella<br/>Squadra Gialla</Italian>
|
||||||
<Hungarian>Csatlakozás a sárga csapathoz</Hungarian>
|
<Hungarian>Csatlakozás a<br/>sárga csapathoz</Hungarian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_JoinedTeam">
|
<Key ID="STR_ACE_Interaction_JoinedTeam">
|
||||||
<English>You joined Team %1</English>
|
<English>You joined Team %1</English>
|
||||||
@ -626,14 +626,14 @@
|
|||||||
<Czech>Mimo dosah</Czech>
|
<Czech>Mimo dosah</Czech>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_Equipment">
|
<Key ID="STR_ACE_Interaction_Equipment">
|
||||||
<English>Equipment >></English>
|
<English>Equipment</English>
|
||||||
<German>Ausrüstung >></German>
|
<German>Ausrüstung</German>
|
||||||
<Spanish>Equipamiento >></Spanish>
|
<Spanish>Equipamiento</Spanish>
|
||||||
<French>Équipment >></French>
|
<French>Équipment</French>
|
||||||
<Polish>Ekwipunek >></Polish>
|
<Polish>Ekwipunek</Polish>
|
||||||
<Czech>Vybavení >></Czech>
|
<Czech>Vybavení</Czech>
|
||||||
<Hungarian>Felszerelés >></Hungarian>
|
<Hungarian>Felszerelés</Hungarian>
|
||||||
<Russian>Снаряжение >></Russian>
|
<Russian>Снаряжение</Russian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_Push">
|
<Key ID="STR_ACE_Interaction_Push">
|
||||||
<English>Push</English>
|
<English>Push</English>
|
||||||
@ -654,7 +654,7 @@
|
|||||||
<Spanish>Interactuar</Spanish>
|
<Spanish>Interactuar</Spanish>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_Interaction_Passengers">
|
<Key ID="STR_ACE_Interaction_Passengers">
|
||||||
<English>Passengers >></English>
|
<English>Passengers</English>
|
||||||
</Key>
|
</Key>
|
||||||
</Package>
|
</Package>
|
||||||
</Project>
|
</Project>
|
||||||
|
@ -6,7 +6,7 @@ class CfgPatches {
|
|||||||
weapons[] = {"ACE_Kestrel"};
|
weapons[] = {"ACE_Kestrel"};
|
||||||
requiredVersion = REQUIRED_VERSION;
|
requiredVersion = REQUIRED_VERSION;
|
||||||
requiredAddons[] = {"ace_common","ace_interaction"};
|
requiredAddons[] = {"ace_common","ace_interaction"};
|
||||||
author[] = {"Falke","commy2","KoffeinFlummi","CAA-Picard"};
|
author[] = {"Falke","commy2","KoffeinFlummi","esteldunedain"};
|
||||||
authorUrl = "https://github.com/KoffeinFlummi/";
|
authorUrl = "https://github.com/KoffeinFlummi/";
|
||||||
VERSION_CONFIG;
|
VERSION_CONFIG;
|
||||||
};
|
};
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// by commy2 and CAA-Picard
|
// by commy2 and esteldunedain
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
EXPLODE_3_PVT(_this,_unit,_range,_isGreen);
|
EXPLODE_3_PVT(_this,_unit,_range,_isGreen);
|
||||||
|
@ -17,6 +17,7 @@
|
|||||||
|
|
||||||
PARAMS_1(_interactionType);
|
PARAMS_1(_interactionType);
|
||||||
|
|
||||||
|
//Ignore self-interaction menu
|
||||||
if (_interactionType != 0) exitWith {};
|
if (_interactionType != 0) exitWith {};
|
||||||
|
|
||||||
//for performance only do stuff it they have a wirecutter item
|
//for performance only do stuff it they have a wirecutter item
|
||||||
@ -32,7 +33,10 @@ if (!("ACE_wirecutter" in (items ace_player))) exitWith {};
|
|||||||
{deleteVehicle _x;} forEach _addedHelpers;
|
{deleteVehicle _x;} forEach _addedHelpers;
|
||||||
[_pfID] call CBA_fnc_removePerFrameHandler;
|
[_pfID] call CBA_fnc_removePerFrameHandler;
|
||||||
} else {
|
} else {
|
||||||
//If play moved >5 meters from last pos, then rescan
|
// Prevent Rare Error when ending mission with interact key down:
|
||||||
|
if (isNull ace_player) exitWith {};
|
||||||
|
|
||||||
|
//If player moved >5 meters from last pos, then rescan
|
||||||
if (((getPosASL ace_player) distance _setPosition) > 5) then {
|
if (((getPosASL ace_player) distance _setPosition) > 5) then {
|
||||||
|
|
||||||
_fncStatement = {
|
_fncStatement = {
|
||||||
|
@ -6,7 +6,7 @@ class CfgPatches {
|
|||||||
weapons[] = {};
|
weapons[] = {};
|
||||||
requiredVersion = REQUIRED_VERSION;
|
requiredVersion = REQUIRED_VERSION;
|
||||||
requiredAddons[] = {"ace_interaction"};
|
requiredAddons[] = {"ace_interaction"};
|
||||||
author[] = {"commy2","CAA-Picard"};
|
author[] = {"commy2","esteldunedain"};
|
||||||
authorUrl = "https://github.com/commy2/";
|
authorUrl = "https://github.com/commy2/";
|
||||||
VERSION_CONFIG;
|
VERSION_CONFIG;
|
||||||
};
|
};
|
||||||
|
@ -3,16 +3,16 @@
|
|||||||
<Project name="ACE">
|
<Project name="ACE">
|
||||||
<Package name="MagazineRepack">
|
<Package name="MagazineRepack">
|
||||||
<Key ID="STR_ACE_MagazineRepack_RepackMagazines">
|
<Key ID="STR_ACE_MagazineRepack_RepackMagazines">
|
||||||
<English>Repack Magazines</English>
|
<English>Repack<br/>Magazines</English>
|
||||||
<German>Magazine umpacken</German>
|
<German>Magazine<br/>umpacken</German>
|
||||||
<Spanish>Reorganizar cargadores</Spanish>
|
<Spanish>Reorganizar<br/>cargadores</Spanish>
|
||||||
<French>Réorganiser chargeurs</French>
|
<French>Réorganiser<br/>chargeurs</French>
|
||||||
<Polish>Przepakuj magazynki</Polish>
|
<Polish>Przepakuj<br/>magazynki</Polish>
|
||||||
<Czech>Přepáskovat Zásobníky</Czech>
|
<Czech>Přepáskovat<br/>Zásobníky</Czech>
|
||||||
<Italian>Ricarica Caricatori</Italian>
|
<Italian>Ricarica<br/>Caricatori</Italian>
|
||||||
<Portuguese>Reorganizar Carregadores</Portuguese>
|
<Portuguese>Reorganizar<br/>Carregadores</Portuguese>
|
||||||
<Hungarian>Újratárazás</Hungarian>
|
<Hungarian>Újratárazás<<br/>Hungarian>
|
||||||
<Russian>Перепаковать магазины</Russian>
|
<Russian>Перепаковать<br/>магазины</Russian>
|
||||||
</Key>
|
</Key>
|
||||||
<Key ID="STR_ACE_MagazineRepack_SelectMagazineMenu">
|
<Key ID="STR_ACE_MagazineRepack_SelectMagazineMenu">
|
||||||
<English>Select Magazine Menu</English>
|
<English>Select Magazine Menu</English>
|
||||||
|
@ -6,7 +6,7 @@ class CfgPatches {
|
|||||||
weapons[] = {};
|
weapons[] = {};
|
||||||
requiredVersion = REQUIRED_VERSION;
|
requiredVersion = REQUIRED_VERSION;
|
||||||
requiredAddons[] = {"ace_common", "ace_interaction"};
|
requiredAddons[] = {"ace_common", "ace_interaction"};
|
||||||
author[] = {"KoffeinFlummi","Rocko","CAA-Picard"};
|
author[] = {"KoffeinFlummi","Rocko","esteldunedain"};
|
||||||
authorUrl = "https://github.com/KoffeinFlummi/";
|
authorUrl = "https://github.com/KoffeinFlummi/";
|
||||||
VERSION_CONFIG;
|
VERSION_CONFIG;
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: Rocko and CAA-Picard
|
* Author: Rocko and esteldunedain
|
||||||
* Calculates the current map illumination for a given unit
|
* Calculates the current map illumination for a given unit
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
* Initializes the Map module.
|
* Initializes the Map module.
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: Rocko and CAA-Picard
|
* Author: Rocko and esteldunedain
|
||||||
* On map draw, updates the effects
|
* On map draw, updates the effects
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
|
@ -7,7 +7,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_MapTools_MapTools_Menu";
|
displayName = "$STR_ACE_MapTools_MapTools_Menu";
|
||||||
condition = QUOTE((call FUNC(canUseMapTools) || {call FUNC(canUseMapGPS)}));
|
condition = QUOTE((call FUNC(canUseMapTools) || {call FUNC(canUseMapGPS)}));
|
||||||
statement = "";
|
statement = "";
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging", QEGVAR(common,notOnMap)};
|
exceptions[] = {"isNotDragging", "notOnMap"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
priority = 100;
|
priority = 100;
|
||||||
enableInside = 1;
|
enableInside = 1;
|
||||||
@ -16,7 +16,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_MapTools_MapToolsHide";
|
displayName = "$STR_ACE_MapTools_MapToolsHide";
|
||||||
condition = QUOTE((call FUNC(canUseMapTools) && {GVAR(mapTool_Shown) != 0}));
|
condition = QUOTE((call FUNC(canUseMapTools) && {GVAR(mapTool_Shown) != 0}));
|
||||||
statement = QUOTE(GVAR(mapTool_Shown) = 0; [] call FUNC(updateMapToolMarkers));
|
statement = QUOTE(GVAR(mapTool_Shown) = 0; [] call FUNC(updateMapToolMarkers));
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging", QEGVAR(common,notOnMap)};
|
exceptions[] = {"isNotDragging", "notOnMap"};
|
||||||
showDisabled = 1;
|
showDisabled = 1;
|
||||||
priority = 5;
|
priority = 5;
|
||||||
enableInside = 1;
|
enableInside = 1;
|
||||||
@ -25,7 +25,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_MapTools_MapToolsShowNormal";
|
displayName = "$STR_ACE_MapTools_MapToolsShowNormal";
|
||||||
condition = QUOTE((call FUNC(canUseMapTools) && {GVAR(mapTool_Shown) != 1}));
|
condition = QUOTE((call FUNC(canUseMapTools) && {GVAR(mapTool_Shown) != 1}));
|
||||||
statement = QUOTE(GVAR(mapTool_Shown) = 1; [] call FUNC(updateMapToolMarkers));
|
statement = QUOTE(GVAR(mapTool_Shown) = 1; [] call FUNC(updateMapToolMarkers));
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging", QEGVAR(common,notOnMap)};
|
exceptions[] = {"isNotDragging", "notOnMap"};
|
||||||
showDisabled = 1;
|
showDisabled = 1;
|
||||||
priority = 4;
|
priority = 4;
|
||||||
enableInside = 1;
|
enableInside = 1;
|
||||||
@ -34,7 +34,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_MapTools_MapToolsShowSmall";
|
displayName = "$STR_ACE_MapTools_MapToolsShowSmall";
|
||||||
condition = QUOTE((call FUNC(canUseMapTools) && {GVAR(mapTool_Shown) != 2}));
|
condition = QUOTE((call FUNC(canUseMapTools) && {GVAR(mapTool_Shown) != 2}));
|
||||||
statement = QUOTE(GVAR(mapTool_Shown) = 2; [] call FUNC(updateMapToolMarkers));
|
statement = QUOTE(GVAR(mapTool_Shown) = 2; [] call FUNC(updateMapToolMarkers));
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging", QEGVAR(common,notOnMap)};
|
exceptions[] = {"isNotDragging", "notOnMap"};
|
||||||
showDisabled = 1;
|
showDisabled = 1;
|
||||||
priority = 3;
|
priority = 3;
|
||||||
enableInside = 1;
|
enableInside = 1;
|
||||||
@ -43,7 +43,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_MapTools_MapToolsAlignNorth";
|
displayName = "$STR_ACE_MapTools_MapToolsAlignNorth";
|
||||||
condition = QUOTE((call FUNC(canUseMapTools) && {GVAR(mapTool_Shown) != 0}));
|
condition = QUOTE((call FUNC(canUseMapTools) && {GVAR(mapTool_Shown) != 0}));
|
||||||
statement = QUOTE(GVAR(mapTool_angle) = 0; [] call FUNC(updateMapToolMarkers));
|
statement = QUOTE(GVAR(mapTool_angle) = 0; [] call FUNC(updateMapToolMarkers));
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging", QEGVAR(common,notOnMap)};
|
exceptions[] = {"isNotDragging", "notOnMap"};
|
||||||
showDisabled = 1;
|
showDisabled = 1;
|
||||||
priority = 2;
|
priority = 2;
|
||||||
enableInside = 1;
|
enableInside = 1;
|
||||||
@ -52,7 +52,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_MapTools_MapToolsAlignCompass";
|
displayName = "$STR_ACE_MapTools_MapToolsAlignCompass";
|
||||||
condition = QUOTE((call FUNC(canUseMapTools) && {GVAR(mapTool_Shown) != 0} && {('ItemCompass' in assigneditems ACE_player) || {'ItemCompass' in assigneditems ACE_player}}));
|
condition = QUOTE((call FUNC(canUseMapTools) && {GVAR(mapTool_Shown) != 0} && {('ItemCompass' in assigneditems ACE_player) || {'ItemCompass' in assigneditems ACE_player}}));
|
||||||
statement = QUOTE(GVAR(mapTool_angle) = getDir ACE_player; [] call FUNC(updateMapToolMarkers));
|
statement = QUOTE(GVAR(mapTool_angle) = getDir ACE_player; [] call FUNC(updateMapToolMarkers));
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging", QEGVAR(common,notOnMap)};
|
exceptions[] = {"isNotDragging", "notOnMap"};
|
||||||
showDisabled = 1;
|
showDisabled = 1;
|
||||||
priority = 1;
|
priority = 1;
|
||||||
enableInside = 1;
|
enableInside = 1;
|
||||||
@ -61,7 +61,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_MapTools_MapGpsShow";
|
displayName = "$STR_ACE_MapTools_MapGpsShow";
|
||||||
condition = QUOTE((call FUNC(canUseMapGPS) && {!GVAR(mapGpsShow)}));
|
condition = QUOTE((call FUNC(canUseMapGPS) && {!GVAR(mapGpsShow)}));
|
||||||
statement = QUOTE(GVAR(mapGpsShow) = true; [GVAR(mapGpsShow)] call FUNC(openMapGps));
|
statement = QUOTE(GVAR(mapGpsShow) = true; [GVAR(mapGpsShow)] call FUNC(openMapGps));
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging", QEGVAR(common,notOnMap)};
|
exceptions[] = {"isNotDragging", "notOnMap"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
priority = 0;
|
priority = 0;
|
||||||
enableInside = 1;
|
enableInside = 1;
|
||||||
@ -70,7 +70,7 @@ class CfgVehicles {
|
|||||||
displayName = "$STR_ACE_MapTools_MapGpsHide";
|
displayName = "$STR_ACE_MapTools_MapGpsHide";
|
||||||
condition = QUOTE((call FUNC(canUseMapGPS) && {GVAR(mapGpsShow)}));
|
condition = QUOTE((call FUNC(canUseMapGPS) && {GVAR(mapGpsShow)}));
|
||||||
statement = QUOTE(GVAR(mapGpsShow) = false; [GVAR(mapGpsShow)] call FUNC(openMapGps));
|
statement = QUOTE(GVAR(mapGpsShow) = false; [GVAR(mapGpsShow)] call FUNC(openMapGps));
|
||||||
exceptions[] = {"ACE_Drag_isNotDragging", QEGVAR(common,notOnMap)};
|
exceptions[] = {"isNotDragging", "notOnMap"};
|
||||||
showDisabled = 0;
|
showDisabled = 0;
|
||||||
priority = 0;
|
priority = 0;
|
||||||
enableInside = 1;
|
enableInside = 1;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// by CAA-Picard
|
// by esteldunedain
|
||||||
|
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ class CfgPatches {
|
|||||||
weapons[] = {"ACE_MapTools"};
|
weapons[] = {"ACE_MapTools"};
|
||||||
requiredVersion = REQUIRED_VERSION;
|
requiredVersion = REQUIRED_VERSION;
|
||||||
requiredAddons[] = {"ace_common", "ace_interaction"};
|
requiredAddons[] = {"ace_common", "ace_interaction"};
|
||||||
author[] = {"CAA-Picard"};
|
author[] = {"esteldunedain"};
|
||||||
authorUrl = "https://github.com/esteldunedain/";
|
authorUrl = "https://github.com/esteldunedain/";
|
||||||
VERSION_CONFIG;
|
VERSION_CONFIG;
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Add the line marker
|
* Add the line marker
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Returns the equivalent of 100m in screen coordinates
|
* Returns the equivalent of 100m in screen coordinates
|
||||||
*
|
*
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// by CAA-Picard
|
// by esteldunedain
|
||||||
|
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// by CAA-Picard
|
// by esteldunedain
|
||||||
|
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// by CAA-Picard
|
// by esteldunedain
|
||||||
|
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Cancel the drawing of the current line marker
|
* Cancel the drawing of the current line marker
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Copy recieved markers to map
|
* Copy recieved markers to map
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Send Map markers to other player
|
* Send Map markers to other player
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Send request to remote player
|
* Send request to remote player
|
||||||
*
|
*
|
||||||
@ -15,7 +15,7 @@
|
|||||||
* Return value:
|
* Return value:
|
||||||
* Return
|
* Return
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
PARAMS_1(_player,_target);
|
PARAMS_1(_player,_target);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Handle key down on map.
|
* Handle key down on map.
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Handle mouse buttons.
|
* Handle mouse buttons.
|
||||||
*
|
*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Author: CAA-Picard
|
* Author: esteldunedain
|
||||||
*
|
*
|
||||||
* Handle mouse movement over the map tool.
|
* Handle mouse movement over the map tool.
|
||||||
*
|
*
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user