Du meinst wohl sehen und nicht erstellen:
- SetPlayerMapIcon
- Checkpoint Streamer wie zB das Plugin von Incognito
Beiträge von Goldkiller
-
-
-
Dann ist die Nachricht einfach zu lang.
[wiki]SendClientMessage[/wiki]
Zitatconst message[] - The text that will be displayed (max 144 characters).
The function executed successfully. Success is reported when the string is over 144 characters, but the message won't be sent.
-
Der Code reicht ja anscheinend nicht um deinen Fehler zu finden.
- Wie/wo erstellst du die ProgressBar (Code)
- Debug "SetPlayerProgressBarValue". Die Funktion kann 0 oder 1 returnen, je nachdem ob der Wert gesetzt wurde oder nicht. -
Brauchst du nicht, solltest du aber so machen. Ohne eine Schleife wäre es bischen viel schreibarbeit:
new Float:x,Float:y,Float:z;
GetVehiclePos(1,x,y,z);
//speichern
GetVehiclePos(2,x,y,z);
//speichern
GetVehiclePos(3,x,y,z);
// speichern ... bis MAX_VEHICLES - 1 -
Ich schreibe das jetzt mal nur hier und nicht in jeden deiner Threads.
- 6 mal falsche Sektion
- Für sowas gibt es den Sammelthread. Da schiebe ich deine Beiträge gleich rein.-- Erledigt :-0
-
Kannst den Parameter entweder entfernen oder sizeof durch strlen austauschen. Das mit der fehlenden Klammer hast ja schon selbst erkannt, nur an der falschen stelle. Es müssen 2 Klammern nach "inputtext" folgenden, damit a) strlen bzw sizeof geschlossen wird und b) strcmp.
-
Du könntest dir einfach mal item per print/printf ausgeben. Dann würdest du sehen, dass dort alles nach /fraktion steht und nicht nur das 1. Wort.
Gibst du "/fraktion create 10000 10000 1000 0 0 Grove" ein, dann ist item:
create 10000 10000 1000 0 0 GroveDa ich nicht sehe ob du sscanf1 oder sscanf2 benutzt, kann man das Problem auch über strcmp lösen.
[wiki]Strcmp[/wiki]
Man kann auch den Parameter length angeben, dann werden nur diese Zeichen geprüft.if(!strcmp(item, "create", false,6)) // item oder params; false würde ich in true ändern. Sonst ist CrEaTe nicht gleich create
bzw
if(!strcmp(item, "info", false,4)) // item oder params; false würde ich in true ändern. Sonst ist CrEaTe nicht gleich create -
Im Threadtitel steht was von ".. laden .. ", sehe aber nirgendwo ein SELECT. Sicher, dass du Laden und nicht Speichern / Erstellen (INSERT) meinst?
So oder so, sollte die Variable query zu klein sein. Stell es mal höher, 256 sollten fürs erste reichen. -
Die 0 wird bei Fahrzeuge nicht vergeben.
CreateVehicleZitat von SA-MP Wiki
Return Values:- The vehicle ID of the vehicle created (1 to MAX_VEHICLES).
- INVALID_VEHICLE_ID (65535) if vehicle was not created (vehicle limit reached or invalid vehicle model ID passed).
-
Sollte jetzt wieder passen.
-
Ich würde dir dringend empfehlen, die Logik zum erfassen der Reiniger-Zone in eine eigene Funktion auszulagern und nicht direkt in den Befehl zu packen.
-
Ebenfalls nur zur Erklärung:
IsPlayerInArea(playerid, 1449.4847,-1446.6949, 1557.6279,-1732.3186)
Das ist so nicht richtig, weil minY (-1446.6949) nicht kleiner ist als maxY (-1732.3186).-1732.3186 ist kleiner als -1446.6949 und somit sind die Werte vertauscht.
-1€ sind mehr (größer) als -50€, macht es vllt verständlicher. -
Hallo und tschüss (SupperDaddy, ~Lucas etc.).
-
Du hast vergessen, dass richtige MySQL Plugin in der server.cfg einzutragen. Sieht man daran:
Zitat[01:50:25] Error: Function not registered: 'mysql_query'
[01:50:25] Error: Function not registered: 'mysql_store_result'
[01:50:25] Error: Function not registered: 'mysql_free_result'
[01:50:25] Error: Function not registered: 'mysql_retrieve_row'
[01:50:25] Error: Function not registered: 'mysql_num_rows'
[01:50:25] Error: Function not registered: 'mysql_real_escape_string'
[01:50:25] Error: Function not registered: 'mysql_fetch_field_row'
[01:50:25] Error: Function not registered: 'mysql_fetch_int'
[01:50:25] Error: Function not registered: 'mysql_ping'
[01:50:25] Error: Function not registered: 'mysql_fetch_row_format'Du scheinst zwar "mysql_static.so" R31 zu laden, ist aber nicht das richtige Plugin. Sieht nach dem MySQL Plugin von G-sTyLeZzZ's in Version R6/7 aus.
[REL] MySQL Plugin (Now on github!) -
Falls du noch mehr Feedback möchtest:
- Zeile 162: Netter Hinweis, es schadet aber nicht es dann auch zu benutzen in Zeile 169
- Die Textdraws die du erstellst, sind nicht Spielerbezogen (LoginDraw1 - LoginDraw9,LoginDraw14-15). Du überschreibst die Variablen der Textdraws, sobald mehr als 1 Spieler auf dem Server ist (Hast du also nur alleine getestet). Selbst die PlayerTextdraws sind nicht wirklich Spielerbezogen. Du überschreibst auch hier immer die Variablen (LoginDraw10-LoginDraw13)
- Du erstellst pro PlayerConnect etwa 50 Objekte (Zeile 449 bis 502). Da du die DynamicObjects nicht für den Spieler erstellst (playerid Parameter), erstellst du dir damit unnötige Objekte. Das erstellen gehört einmalig, zum Beispiel OnGameModeInit. (Hast du ebenfalls nur alleine getestest)
- /restart: Eventuell alle Spieler speichern?
- /gotoxyz: Wie soll Zeile 854 und 855 gemeinsam funktionieren?
- /gethere: Der Spieler sitzt in einem Fahrzeug. Was nun?
- /veh: Wie soll Zeile 947 und 948 gemeinsam funktionieren?
- SavePlayer(): Totaler Schrott. Eine WHERE Klausel fehlt, ohne die macht das Speichern überhaupt keinen Sinn. Du würdest immer die Daten fremder Spieler überschreiben. (Hast du auch nur alleine getestet,*wenn überhaupt). Die Platzhalter sind falsch bei Geld und Neuling.Das sollte für den Anfang reichen
-
Ob das jetzt performanter ist, keine Ahnung. (Würde sowas auch mit sscanf machen)
Die Beschränkung auf 10 Zeichen für Vorname und Nachname find ich nicht so gut.
Je nachdem ob mein Vor- bzw Nachname mehr als 10 Zeichen hat, wird der Rest abgeschnitten. Da der Name sowieso nie länger als MAX_PLAYER_NAME sein kann, würde ich eher das als Größe für Vor- und Nachname nehmen. Lieber auf Nummer sicher gehen. ( Wobei 128 für beides definitiv zu groß ist :P, Siehe https://breadfish.de/index.php?thread/18-n%C3%BCtzliche-codeschnipsel/&postID=2166483#post2166483)Beispiel:
Markus_Hildebrandtname[0] = "Markus"
name[1] = "Hildebran" -
Müsste, tut es aber nicht.
- Zeile 6 ist falsch. Du hast den Index vergessen
- n[] wird nie hoch gezählt
- Du solltest darauf Hinweisen, dass man n[] beim Verbinden/Verlassen auf 0 setzen sollte (reset). -
- CrashDetect Plugin installieren
- pawn.cfg bearbeiten
- Script erneut kompilieren
- Server mit dem Befehl crashen lassen
- Auswertung aus der server_log hier posten mit passender PAWN ZeileDu kannst für PAWN Quellcode auch [pwn][/pwn] verwenden.
-
Beim Login bzw LoadAccount fehlt die Zuweisung des Levels auf die Variable "sInfo[playerid][alevel]".
SetPVarInt(playerid,"alevel",dini_Int(Spielerdatei,"alevel"));
Damit setzt du NICHT den Wert von alevel des Spielers ( sInfo[playerid][alevel] ).