Hallo Breadfisher!
Ich sitze gerade an einem Befehl (/escape), er geht auch soweit, jedoch klappt das nicht wenn ich will dass man den Befehl nur alle 10 Minuten ausführen kann.
Eventuell kann mir ja jemand von euch helfen.
Hier mal alles was mit dem Befehl zu tun hat:
Ganz am Anfang vom Script:
new CanEscape[MAX_PLAYERS];
forward Escape(playerid);
forward CheckEscape(playerid);
Der Public Escape:
public Escape(playerid)
{
new Zufall;
Zufall = random(10);
switch(Zufall)
{
case 0,1,2,3,5,6,7,8,9:
{
SendClientMessage(playerid,COLOR_GRAD1,"Du hast es nicht geschafft aus dem Gefängnis auszubrechen!");
SendClientMessage(playerid,COLOR_GRAD1,"Die Polizisten haben es gemerkt!");
SendClientMessage(playerid,COLOR_GRAD1,"Du musst nun 10 Minuten bis zum nächsten Fluchtversuch warten!");
return 1;
}
case 10:
{
SendClientMessage(playerid,COLOR_GRAD1,"Du hast es geschafft! Du bist frei!");
SendClientMessage(playerid,COLOR_GRAD1,"Hau ab bevor die Cops es merken!");
SendClientMessage(playerid,COLOR_GRAD1,"Du musst nun 10 Minuten bis zum nächsten Fluchtversuch warten!");
PlayerInfo[playerid][pJailTime] = 1;
return 1;
}
}
return 1;
}
Und jetzt kommt das, was irgendwie "buggt"
der Public "CheckEscape":
public CheckEscape(playerid)
{
CanEscape[playerid] = 0;
return 1;
}
Unter OnGameModeInit:
CanEscape[playerid] = 1;
Und hier noch der eigenltliche Befehl:
if(strcmp(cmd, "/escape", true) == 0)
{
if(PlayerInfo[playerid][pJailed] == 1)
{
if(CanEscape[playerid] == 1)
{
//SetTimer("Escape",20000,0);
SetTimerEx("Escape", 20000, 0, "d", playerid);
SetTimerEx("CheckEscape",600000,0,"d", playerid);
SendClientMessage(playerid,COLOR_PURPLE,"Fluchtversuch gestartet!");
return 1;
}
else
{
SendClientMessage(playerid,COLOR_GRAD1,"Du hast in den letzten 10 Minuten schon einen Fluchtversuch gestartet! Du musst noch warten!");
return 1;
}
}
else
{
SendClientMessage(playerid,COLOR_GRAD1,"Du kannst nicht flüchten da du nicht im Knast bist!");
return 1;
}
}
Ich hoffe mal, jemand kann mir erklären warum ich Ingame so oft wie ich will "/escape" machen kann, und das auch immer klappt? ;/