Hallo
Ich habe eine frage ist sehr wichtig
Ich habe vor ein Friedhof zu machen da ändere ich das wetter von spieler so ganz dunkel und wenn er wieder raus kommt aus friedhof soll das wetter von Server wieder kommen
weis einer wie das geht?
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
ganz einfach...
wenn der Spieler auf den Friedhof kommt, also ich denke mal dass, dies passiert, wenn er stirbt also unter onplayerdeath. zuerst erstellst du eine Variable. Ganz oben im Script einfach hinschreiben:
new bool:friedhof[MAX_PLAYERS] = false;
dann unter OnPlayerSpawn machst du eine Abfrage, ob der Spieler auf den Friedhof gehört
unter public OnPlayerSpawn:
if(friedhof[playerid] == true)
{
SetPlayerPos(playerid,X,Y,Z);//Hier die Koordinaten vom Friedhof hin
SetPlayerWeather(playerid,Wetterid);//Hier das Wetter, das du haben willst als: Wetterid
SendClientMessage(playerid,0x55FF00FF,"Du bist nun auf dem Friedhof!");
}unter onplayerdeath kommt dann:
friedhof[playerid] = true;
nun musst du nur noch die Variable nach einer bestimmten Zeit wieder auf false setzen lassen, also baue einen Timer mit:
SetPlayerTimerEx
ein und eine funktion, welche die variable wieder auf false setzt.
Ich hoffe ich konnte helfen.
Mit freundlichen Grüßen
Max Berger -
ne nicht so ganz das habe ich ja shcon so nur wie geht da smit den wetter das wetter bleib dann gleich in meine fall 45 und es soll dan wieder z.b 12 werden oder was grade auf den server ist
-
Setz einen Timer mit nem public wenn der timer abgelaufen ist
führt er das public aus und setzt das Wetter auf deine ID
SetPlayerWeather(playerid,Wetterid); -
Wie jetzt aber da kriege ich ja nicht raus welches Wetter grade ist
-
new Wetters[MAX_PLAYERS];
beim geben des WettersWetters[playerid] = Wetterid;
dann beim abfragen:
if(Wetter[playerid] == Deine ID)
{ -
also bei deine id kommt da ein spieler hin der ganze zeit on ist und immer so leben und nie auf friedhof ist richtig
-
-
ja ist schon richtig jetzt muss ich abfragen welche wetter id der server grade hat
-
Das machst du doch mit dem code mensch o.o
es gibt von samp kein abfrage code daswegen musst du es so machen wie ich es dir sagte !!!Beim Sterben
Wetters[playerid] = 15; //wetter 15
wenn er vom friedhof runter ist fragst du es
welche Wetterid die Spieler haben die nicht auf dem Friedhof sind und
gibst ihn die Wetterid dann -
-
Ich kapier das nicht geht das if das check ich net
-
Sagen wir mal der Spieler Stirbt und du willst ihn wetterid 15 geben
dann nimmst du dein public Onplayerspawn und da wo du ihn auf dem Friedhof bringst
Setzt du das Wetter auf 15 dann wenn er fertig ist Was mit einem Timer läuft denke ich mal
Fragst du ab welches Wetter die anderen Spieler haben die nicht auf dem Friedhof sind und dann gibst du
den Spieler das wetter -
mach mir mal bitte die abfrege alsowie ich abfrage welches wetter die anderen haben
-
du benötigst keinen Array für das Wetter. Es reicht wenn du das globale Wetter in einer Variable speicherst.
new Wetter;
Das Wetter wird ja vom Gamemode aus gesetzt. D.h. an der Stelle wo das Wetter gesetzt wird:
Wetter = ...;Und dann an der Stelle wo der Spieler vom Friedhof wegkommt:
SetPlayerWeather(playerid, Wetter); -
ah habs gecheckt danke es geht jetzt
-
breadfish.de
Hat das Thema geschlossen.