Use setShotParents in Advanced Throwing (#5052)

* Use setShotParents in Advanced Throwing - close #5034

* Execute setShotParents on server (server-only command)
This commit is contained in:
jonpas 2017-04-11 16:59:32 +02:00 committed by GitHub
parent 53943c7503
commit fd139abb42
3 changed files with 7 additions and 0 deletions

View File

@ -32,6 +32,9 @@ if !(_unit getVariable [QGVAR(primed), false]) then {
_unit setVariable [QGVAR(lastThrownTime), CBA_missionTime]; _unit setVariable [QGVAR(lastThrownTime), CBA_missionTime];
// Fix floating for throwables without proper physics (eg. IR Grenade) // Fix floating for throwables without proper physics (eg. IR Grenade)
_activeThrowable setVelocity [0, 0, -0.1]; _activeThrowable setVelocity [0, 0, -0.1];
// Set thrower
[QEGVAR(common,setShotParents), [_activeThrowable, _unit, (getShotParents _activeThrowable) select 1]] call CBA_fnc_serverEvent;
}; };
// Restore muzzle ammo (setAmmo 1 has no impact if no appliccable throwable in inventory) // Restore muzzle ammo (setAmmo 1 has no impact if no appliccable throwable in inventory)

View File

@ -54,6 +54,9 @@ deleteVehicle _activeThrowableOld;
_activeThrowable // projectile _activeThrowable // projectile
]] call CBA_fnc_globalEvent; ]] call CBA_fnc_globalEvent;
// Set prime instigator
[QEGVAR(common,setShotParents), [_activeThrowable, _unit, _unit]] call CBA_fnc_serverEvent;
if (_showHint) then { if (_showHint) then {
// Show primed hint // Show primed hint
private _displayNameShort = getText (configFile >> "CfgMagazines" >> _throwableMag >> "displayNameShort"); private _displayNameShort = getText (configFile >> "CfgMagazines" >> _throwableMag >> "displayNameShort");

View File

@ -133,6 +133,7 @@ if (isServer) then {
if (isServer) then { if (isServer) then {
[QGVAR(hideObjectGlobal), {(_this select 0) hideObjectGlobal (_this select 1)}] call CBA_fnc_addEventHandler; [QGVAR(hideObjectGlobal), {(_this select 0) hideObjectGlobal (_this select 1)}] call CBA_fnc_addEventHandler;
[QGVAR(enableSimulationGlobal), {(_this select 0) enableSimulationGlobal (_this select 1)}] call CBA_fnc_addEventHandler; [QGVAR(enableSimulationGlobal), {(_this select 0) enableSimulationGlobal (_this select 1)}] call CBA_fnc_addEventHandler;
[QGVAR(setShotParents), {(_this select 0) setShotParents [_this select 1, _this select 2]}] call CBA_fnc_addEventHandler;
["ace_setOwner", {(_this select 0) setOwner (_this select 1)}] call CBA_fnc_addEventHandler; ["ace_setOwner", {(_this select 0) setOwner (_this select 1)}] call CBA_fnc_addEventHandler;
[QGVAR(serverLog), FUNC(serverLog)] call CBA_fnc_addEventHandler; [QGVAR(serverLog), FUNC(serverLog)] call CBA_fnc_addEventHandler;
}; };