Humanity Perks?

Inkko

Valued Member!
I was thinking of some way to give people who were heros or bandits something extra. I've noticed the loadout stuff for them but I was thinking of something else. I'm thinking of using the extra_rc script and adding in additional skin options for players. Something like for the Camo clothing, it would say wear, Hero perk, bandit perk. Then you could either wear the regular camo clothing, or change into a new skin thats provided with your humanity. Would anyone like me to share this once I'm done with it? or is anyone interested in this at all? This would be for dayz 1.8.1
 
Matt L has already done a really good hero perks script.
Link To The Script

And giving bandits perks might annoy players because most people will take that path since its easier.
I had thought that was only for loadouts based on humanity. I was thinking about actually making changes so that players could use existing skin parcels to change to a different skin as a added bonus for whatever humanity they had. Mainly just an additional right click option for skins in your inventory.
 
I guess I should note that its to utilize some of the skins unlocked in 1.8.1, its not really a perk its just more giving each humanity side more skin options based on their humanity. Most likely the hero side would have the better skins versus the bandits.
 
I guess I should note that its to utilize some of the skins unlocked in 1.8.1, its not really a perk its just more giving each humanity side more skin options based on their humanity. Most likely the hero side would have the better skins versus the bandits.
I looked into clan based skins a while back and I was told that it wasn't possible to change players starting skin, if you find a way to do it it would be great.
 
use a UID (steamID if on new patches) check and use player_humanityMorph to give them a custom skin on spawn. Simple enough.
 
Well what I'm thinking of is something like this:

extra_rc.hpp:
Code:
class Skin_Camo1_DZ {
        class Hero_Camo {
            text = "Hero Perk";
            script =  "execVM 'custom\camoh.sqf'";
        };
        class Bandit_Camo {
            text = "Bandit Perk";
            script =  "execVM 'custom\camob.sqf'";
        };
    };

then camoh could be something like this:
Code:
_isHero = (player getVariable ["humanity",0] > 5000);
if (!_isHero) then {
        sleep 1;
        cutText [format["You do not have the required humanity. Your humanity: %1, you need atleast 5000",(player getVariable ["humanity",0])], "PLAIN DOWN"];
    } else {
        sleep 2;
        [dayz_playerUID,dayz_characterID,"FR_GL"] spawn player_humanityMorph;
};
Not sure if its all correct, but it would be something like that. Its kind of a perk but not in the sense that it would give an upper hand in regards to gear. More just additional skins for players to use based on their humanity.
 
Yeah. You could also edit the extra_rc to hold a variable and have every click point to the same script, and use that variable to determine which skin to give. like this,
Code:
 class Skin_Sniper1_DZ {
        class Skin1 {
            text = "Wear Ghillie suit";
            script = "[""ghilie"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin2 {
            text = "Wear Camo Clothing";
            script = "[""camo"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin3 {
            text = "Wear Soldier Clothing";
            script = "[""soldier"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin4 {
            text = "Wear Rocket Clothing";
            script = "[""redberet"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
         class Skin5 {
            text = "Wear Marksman";
            script = "[""marks"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin6 {
            text = "Wear Half Ghillie";
            script = "[""half"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin7 {
            text = "Wear Czech Soldier";
            script = "[""czech"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
    };
and then in skins,
Code:
private ["_skin","_removeSkin"];

_skin = _this select 0;
_removeSkin = _this select 1;
_humanity = player getVariable["humanity",0];
_model = typeOf player;

if((_model != "SurvivorW2_DZ") && (_model != "BanditW1_DZ")) then{

if (_skin == "redberet") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"Rocket_DZ"] spawn player_humanityMorph;
    player removeWeapon "ItemRadio";
};

if (_skin == "marks") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"GUE_Commander"] spawn player_humanityMorph;
    uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "czech") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"CZ_Soldier_DES_EP1"] spawn player_humanityMorph;
    uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "ghilie") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"Sniper1_DZ"] spawn player_humanityMorph;
        uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "half") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"GUE_Soldier_Sniper"] spawn player_humanityMorph;
        uisleep 0.5;
    player removeWeapon "ItemRadio";
};
etc etc
 
This is pretty much exactly what I wanted lol, was just gonna give it a humanity check and have bandits/heros have different skin options. Any idea if there is something that could be added the the rc hpp to check for humanity in there and remove the clickable option if the humanity is not sufficient?
 
