Now, what I did is i copied whole UniSwitch 4 times (so that i can change clothes in 4 playable units, right?) and there where is "rf" i changed it to a,b,c and d (that's the units i will play with. I placed 4 snipers and named them sni,sni1,sni2,sni3 and changed them in uniswitch. Also i did the same for init, copied 4 times and changed all "rf" and "sni". But when i start the mission, i click change clothes, and the screen blacks out, my whole squad is in place of snipers and vice-versa. I don't know if I did something wrong or this just doesn't work in multi?
Init:
private ["_uniform"];
_uniform = a addAction ["Change Uniform", "UniSwitch.sqf"];
_uniform = sni addAction ["Change Uniform", "UniSwitch.sqf"];
enableTeamSwitch false;
private ["_uniform"];
_uniform = b addAction ["Change Uniform", "UniSwitch.sqf"];
_uniform = sni1 addAction ["Change Uniform", "UniSwitch.sqf"];
enableTeamSwitch false;
private ["_uniform"];
_uniform = c addAction ["Change Uniform", "UniSwitch.sqf"];
_uniform = sni2 addAction ["Change Uniform", "UniSwitch.sqf"];
enableTeamSwitch false;
private ["_uniform"];
_uniform = d addAction ["Change Uniform", "UniSwitch.sqf"];
_uniform = sni3 addAction ["Change Uniform", "UniSwitch.sqf"];
enableTeamSwitch false;
UniSwitch:
private ["_snipos","_ampos","_dir","_group"];
_snipos = getPos sni;
_ampos = getPos a;
_dir = getDir player;
_group = group player;
titleText ["Changing Clothes", "BLACK OUT", 2];
sleep 2;
sni setPos _ampos;
a setPos _snipos;
if (player == a) then
{
[a] join grpNull;
selectPlayer sni;
[sni] joinSilent _group;
} else
{
[sni] join grpNull;
selectPlayer a;
[a] joinSilent _group;
};
sleep 1;
titleText ["Changing Clothes", "BLACK IN", 2];
player setDir _dir;
exit;
private ["_sni1pos","_bmpos","_dir","_group"];
_sni1pos = getPos sni1;
_bmpos = getPos b;
_dir = getDir player;
_group = group player;
titleText ["Changing Clothes", "BLACK OUT", 2];
sleep 2;
sni1 setPos _bmpos;
b setPos _sni1pos;
if (player == b) then
{
[b] join grpNull;
selectPlayer sni1;
[sni1] joinSilent _group;
} else
{
[sni1] join grpNull;
selectPlayer b;
[b] joinSilent _group;
};
sleep 1;
titleText ["Changing Clothes", "BLACK IN", 2];
player setDir _dir;
exit;
private ["_sni2pos","_cmpos","_dir","_group"];
_sni2pos = getPos sni2;
_cmpos = getPos c;
_dir = getDir player;
_group = group player;
titleText ["Changing Clothes", "BLACK OUT", 2];
sleep 2;
sni2 setPos _cmpos;
c setPos _sni2pos;
if (player == c) then
{
[c] join grpNull;
selectPlayer sni;
[sni2] joinSilent _group;
} else
{
[sni2] join grpNull;
selectPlayer rf;
[c] joinSilent _group;
};
sleep 1;
titleText ["Changing Clothes", "BLACK IN", 2];
player setDir _dir;
exit;
private ["_sni3pos","_dmpos","_dir","_group"];
_sni3pos = getPos sni3;
_dmpos = getPos d;
_dir = getDir player;
_group = group player;
titleText ["Changing Clothes", "BLACK OUT", 2];
sleep 2;
sni3 setPos _dmpos;
d setPos _sni3pos;
if (player == d) then
{
[d] join grpNull;
selectPlayer sni3;
[sni3] joinSilent _group;
} else
{
[sni3] join grpNull;
selectPlayer d;
[d] joinSilent _group;
};
sleep 1;
titleText ["Changing Clothes", "BLACK IN", 2];
player setDir _dir;
exit;