Epoch/Sources/epoch_server/compile/epoch_bases/EPOCH_swapBuilding.sqf
2017-05-01 09:07:41 -05:00

33 lines
1.0 KiB
Plaintext

// _newObj = [_class,_object] call EPOCH_swapBuilding;
//[[[cog import generate_private_arrays ]]]
private ["_newObj","_objectPos","_playersNear"];
//[[[end]]]
params [["_class",""],["_object",objNull],["_method",0]];
_newObj = objNull;
if (!isNull _object && !(_class isEqualTo "")) then {
_objectPos = getPosWorld _object;
_newObj = createVehicle [_class, ASLtoAGL _objectPos, [], 0, "CAN_COLLIDE"];
if (!isNull _newObj) then {
_object hideObjectGlobal true;
switch (_method) do {
case 0: {
_newObj setVectorDirAndUp [vectordir _object, vectorup _object];
_newObj setPosWorld _objectPos;
};
case 1: {
_newObj attachTo [_object,[0,0,0]];
};
};
deleteVehicle _object;
// force nearby players to reveal new object faster
_playersNear = _newObj nearEntities[["Epoch_Male_F", "Epoch_Female_F"], 300];
{
[_x, _newObj] remoteExec ['reveal',_x];
}forEach _playersNear;
};
};
_newObj