Hi. I want to share some scripting commands that, I hope, will be useful for you.
Move object
_pos = getPosWorld cursorTarget; cursorTarget setPosWorld [(_pos select 0)-0, (_pos select 1)-0, (_pos select 2)-0];
Rotate object
_dir = getDir cursorTarget; cursorTarget setDir _dir+0.5;
Create exact same copy near the object
_pos = getPosWorld cursorTarget;
_vDir = vectorDir cursorTarget;
_vUp = vectorUp cursorTarget;
_obj = typeOf cursorTarget createVehicle _pos;
_obj allowDamage false;
_obj setVectorDirAndUp [_vDir,_vUp];
_obj setPosWorld [(_pos select 0)-5, (_pos select 1)-0, (_pos select 2)-0];
Create repeatable object (change -0 to real value (size of object))
for "_x" from 1 to 1 do {
_pos = getPosWorld cursorTarget;
_vDir = vectorDir cursorTarget;
_vUp = vectorUp cursorTarget;
_obj = typeOf cursorTarget createVehicle _pos;
_obj allowDamage false;
_obj setVectorDirAndUp [_vDir,_vUp];
_obj setPosWorld [(_pos select 0)-0*_x, (_pos select 1)-0*_x, (_pos select 2)+0];
}
Lock all cursor objects near you (500m)
{_x setVariable ["objectLocked",true,true]; _x setVariable ["ownerUID", getPlayerUID player, true]; } forEach (position player nearObjects [typeOf cursorTarget,500])
Delete all unlocked cursor objects
{if !(_x getVariable ["objectLocked",false]) then {deleteVehicle _x};} forEach (position player nearObjects [typeOf cursorTarget,500])
Remove all objects owned by player with ID in 500m range
{if (_x getVariable ["ownerUID",""]=="76561198088088293") then {deleteVehicle _x};} forEach (position player nearObjects ["All",500])
Give money to each player
{
if (isPlayer _x) then {
_cmoney = _x getVariable ["cmoney",0];
_x setVariable ["cmoney",_cmoney+1000,true];
}
} forEach playableUnits;
Give money to exact player
{
if (isPlayer _x && (name _x=="USER")) then {
_cmoney = _x getVariable ["cmoney",0];
_x setVariable ["cmoney",_cmoney+1000,true];
}
} forEach playableUnits;
Teleport self to player
{
if (isPlayer _x && (name _x=="USER")) then {
player setPos (position _x);
}
} forEach playableUnits;
Teleport player to self
{
if (isPlayer _x && (name _x=="USER")) then {
_x setPos (position player);
}
} forEach playableUnits;