mirror of
https://github.com/EpochModTeam/Epoch.git
synced 2024-08-30 18:22:13 +00:00
optimize remoteexec usage for multiple targets
This commit is contained in:
parent
bbd958ed52
commit
5f640933d9
@ -36,11 +36,12 @@ if (isNull objectParent _target) then {
|
||||
} else {
|
||||
// send attack to other player
|
||||
if (isPlayer _target) then {
|
||||
[_unit,_target] remoteExec ["EPOCH_client_bitePlayer", _target];
|
||||
[_unit] remoteExec ["EPOCH_client_bitePlayer", _target];
|
||||
};
|
||||
};
|
||||
} else {
|
||||
// target is inside a vehicle, target entire vehicle crew
|
||||
private _targets = [];
|
||||
{
|
||||
if (_x isEqualTo player) then {
|
||||
// handle attack for local player if inside vehicle
|
||||
@ -49,10 +50,13 @@ if (isNull objectParent _target) then {
|
||||
} else {
|
||||
// send attack to other players
|
||||
if (isPlayer _x) then {
|
||||
[_unit,_x] remoteExec ["EPOCH_client_bitePlayer", _x];
|
||||
_targets pushBack _x;
|
||||
};
|
||||
};
|
||||
} forEach (crew _target);
|
||||
if !(_targets isEqualTo []) then {
|
||||
[_unit] remoteExec ["EPOCH_client_bitePlayer", _targets];
|
||||
};
|
||||
};
|
||||
|
||||
if (_doAttack) then {
|
||||
|
@ -14,7 +14,7 @@
|
||||
*/
|
||||
params ["_playerUID","_var1","_var2","_player",["_token","",[""]]];
|
||||
if !([_player, _token] call EPOCH_server_getPToken) exitWith{};
|
||||
|
||||
{
|
||||
[_var1, _var2] remoteExec ['EPOCH_Group_invitePlayer',_x];
|
||||
} forEach (allPlayers select {getPlayerUID _x == _playerUID});
|
||||
private _targets = allPlayers select {getPlayerUID _x == _playerUID};
|
||||
if !(_targets isEqualTo []) then {
|
||||
[_var1, _var2] remoteExec ['EPOCH_Group_invitePlayer',_targets];
|
||||
};
|
||||
|
@ -14,7 +14,7 @@
|
||||
*/
|
||||
params ["_playerUID","_var1","_var2","_player",["_token","",[""]]];
|
||||
if !([_player, _token] call EPOCH_server_getPToken) exitWith{};
|
||||
|
||||
{
|
||||
[_var1, _var2] remoteExec ['EPOCH_tempGroup_invitePlayer',_x];
|
||||
} forEach (allPlayers select {getPlayerUID _x == _playerUID});
|
||||
private _targets = allPlayers select {getPlayerUID _x == _playerUID};
|
||||
if !(_targets isEqualTo []) then {
|
||||
[_var1, _var2] remoteExec ['EPOCH_tempGroup_invitePlayer',_targets];
|
||||
};
|
||||
|
@ -37,9 +37,10 @@ switch _trgtType do {
|
||||
|
||||
case 1: {
|
||||
if!(isNull _trgtObj)then{
|
||||
{
|
||||
[_x,_mPos,_mShape,_mType,_mColor,_mSize,_mBrush,_mDir,_mText,_mAlpha,_mrkrName] remoteExec ['EPOCH_makeMarker',_x];
|
||||
}foreach (units group _trgtObj);
|
||||
private _targets = (units group _trgtObj);
|
||||
if !(_targets isEqualTo []) then {
|
||||
[nil,_mPos,_mShape,_mType,_mColor,_mSize,_mBrush,_mDir,_mText,_mAlpha,_mrkrName] remoteExec ['EPOCH_makeMarker',_targets];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@ -57,10 +58,8 @@ switch _trgtType do {
|
||||
};
|
||||
|
||||
case 3: {
|
||||
if(isArray _trgtObj && count _trgtObj > 0)then{
|
||||
{
|
||||
[_x,_mPos,_mShape,_mType,_mColor,_mSize,_mBrush,_mDir,_mText,_mAlpha,_mrkrName] remoteExec ['EPOCH_makeMarker',_x];
|
||||
}foreach _trgtObj;
|
||||
if(_trgtObj isEqualType [] && {!(_trgtObj isEqualTo [])})then{
|
||||
[nil,_mPos,_mShape,_mType,_mColor,_mSize,_mBrush,_mDir,_mText,_mAlpha,_mrkrName] remoteExec ['EPOCH_makeMarker',_trgtObj];
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -31,9 +31,10 @@ switch _trgtType do {
|
||||
|
||||
case 1: {
|
||||
if!(isNull _trgtObj)then{
|
||||
{
|
||||
[_mrkrName] remoteExec ['EPOCH_removeMarker',_x];
|
||||
}foreach (units group _trgtObj);
|
||||
private _targets = (units group _trgtObj);
|
||||
if !(_targets isEqualTo []) then {
|
||||
[_mrkrName] remoteExec ['EPOCH_removeMarker',_targets];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@ -42,10 +43,10 @@ switch _trgtType do {
|
||||
};
|
||||
|
||||
case 3: {
|
||||
if(isArray _trgtObj && count _trgtObj > 0)then{
|
||||
{
|
||||
[_mrkrName] remoteExec ['EPOCH_removeMarker',_x];
|
||||
}foreach _trgtObj;
|
||||
if(_trgtObj isEqualType [] && {!(_trgtObj isEqualTo [])})then{
|
||||
if !(_trgtObj isEqualTo []) then {
|
||||
[_mrkrName] remoteExec ['EPOCH_removeMarker',_trgtObj];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user