17.11.2009, 01:44
Bueno, quiero que el tiempo que te quede de prision te salga en un TextDraw.
Yo tengo creado algo asi:
Eso me compila, pero al poner /jail jugador tiempo, me muestra el textdraw y todo pero al segundo ya me libera de la carcel.
Espero que puedan ayudarme un saludo.
Yo tengo creado algo asi:
pawn Код:
//arriba de todo:
new TCarcel;
//en el comando /jail:
if(strcmp(cmd, "/jail", true) == 0)
{
//demas funciones del comando
PlayerInfo[playa][JailTime] = TCarcel*60;
EnCarcel(playerid);
return 1;
}
//en cualquier lado:
stock EnCarcel(playerid)
{
TCarcel = PlayerInfo[playerid][JailTime]*60000
SecondsLeft = 0;
Textdraw2 = TextDrawCreate(520, 200, TextdrawString);
TextDrawUseBox(Textdraw2, 1);
TextDrawLetterSize(Textdraw2, 0.50, 1.3);
TextDrawColor(Textdraw2, 0xFFFF66AA);
TextDrawBoxColor(Textdraw2, 0x000000AA);
TextDrawSetShadow(Textdraw2, 0);
TextDrawShowForPlayer(playerid, Textdraw2);
TextdrawUpdateTimer = SetTimerEx("TextdrawUpdate", 1000, 1, "i", playerid);
}
//encualquier lado:
forward TextdrawUpdate(playerid);
public TextdrawUpdate(playerid)
{
TextDrawHideForPlayer(playerid, Textdraw2);
format(TextdrawString, 64, "Minutos: %d ~n~Segundos: %02d", TCarcel, SecondsLeft);
TextDrawSetString(Textdraw2, TextdrawString);
TextDrawShowForPlayer(playerid, Textdraw2);
SecondsLeft--;
if(TCarcel == 0 && SecondsLeft == -1) //Time is up
{
TextDrawHideForPlayer(playerid, Textdraw2);
TextDrawDestroy(Textdraw2);
SetPlayerPos(playerid,123.213,546.546,100.455);
GameTextForPlayer(playerid, "Fuiste liberado", 10000, 4);
KillTimer(TextdrawUpdateTimer);
return 1;
}
if(SecondsLeft == -1)
{
SecondsLeft = 59;
TCarcel--;
}
return 1;
}
Espero que puedan ayudarme un saludo.