SetPVarInt(playerid, "deaths", 10);
Per-Player Variablen-System (PVars)
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
-
-
Ja Max Player hab ich, aber ich Speicher nicht jede Max Player variable ab!.
und ihr meint es ist fürs Speichern. -
was ist besser, normale variable mit bool oder pvars
-
-
Pass auf, ich verwende Variablen, die ich nicht in einer datei Speicher. Sondern wie zum beispiel new Firstconnect[MAX_PLAYERS].
Diese Variable wird nicht in einer Datei gespeichert spondern ist nach jedem reconnect des Spielers auf 0.
So meine frage lautete ob man pVars für soetwas verwenden kann. Oder es nur eine Option ist zum Abspeichern.
Verstanden?Ich kenne mich schon ganz gut mit Scripten aus. Nur sind diese Pvars neu für mich.
mfg Micha -
Pass auf, ich verwende Variablen, die ich nicht in einer datei Speicher. Sondern wie zum beispiel new Firstconnect[MAX_PLAYERS].
Diese Variable wird nicht in einer Datei gespeichert spondern ist nach jedem reconnect des Spielers auf 0.
So meine frage lautete ob man pVars für soetwas verwenden kann. Oder es nur eine Option ist zum Abspeichern.
Verstanden?Ich kenne mich schon ganz gut mit Scripten aus. Nur sind diese Pvars neu für mich.
mfg Micha
So wie ich das verstanden habe, ist Pvar genau dazu da
Das :
new bool:IstInBsn[MAX_PLAYERS];public OnPlayerConnect(...) {
IstInBsn[playerid] =0;
}
public OnPLayerDeath(...) {
IstInBsn[playerid] =0;
}
OnPlayerDisconnect( ...) {
IstInBsn[playerid] =0;
}
....
if(pickupid = ...) {
IstInBsn[playerid] =1;
}Wird zu :
if(pickupid = ...) {
SetPVarInt(playerid,"IstInBsn", 1);
}public OnPlayerDeath(...) {
DeletePVar(playerid, "IstInBsn");
}So sieht viel kürzer aus und ist auch weniger Scriptlastiger. Ich hoffe ich habe jetzt kein Müll gelabert
-
ahaa, na wenn es so ist kann ich es schon verwenden. Danke dir
edit: Und man braucht so keine New's?Mfg micha
-
Ja schon klar das mein ich ja^^
-
Genau ds ist der Punkt! Es werden keine MAX_PLAYERS Arrays mehr gebraucht, da es nun viel schneller, schöner und schonender über pVars geht.
-
Ein Problem ist gerade aufgekommen und zwar möchte ich meiner Pvar "geldh" über einer funktion einen bestimmten Wert hinzufügen also +... aber das nimmt er nicht an hier ist mal der code :
stock GiveUserMoney(playerid,amount)
{
SetPVarInt(playerid,"geldh", +amount);
GivePlayerMoney(playerid,amount);
}
Wenn ich das + wegenehmen würde, dann würde der gewünschte Betrag nicht hinzugefügt sondern der Wert von geldh wird nur in diesen geändert -
-
stock GiveUserMoney(playerid,amount)
{
SetPVarInt(playerid,"geldh", GetPVarInt(playerid, "geldh")+amount);
GivePlayerMoney(playerid,amount);
}Du musst ihm ja noch sagen, zu welchem Betrag er addieren soll.
-
Weiß einer ob man die SetPVarInt auch für die Vehicle ID benutzen kann? Denn was ist noch härter als MAX_PLAYERS (500) MAX_VEHICLES(5000)...
-
Nein kannst du nicht.
Das sind Variablen, die sich auf einen Spieler beziehen und dass kannst du nicht ändern.
Für Fahrzeuge musst du weiterhin arrays oder enums verwenden.Mal schauen was in samp 0.3b so neues kommt.
vielleicht sind ja Vehicle-Variablen dabei -
Das mit den Fahrzeugen ließe sich auch mit setproperty regeln aber
kann ich nicht empfehlen, da es wohl den Server ins stolpern bringt, ansonsten
einfach ein Plugins dazu schreiben, schwer ist allemal nicht -
Naja, direkt ist es noch nicht notwendig, da man MAX_VEHICLES nicht sooooo oft verwendet wie MAX_PLAYERS.
-
wenn jemand den server verlässt
macht es da ein unterschied ob ich die variablen lösche oder nicht? -
Ne, das ist ja einer der Vorteile der Sache. Du musst sie weder am Connecten noch am Disconnecten auf 0 setzen.
-
Naja, direkt ist es noch nicht notwendig, da man MAX_VEHICLES nicht sooooo oft verwendet wie MAX_PLAYERS.
Da das Limit bei 2000 Fahrzeugen liegt, wäre das ganze doch schon etwas besser.
-
Mhh, ja da hast du Recht. Aber ich wüsste nicht direkt, wie man das jetzt auf eine schöne Weise umgehen kann.
Nicht so schön, wie bei dem pVar System. -
ich meinte eigentlich nicht auf 0 setzen, sondern löschen