From efae6d186a5eaee8a32a2eed75592de048c9b31f Mon Sep 17 00:00:00 2001 From: HARLAN Date: Fri, 6 Dec 2013 11:24:19 -0500 Subject: [PATCH 1/5] #848 remember melee mags after skinchange pulled from DayZ CE --- SQF/dayz_code/init/compiles.sqf | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/SQF/dayz_code/init/compiles.sqf b/SQF/dayz_code/init/compiles.sqf index 9621dfc41..7814123cc 100644 --- a/SQF/dayz_code/init/compiles.sqf +++ b/SQF/dayz_code/init/compiles.sqf @@ -432,6 +432,15 @@ if (!isDedicated) then { endLoadingScreen; }; + dayz_meleeMagazineCheck = { + private["_meleeNum","_magType"]; + _magType = ([] + getArray (configFile >> "CfgWeapons" >> _wpnType >> "magazines")) select 0; + _meleeNum = ({_x == _magType} count magazines player); + if (_meleeNum < 1) then { + player addMagazine _magType; + }; + }; + dayz_originalPlayer = player; progressLoadingScreen 0.8; @@ -543,4 +552,4 @@ if (!isDedicated) then { eh_localCleanup = {}; }; -initialized = true; \ No newline at end of file +initialized = true; From c008ff2832dbe8b1e6e85295f4da9c49519519c9 Mon Sep 17 00:00:00 2001 From: HARLAN Date: Fri, 6 Dec 2013 11:29:20 -0500 Subject: [PATCH 2/5] #848 remember melee mags after skinchange and reveal objects pulled from DayZ CE https://github.com/dayz10k/DayzMod-Private/commit/657688a439fcc375853a3ec91d9ca6138583d5f5#diff-037f2fbb6c571dc6054b7fa36f624fdc and https://github.com/dayz10k/DayzMod-Private/commit/4e1239bbdadac7dda5aa6badb7d2c6a7230cd206#diff-037f2fbb6c571dc6054b7fa36f624fdc --- SQF/dayz_code/compile/player_switchModel.sqf | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/SQF/dayz_code/compile/player_switchModel.sqf b/SQF/dayz_code/compile/player_switchModel.sqf index 33c614bd6..46167cf79 100644 --- a/SQF/dayz_code/compile/player_switchModel.sqf +++ b/SQF/dayz_code/compile/player_switchModel.sqf @@ -208,4 +208,15 @@ diag_log str(getMagazineCargo unitBackpack _newUnit); _playerUID=getPlayerUID player; _playerObjName = format["player%1",_playerUID]; call compile format["%1 = player;",_playerObjName]; - publicVariable _playerObjName; \ No newline at end of file + publicVariable _playerObjName; + +//melee check + _wpnType = primaryWeapon player; + _ismelee = (gettext (configFile >> "CfgWeapons" >> _wpnType >> "melee")); + if (_ismelee == "true") then { + call dayz_meleeMagazineCheck; + }; + +//reveal all near objects. + {player reveal _x} forEach (nearestObjects [getPosATL player, ["All"], 75]); + //All is arbitrary and will need to be changed to ["AllVehicles","WeaponHolder","tentStorage"] ++ others (stashes etc.) From a27ce9a5a42430766da0f37fd4d71151a7667758 Mon Sep 17 00:00:00 2001 From: HARLAN Date: Fri, 6 Dec 2013 11:34:37 -0500 Subject: [PATCH 3/5] #848 remember melee mags after skinchange merged from DayZ CE https://github.com/dayz10k/DayzMod-Private/blob/4e1239bbdadac7dda5aa6badb7d2c6a7230cd206/SQF/dayz_code/compile/player_switchModel.sqf tagging chainsaw as Melee so this works --- SQF/dayz_code/Configs/CfgWeapons.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/SQF/dayz_code/Configs/CfgWeapons.hpp b/SQF/dayz_code/Configs/CfgWeapons.hpp index 3e7082920..299109c21 100644 --- a/SQF/dayz_code/Configs/CfgWeapons.hpp +++ b/SQF/dayz_code/Configs/CfgWeapons.hpp @@ -83,6 +83,7 @@ class CfgWeapons { class ChainSaw: Rifle { scope = 2; + melee= "true"; /* bullet1[] = {"ca\sounds\weapons\shells\big_shell_wood_01",0.0707946,1,15}; From 434cea25553c8f91eaa0ca5b18532efec1610918 Mon Sep 17 00:00:00 2001 From: HARLAN Date: Fri, 6 Dec 2013 11:36:04 -0500 Subject: [PATCH 4/5] #848 remember melee mags after skinchange --- SQF/dayz_code/compile/player_humanityMorph.sqf | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/SQF/dayz_code/compile/player_humanityMorph.sqf b/SQF/dayz_code/compile/player_humanityMorph.sqf index 4f4da103c..e7de2c4fd 100644 --- a/SQF/dayz_code/compile/player_humanityMorph.sqf +++ b/SQF/dayz_code/compile/player_humanityMorph.sqf @@ -90,6 +90,13 @@ player allowDamage true; player addWeapon "Loot"; player addWeapon "Flare"; +//melee check + _wpnType = primaryWeapon player; + _ismelee = (gettext (configFile >> "CfgWeapons" >> _wpnType >> "melee")); + if (_ismelee == "true") then { + call dayz_meleeMagazineCheck; + }; + sleep 0.1; if (!isNull _old) then { From 688422a22e5af4d6e26263ea26cb19218578306c Mon Sep 17 00:00:00 2001 From: HARLAN Date: Fri, 6 Dec 2013 11:38:29 -0500 Subject: [PATCH 5/5] #848 remember melee mags after skinchange from dayz CE https://github.com/dayz10k/DayzMod-Private/blob/4e1239bbdadac7dda5aa6badb7d2c6a7230cd206/SQF/dayz_code/system/player_spawn_2.sqf --- SQF/dayz_code/system/player_spawn_2.sqf | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/SQF/dayz_code/system/player_spawn_2.sqf b/SQF/dayz_code/system/player_spawn_2.sqf index 2c3fbf069..783a34b1b 100644 --- a/SQF/dayz_code/system/player_spawn_2.sqf +++ b/SQF/dayz_code/system/player_spawn_2.sqf @@ -1,4 +1,4 @@ -private ["_refObj","_size","_vel","_speed","_hunger","_thirst","_result","_factor","_mylastPos","_distance","_lastTemp","_rnd","_listTalk","_id","_messTimer","_combatdisplay","_combatcontrol","_timeleft","_inVehicle","_lastUpdate","_foodVal","_thirstVal","_lowBlood","_startcombattimer","_combattimeout","_isPZombie","_outsideMap","_radsound","_bloodloss","_radTimer","_currentBlood"]; +private ["_refObj","_size","_vel","_speed","_hunger","_thirst","_result","_factor","_mylastPos","_distance","_lastTemp","_rnd","_listTalk","_id","_messTimer","_combatdisplay","_combatcontrol","_timeleft","_inVehicle","_lastUpdate","_foodVal","_thirstVal","_lowBlood","_startcombattimer","_combattimeout","_isPZombie","_outsideMap","_radsound","_bloodloss","_radTimer","_currentBlood","_wpnType"]; disableSerialization; _messTimer = 0; @@ -246,9 +246,19 @@ while {true} do { _combatcontrol ctrlShow true; }; + //Melee Weapons ammo fix + if(isNil {login_ammochecked}) then { + login_ammochecked = true; + _wpnType = primaryWeapon player; + _ismelee = (gettext (configFile >> "CfgWeapons" >> _wpnType >> "melee")); + if (_ismelee == "true") then { + call dayz_meleeMagazineCheck; + }; + }; + // Blood Effects "colorCorrections" ppEffectAdjust [1, 1, 0, [1, 1, 1, 0.0], [1, 1, 1, (r_player_blood/r_player_bloodTotal)], [1, 1, 1, 0.0]]; "colorCorrections" ppEffectCommit 0; sleep 2; -}; \ No newline at end of file +};