Hallo Breadfish Community,
Ich und mein Kumpel Scripten an einen "Test" Projekt wo wir uns austoben und austesten. Deswegen würde ich gerne wissen wie man so ein Timer macht wenn man stirbt das man z.b. 60 Sekunden warten muss.
danke im vorraus
Hallo Breadfish Community,
Ich und mein Kumpel Scripten an einen "Test" Projekt wo wir uns austoben und austesten. Deswegen würde ich gerne wissen wie man so ein Timer macht wenn man stirbt das man z.b. 60 Sekunden warten muss.
danke im vorraus
SetTimerEx unter OnPlayerDeath
Ist nicht die beste Methode aber ich habe keine Lust jetzt ein code hinzuklatschen den ich dann erklären muss
new bool:tot[MAX_PLAYERS];
Unter OnPlayerDeath
tot[playerid] = 1;
Unter OnplayerSpawn
if(tot[playerid] == 1)
{
SetTimerEx("Auferstehung", 1000*60, false ,"i",playerid);
// Und halt die Funktion die ihr noch haben wollt, z.B wo er warten soll..
}
forward Auferstehung(playerid);
public Auferstehung(playerid)
{
SpawnPlayer(playerid);
tot[playerid] = 0;
return 1;
}
SetTimerEx("todseinundso",2 * 1000,0,"d",playerid);
forward todseinundso(playerid);
public todseinundso(playerid)
{
SendClientMessage(playerid,-1,"Du bist Tod!");
ToggleplayerControllable(playerid,0);
SetTimerEx("bämichlebe",60 * 1000,0,"d",playerid);
}
forward bämichlebe(playerid);
public bämichlebe(playerid)
{
TogglePlayerControllable(playerid,1);
SendClientMessage(playerid,-1,"Du lebst! PIZZA VON WAGNER");
}
Du musst halt noch die Kamera ans KH Setzen usw. aber das kriegst du selbst hin
Ein bool gibt nur zwei werte raus, nämlich 0 und 1 , false und true.
richtig, jedoch bekommst du bei 1 und 0 nen tag missatch..
nur true für 1, und false für 0
hm du hast Recht, warum?
Weiß nicht genau, aber es nimmt keine zahlen, nur true und false.
@threadstarter Korrektur, verbessere tot[playerid] == 1 die 1 in true und bei 0 in false.
Music, danke , hab bool nicht sonderlich viel zu tun :=)
hm du hast Recht, warum?
http://wiki.sa-mp.com/wiki/Scripting_Basics_DE#Boolean
Boolesche Werte gibt es nur zwei. Die sind in PAWN als "true" (!= 0) und false (= 0) definiert. Du kannst, wenn du als Tag "bool" angibst, auch nur true oder false angeben, da weniger Speicher für die variable reserviert wird, und sie daher nur zwei Werte annehmen kann (0/1 = false/true). Durch die Angabe eines Integers (0/1/...) könntest du ja viel mehr angeben, was die Boolesche Variable sprengt. Was du aber machen kannst ist folgendes:
new bool:test;
test = bool:1;
Das würde nun true entsprechen. Wie schon gesagt würde auch "bool:1245221" true entsprechen, da true => != 0
--------------------
Zum Thread:
Das was [DT]deed in seinem ersten Post schon geschrieben hat, nur ohne bool, bzw. 1/0 geändert zu true/false (Erklärung oben^).
So erstmal ein fettes danke an alle habe mehrere Methoden versucht und dann schließlich eine gefunden die mir am meisten gefällt und eben bearbeitet
Jetzt habe ich nur das problem wenn ich die Kamera auf das Krankenhaus setze wenn ich tot bin, ist das Bild vom Krankenhaus verschwommen... kann mir da einer helfen oder sind das nur fehler von meinen PC?
Das liegt daran, dass du die Position des Spielers zu weit vom.Krankenhaus entfernt gesetzt hast. Deshalb siehst du nur die LOD des Objekts.
Um das zu beheben einfach den Spieler nahe ans Krankenhaus setzen.
Setz den Spieler unter der Kamera Position oder unter den Boden und Freeze ihn
ok hat soweit alles geklappt. Danke