Jump to content
MasterPuffin

[Release] Custom Uniform Skins in MP Mission

Recommended Posts

This script will set custom skins to an uniform. It's useful, when you are using a non modded server but still want to have custom uniform textures.

 

********************************

Create a file called onPlayerRespawn.sqf (or use your existing one) and put the following code into it:

_handle = []execVM "scripts\UniformSkin.sqf";

 

Create a folder called scripts. Inside this folder create a file called UniformSkin.sqf and put the following code into it:

while {true} do 
{
	waitUntil {(uniform player isEqualTo "U_O_OfficerUniform_ocamo") || (uniform player isEqualTo "U_B_CombatUniform_mcam")};
	sleep 1;
	switch (true) do
	{
		case (uniform player isEqualTo "U_O_OfficerUniform_ocamo"):
		{
			player setObjectTextureGlobal [0,"YOURSKIN"];
		};
		case (uniform player isEqualTo "U_B_CombatUniform_mcam"):
		{
			player setObjectTextureGlobal [0,"YOURSKIN"];
		};
	};
	waitUntil {(uniform player != "U_O_OfficerUniform_ocamo") || (uniform player != "U_B_CombatUniform_mcam")};
};

Just replace YOURSKIN with the path to your uniform. Also change U_O_OfficerUniform_ocamo etc. to the skins you are setting your skin on. The classnames can be found here.

 

Sometimes the skin bugs away. You can create a second file with the following content:

switch (true) do
	{
		case (uniform player isEqualTo "U_O_OfficerUniform_ocamo"):
		{
			player setObjectTextureGlobal [0,"YOURSKIN"];
		};
		case (uniform player isEqualTo "U_B_CombatUniform_mcam"):
		{
			player setObjectTextureGlobal [0,"YOURSKIN"];
		};
	};

Executing it (for example via addaction or keyhandler) will set the skin again. Just don't forget to change the variables!

 

If you have any questions or need help with your mission feel free to ask!

Cheers

Puffin

  • Like 3

Share this post


Link to post
Share on other sites

Why is the code being ran constantly?

while {true} do { };

?

It'd make sense to set the texture initially, and then maybe wait for respawn in the case of the texture being reset upon respawn. 

 

Share this post


Link to post
Share on other sites

This loop will run forever, even after you died. You should compare if the player is still alive or check if the controlled entity has changed. This loop shouldn't be necessary since you have an event script telling you when the player respawned.

Share this post


Link to post
Share on other sites
On 3.5.2017 at 0:18 AM, NoFunAllowedBruv said:

is there a way to convert this so it also changes the color of the vest and helmet or do i just replace unifrom with vest/headgear?

No, in Arma there is no way to skin helmets and vests without a mod. You can skin backpacks however

 

On 3.5.2017 at 4:34 PM, Midnighters said:

Why is the code being ran constantly?


while {true} do { };

?

It'd make sense to set the texture initially, and then maybe wait for respawn in the case of the texture being reset upon respawn. 

 

The code has to run forever because at some times Arma loads the default skin even during the mission, for example if you open the Virtual Arsenal. But you are right, it would be better to place the script in the init.sqf

  • Like 1

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×