Hallo Leute.
Ich habe ein kleines Problem.
Ich habe einen Timer erstellt, und in diesem Timer soll eine Variable jede Sekunde -1 gemacht werden.
Wenn ich aber nun genau hinschaue, macht er -1 dann direkt nochmal -1. (Habe diese --; Form benutzt). Also er macht pro Sekunde -2 ich kann aber beide Zahlen sehen.
Hier mal mein Code. (PS: Vorher gings, nur dann nichtmehr als ich diese Anzeige mit dem Krankenhaus gemacht habe...)
public OnPlayerTot(playerid)
{
if(IsPlayerConnected(playerid) && gPlayerLogged[playerid] == 1)
{
if(Spieler[playerid][pTot] == 1)
{
TextDrawShowForPlayer(playerid, TotMessage[0][playerid]);
if(Spieler[playerid][pTotTime] > 0)
{
Spieler[playerid][pTotTime] --;
new zahl[24];
format(zahl, sizeof(zahl), "%i Sek.", Spieler[playerid][pTotTime]);
TextDrawSetString(TotMessage[0][playerid], zahl);
}
else
{
Spieler[playerid][pTotTime] = 0;
Spieler[playerid][pTot] = 0;
SpawnPlayer(playerid);
KillTimer(totwait[playerid]);
TextDrawHideForPlayer(playerid, TotMessage[0][playerid]);
}
}
}
return 1;
}
//OnPlayerSpawn
if(Spieler[playerid][pTot] == 1)
{
totwait[playerid] = SetTimerEx("OnPlayerTot", 1000, 1, "i", playerid);
FreezePlayer(playerid);
SetPlayerPos(playerid, 1160.4548,-1323.7255,31.4977-10);
SetPlayerCameraPos(playerid,1219.6372,-1345.0306,13.4939);
SetPlayerCameraLookAt(playerid,1160.4548,-1323.7255,31.4977-10);
ClearPlayerChat(playerid);
SendClientMessage(playerid, COLOR_LIGHTRED, "* Durch deine schweren Verletzungen liegt du nun für 2 Minuten im Krankenhaus.");
return 1;
}
public OnPlayerJail(playerid)
{
if(IsPlayerConnected(playerid) && gPlayerLogged[playerid])
{
if(Spieler[playerid][pJailed] == 1)
{
TextDrawShowForPlayer(playerid, JailMessage[0][playerid]);
if(Spieler[playerid][pJailTime] > 0)
{
Spieler[playerid][pJailTime] --;
new zahl[24];
format(zahl, sizeof(zahl), "%i Sek.", Spieler[playerid][pJailTime]);
TextDrawSetString(JailMessage[0][playerid], zahl);
}
else
{
Spieler[playerid][pJailed] = 0;
KillTimer(jailwait[playerid]);
GameTextForPlayer(playerid, "~g~Freiheit", 4000, 1);
TextDrawHideForPlayer(playerid, JailMessage[0][playerid]);
SetPlayerInterior(playerid, 0);
SetPlayerPos(playerid, 1544.4935,-1675.8558,13.5585);
SetPlayerVirtualWorld(playerid, 0);
}
}
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
if(Spieler[playerid][pJailed] == 0)//GangJailed, Paintball etc. später
{
Spieler[playerid][pTot] = 1;
Spieler[playerid][pTotTime] = 120;
}
Ich hoffe ihr könnt mir helfen.