SA-MP Forums Archive
Set Players Armour - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Set Players Armour (/showthread.php?tid=283891)



Set Players Armour - Compton - 17.09.2011

Hello, well im trying to make a drug give player armour when he uses it, it should give him +3% of armour, but if the player already has 30% of armour the drug shouldent give him no armour, here is my code, I tried to set something myself but fail(never had deals with this kinda thing)

Код:
Crackeffect(playerid)
{
if (GetPlayerArmour(playerid)<1)
{
Jizzing[playerid] = SetTimerEx("EffectTime0",JIZZTIME,0,"i",playerid);
SendClientMessage(playerid, COLOR_WHITE, "You started using {FF9900}crack");
SetPlayerDrunkLevel (playerid, 6000);
SetPlayerWeather(playerid, -66);
SetPlayerArmour(playerid,+3.0);
SetPVarInt(playerid,"usingdrugs",1);
}
else if (GetPlayerArmour(playerid)>29)
{
SendClientMessage(playerid,0xFFFFFFFF,"You cant reach a higher armour level from now.");
}
}



Re: Set Players Armour - =WoR=Varth - 17.09.2011

pawn Код:
Crackeffect(playerid)
{
    new Float:a;
    GetPlayerArmour(playerid,a);
    if (a >= 30) return SendClientMessage(playerid,0xFFFFFFFF,"You cant reach a higher armour level from now.");
    Jizzing[playerid] = SetTimerEx("EffectTime0",JIZZTIME,0,"i",playerid);
    SendClientMessage(playerid, COLOR_WHITE, "You started using {FF9900}crack");
    SetPlayerDrunkLevel (playerid, 6000);
    SetPlayerWeather(playerid, -66);
    SetPlayerArmour(playerid,a + 3);
    GetPlayerArmour(playerid,a);
    if(a > 30) SetPlayerArmour(playerid,30);
    SetPVarInt(playerid,"usingdrugs",1);
}



Re: Set Players Armour - System64 - 17.09.2011

try this
pawn Код:
Crackeffect(playerid)
{
    if(GetPlayerArmour(playerid) < 29)
    {
        Jizzing[playerid] = SetTimerEx("EffectTime0", JIZZTIME, 0, "i", playerid);
        SendClientMessage(playerid, COLOR_WHITE, "You started using {FF9900}crack");
        SetPlayerDrunkLevel(playerid, 6000);
        SetPlayerWeather(playerid, -66);
        SetPlayerArmour(playerid, 3.0);
        SetPVarInt(playerid, "usingdrugs", 1);
    }
    else SendClientMessage(playerid,0xFFFFFFFF,"You cant reach a higher armour level from now.");
}



Re: Set Players Armour - Tee - 17.09.2011

Always use indentation, it's easier to read and process.
Also Armour and Health, are floats.
Here you go:

pawn Код:
Crackeffect(playerid)
{
    if(GetPlayerArmour(playerid)<1.0)
    {
        Jizzing[playerid] = SetTimerEx("EffectTime0",JIZZTIME,0,"i",playerid);
        SendClientMessage(playerid, COLOR_WHITE, "You started using {FF9900}crack");
        SetPlayerDrunkLevel (playerid, 6000);
        SetPlayerWeather(playerid, -66);
        SetPlayerArmour(playerid,GetPlayerArmour(playerid)+ 3.0);
        SetPVarInt(playerid,"usingdrugs",1);
    }
    else
    {
        SendClientMessage(playerid,0xFFFFFFFF,"You cant reach a higher armour level from now.");
        return 1;
    }
    return 1;
}
Edit: I got pwn twice ®_©


Re: Set Players Armour - Compton - 17.09.2011

varthshenon, thank you for your code, it saved my day.


-Thanks to others aswel.


Re: Set Players Armour - Cameltoe - 17.09.2011

Quote:
Originally Posted by Compton
Посмотреть сообщение
varthshenon, thank you for your code, it saved my day.


-Thanks to others aswel.
pawn Код:
Crackeffect(playerid)
{
    if(GetPlayerArmour(playerid) >= 29.0) return SendClientMessage(playerid,0xFFFFFFFF,"You cant reach a higher armour level from now.");
    //if(GetPVarInt(playerid,"usingdrugs") == 1) return SendClientMessage(playerid,0xFFFFFFFF,"You are already using drugs."); //
    Jizzing[playerid] = SetTimerEx("EffectTime0",JIZZTIME,0,"i",playerid);
    SendClientMessage(playerid, COLOR_WHITE, "You started using {FF9900}crack");
    SetPlayerDrunkLevel (playerid, 6000);
    SetPlayerWeather(playerid, -66);
    SetPlayerArmour(playerid,GetPlayerArmour(playerid)+ 3.0);
    SetPVarInt(playerid,"usingdrugs",1);
    return 1;
}
Saves you a couples of lines, and btw why is there no check to see if the user is already using drugs? SetPVarInt(playerid,"usingdrugs",1); ?