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
This commit is contained in:
commit
a7507fefef
@ -40,7 +40,7 @@ If you installed ACE3, but have trouble understanding how it all works, or where
|
||||
#### Contributing
|
||||
If you want to help put with the ongoing development, you can do so by looking for possible bugs or by contributing new features. To contribute something to ACE, simply fork this repository and submit your pull requests for review by other collaborators. In the process, please add yourself to the author array of any .pbo you will be editing and the AUTHORS.txt file; including a valid email address.
|
||||
|
||||
To report a bug, propose a feature, or suggest a change to the existing one — please, use our [Issue Tracker](https://github.com/acemod/ACE3/issues).
|
||||
To report a bug, propose a feature, or suggest a change to the existing one — please, use our [Issue Tracker](https://github.com/acemod/ACE3/issues). See [this link](http://ace3mod.com/wiki/user/how-to-report-an-issue.html) for details.
|
||||
|
||||
#### Testing & Building
|
||||
If you want to help us test the latest development changes, feel free to download our master branch, using either git — if familiar with the process — or directly, by following [this link](https://github.com/acemod/ACE3/archive/master.zip).
|
||||
|
@ -62,6 +62,7 @@ if (_unit == _attachToVehicle) then { //Self Attachment
|
||||
_actionID = _unit addAction [format ["<t color='#FF0000'>%1</t>", localize "STR_ACE_Attach_CancelAction"], {GVAR(placeAction) = 0}];
|
||||
|
||||
[{
|
||||
private "_startingPosition";
|
||||
PARAMS_2(_args,_pfID);
|
||||
EXPLODE_7_PVT(_args,_unit,_attachToVehicle,_itemClassname,_itemVehClass,_tempObject,_onAtachText,_actionID);
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
|
||||
PARAMS_3(_attachToVehicle,_player,_args);
|
||||
|
||||
private ["_itemName", "_attachLimit", "_attachedObjects"];
|
||||
private ["_itemName", "_attachLimit", "_attachedObjects","_playerPos"];
|
||||
|
||||
_itemName = [_args, 0, ""] call CBA_fnc_defaultParam;
|
||||
_attachLimit = [6, 1] select (_player == _attachToVehicle);
|
||||
|
@ -18,7 +18,7 @@
|
||||
|
||||
PARAMS_2(_attachToVehicle,_unit);
|
||||
|
||||
private ["_attachedObjects", "_attachedItems"];
|
||||
private ["_attachedObjects", "_attachedItems", "_itemDisplayName"];
|
||||
|
||||
_attachedObjects = _attachToVehicle getVariable [QGVAR(Objects), []];
|
||||
_attachedItems = _attachToVehicle getVariable [QGVAR(ItemNames), []];
|
||||
|
@ -17,6 +17,7 @@
|
||||
*/
|
||||
#include "script_component.hpp"
|
||||
|
||||
private ["_listed", "_actions", "_item", "_displayName", "_picture", "_action"];
|
||||
PARAMS_2(_target,_player);
|
||||
|
||||
_listed = [];
|
||||
|
@ -13,11 +13,7 @@
|
||||
*/
|
||||
#include "script_component.hpp"
|
||||
|
||||
private ["_unit", "_target"];
|
||||
|
||||
_unit = _this select 0;
|
||||
_target = _this select 1;
|
||||
_backpack = _this select 2;
|
||||
PARAMS_3(_unit,_target,_backpack);
|
||||
|
||||
// do cam shake if the target is the player
|
||||
if ([_target] call EFUNC(common,isPlayer)) then {
|
||||
|
@ -480,7 +480,7 @@
|
||||
<English>Caliber: .338 Norma Magnum Tracer IR-DIM<br />Rounds: 130<br />Used in: SPMG</English>
|
||||
<German>Kaliber: .338 Norma Magnum Leuchtspur IR-DIM<br />Schuss: 130<br />Verwendet für: SPMG</German>
|
||||
<Polish>Kaliber: .338 Norma Magnum Smugacz IR-DIM<br />Pociski: 130<br />Używany w: SPMG</Polish>
|
||||
<French>Calibre: .338 Norma Magnum Traçante IR-DIM<br />Cartouches: 130<br />Utilisé dans: SPMG</French>
|
||||
<French>Calibre: .338 Norma Magnum Traçante IR-DIM<br />Cartouches: 130<br />Utilisé dans: SPMG</French>
|
||||
<Spanish>Calibre: .338 Norma Magnum trazadora IR-DIM<br />Balas: 130<br />Se usa en: SPMG</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_130Rnd_338_Mag_APName">
|
||||
@ -805,31 +805,37 @@
|
||||
<English>7.62mm 10Rnd Mag (Mk319 Mod 0)</English>
|
||||
<Polish>Magazynek 7,62mm 10rd (Mk319 Mod 0)</Polish>
|
||||
<French>7.62mm 10Cps (Mk319 Mod 0)</French>
|
||||
<Spanish>Cargador de 10 balas de 7.62mm (Mk319 Mod 0)</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_10Rnd_762x51_Mk319_Mod_0_Mag_NameShort">
|
||||
<English>7.62mm Mk319</English>
|
||||
<Polish>7,62mm Mk319</Polish>
|
||||
<French>7.62mm Mk319</French>
|
||||
<Spanish>7.62mm Mk319</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_10Rnd_762x51_Mk319_Mod_0_Mag_Description">
|
||||
<English>Caliber: 7.62x51 mm NATO (Mk319 Mod 0)<br />Rounds: 10</English>
|
||||
<Polish>Kaliber: 7,62x51 mm NATO (Mk319 Mod 0)<br />Pociski: 10</Polish>
|
||||
<French>Calibre: 7.62x51 mm NATO (Mk319 Mod 0)<br />Cartouches: 10</French>
|
||||
<Spanish>Calibre: 7.62x51 mm NATO (Mk319 Mod 0)<br />Balas: 10</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_20Rnd_762x51_Mk319_Mod_0_Mag_Name">
|
||||
<English>7.62mm 20Rnd Mag (Mk319 Mod 0)</English>
|
||||
<Polish>Magazynek 7,62mm 20rd (Mk319 Mod 0)</Polish>
|
||||
<French>7.62mm 20Cps (Mk319 Mod 0)</French>
|
||||
<Spanish>Cargador de 20 balas de 7.62mm (Mk319 Mod 0)</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_20Rnd_762x51_Mk319_Mod_0_Mag_NameShort">
|
||||
<English>7.62mm Mk319</English>
|
||||
<Polish>7,62mm Mk319</Polish>
|
||||
<French>7.62mm Mk319</French>
|
||||
<Spanish>7.62mm Mk319</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_20Rnd_762x51_Mk319_Mod_0_Mag_Description">
|
||||
<English>Caliber: 7.62x51 mm NATO (Mk319 Mod 0)<br />Rounds: 20</English>
|
||||
<Polish>Kaliber: 7,62x51 mm NATO (Mk319 Mod 0)<br />Pociski: 20</Polish>
|
||||
<French>Calibre: 7.62x51 mm NATO (Mk319 Mod 0)<br />Cartouches: 20</French>
|
||||
<Spanish>Calibre: 7.62x51 mm NATO (Mk319 Mod 0)<br />Balas: 20</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_20Rnd_762x67_Mk248_Mod_0_Mag_Name">
|
||||
<English>7.62mm 20Rnd Mag (Mk248 Mod 0)</English>
|
||||
@ -918,38 +924,47 @@
|
||||
<Key ID="STR_ACE_10Rnd_338_API526_Mag_Name">
|
||||
<English>.338 10Rnd Mag (API526)</English>
|
||||
<French>.338 10Cps (API526)</French>
|
||||
<Spanish>Cargador de 10 balas de .338 (API526)</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_10Rnd_338_API526_Mag_NameShort">
|
||||
<English>.338 AP</English>
|
||||
<French>.338 AP</French>
|
||||
<Spanish>.338 AP</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_10Rnd_338_API526_Mag_Description">
|
||||
<English>Caliber: 8.6x70mm (API526)<br />Rounds: 10</English>
|
||||
<French>Calibre: 8.6x70mm (API526)<br />Cartouches: 10</French>
|
||||
<Spanish>Calibre: 8.6x70mm (API526)<br />Balas: 10</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_5Rnd_127x99_Mag_Name">
|
||||
<English>12.7x99mm 5Rnd Mag</English>
|
||||
<French>12.7x99mm 5Cps</French>
|
||||
<Spanish>Cargador de 5 balas de 12.7x99mm</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_5Rnd_127x99_Mag_NameShort">
|
||||
<English>12.7mm</English>
|
||||
<French>12.7mm</French>
|
||||
<Spanish>12.7mm</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_5Rnd_127x99_Mag_Description">
|
||||
<English>Caliber: 12.7x99mm<br />Rounds: 5</English>
|
||||
<French>Calibre: 12.7x99mm<br />Cartouches: 5</French>
|
||||
<Spanish>Calibre: 12.7x99mm<br />Balas: 5</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_5Rnd_127x99_AMAX_Mag_Name">
|
||||
<English>12.7x99mm 5Rnd Mag (AMAX)</English>
|
||||
<French>12.7x99mm 5Rnd Mag (AMAX)</French>
|
||||
<Spanish>Cargador de 5 balas de 12.7x99mm (AMAX)</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_5Rnd_127x99_AMAX_Mag_NameShort">
|
||||
<English>12.7mm</English>
|
||||
<French>12.7mm</French>
|
||||
<Spanish>12.7mm</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_5Rnd_127x99_AMAX_Mag_Description">
|
||||
<English>Caliber: 12.7x99mm (AMAX)<br />Rounds: 5</English>
|
||||
<French>Calibre: 12.7x99mm (AMAX)<br />Cartouches: 5</French>
|
||||
<Spanish>Calibre: 12.7x99mm (AMAX)<br />Balas: 5</Spanish>
|
||||
</Key>
|
||||
</Package>
|
||||
</Project>
|
||||
</Project>
|
@ -7,6 +7,7 @@
|
||||
if (isServer) then {
|
||||
addMissionEventHandler ["HandleDisconnect", {
|
||||
PARAMS_1(_disconnectedPlayer);
|
||||
private "_escortedUnit";
|
||||
_escortedUnit = _disconnectedPlayer getVariable [QGVAR(escortedUnit), objNull];
|
||||
if ((!isNull _escortedUnit) && {(attachedTo _escortedUnit) == _disconnectedPlayer}) then {
|
||||
detach _escortedUnit;
|
||||
|
@ -18,6 +18,7 @@
|
||||
#include "script_component.hpp"
|
||||
|
||||
PARAMS_3(_unit,_target,_vehicle);
|
||||
private "_objects";
|
||||
|
||||
if (isNull _target) then {
|
||||
_objects = attachedObjects _unit;
|
||||
|
@ -18,6 +18,7 @@
|
||||
#include "script_component.hpp"
|
||||
|
||||
PARAMS_3(_logic,_units,_activated);
|
||||
private ["_bisMouseOver", "_mouseOverObject"];
|
||||
|
||||
if (!_activated) exitWith {};
|
||||
|
||||
|
@ -50,6 +50,7 @@ if (_state) then {
|
||||
|
||||
//Adds an animation changed eh
|
||||
//If we get a change in animation then redo the animation (handles people vaulting to break the animation chain)
|
||||
private "_animChangedEHID";
|
||||
_animChangedEHID = _unit addEventHandler ["AnimChanged", {
|
||||
PARAMS_2(_unit,_newAnimation);
|
||||
if ((_newAnimation != "ACE_AmovPercMstpSsurWnonDnon") && {!(_unit getVariable ["ACE_isUnconscious", false])}) then {
|
||||
@ -66,6 +67,7 @@ if (_state) then {
|
||||
[_unit, QGVAR(Handcuffed), false] call EFUNC(common,setCaptivityStatus);
|
||||
|
||||
//remove AnimChanged EH
|
||||
private "_animChangedEHID";
|
||||
_animChangedEHID = _unit getVariable [QGVAR(handcuffAnimEHID), -1];
|
||||
_unit removeEventHandler ["AnimChanged", _animChangedEHID];
|
||||
_unit setVariable [QGVAR(handcuffAnimEHID), -1];
|
||||
|
@ -48,6 +48,7 @@ if (_state) then {
|
||||
if (_unit getVariable [QGVAR(isSurrendering), false] && {(vehicle _unit) == _unit}) then {
|
||||
//Adds an animation changed eh
|
||||
//If we get a change in animation then redo the animation (handles people vaulting to break the animation chain)
|
||||
private "_animChangedEHID";
|
||||
_animChangedEHID = _unit addEventHandler ["AnimChanged", {
|
||||
PARAMS_2(_unit,_newAnimation);
|
||||
if ((_newAnimation != "ACE_AmovPercMstpSsurWnonDnon") && {!(_unit getVariable ["ACE_isUnconscious", false])}) then {
|
||||
@ -63,6 +64,7 @@ if (_state) then {
|
||||
[_unit, QGVAR(Surrendered), false] call EFUNC(common,setCaptivityStatus);
|
||||
|
||||
//remove AnimChanged EH
|
||||
private "_animChangedEHID";
|
||||
_animChangedEHID = _unit getVariable [QGVAR(surrenderAnimEHID), -1];
|
||||
_unit removeEventHandler ["AnimChanged", _animChangedEHID];
|
||||
_unit setVariable [QGVAR(surrenderAnimEHID), -1];
|
||||
|
@ -2,6 +2,7 @@
|
||||
class CfgMagazines {
|
||||
class CA_Magazine;
|
||||
class ACE_FakeMagazine: CA_Magazine {
|
||||
scopeCurator = 1;
|
||||
descriptionShort = "";
|
||||
displayName = "";
|
||||
displayNameShort = "";
|
||||
|
@ -14,6 +14,8 @@ class CfgWeapons {
|
||||
|
||||
class ACE_FakePrimaryWeapon: Rifle_Base_F {
|
||||
scope = 2;
|
||||
scopeCurator = 1;
|
||||
|
||||
displayName = "";
|
||||
model = "\A3\Weapons_f\empty";
|
||||
picture = "";
|
||||
|
@ -17,6 +17,8 @@
|
||||
|
||||
PARAMS_1(_target);
|
||||
|
||||
private ["_animationStateCfgMoves", "_putDownAnim"];
|
||||
|
||||
//Check animationState for putDown anim
|
||||
//This ensures the unit doesn't have to actualy do any animation to drop something
|
||||
//This should always be true for the 3 possible status effects that allow disarming
|
||||
|
@ -20,6 +20,9 @@
|
||||
|
||||
#define TIME_MAX_WAIT 5
|
||||
|
||||
private ["_fncSumArray", "_return", "_holder", "_dropPos", "_targetMagazinesStart", "_holderMagazinesStart", "_xClassname", "_xAmmo", "_targetMagazinesEnd", "_holderMagazinesEnd", "_holderItemsStart", "_targetItemsStart", "_addToCrateClassnames", "_addToCrateCount", "_index", "_holderItemsEnd", "_targetItemsEnd", "_holderIsEmpty"];
|
||||
|
||||
|
||||
PARAMS_3(_caller,_target,_listOfItemsToRemove);
|
||||
DEFAULT_PARAM(3,_doNotDropAmmo,false); //By default units drop all weapon mags when dropping a weapon
|
||||
|
||||
@ -154,6 +157,8 @@ if (_holderIsEmpty) then {
|
||||
|
||||
//Start the PFEH to do the actions (which could take >1 frame)
|
||||
[{
|
||||
private ["_needToRemoveWeapon", "_needToRemoveMagazines", "_needToRemoveBackpack", "_needToRemoveVest", "_needToRemoveUniform", "_error", "_magsToPickup", "_index", "_magazinesInHolder"];
|
||||
|
||||
PARAMS_2(_args,_pfID);
|
||||
EXPLODE_8_PVT(_args,_caller,_target,_listOfItemsToRemove,_holder,_holderIsEmpty,_maxWaitTime,_doNotDropAmmo,_startingMagazines);
|
||||
|
||||
|
@ -20,6 +20,8 @@
|
||||
|
||||
PARAMS_3(_caller,_target,_listOfObjectsToRemove);
|
||||
|
||||
private "_itemsToAdd";
|
||||
|
||||
_itemsToAdd = [];
|
||||
{
|
||||
if (_x == (uniform _target)) then {
|
||||
|
@ -17,6 +17,8 @@
|
||||
|
||||
PARAMS_1(_target);
|
||||
|
||||
private ["_allItems", "_classnamesCount", "_index", "_uniqueClassnames"];
|
||||
|
||||
_allItems = ((weapons _target) + (magazines _target) + (items _target) + (assignedItems _target));
|
||||
|
||||
if ((backpack _target) != "") then {
|
||||
|
@ -28,6 +28,7 @@
|
||||
]
|
||||
|
||||
PARAMS_2(_caller,_target);
|
||||
private "_display";
|
||||
|
||||
//Sanity Checks
|
||||
if (_caller != ACE_player) exitwith {ERROR("Player isn't caller?");};
|
||||
@ -59,6 +60,7 @@ GVAR(disarmTarget) = _target;
|
||||
|
||||
//Setup PFEH
|
||||
[{
|
||||
private ["_groundContainer", "_targetContainer", "_playerName", "_rankPicture", "_rankIndex", "_targetUniqueItems", "_holderUniqueItems"];
|
||||
disableSerialization;
|
||||
EXPLODE_2_PVT(_this,_args,_pfID);
|
||||
EXPLODE_3_PVT(_args,_player,_target,_display);
|
||||
@ -71,6 +73,7 @@ GVAR(disarmTarget) = _target;
|
||||
GVAR(disarmTarget) = objNull;
|
||||
if (!isNull _display) then {closeDialog 0;}; //close dialog if still open
|
||||
} else {
|
||||
|
||||
_groundContainer = _display displayCtrl 632;
|
||||
_targetContainer = _display displayCtrl 633;
|
||||
_playerName = _display displayCtrl 111;
|
||||
|
@ -19,7 +19,7 @@
|
||||
disableSerialization;
|
||||
PARAMS_2(_listBoxCtrl,_itemsCountArray);
|
||||
|
||||
private "_classname";
|
||||
private ["_classname", "_count", "_displayName", "_picture"];
|
||||
|
||||
{
|
||||
_displayName = "";
|
||||
|
@ -20,7 +20,7 @@
|
||||
*/
|
||||
#include "script_component.hpp"
|
||||
|
||||
private ["_problem", "_beginingArray"];
|
||||
private ["_problem", "_beginingArray", "_index"];
|
||||
|
||||
PARAMS_4(_startA,_endA,_startB,_endB);
|
||||
|
||||
|
@ -5,7 +5,6 @@
|
||||
#include "script_component.hpp"
|
||||
|
||||
["inventoryDisplayLoaded",{
|
||||
_player = ACE_player;
|
||||
[_player] call FUNC(takeLoadedATWeapon);
|
||||
[_player, (_this select 0)] call FUNC(updateInventoryDisplay);
|
||||
[ACE_player] call FUNC(takeLoadedATWeapon);
|
||||
[ACE_player, (_this select 0)] call FUNC(updateInventoryDisplay);
|
||||
}] call EFUNC(common,addEventHandler);
|
@ -5,7 +5,7 @@
|
||||
<English>Deploy in 5 seconds ...</English>
|
||||
<French>Déploiement dans 5 secondes ...</French>
|
||||
<German>Wird in 5 Sekunden errichtet ...</German>
|
||||
<Spanish>Desplegando en 5 segundos ...</Spanish>
|
||||
<Spanish>Despliegue en 5 segundos ...</Spanish>
|
||||
<Russian>Возрождение через 5 секунд ...</Russian>
|
||||
<Polish>Rozmieszczenie za 5 sekund ...</Polish>
|
||||
<Czech>Respawn za 5 sekund...</Czech>
|
||||
@ -44,26 +44,32 @@
|
||||
<Key ID="STR_ACE_Respawn_RallypointWestBase">
|
||||
<English>Rallypoint West (Base)</English>
|
||||
<German>Sammelpunkt West (Basis)</German>
|
||||
<Spanish>Punto de reunión Oeste (Base)</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Respawn_RallypointEastBase">
|
||||
<English>Rallypoint East (Base)</English>
|
||||
<German>Sammelpunkt Ost (Basis)</German>
|
||||
<Spanish>Punto de reunión Este (Base)</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Respawn_RallypointIndependentBase">
|
||||
<English>Rallypoint Independent (Base)</English>
|
||||
<German>Sammelpunkt Widerstand (Basis)</German>
|
||||
<Spanish>Punto de reunión Independiente (Base)</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Respawn_RallypointWest">
|
||||
<English>Rallypoint West</English>
|
||||
<German>Sammelpunkt West</German>
|
||||
<Spanish>Punto de reunión Oeste</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Respawn_RallypointEast">
|
||||
<English>Rallypoint East</English>
|
||||
<German>Sammelpunkt Ost</German>
|
||||
<Spanish>Punto de reunión Este</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Respawn_RallypointIndependent">
|
||||
<English>Rallypoint Independent</English>
|
||||
<German>Sammelpunkt Widerstand</German>
|
||||
<Spanish>Punto de reunión Independiente</Spanish>
|
||||
</Key>
|
||||
</Package>
|
||||
</Project>
|
||||
</Project>
|
@ -21,7 +21,7 @@ def get_private_declare(content):
|
||||
priv_split = sorted(set(priv_split))
|
||||
priv_declared += priv_split;
|
||||
|
||||
srch = re.compile('PARAMS_[0-9].*|EXPLODE_[0-9]_PVT.*')
|
||||
srch = re.compile('PARAMS_[0-9].*|EXPLODE_[0-9]_PVT.*|DEFAULT_PARAM.*|KEY_PARAM.*')
|
||||
priv_srch_declared = srch.findall(content)
|
||||
priv_srch_declared = sorted(set(priv_srch_declared))
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user