My timed kill command isn't working.
#1

pawn Код:
stock killedplayer(playerid)
{
    SetPlayerHealth(playerid, 0.000);
    return 1;
}
YCMD:killme(playerid, params[])
{
    if(gPlayerLoggedIn[playerid] == 0) return 1;
    {
        SendClientMessage(playerid, COLOR_LIGHTRED,"Warning: You will get self-killed after 10-15 seconds...");
        SetTimer("killedplayer", 14000, false);
        TogglePlayerControllable(playerid, 0);
    }
    return 1;
}
It doesn't set the player's HP to 0, just freeze him :/.
Reply
#2

Why are you doing:

pawn Код:
SetTimer("killedplayer", 14000, false);
You need to call a public with the funcname[], you cannot call a stock.
Reply
#3

Use SetTimerEx for based on players timers.
pawn Код:
SetTimerEx("FunctionName", Seconds * 1000, false, "i", playerid);
Reply
#4

Use
pawn Код:
forward killedplayer(playerid);
public killedplayer(playerid)
{
    SetPlayerHealth(playerid, 0.000);
    return 1;
}
Instead of
pawn Код:
stock killedplayer(playerid)
{
    SetPlayerHealth(playerid, 0.000);
    return 1;
}
And
pawn Код:
SetTimerEx("killedplayer", 14000, false,"i",playerid);
Instead of
pawn Код:
SetTimer("killedplayer", 14000, false);
Reply
#5

Quote:
Originally Posted by Norck
Посмотреть сообщение
Use
pawn Код:
public killedplayer(playerid)
{
    SetPlayerHealth(playerid, 0.000);
    return 1;
}
Yea, and forward that too using:
pawn Код:
forward killedplayer(playerid);
Put it below your includes.
Reply
#6

here you go i help you

Top On Your Script: new killplayertimer[MAX_PLAYERS];

YCMD:killme(playerid, params[])
{
if(gPlayerLoggedIn[playerid] == 0) return 1;
{
SendClientMessage(playerid, COLOR_LIGHTRED,"Warning: You will get self-killed after 10-15 seconds...");
killplayertimer[playerid] = SetTimerEx("killedplayer", 14000, 0, "d", playerid);
TogglePlayerControllable(playerid, 0);
}
return 1;
}

On your Killedplayer Function set:

forward Killedplayer(playerid);
public Killedplayer(playerid)
{
KillTimer(killplayertimer[playerid]);
SetPlayerHealth(playerid, 0 );
}
Reply
#7

Uhh
He should do SetTimerEx...
pawn Код:
forward killedplayer(playerid);
public killedplayer(playerid)
{
    SetPlayerHealth(playerid, 0.000);
    return 1;
}
YCMD:killme(playerid, params[])
{
    if(gPlayerLoggedIn[playerid] == 0) return 1;
    {
        SendClientMessage(playerid, COLOR_LIGHTRED,"Warning: You will get self-killed after 10-15 seconds...");
        SetTimer("killedplayer", 14000, false,"i",playerid);
        TogglePlayerControllable(playerid, 0);
    }
    return 1;
}
Reply
#8

All doing wrong just Pickup my Codes ))
Reply
#9

Quote:
Originally Posted by suhrab_mujeeb
Посмотреть сообщение
Yea, and forward that too using:
pawn Код:
forward killedplayer(playerid);
Put it below your includes.
Thanks for correcting me. I've edited my post.
Reply
#10

@Everyone: Thanks a lot guys! I've done that but now I am having 2 warnings,

pawn Код:
C:\Documents and Settings\Administrator\My Documents\Downloads\samp03dsvr_R2_win32\gamemodes\bc.pwn(2851) : warning 202: number of arguments does not match definition
C:\Documents and Settings\Administrator\My Documents\Downloads\samp03dsvr_R2_win32\gamemodes\bc.pwn(2851) : warning 202: number of arguments does not match definition
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


2 Warnings.
Line:

pawn Код:
SetTimer("killedplayer", 14000, false,"i",playerid);
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)