mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-13 19:52:38 +03:00
@@ -42,6 +42,7 @@
|
|||||||
[FIXED] Opening supply crates over water no longer drops the items on the sea floor @pj999 @icomrade #1558
|
[FIXED] Opening supply crates over water no longer drops the items on the sea floor @pj999 @icomrade #1558
|
||||||
[FIXED] Plot pole required message not updating to reflect DZE_PlotPole radius @mathewjknott @icomrade #1274
|
[FIXED] Plot pole required message not updating to reflect DZE_PlotPole radius @mathewjknott @icomrade #1274
|
||||||
[FIXED] Slow login timer and incorrect loading screen message when login times out @icomrade
|
[FIXED] Slow login timer and incorrect loading screen message when login times out @icomrade
|
||||||
|
[FIXED] Combine mags not working for Revolver and M1911 ammo @Terrien @ebaydayz #1313
|
||||||
|
|
||||||
[UPDATED] .hpp files updated in dayz_epoch_b CfgLootPos > CfgBuildingPos. @Uro1
|
[UPDATED] .hpp files updated in dayz_epoch_b CfgLootPos > CfgBuildingPos. @Uro1
|
||||||
[UPDATED] .bat files updated in Config-Examples @Raziel23x
|
[UPDATED] .bat files updated in Config-Examples @Raziel23x
|
||||||
|
|||||||
@@ -1,23 +1,30 @@
|
|||||||
private ["_item","_config","_consumeArr","_consumeMagAmmo","_consume","_create","_item_ammo","_consume_magsize","_create_magsize","_consume_type","_slotstart","_slotend","_dialog","_qty_total_ammo","_qty_consume_ammo","_qty_create_ammo","_qty_consume_mags","_qty_create_mags","_qty_free_slots","_control","_mag","_qtynew_create_ammo","_qtynew_consume_ammo","_qtynew_create_mags","_qtynew_consume_mags","_qtynew_consume_mags_full","_qtynew_create_mags_full","_qtynew_consume_ammo_rest","_qtynew_create_ammo_rest"];
|
private ["_item","_config","_consume","_create","_item_ammo","_consume_magsize","_create_magsize","_consume_type","_slotstart","_slotend","_dialog","_qty_total_ammo","_qty_consume_ammo","_qty_create_ammo","_qty_consume_mags","_qty_create_mags","_qty_free_slots","_control","_mag","_qtynew_create_ammo","_qtynew_consume_ammo","_qtynew_create_mags","_qtynew_consume_mags","_qtynew_consume_mags_full","_qtynew_create_mags_full","_qtynew_consume_ammo_rest","_qtynew_create_ammo_rest"];
|
||||||
|
|
||||||
disableSerialization;
|
disableSerialization;
|
||||||
call gear_ui_init;
|
call gear_ui_init;
|
||||||
|
|
||||||
//note - one slot ammo can be used!
|
//note - one slot ammo can be used!
|
||||||
|
r_action_count = r_action_count + 1;
|
||||||
|
if (r_action_count != 1) exitWith { cutText [localize "str_player_actionslimit", "PLAIN DOWN"]; };
|
||||||
|
|
||||||
_item = _this;
|
_item = _this;
|
||||||
|
|
||||||
|
if (!(_item in magazines player)) exitWith {r_action_count = 0;};
|
||||||
|
|
||||||
_config = configFile >> "CfgMagazines" >> _item;
|
_config = configFile >> "CfgMagazines" >> _item;
|
||||||
|
|
||||||
_consumeArr = getArray (_config >> "ItemActions" >> "ReloadMag" >> "use");
|
_consume = getArray (_config >> "ItemActions" >> "ReloadMag" >> "use") select 0;
|
||||||
_consume = _consumeArr select 0;
|
|
||||||
_create = getArray (_config >> "ItemActions" >> "ReloadMag" >> "output") select 0;
|
_create = getArray (_config >> "ItemActions" >> "ReloadMag" >> "output") select 0;
|
||||||
|
|
||||||
_item_ammo = gearSlotAmmoCount (uiNamespace getVariable 'uiControl');
|
_item_ammo = gearSlotAmmoCount (uiNamespace getVariable 'uiControl');
|
||||||
|
|
||||||
//add check if weapon can use create (if not - show message)
|
//add check if weapon can use _create (if not - show message)
|
||||||
|
/*
|
||||||
|
if (currentWeapon player != "") then {
|
||||||
|
_mags = [] + getArray (configFile >> "cfgWeapons" >> (currentWeapon player) >> "magazines");
|
||||||
|
};
|
||||||
|
if !(_create in _mags) exitWith {cutText [localize "str_must_have_weapon", "PLAIN DOWN"];};
|
||||||
|
|
||||||
|
*/
|
||||||
player playActionNow "PutDown";
|
player playActionNow "PutDown";
|
||||||
|
|
||||||
_consume_magsize = getNumber(configFile >> "CfgMagazines" >> _consume >> "count");
|
_consume_magsize = getNumber(configFile >> "CfgMagazines" >> _consume >> "count");
|
||||||
@@ -45,18 +52,14 @@ _qty_create_ammo = 0;
|
|||||||
_qty_consume_mags = 0;
|
_qty_consume_mags = 0;
|
||||||
_qty_create_mags = 0;
|
_qty_create_mags = 0;
|
||||||
_qty_free_slots = 0;
|
_qty_free_slots = 0;
|
||||||
_consumeMagAmmo = 0;
|
|
||||||
for "_i" from _slotstart to _slotend do {
|
for "_i" from _slotstart to _slotend do {
|
||||||
_control =_dialog displayCtrl _i;
|
_control =_dialog displayCtrl _i;
|
||||||
_mag = gearSlotData _control;
|
_mag = gearSlotData _control;
|
||||||
if (_mag == _consume) then {
|
if (_mag == _consume) then {
|
||||||
_qty_total_ammo = _qty_total_ammo + gearSlotAmmoCount _control;
|
_qty_total_ammo = _qty_total_ammo + gearSlotAmmoCount _control;
|
||||||
_consumeMagAmmo = gearSlotAmmoCount _control;
|
_qty_consume_ammo = _qty_consume_ammo + gearSlotAmmoCount _control;
|
||||||
_qty_consume_ammo = _qty_consume_ammo + _consumeMagAmmo;
|
|
||||||
if (_consumeMagAmmo >= (floor (0.85 * _consume_magsize))) then {
|
|
||||||
_qty_consume_mags = _qty_consume_mags+1;
|
_qty_consume_mags = _qty_consume_mags+1;
|
||||||
};
|
};
|
||||||
};
|
|
||||||
if (_mag == _create) then {
|
if (_mag == _create) then {
|
||||||
_qty_total_ammo = _qty_total_ammo + gearSlotAmmoCount _control;
|
_qty_total_ammo = _qty_total_ammo + gearSlotAmmoCount _control;
|
||||||
_qty_create_ammo = _qty_create_ammo + gearSlotAmmoCount _control;
|
_qty_create_ammo = _qty_create_ammo + gearSlotAmmoCount _control;
|
||||||
@@ -89,6 +92,7 @@ if ( _consume_magsize > _create_magsize) then {
|
|||||||
};
|
};
|
||||||
|
|
||||||
if ((_qtynew_create_mags + _qtynew_consume_mags) > (_qty_create_mags + _qty_consume_mags + _qty_free_slots)) exitWith {
|
if ((_qtynew_create_mags + _qtynew_consume_mags) > (_qty_create_mags + _qty_consume_mags + _qty_free_slots)) exitWith {
|
||||||
|
r_action_count = 0;
|
||||||
cutText [localize "str_player_24", "PLAIN DOWN"];
|
cutText [localize "str_player_24", "PLAIN DOWN"];
|
||||||
};
|
};
|
||||||
_qtynew_consume_mags_full = floor(_qtynew_consume_ammo/_consume_magsize);
|
_qtynew_consume_mags_full = floor(_qtynew_consume_ammo/_consume_magsize);
|
||||||
@@ -96,15 +100,8 @@ _qtynew_create_mags_full = floor(_qtynew_create_ammo/_create_magsize);
|
|||||||
_qtynew_consume_ammo_rest = _qtynew_consume_ammo - (_qtynew_consume_mags_full*_consume_magsize);
|
_qtynew_consume_ammo_rest = _qtynew_consume_ammo - (_qtynew_consume_mags_full*_consume_magsize);
|
||||||
_qtynew_create_ammo_rest = _qtynew_create_ammo - (_qtynew_create_mags_full*_create_magsize);
|
_qtynew_create_ammo_rest = _qtynew_create_ammo - (_qtynew_create_mags_full*_create_magsize);
|
||||||
|
|
||||||
// abort if no complete mags || partial mag is less than 15% full
|
//remove all _consume and _create mags (we already have total ammo count)
|
||||||
if(_qtynew_create_ammo_rest > 0 && _qty_consume_mags >= (count _consumeArr)) exitWith { cutText [(localize "str_epoch_player_81"), "PLAIN DOWN"]; };
|
player removeMagazines _consume;
|
||||||
|
|
||||||
//remove all _consume && _create mags (we already have total ammo count)
|
|
||||||
|
|
||||||
{
|
|
||||||
player removeMagazines _x;
|
|
||||||
} count _consumeArr;
|
|
||||||
|
|
||||||
player removeMagazines _create;
|
player removeMagazines _create;
|
||||||
|
|
||||||
for "_i" from 1 to _qtynew_consume_mags_full do {
|
for "_i" from 1 to _qtynew_consume_mags_full do {
|
||||||
@@ -119,3 +116,5 @@ for "_i" from 1 to _qtynew_create_mags_full do {
|
|||||||
if (_qtynew_create_ammo_rest != 0) then {
|
if (_qtynew_create_ammo_rest != 0) then {
|
||||||
player addMagazine [_create,_qtynew_create_ammo_rest];
|
player addMagazine [_create,_qtynew_create_ammo_rest];
|
||||||
};
|
};
|
||||||
|
sleep 1;
|
||||||
|
r_action_count = 0;
|
||||||
@@ -9,7 +9,7 @@ DZE_ActionInProgress = true;
|
|||||||
|
|
||||||
_item = _this;
|
_item = _this;
|
||||||
call gear_ui_init;
|
call gear_ui_init;
|
||||||
|
r_action_count = 0; //reset for strange glitch
|
||||||
_onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;
|
_onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;
|
||||||
if (_onLadder) exitWith {DZE_ActionInProgress = false; cutText [(localize "str_player_21") , "PLAIN DOWN"]};
|
if (_onLadder) exitWith {DZE_ActionInProgress = false; cutText [(localize "str_player_21") , "PLAIN DOWN"]};
|
||||||
|
|
||||||
|
|||||||
@@ -317,6 +317,9 @@ isInTraderCity = false;
|
|||||||
NORRN_dropAction = -1;
|
NORRN_dropAction = -1;
|
||||||
DZE_PROTOBOX = objNull;
|
DZE_PROTOBOX = objNull;
|
||||||
|
|
||||||
|
//count actions
|
||||||
|
r_action_count = 0;
|
||||||
|
|
||||||
//ammo routine
|
//ammo routine
|
||||||
r_player_actions2 = [];
|
r_player_actions2 = [];
|
||||||
r_action2 = false;
|
r_action2 = false;
|
||||||
|
|||||||
@@ -710,6 +710,14 @@
|
|||||||
<French>Son nom était %1, il semble qu'il soit mort d' %2</French>
|
<French>Son nom était %1, il semble qu'il soit mort d' %2</French>
|
||||||
<Czech>Jeho jméno bylo %1, vypadá to, že je mrtvý kvůli %2</Czech>
|
<Czech>Jeho jméno bylo %1, vypadá to, že je mrtvý kvůli %2</Czech>
|
||||||
</Key>
|
</Key>
|
||||||
|
<Key ID="str_player_actionslimit">
|
||||||
|
<English>Wait for the previous action to complete to perform another!</English>
|
||||||
|
<German>Du musst erst das eine beenden, bevor du etwas neues startest!</German>
|
||||||
|
<Russian>Дождитесь завершения предыдущего действия, перед тем, как начинать новое!</Russian>
|
||||||
|
<Spanish>¡Espera a terminar la acción previa para realizar otra!</Spanish>
|
||||||
|
<French>Attendez la fin de l'action en cours avant d'en commencer une autre !</French>
|
||||||
|
<Czech>Než začnete dělat něco jiného, musíte dokončit aktuální akci.</Czech>
|
||||||
|
</Key>
|
||||||
<Key ID="str_death_shothead">
|
<Key ID="str_death_shothead">
|
||||||
<Original>a gunshot to the head</Original>
|
<Original>a gunshot to the head</Original>
|
||||||
<English>a gunshot to the head</English>
|
<English>a gunshot to the head</English>
|
||||||
|
|||||||
Reference in New Issue
Block a user