Das Plugin erwartet 12 Parameter bei der Funktion CreateDynamicObject() , aber es werden nur 11 übergeben. Heißt soviel wie deine Include passt nicht zum Plugin -> ungleiche Versionen.
Beiträge von Douq
-
-
Die Verwendung von PVarInt() ist der Fehler, benutze einfach eine globale Variable des Typs boolean und setz die auf true / false, jenachdem ob die Registration an / aus sein soll.
-
Quatsch.. Wenn du ihm die Taste verbietest zu Drücken passiert nichts.Du kannst schonmal keine Tasten verbieten, sondern nur Funktionen von Tasten (wobei das so nicht mal gehen würde). Auch wäre das Abschießen von Raketen in der Hydra nicht KEY_FIRE sondern KEY_ACTION. Aber ja, es ist möglich die Raketen zu desync.
-
Wenn der Spieler bereits unter Wasser ist, würde ich einfach die Z Koordinarte vom Fahrzeug mir holen und bei einer gewissen Grenze dann das Fahrzeug via. SetVehicleVelocity nach unten drücken, ist in meinen Augen eine sinnigere Lösung als via. SetVehiclePos. Das ganze dann über OnPlayerUpdate() , dann kannst dir direkt den Timer sparen.
-
Print dir doch mal die objektid...existiert diese denn?
Und bist du sicher, dass sie nicht an den 0 Koordinaten ist?
mfg.
Das einfachste zur Überprüfung wäre (in meinen Augen) folgendes: printf("-- %d --", IsValidObject(objectid));
Sollte er dir dort 0 wieder geben, existiert die ObjektID nicht auf dem Server.Eventuell übergibst du die ObjektID falsch?
#Edit:
Ich sehe gerade den Fehler, du erstellst die Objekte mit einem Streamer oder? Probier mal GetDynamicObjectPos aus. -
Ich hoffe du erkennst selbst die Paradoxität deiner Aussage.Wenn du mit Threaded Querys arbeiten willst, brauchst du einen Callback, ansonsten musst du mysql_query verwenden
mfg.
Was für ein Quark, das Callback + die Parameter sind optionale Angaben und müssen nicht mit angegeben werden bzw. können leer ("") gelassen werden. Bei mysql_query() wartet der Server auf die Antwort von dem SQL Server, was bei diesem Query völlig unnötig wäre.
#Anhang (edit):
Es ist selten empfehlenswert als Suchkriterium bei einem Query einen string zu verwenden. Ich empfehle dir mit der unique ID (primary Key) des Datensatzes zu arbeiten. Falls du dich weigern solltest, empfehle ich dir wenigstens ein Limit von 1 beim Query zu setzen, da er trotz erfolgreichem Finden deines Datensatzes weitersucht. Kritisches Beispiel: Du hast 100.000 Accounts und der Ziel-Datensatz ist der dritte Account. Da der SQL Server aber nicht weiß, dass es nur einen Account mit diesem Namen gibt, sucht er die weiteren 999.997 Datensätze weiter ab -> unnötige Arbeit. -
Aber dann könnte es JEDES Objekt, was vom Server ist, denken, wie z.B. ein LSPD Tor oder wenn das LSPD total zugemappt ist
Glaub mir eins, ich mach mir oft mehrmals über verschiedene Szenarien gedanken, bevor ich was schreibNein? GetObjectPos() hat als ersten Parameter die ObjektID?
-
Einfach per GetObjectPos() die Position des Objektes ermitteln und dann per IsPlayerInRangeOfPoint() überprüfen, ob der Spieler im angegebenden Radius um die Koordinaten ist.
-
.........
Wo den jetzt bei welchem Expander.... da haben 3 Pawno Queltexte Zeile 15...
Ok ja, das war dämlich. Im zweiten (Register Login Stocks). -
Einfach nach der Zeile 15 die Funktion Spielerladen() aufrufen.
-
Du musst das Symbol '#' entfernen.
-
Punkt 1: Ich habe mich mal an die Position teleportiert in jedem Interior und bin jedesmal runtergefallen. Ich würde einfach mal meinen oben genannten Vorschlag umsetzen.
Punkt 2: Du setzt lediglich die .ini Werte, aber nicht die spielerbezogenden Variabeln. Sofern die Accountinformation nach dem Registrieren nicht geladen werden, ist das deine Fehlerquelle. Entweder du rufst deine Account-laden-Funktion nach deiner Register-Funktion auf, oder du setzt die einzelnen Variablen in der Registerfunktion entsprechend (z.B. Spieler[playerid][Skin] = 97).
Du rufst aber die Funktion Spielerspeichern() in OnPlayerDisconnect() auf.
-
Er soll also für 5 Sekunden die Interior Toiletten Tür sagen, ein Spruch hören und wieder davor gesetzt werden.
Es geht alles nur er wird nicht davor gesetzt er stirbt dann weil er irgendwie von der Map fällt und ist tot.Ist der Boden, auf dem Spieler währenddessen steht selbst gemappt? Falls ja, würde ich den Spieler einfach per TogglePlayerControllable() freezen und beim Zurücksetzen entfreezen. Sofern erste Frage bejaht wird, ist das (vermutlich) die Lösung zu diesem Fehler.
Bei mir geht es nur manchmal ist es so das alles zurück gesetzt wird vom Enum...
Woran kann es liegen?Ich empfehle dir GetPlayerSkin() nicht unter OnPlayerDisconnect zu verwenden, da dies unter manchen Umständen zu Fehlern führen kann (gibt ID 0 zurück). Wo liegt denn der genau der Fehler? Wird dem Spieler SkinID 0 gesetzt oder erhält der eine völlig falsche ID?
-
Könntest du mir den da irgendwie vor machen, da ich grad wirklich ein bisschen
bin.
Grüße.
Könntest du mir den da irgendwie vor machen, da ich grad wirklich ein bisschen
bin.
Grüße.
if(strfind(cmd,"einladen",true) != -1)
{
new pID,einladen[200],einladen1[200];
if(sscanf(params,"s[10]u",cmd,pID))return SendClientMessage(playerid,Grau,"Verwende: /interview einladen [SpielerName/ID]");
Die Verwendung von strfind() ist deshalb nötig, da in der Variable cmd beispielsweiße "einladen 10" stehen würde und somit der Vergleich durch strcmp() fehlschlagen würde -> Bedingung wäre nicht erfüllt./edit: Grammatikfehler behoben.
-
Wie es ausschaut, ist dir die Funktionsweiße von sscanf() nicht geläufig oder du hast es schlichtweg übersehen: In Zeile 12 sollten 2 Variabeln angegeben werden, vorweg cmd und folgend pID. Auch wäre die Verwendung von strcmp() in Zeile 9 fehlerhaft, würde dir da dann zu strfind() raten.
-
Der Code ist richtig und sollte wunderbar funktionieren. Sicher, dass die Differenz von 0.2 bei der Z-Koordinarte nicht einfach zu gering ist und du es deshalb nicht siehst? Denn diese Bewegung ist innerhalb von ~50 MS fertig und bei so einer geringen Verschiebung kaum sichtbar.
-
Zitat
[14:56:03] Loading plugin: sscanf
[14:56:04] Failed.
Du versuchst das sscanf Plugin zu laden, aber das schlägt fehl. Da das Skript / Server auf Funktionen von sscanf zugreifen möchte, diese aber durch kein Plugin geladen werden konnten, kommen halt diese Fehler. Ist denn das Plugin sscanf auch im Pluginordner?
-
Bekomme dann folgenden Error:
error 035: argument type mismatch (argument 3)
In fogender Zeile:
dini_Set(SpielerD,"Herkunft",GetPVarString(playerid,"Herkunft"));
Weil GetPVarString() auch keinen string, sondern die Länge des Strings (sprich einen Integer) zurückgibt. Wie die richtige Verwendung von GetPVarString() aussieht, kannst du im Wikibeitrag nachlesen.
-
du hast nicht kappiert was ich meine?
dini_Set(SpielerD,"Herkunft",GetPVarString(playerid,"Herkunft"));Ich arbeite aber net mit PVars ich hoffe die Paramenter sind richtig
Nein sind sie nicht, GetPVarString hat 4 Parameter. Habe einmal den Wikibeitrag dazu rausgesucht und verlinkt. Sollte dir das nicht weiterhelfen, weißst du ja wo du mich finden kannst Askari
.
-
Die geschweiften Klammern in Zeile 18 und 31 sind sicherlich nicht gewollt (-> entfernen).