From 3f6ffa6ac2eb4d425005afc75c7de260d1213f5a Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Sun, 8 Feb 2015 13:48:53 -0600 Subject: [PATCH] Mag Repack - Keep Progress prototype Ideas from AGM and CSE Keeps Progress While Repacking if interrupted Added sounds from CSE --- addons/magazinerepack/CfgEventHandlers.hpp | 1 - addons/magazinerepack/CfgSounds.hpp | 15 +++ addons/magazinerepack/CfgVehicles.hpp | 29 +++-- addons/magazinerepack/README.md | 2 +- addons/magazinerepack/XEH_preInit.sqf | 5 +- addons/magazinerepack/config.cpp | 1 + .../functions/fnc_magazineRepack.sqf | 77 ------------- .../functions/fnc_magazineRepackCallback.sqf | 106 ------------------ .../functions/fnc_magazineRepackProgress.sqf | 70 ++++++++++++ .../functions/fnc_openSelectMagazineUI.sqf | 69 +++++++----- .../functions/fnc_simulateRepackEvents.sqf | 52 +++++++++ .../functions/fnc_startRepackingMagazine.sqf | 39 +++++++ addons/magazinerepack/script_component.hpp | 2 + .../sounds/magrepack_finished.wav | Bin 0 -> 152166 bytes .../sounds/magrepack_single.wav | Bin 0 -> 95466 bytes 15 files changed, 235 insertions(+), 233 deletions(-) create mode 100644 addons/magazinerepack/CfgSounds.hpp delete mode 100644 addons/magazinerepack/functions/fnc_magazineRepack.sqf delete mode 100644 addons/magazinerepack/functions/fnc_magazineRepackCallback.sqf create mode 100644 addons/magazinerepack/functions/fnc_magazineRepackProgress.sqf create mode 100644 addons/magazinerepack/functions/fnc_simulateRepackEvents.sqf create mode 100644 addons/magazinerepack/functions/fnc_startRepackingMagazine.sqf create mode 100644 addons/magazinerepack/sounds/magrepack_finished.wav create mode 100644 addons/magazinerepack/sounds/magrepack_single.wav diff --git a/addons/magazinerepack/CfgEventHandlers.hpp b/addons/magazinerepack/CfgEventHandlers.hpp index f0a9f14d91..b928bc2de6 100644 --- a/addons/magazinerepack/CfgEventHandlers.hpp +++ b/addons/magazinerepack/CfgEventHandlers.hpp @@ -1,4 +1,3 @@ - class Extended_PreInit_EventHandlers { class ADDON { init = QUOTE(call COMPILE_FILE(XEH_preInit)); diff --git a/addons/magazinerepack/CfgSounds.hpp b/addons/magazinerepack/CfgSounds.hpp new file mode 100644 index 0000000000..bc1d0fe0ee --- /dev/null +++ b/addons/magazinerepack/CfgSounds.hpp @@ -0,0 +1,15 @@ +class CfgSounds +{ + class GVAR(soundMagazineFinished) + { + name = QGVAR(soundMagazineFinished); + sound[]={QUOTE(PATHTOF(sounds\magrepack_finished.wav)),1,1}; + titles[]={}; + }; + class GVAR(soundRoundFinished) + { + name = QGVAR(soundRoundFinished); + sound[] = {QUOTE(PATHTOF(sounds\magrepack_single.wav)),1,1}; + titles[] = {}; + }; +}; \ No newline at end of file diff --git a/addons/magazinerepack/CfgVehicles.hpp b/addons/magazinerepack/CfgVehicles.hpp index ecb732f8fd..acd1c76c3d 100644 --- a/addons/magazinerepack/CfgVehicles.hpp +++ b/addons/magazinerepack/CfgVehicles.hpp @@ -1,18 +1,17 @@ - class CfgVehicles { - class Man; - class CAManBase: Man { - class ACE_SelfActions { - class ACE_RepackMagazines { - displayName = "$STR_ACE_MagazineRepack_RepackMagazines"; - condition = QUOTE(true); - statement = QUOTE([_player] call FUNC(magazineRepack)); - showDisabled = 0; - priority = -2; - icon = PATHTOF(UI\repack_ca.paa); - hotkey = "R"; - enableInside = 1; - }; + class Man; + class CAManBase: Man { + class ACE_SelfActions { + class ACE_RepackMagazines { + displayName = "$STR_ACE_MagazineRepack_RepackMagazines"; + condition = QUOTE(true); + statement = QUOTE([_player] call FUNC(openSelectMagazineUI)); + showDisabled = 0; + priority = -2; + icon = QUOTE(PATHTOF(UI\repack_ca.paa)); + hotkey = "R"; + enableInside = 1; + }; + }; }; - }; }; diff --git a/addons/magazinerepack/README.md b/addons/magazinerepack/README.md index 49a3c9d531..28b7c3115a 100644 --- a/addons/magazinerepack/README.md +++ b/addons/magazinerepack/README.md @@ -3,10 +3,10 @@ ace_magazinerepack Adds the ability to consolidate multiple half-empty magazines. - ## Maintainers The people responsible for merging changes to this component or answering potential questions. - [commy2](https://github.com/commy2) - [esteldunedain](https://github.com/esteldunedain) +- [PabstMirror](https://github.com/PabstMirror) diff --git a/addons/magazinerepack/XEH_preInit.sqf b/addons/magazinerepack/XEH_preInit.sqf index 5caba1ffac..e2dfd721f3 100644 --- a/addons/magazinerepack/XEH_preInit.sqf +++ b/addons/magazinerepack/XEH_preInit.sqf @@ -2,8 +2,9 @@ ADDON = false; -PREP(magazineRepack); -PREP(magazineRepackCallback); +PREP(magazineRepackProgress); PREP(openSelectMagazineUI); +PREP(simulateRepackEvents); +PREP(startRepackingMagazine); ADDON = true; diff --git a/addons/magazinerepack/config.cpp b/addons/magazinerepack/config.cpp index 5f2c6edc7d..2df0d62bff 100644 --- a/addons/magazinerepack/config.cpp +++ b/addons/magazinerepack/config.cpp @@ -13,6 +13,7 @@ class CfgPatches { }; #include "CfgEventHandlers.hpp" +#include "CfgSounds.hpp" #include "CfgVehicles.hpp" class ACE_Parameters_Numeric { diff --git a/addons/magazinerepack/functions/fnc_magazineRepack.sqf b/addons/magazinerepack/functions/fnc_magazineRepack.sqf deleted file mode 100644 index 472b80e2bd..0000000000 --- a/addons/magazinerepack/functions/fnc_magazineRepack.sqf +++ /dev/null @@ -1,77 +0,0 @@ -// by commy2, esteldunedain -#include "script_component.hpp" - -private ["_unit", "_magazines", "_ammos", "_repackTime", "_magazine", "_ammo", "_count", "_index", "_i", "_j", "_ammoToTransfer", "_ammoAvailable", "_ammoNeeded"]; - -_unit = _this select 0; - -_magazines = []; -_ammos = []; -_repackTime = []; - -// get all mags and ammo count -{ - _magazine = _x select 0; - _ammo = _x select 1; - - _count = getNumber (configfile >> "CfgMagazines" >> _magazine >> "count"); - - if (_ammo != _count && {_count > 1}) then { // additional checks here - if !(_magazine in _magazines) then { - _index = count _magazines; - _magazines set [_index, _magazine]; - _ammos set [_index, [_ammo]]; - } else { - _index = _magazines find _magazine; - _ammos set [_index, (_ammos select _index) + [_ammo]]; - }; - }; -} forEach magazinesAmmoFull _unit; - -// Remove invalid magazines -{ - if (count _x < 2) then { - _magazines set [_forEachIndex, -1]; - _ammos set [_forEachIndex, [-1]]; - }; -} forEach _ammos; -_magazines = _magazines - [-1]; -_ammos = _ammos - [[-1]]; - -{ - // Calculate actual ammo to transfer during repack - _count = getNumber (configfile >> "CfgMagazines" >> (_magazines select _forEachIndex) >> "count"); - - // Sort Ascending - _list = _x call BIS_fnc_sortNum; - - ["MagazineRepack", _list] call EFUNC(common,log); - - _i = 0; - _j = count _x - 1; - _ammoToTransfer = 0; - _ammoAvailable = 0; - while {_i < _j} do { - _ammoNeeded = _count - (_list select _j); - _exit = false; - while {_i < _j && {!_exit}} do { - _ammoAvailable = _list select _i; - if (_ammoAvailable >= _ammoNeeded) then { - _list set [_i, _ammoAvailable - _ammoNeeded]; - _ammoToTransfer = _ammoToTransfer + _ammoNeeded; - _exit = true; - } else { - _ammoNeeded = _ammoNeeded - _ammoAvailable; - _ammoToTransfer = _ammoToTransfer + _ammoAvailable; - _i = _i + 1; - }; - }; - _j = _j - 1; - }; - - _repackTime set [_forEachIndex, _ammoToTransfer * GVAR(TimePerAmmo) + (count _x) * GVAR(TimePerMagazine)]; -} forEach _ammos; - -["MagazineRepack", [_magazines, _repackTime]] call EFUNC(common,log); - -[_unit, _magazines, _repackTime] call FUNC(openSelectMagazineUI); diff --git a/addons/magazinerepack/functions/fnc_magazineRepackCallback.sqf b/addons/magazinerepack/functions/fnc_magazineRepackCallback.sqf deleted file mode 100644 index f209806f9c..0000000000 --- a/addons/magazinerepack/functions/fnc_magazineRepackCallback.sqf +++ /dev/null @@ -1,106 +0,0 @@ -// by commy2 -#include "script_component.hpp" - -private ["_unit", "_magazine", "_ammo", "_ammoCount", "_fullMagazinesCount", "_restAmmo", "_isLoaded", "_weapon", "_reloadAction", "_text", "_picture"]; - -_unit = ACE_player; //_this select 0; -_magazine = _this select 1; - -// exit if the last magazine of this type was taken out of the backpack -if !(_magazine in magazines _unit) exitWith {}; - -// get current ammo count -_ammo = 0; -{ - if (_x select 0 == _magazine) then { - _ammo = _ammo + (_x select 1); - }; -} forEach magazinesAmmoFull _unit; - -// how many rounds fit in one mag -_ammoCount = getNumber (configFile >> "CfgMagazines" >> _magazine >> "count"); - -// calculate new vaules -_fullMagazinesCount = floor (_ammo / _ammoCount); -_restAmmo = _ammo - _fullMagazinesCount * _ammoCount; - -// remove old magazines -_unit removeMagazines _magazine; - -_isLoaded = false; -// reload rifle -if (_magazine in primaryWeaponMagazine _unit) then { - _weapon = primaryWeapon _unit; - - if (_fullMagazinesCount > 0) then { - _unit setAmmo [_weapon, _ammoCount]; - _fullMagazinesCount = _fullMagazinesCount - 1; - } else { - _unit setAmmo [_weapon, _restAmmo]; - _restAmmo = 0; - }; - - if (_weapon == currentWeapon _unit) then { - _reloadAction = getText (configFile >> "CfgWeapons" >> _weapon >> "reloadAction"); - _unit playActionNow _reloadAction; - }; - - _isLoaded = true; -}; - -// reload pistol -if (_magazine in handgunMagazine _unit) then { - _weapon = handgunWeapon _unit; - - if (_fullMagazinesCount > 0) then { - _unit setAmmo [_weapon, _ammoCount]; - _fullMagazinesCount = _fullMagazinesCount - 1; - } else { - _unit setAmmo [_weapon, _restAmmo]; - _restAmmo = 0; - }; - - if (_weapon == currentWeapon _unit) then { - _reloadAction = getText (configFile >> "CfgWeapons" >> _weapon >> "reloadAction"); - _unit playActionNow _reloadAction; - }; - - _isLoaded = true; -}; - -// reload rocket launcher (just in case ...) -if (_magazine in secondaryWeaponMagazine _unit) then { - _weapon = secondaryWeapon _unit; - - if (_fullMagazinesCount > 0) then { - _unit setAmmo [_weapon, _ammoCount]; - _fullMagazinesCount = _fullMagazinesCount - 1; - } else { - _unit setAmmo [_weapon, _restAmmo]; - _restAmmo = 0; - }; - - if (_weapon == currentWeapon _unit) then { - _reloadAction = getText (configFile >> "CfgWeapons" >> _weapon >> "reloadAction"); - _unit playActionNow _reloadAction; - }; - - _isLoaded = true; -}; - -// add new magazines -for "_a" from 1 to _fullMagazinesCount do { - _unit addMagazine _magazine; -}; - -if (_restAmmo > 0) then { - _unit addMagazine [_magazine, _restAmmo]; -}; - -// display text if successful -_text = format [localize "STR_ACE_MagazineRepack_RepackedMagazinesDetail", [_fullMagazinesCount, _fullMagazinesCount + 1] select _isLoaded, _restAmmo]; -_picture = getText (configFile >> "CfgMagazines" >> _magazine >> "picture"); - -_text = parseText format ["
%2
%3", _picture, localize "STR_ACE_MagazineRepack_RepackedMagazines", _text]; - -[_text] call EFUNC(common,displayTextStructured); diff --git a/addons/magazinerepack/functions/fnc_magazineRepackProgress.sqf b/addons/magazinerepack/functions/fnc_magazineRepackProgress.sqf new file mode 100644 index 0000000000..f965305eda --- /dev/null +++ b/addons/magazinerepack/functions/fnc_magazineRepackProgress.sqf @@ -0,0 +1,70 @@ +// by commy2, esteldunedain +#include "script_component.hpp" + +PARAMS_3(_args,_elapsedTime,_totalTime); +EXPLODE_3_PVT(_args,_magazineClassname,_lastAmmoCount,_simEvents); + +if ((count _simEvents) == 0) exitWith {ERROR("No Event"); false}; +EXPLODE_3_PVT((_simEvents select 0),_nextEventTime,_nextEventType,_nextEventMags); + + + +if (_nextEventTime > _elapsedTime) exitWith {true};//waiting on next event +systemChat format ["Event %1-%2-%3", _nextEventTime,_nextEventType,_nextEventMags]; + + +//Verify we aren't missing any ammo +_currentAmmoCount = []; +{ + EXPLODE_2_PVT(_x,_xClassname,_xCount); + if (_xClassname == _magazineClassname) then { + _currentAmmoCount pushBack _xCount; + }; +} forEach (magazinesAmmo ACE_player); //only inventory mags + +_addedMagazines = +_currentAmmoCount; +_missingAmmo = false; +{ + if (_x > 0) then { + _index = _addedMagazines find _x; + if (_index != -1) then { + _addedMagazines deleteAt _index; + } else { + _missingAmmo = true; + }; + }; +} forEach _lastAmmoCount; + +if (_missingAmmo) exitWith {false}; //something removed ammo that was being repacked +if ((count _addedMagazines) > 0) then { + TRACE_1("Added Magazine While Repacking",_addedMagazines); +}; + +_updateMagazinesOnPlayer = { + systemChat format ["Updating mags"]; + _newMagazineList = _addedMagazines + _nextEventMags; + ACE_player removeMagazines _magazineClassname; + { + if (_x > 0) then { + ACE_player addMagazine [_magazineClassname, _x]; + }; + } forEach _newMagazineList; + _args set [1, _nextEventMags]; +}; + + +if (_nextEventType == 0) then { + systemChat "reloading bullet"; + playSound QGVAR(soundMagazineFinished); + if (((count _simEvents) % 3) == 0) then { + call _updateMagazinesOnPlayer; + }; +} else { + systemChat "Moving to next mag"; + playSound QGVAR(soundRoundFinished); + call _updateMagazinesOnPlayer; +}; + +_simEvents deleteAt 0; //pop off the event + +true; diff --git a/addons/magazinerepack/functions/fnc_openSelectMagazineUI.sqf b/addons/magazinerepack/functions/fnc_openSelectMagazineUI.sqf index b1a31c266c..931a0149cf 100644 --- a/addons/magazinerepack/functions/fnc_openSelectMagazineUI.sqf +++ b/addons/magazinerepack/functions/fnc_openSelectMagazineUI.sqf @@ -1,40 +1,47 @@ -// by commy2 +// by commy2, esteldunedain #include "script_component.hpp" -private ["_unit", "_magazines", "_repackTime", "_listIDC", "_count", "_index", "_magazine", "_time", "_displayName", "_picture"]; +private ["_unit", "_magazines", "_ammos", "_repackTime", "_magazine", "_ammo", "_count", "_index", "_i", "_j", "_ammoToTransfer", "_ammoAvailable", "_ammoNeeded"]; -_unit = _this select 0; -_magazines = _this select 1; -_repackTime = _this select 2; +PARAMS_1(_unit); -_count = count _magazines; +_unitMagazines = []; +_unitMagCounts = []; + +// get all mags and ammo count +{ + _xClassname = _x select 0; + _xCount = _x select 1; + _fullMagazineCount = getNumber (configfile >> "CfgMagazines" >> _xClassname >> "count"); + + if ((_xCount != _fullMagazineCount) && {_xCount > 1}) then {//for every partial magazine + _index = _unitMagazines find _xClassname; + if (_index == -1) then { + _unitMagazines pushBack _xClassname; + _unitMagCounts pushBack [_xCount]; + } else { + (_unitMagCounts select _index) pushBack _xCount; + }; + }; +} forEach magazinesAmmoFull _unit; _actions = [localize "STR_ACE_MagazineRepack_SelectMagazineMenu", localize "STR_ACE_MagazineRepack_SelectMagazine"] call EFUNC(interaction,prepareSelectMenu); -for "_index" from 0 to (_count - 1) do { - _magazine = _magazines select _index; - _time = _repackTime select _index; - _displayName = getText (configFile >> "CfgMagazines" >> _magazine >> "displayName"); - _picture = getText (configFile >> "CfgMagazines" >> _magazine >> "picture"); - _actions = [ - _actions, - _displayName, - _picture, - [str _unit, _magazine, _time] - ] call EFUNC(interaction,addSelectableItem); -}; + +systemChat format ["%1 - %2", _unitMagazines, _unitMagCounts]; + +{ + if ((count (_unitMagCounts select _forEachIndex)) >= 2) then {// Ignore invalid magazines types (need 2+ partial mags to do anything) + _displayName = getText (configFile >> "CfgMagazines" >> _x >> "displayName"); + _picture = getText (configFile >> "CfgMagazines" >> _x >> "picture"); + _actions = [_actions, _displayName, _picture, _x] call EFUNC(interaction,addSelectableItem); + }; +} forEach _unitMagazines; [ - _actions, - { - _data = _this; - call EFUNC(interaction,hideMenu); - if (isNil "_data") exitWith {}; - _data set [2, [_data select 2] call EFUNC(common,toNumber)]; - [(_data select 2), _data, {(_this select 0) call FUNC(magazineRepackCallback)}, {}, (localize "STR_ACE_MagazineRepack_RepackingMagazine")] call EFUNC(common,progressBar); - [ACE_player] call EFUNC(common,goKneeling); - }, - { - call EFUNC(interaction,hideMenu); - if !(profileNamespace getVariable [QGVAR(AutoCloseMenu), false]) then {"Default" call EFUNC(interaction,openMenuSelf)}; - } +_actions, +{ [ACE_player, _this] call FUNC(startRepackingMagazine); }, +{ + call EFUNC(interaction,hideMenu); + if !(profileNamespace getVariable [QGVAR(AutoCloseMenu), false]) then {"Default" call EFUNC(interaction,openMenuSelf)}; +} ] call EFUNC(interaction,openSelectMenu); diff --git a/addons/magazinerepack/functions/fnc_simulateRepackEvents.sqf b/addons/magazinerepack/functions/fnc_simulateRepackEvents.sqf new file mode 100644 index 0000000000..9df248bd6c --- /dev/null +++ b/addons/magazinerepack/functions/fnc_simulateRepackEvents.sqf @@ -0,0 +1,52 @@ +#include "script_component.hpp" + +private ["_fullMagazineCount", "_magazines", "_newMag", "_time", "_events", "_swapAmmo", "_ammoSwaped", "_lowIndex", "_highIndex", "_ammoToTransfer", "_ammoAvailable", "_ammoNeeded"]; + +PARAMS_2(_magazineClassname,_arrayOfAmmoCounts); + +// Calculate actual ammo to transfer during repack +_fullMagazineCount = getNumber (configfile >> "CfgMagazines" >> _magazineClassname >> "count"); + +// Sort Ascending - Don't modify orginal +_arrayOfAmmoCounts = (+_arrayOfAmmoCounts) call BIS_fnc_sortNum; + +_newMag = { + _time = _time + GVAR(TimePerMagazine); + _events pushBack [_time, 1, +_arrayOfAmmoCounts]; +}; +_swapAmmo = { + for "_swapProgress" from 1 to _ammoSwaped do { + _time = _time + GVAR(TimePerAmmo); + _arrayOfAmmoCounts set [_lowIndex, ((_arrayOfAmmoCounts select _lowIndex) - 1)]; + _arrayOfAmmoCounts set [_highIndex, ((_arrayOfAmmoCounts select _highIndex) + 1)]; + _events pushBack [_time, 0, +_arrayOfAmmoCounts]; + }; +}; + +_lowIndex = 0; +_highIndex = (count _arrayOfAmmoCounts) - 1; +_ammoToTransfer = 0; +_ammoAvailable = 0; + +_time = 0; +_events = []; + +while {_lowIndex < _highIndex} do { + _ammoNeeded = _fullMagazineCount - (_arrayOfAmmoCounts select _highIndex); + _ammoAvailable = _arrayOfAmmoCounts select _lowIndex; + + if (_ammoAvailable == 0) then { + _lowIndex = _lowIndex + 1; + call _newMag; + } else { + if (_ammoNeeded == 0) then { + _highIndex = _highIndex - 1; + call _newMag; + } else { + _ammoSwaped = _ammoAvailable min _ammoNeeded; + call _swapAmmo; + }; + }; +}; + +_events diff --git a/addons/magazinerepack/functions/fnc_startRepackingMagazine.sqf b/addons/magazinerepack/functions/fnc_startRepackingMagazine.sqf new file mode 100644 index 0000000000..8e5075e17e --- /dev/null +++ b/addons/magazinerepack/functions/fnc_startRepackingMagazine.sqf @@ -0,0 +1,39 @@ +// by commy2, esteldunedain +#include "script_component.hpp" + +private ["_unit", "_magazines", "_ammos", "_repackTime", "_magazine", "_ammo", "_count", "_index", "_i", "_j", "_ammoToTransfer", "_ammoAvailable", "_ammoNeeded"]; + +PARAMS_2(_unit,_magazineClassname); +if (isNil "_magazineClassname" || {_magazineClassname == ""}) exitWith {ERROR("Bad Mag Classname");}; + +[_unit] call EFUNC(common,goKneeling); +call EFUNC(interaction,hideMenu); + +_startingAmmoCounts = []; +{ + EXPLODE_4_PVT(_x,_xClassname,_xCount,_xLoaded,_xType); + if (_xClassname == _magazineClassname) then { + if (_xLoaded) then { + //Try to Remove from weapon and add to inventory, otherwise ignore + if (_unit canAdd _magazineClassname) then { + switch (_xType) do { + case (1): {_unit removePrimaryWeaponItem _magazineClassname;}; + case (2): {_unit removeHandgunItem _magazineClassname;}; + case (4): {_unit removeSecondaryWeaponItem _magazineClassname;}; + default {ERROR("Loaded Location Invalid");}; + }; + _unit addMagazine [_magazineClassname, _xCount]; + _startingAmmoCounts pushBack _xCount; + }; + } else { + _startingAmmoCounts pushBack _xCount; + }; + }; +} forEach (magazinesAmmoFull _unit); + +if ((count _startingAmmoCounts) == 0) exitwith {ERROR("No Mags");}; + +_simEvents = [_magazineClassname, _startingAmmoCounts] call FUNC(simulateRepackEvents); +_totalTime = (_simEvents select ((count _simEvents) - 1) select 0); + +[_totalTime, [_magazineClassname, _startingAmmoCounts, _simEvents], {hint "done"}, {hint "fail"}, (localize "STR_ACE_MagazineRepack_RepackingMagazine"), {_this call FUNC(magazineRepackProgress)}] call EFUNC(common,progressBar); diff --git a/addons/magazinerepack/script_component.hpp b/addons/magazinerepack/script_component.hpp index 7b390f7126..15563f0fe8 100644 --- a/addons/magazinerepack/script_component.hpp +++ b/addons/magazinerepack/script_component.hpp @@ -1,3 +1,5 @@ +#define DEBUG_MODE_FULL + #define COMPONENT magazinerepack #include "\z\ace\addons\main\script_mod.hpp" diff --git a/addons/magazinerepack/sounds/magrepack_finished.wav b/addons/magazinerepack/sounds/magrepack_finished.wav new file mode 100644 index 0000000000000000000000000000000000000000..ab73615a558f3aa60f97dfa47d6bd0773e40f4b0 GIT binary patch literal 152166 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 literal 0 HcmV?d00001 diff --git a/addons/magazinerepack/sounds/magrepack_single.wav b/addons/magazinerepack/sounds/magrepack_single.wav new file mode 100644 index 0000000000000000000000000000000000000000..5d94e215fdf9894487afb000569c829a903484d8 GIT binary patch literal 95466 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