Could this be used to block certain humanity levels wearing a certain skin.
You could maybe look into the humanity check script to see if you could change something in there to force humanity levels for that type of skin.
 
This is pretty much exactly what I wanted lol, was just gonna give it a humanity check and have bandits/heros have different skin options. Any idea if there is something that could be added the the rc hpp to check for humanity in there and remove the clickable option if the humanity is not sufficient?
I don't think that's possible. It's in .hpp format, so it's a little weird. You could probably hack together a loop in the selectslot to check humanity and point to a different .hpp but it'd be a little messy.
 
You could maybe look into the humanity check script to see if you could change something in there to force humanity levels for that type of skin.
Just if you create humanity only skins I just dont know how to remove the other option to wear it if that was removed the humanity check would be easy.
 
This is my full extraRC and skins.sqf, have fun with it.
Code:
class ExtraRc {
    class Skin_Sniper1_DZ {
        class Skin1 {
            text = "Wear Ghillie suit";
            script = "[""ghilie"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin2 {
            text = "Wear Camo Clothing";
            script = "[""camo"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin3 {
            text = "Wear Soldier Clothing";
            script = "[""soldier"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin4 {
            text = "Wear Rocket Clothing";
            script = "[""redberet"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin5 {
            text = "Wear Marksman";
            script = "[""marks"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin6 {
            text = "Wear Half Ghillie";
            script = "[""half"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin7 {
            text = "Wear Czech Soldier";
            script = "[""czech"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
    };

    class Skin_Camo1_DZ {
        class Skin1 {
            text = "Wear Ghillie suit";
            script = "[""ghilie"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin2 {
            text = "Wear Camo Clothing";
            script = "[""camo"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin3 {
            text = "Wear Soldier Clothing";
            script = "[""soldier"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin4 {
            text = "Wear Rocket Clothing";
            script = "[""redberet"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin5 {
            text = "Wear Marksman";
            script = "[""marks"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin6 {
            text = "Wear Half Ghillie";
            script = "[""half"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin7 {
            text = "Wear Czech Soldier";
            script = "[""czech"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
    };

    class Skin_Soldier1_DZ {
        class Skin1 {
            text = "Wear Ghillie suit";
            script = "[""ghilie"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin2 {
            text = "Wear Camo Clothing";
            script = "[""camo"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin3 {
            text = "Wear Soldier Clothing";
            script = "[""soldier"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin4 {
            text = "Wear Rocket Clothing";
            script = "[""redberet"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin5 {
            text = "Wear Marksman";
            script = "[""marks"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin6 {
            text = "Wear Half Ghillie";
            script = "[""half"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin7 {
            text = "Wear Czech Soldier";
            script = "[""czech"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
    };

    class Skin_Survivor2_DZ {
        class Deploy {
            text = "Wear";
            script = "[""normal"",""Skin_Survivor2_DZ""] execVM ""scripts\skins.sqf"";";
        };
    };

    class PartGeneric {
        class Deploy {
            text = "Deploy Bike";
            script = "[] execVM ""scripts\Deploy\deploy_bike.sqf"";";
        };
    };
};
and skins.sqf :
Code:
private ["_skin","_removeSkin"];

_skin = _this select 0;
_removeSkin = _this select 1;
_humanity = player getVariable["humanity",0];
_model = typeOf player;

if((_model != "SurvivorW2_DZ") && (_model != "BanditW1_DZ")) then{

if (_skin == "redberet") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"Rocket_DZ"] spawn player_humanityMorph;
    player removeWeapon "ItemRadio";
};

if (_skin == "marks") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"GUE_Commander"] spawn player_humanityMorph;
    uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "czech") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"CZ_Soldier_DES_EP1"] spawn player_humanityMorph;
    uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "ghilie") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"Sniper1_DZ"] spawn player_humanityMorph;
        uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "half") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"GUE_Soldier_Sniper"] spawn player_humanityMorph;
        uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "camo") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"Camo1_DZ"] spawn player_humanityMorph;
        uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "soldier") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"Soldier1_DZ"] spawn player_humanityMorph;
        uisleep 0.5;
    player removeWeapon "ItemRadio";
};


if (_skin == "normal") then {
        if(_model in ["Sniper1_DZ","Soldier1_DZ","Camo1_DZ","Rocket_DZ","US_Soldier_EP1","CZ_Soldier_DES_EP1","BAF_Soldier_MTP","GUE_Soldier_Sniper","GUE_Commander"]) then{
          player addMagazine "Skin_Sniper1_DZ";
        };
        player removeMagazine _removeSkin;
        uisleep 0.5;
        if((_humanity >= -2500) && (_humanity <= 5000)) then{
            [dayz_playerUID,dayz_characterID,"Survivor2_DZ"] spawn player_humanityMorph;
        };
        if(_humanity >= 5000) then{
            [dayz_playerUID,dayz_characterID,"Survivor3_DZ"] spawn player_humanityMorph;
        };
        if(_humanity <= -2500) then{
            [dayz_playerUID,dayz_characterID,"Bandit1_DZ"] spawn player_humanityMorph;
        };
};
}else{
    cutText ["Female models do not support these skins.", "PLAIN DOWN"];
};
 
This is my full extraRC and skins.sqf, have fun with it.
Code:
class ExtraRc {
    class Skin_Sniper1_DZ {
        class Skin1 {
            text = "Wear Ghillie suit";
            script = "[""ghilie"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin2 {
            text = "Wear Camo Clothing";
            script = "[""camo"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin3 {
            text = "Wear Soldier Clothing";
            script = "[""soldier"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin4 {
            text = "Wear Rocket Clothing";
            script = "[""redberet"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin5 {
            text = "Wear Marksman";
            script = "[""marks"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin6 {
            text = "Wear Half Ghillie";
            script = "[""half"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin7 {
            text = "Wear Czech Soldier";
            script = "[""czech"",""Skin_Sniper1_DZ""] execVM ""scripts\skins.sqf"";";
        };
    };

    class Skin_Camo1_DZ {
        class Skin1 {
            text = "Wear Ghillie suit";
            script = "[""ghilie"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin2 {
            text = "Wear Camo Clothing";
            script = "[""camo"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin3 {
            text = "Wear Soldier Clothing";
            script = "[""soldier"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin4 {
            text = "Wear Rocket Clothing";
            script = "[""redberet"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin5 {
            text = "Wear Marksman";
            script = "[""marks"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin6 {
            text = "Wear Half Ghillie";
            script = "[""half"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin7 {
            text = "Wear Czech Soldier";
            script = "[""czech"",""Skin_Camo1_DZ""] execVM ""scripts\skins.sqf"";";
        };
    };

    class Skin_Soldier1_DZ {
        class Skin1 {
            text = "Wear Ghillie suit";
            script = "[""ghilie"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin2 {
            text = "Wear Camo Clothing";
            script = "[""camo"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin3 {
            text = "Wear Soldier Clothing";
            script = "[""soldier"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin4 {
            text = "Wear Rocket Clothing";
            script = "[""redberet"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin5 {
            text = "Wear Marksman";
            script = "[""marks"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin6 {
            text = "Wear Half Ghillie";
            script = "[""half"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
        class Skin7 {
            text = "Wear Czech Soldier";
            script = "[""czech"",""Skin_Soldier1_DZ""] execVM ""scripts\skins.sqf"";";
        };
    };

    class Skin_Survivor2_DZ {
        class Deploy {
            text = "Wear";
            script = "[""normal"",""Skin_Survivor2_DZ""] execVM ""scripts\skins.sqf"";";
        };
    };

    class PartGeneric {
        class Deploy {
            text = "Deploy Bike";
            script = "[] execVM ""scripts\Deploy\deploy_bike.sqf"";";
        };
    };
};
and skins.sqf :
Code:
private ["_skin","_removeSkin"];

_skin = _this select 0;
_removeSkin = _this select 1;
_humanity = player getVariable["humanity",0];
_model = typeOf player;

if((_model != "SurvivorW2_DZ") && (_model != "BanditW1_DZ")) then{

if (_skin == "redberet") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"Rocket_DZ"] spawn player_humanityMorph;
    player removeWeapon "ItemRadio";
};

if (_skin == "marks") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"GUE_Commander"] spawn player_humanityMorph;
    uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "czech") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"CZ_Soldier_DES_EP1"] spawn player_humanityMorph;
    uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "ghilie") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"Sniper1_DZ"] spawn player_humanityMorph;
        uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "half") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"GUE_Soldier_Sniper"] spawn player_humanityMorph;
        uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "camo") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"Camo1_DZ"] spawn player_humanityMorph;
        uisleep 0.5;
    player removeWeapon "ItemRadio";
};

if (_skin == "soldier") then {
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,"Soldier1_DZ"] spawn player_humanityMorph;
        uisleep 0.5;
    player removeWeapon "ItemRadio";
};


if (_skin == "normal") then {
        if(_model in ["Sniper1_DZ","Soldier1_DZ","Camo1_DZ","Rocket_DZ","US_Soldier_EP1","CZ_Soldier_DES_EP1","BAF_Soldier_MTP","GUE_Soldier_Sniper","GUE_Commander"]) then{
          player addMagazine "Skin_Sniper1_DZ";
        };
        player removeMagazine _removeSkin;
        uisleep 0.5;
        if((_humanity >= -2500) && (_humanity <= 5000)) then{
            [dayz_playerUID,dayz_characterID,"Survivor2_DZ"] spawn player_humanityMorph;
        };
        if(_humanity >= 5000) then{
            [dayz_playerUID,dayz_characterID,"Survivor3_DZ"] spawn player_humanityMorph;
        };
        if(_humanity <= -2500) then{
            [dayz_playerUID,dayz_characterID,"Bandit1_DZ"] spawn player_humanityMorph;
        };
};
}else{
    cutText ["Female models do not support these skins.", "PLAIN DOWN"];
};
Thanks a lot for giving input into this matt, I was thinking about more of a skin thing for humanity compared to loadout stuff. You've given me a great base as to where to start.
 
Thanks a lot for giving input into this matt, I was thinking about more of a skin thing for humanity compared to loadout stuff. You've given me a great base as to where to start.
there's a little bit of humanity stuff for the skins being done at the bottom of skins.sqf.
 
This is what I've done so far which I think will work. I'm still working on it but its my progress so far.

extra_rc.hpp:
Code:
class ExtraRc {
    class ItemBloodbag {
        class Self_Bloodbag {
            text = "Self Bloodbag";
            script =  "execVM 'custom\fn_self\player_selfbloodbag_rc.sqf'";
        };
    };
    class Skin_Camo1_DZ {
        class Hero_Camo {
            text = "Hero Camo";
            script =  "[""camoh"",""Skin_Camo1_DZ"",""FR_GL""] execVM ""custom\skins.sqf"";";
        };
        class Bandit_Camo {
            text = "Bandit Camo";
            script =  "[""camob"",""Skin_Camo1_DZ"",""GUE_Soldier_CO""] execVM ""custom\skins.sqf"";";
        };
    };
    class Skin_Sniper1_DZ {
        class Hero_Sniper {
            text = "Hero Ghillie";
            script =  "[""sniperh"",""Skin_Sniper1_DZ"",""GUE_Soldier_Sniper""] execVM ""custom\skins.sqf"";";
        };
        class Bandit_Sniper {
            text = "Bandit Ghillie";
            script =  "[""sniperb"",""Skin_Sniper1_DZ"",""Ins_Soldier_Sniper""] execVM ""custom\skins.sqf"";";
        };
    };
    class Skin_Soldier1_DZ {
        class Hero_Soldier {
            text = "Hero Soldier";
            script =  "[""soldierh"",""Skin_Soldier1_DZ"",""GUE_Commander""] execVM ""custom\skins.sqf"";";
        };
        class Bandit_Soldier {
            text = "Bandit Soldier";
            script =  "[""soldierb"",""Skin_Soldier1_DZ"",""TK_Soldier_EP1""] execVM ""custom\skins.sqf"";";
        };
    };
    class Skin_Survivor2_DZ {
        class Deploy {
            text = "Wear";
            script = "[""normal"",""Skin_Survivor2_DZ"",""Survivor2_DZ""] execVM ""custom\skins.sqf"";";
        };
    };
};

Skins.sqf:
Code:
private ["_skin","_removeSkin","_choice"];

_skin = _this select 0;
_removeSkin = _this select 1;
_choice = _this select 2;
_humanity = player getVariable["humanity",0];
_model = typeOf player;

if((_model != "SurvivorW2_DZ") && (_model != "BanditW1_DZ")) then{

if (_skin == "camoh") then {
    if(_humanity >= 5000) then{
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,_choice] spawn player_humanityMorph;
    player removeWeapon "ItemRadio";
    } else {
        cutText [format["You do not have the required humanity. Your humanity is %1, you need to gain %2 more.",_humanity,(5000 - _humanity)], "PLAIN DOWN"];
    };
};

if (_skin == "camob") then {
    if(_humanity <= -2500) then{
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,_choice] spawn player_humanityMorph;
    player removeWeapon "ItemRadio";
    } else {
        cutText [format["You do not have the required humanity. Your humanity is %1, you need to lose %2 .",_humanity,(-2500 - _humanity)], "PLAIN DOWN"];
    };
};

if (_skin == "soldierh") then {
    if(_humanity >= 5000) then{
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,_choice] spawn player_humanityMorph;
    player removeWeapon "ItemRadio";
    } else {
        cutText [format["You do not have the required humanity. Your humanity is %1, you need to gain %2 more.",_humanity,(5000 - _humanity)], "PLAIN DOWN"];
    };
};

if (_skin == "soldierb") then {
    if(_humanity <= -2500) then{
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,_choice] spawn player_humanityMorph;
    player removeWeapon "ItemRadio";
    } else {
        cutText [format["You do not have the required humanity. Your humanity is %1, you need to lose %2 .",_humanity,(-2500 - _humanity)], "PLAIN DOWN"];
    };
};

if (_skin == "sniperh") then {
    if(_humanity >= 5000) then{
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,_choice] spawn player_humanityMorph;
    player removeWeapon "ItemRadio";
    } else {
        cutText [format["You do not have the required humanity. Your humanity is %1, you need to gain %2 more.",_humanity,(5000 - _humanity)], "PLAIN DOWN"];
    };
};

if (_skin == "sniperb") then {
    if(_humanity <= -2500) then{
    player removeMagazine _removeSkin;
    player addMagazine "Skin_Survivor2_DZ";
    uisleep 0.5;
    [dayz_playerUID,dayz_characterID,_choice] spawn player_humanityMorph;
    player removeWeapon "ItemRadio";
    } else {
        cutText [format["You do not have the required humanity. Your humanity is %1, you need to lose %2 .",_humanity,(-2500 - _humanity)], "PLAIN DOWN"];
    };
};

if (_skin == "normal") then {
        // added model check to give correct parcels
        if(_model in ["Sniper1_DZ","GUE_Soldier_Sniper","Ins_Soldier_Sniper"]) then{
          player addMagazine "Skin_Sniper1_DZ";
        };
        if(_model in ["Camo1_DZ","GUE_Soldier_CO","FR_GL"]) then{
          player addMagazine "Skin_Camo1_DZ";
        };
        if(_model in ["Soldier1_DZ","GUE_Commander","TK_Soldier_EP1"]) then{
          player addMagazine "Skin_Soldier1_DZ";
        };
        player removeMagazine _removeSkin;
        uisleep 0.5;
        /* Additional survivor skin WIP
        if (_choice in [""]) then {
            player removeMagazine _removeSkin;
            player addMagazine "Skin_Survivor2_DZ";
            uisleep 0.5;
            [dayz_playerUID,dayz_characterID,_choice] spawn player_humanityMorph;
            player removeWeapon "ItemRadio";
        } else {*/
        if((_humanity >= -2500) && (_humanity <= 5000)) then{
            [dayz_playerUID,dayz_characterID,"Survivor2_DZ"] spawn player_humanityMorph;
        };
        if(_humanity >= 5000) then{
            [dayz_playerUID,dayz_characterID,"Survivor3_DZ"] spawn player_humanityMorph;
        };
        if(_humanity <= -2500) then{
            [dayz_playerUID,dayz_characterID,"Bandit1_DZ"] spawn player_humanityMorph;
        };
        /*};*/
};
}else{
    cutText ["Female models do not support these skins.", "PLAIN DOWN"];
};
 
Thanks a lot for giving input into this matt, I was thinking about more of a skin thing for humanity compared to loadout stuff. You've given me a great base as to where to start.

I wrote that together with Matt L, I use it on my server and players love it. I guess if you add humanity on to it, it might be even better. Gives players a reason to loose or gain humanity. Would be cool if you shared when you are done ^^
 
Back
Top