hacer que un textdraw aparesca cuando mata alguien
#1

hola a todos, bueno tengo una consulta necesito que cada vez que mates a alguien aparesca un textdraw y que desaparesca a cierta cantidad de segundos, yo lo tengo ya practicamente hecho, pero cuando lo mata ya no se desaparece entonces si alguien me pudiera ayudar a arreglarlo por favor >.<

pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
    new score;
    score = GetPlayerScore(killerid);
    for(new i; i < MAX_PLAYERS; i ++)
    {
        if(reason == 0)
        {   new string[5];

            format(string, sizeof(string), "25");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+25);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }
        if(reason == 1)
        {   new string[5];

            format(string, sizeof(string), "25");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+25);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }
        if(reason == 4)
        {   new string[5];

            format(string, sizeof(string), "20");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+20);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }

        if(reason == 25)
        {   new string[5];

            format(string, sizeof(string), "10");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+10);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }

        if(reason == 24)
        {   new string[5];

            format(string, sizeof(string), "12");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+12);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }

        if(reason == 27)
        {   new string[5];

            format(string, sizeof(string), "6");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+6);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }

        if(reason == 29)
        {   new string[5];

            format(string, sizeof(string), "7");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+7);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }

        if(reason == 30)
        {   new string[5];

            format(string, sizeof(string), "11");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+11);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }

        if(reason == 31)
        {   new string[5];

            format(string, sizeof(string), "12");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+12);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }

        if(reason == 33)
        {   new string[5];

            format(string, sizeof(string), "17");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+17);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }

        if(reason == 34)
        {   new string[5];

            format(string, sizeof(string), "19");
            TextDrawSetString(Textdraw10[i], string);
            TextDrawShowForPlayer(killerid, Textdraw10[i]);
            SetPlayerScore(killerid,score+19);
            SetTimerEx("HideMessage", 1000, 0, "i", killerid);
        }

        TextDrawShowForPlayer(killerid, Textdraw11[i]);
    }
   
    SendDeathMessage(killerid,playerid,reason);
   
        Plr[playerid][Deaths]++;
    Plr[killerid][Kills]++;
    PVar[killerid][pKills] += 1;
    PVar[playerid][pDeaths] += 1;
    return 1;
}

forward HideMessage(playerid);
public HideMessage(playerid)
{
    TextDrawHideForPlayer(playerid, Textdraw10[playerid]);
    TextDrawHideForPlayer(playerid, Textdraw11[playerid]);
}

Saludos y Gracias
Reply
#2

pawn Код:
forward HideMessage(killerid);
public HideMessage(killerid)
{
    TextDrawHideForPlayer(playerid, Textdraw10[killerid]);
    TextDrawHideForPlayer(playerid, Textdraw11[killerid]);
}
?
Reply
#3

Quote:
Originally Posted by Lunnatiicz
Посмотреть сообщение
pawn Код:
forward HideMessage(killerid);
public HideMessage(killerid)
{
    TextDrawHideForPlayer(playerid, Textdraw10[killerid]);
    TextDrawHideForPlayer(playerid, Textdraw11[killerid]);
}
?
sigue igual, no desaparece el text :l plz help!
Reply
#4

Usa un timer del tiempo que dure el textdraw, cuando acabe usa TextDrawDestroy

saludos
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)