Beiträge von Kaliber
-
-
Einfach sowas:
C
Alles anzeigen//Oben im Skript: new bool:ticket[MAX_PLAYERS char]; //Du erstellst ja z.B. irgendwo den zug: zug = AddStaticVehicle(...); //OnPlayerEnterVehicle if(vehicleid == zug && !IsPlayerNPC(playerid)) { if(!ticket{playerid}) { RemovePlayerFromVehicle(playerid); //Hier hat er halt kein Ticket... } else { ticket{playerid}=false; //Hier hat er es benutzt } } //Um dem Spieler irgendwo ein Ticket zu geben: if(ticket{playerid}) return SendClientMessage(playerid,-1,"Sie besitzen bereits ein Ticket!"); ticket{playerid} = true; //Hier gibst du ihm ein Ticket //Und unter OnPlayerConnect ticket{playerid}=false; //damit es immer resettet wird -
Lad mal das crashdetect Plugin und dann poste nochmal den Log

-
Also hier wäre mal ein Vorschlag, ich hoffe ich beantworte dadurch deine Fragen.
C
Alles anzeigen//Als erstes definieren wir die Anzahl der Routen: #define MAX_ROUTES 5 //Du erstellst eine Variable oben im Skript: new bool:routes[MAX_PLAYERS][MAX_ROUTES char]; /* bool - um Speicher zu sparen, dadurch nimmt die Variable nur die Werte 1 oder 0 an. char - packed die cells der Variable dadurch verbraucht eine Cell nicht 4 Byte, sondern nur noch 1 Byte */ //Um die Handhabung damit noch etwas einfacher zu machen, ein paar Makros und Funktionen: #define SetPlayerRoute(%0,%1) routes[%0]{%1}=true #define UnsetRoute(%0,%1) routes[%0]{%1}=false stock GetRoute(playerid) { for(new i; i<MAX_ROUTES; i++) if(routes[playerid]{i}) return i; return -1; } //Dann unter OnDialogResponse if(dialogid == DIALOG_MATERIALIEN) //Oder am besten mit einem switch arbeiten { if(!response) return 1; //Wenn er auf abbrechen klickt stoppen. if(GetRoute(playerid) != -1) return 1; //Hier hat er schon eine Route ausgewählt! SetPlayerRoute(playerid,listitem); //Hier setzen wir den Spieler direkt in die Route, die er angeklickt hat :) } //Dann zum resetten (am einfachsten einfach unter OnPlayerConnect) for(new i; i<MAX_ROUTES; i++) UnsetRoute(playerid,i); -
Ist ja nicht so, dass dieser Fehler nun schon 1000x durchgekaut wurde...es gibt ja keine SuFu..nur Jeffry

Hier: https://www.microsoft.com/de-d…oad/details.aspx?id=30679
Und da die VSU4\vcredist_x86.exe downloaden und installieren

PS: Wenn das nicht hilft, mal Windows Updates machen

-
Die beiden Sternchen da weg

-
-
Auch nicht welche, die vielleicht diesen Aktionen ähneln?
Nein.
Bei dem Fegen, kannst du aber anstelle einen Sweeper nehmen (574). Dann machste Cechkpoints und er soll diese abfahren.
Und anstelle des schüttelns, check einfach ob er gegen den Baum schlägt oder nicht

-
-
Ich kann mich irren, aber ich bin mir zu 90% sicher, dass solche Animationen leider nicht existieren.

-
Schau dir mal dein format an...du hast vergessen den Namen von dem Spieler da einzufügen

-
C
Alles anzeigenTextDrawers Pool = 0x00A913E8 ;------------------------------------------- StructSize = 68; StructsCount = 96; Total Pool Size = 68*96 = 6528 bytes ;------------------------------------------- TextDrawer struct = +0 dword letter width +4 dword letter height +8 byte[4] letter color RGBA +0B byte unknown_flag (opcode 0341h) +0C byte text_centered flag +0D byte text_in_box flag align +10 dword linewidth +14 dword unknown (lineheight?) (opcode 0344h) +18 dword background box color RGBA +1C byte text_proportional flag +1D byte[4] letter background color RGBA +21 byte shadow type (opcode 060Dh) +22 byte outline type (opcode 081Ch) +23 byte unknown flag (align left?) (opcode 03E0h) +24 byte align right flag (opcode 034Eh) align +28 dword Font (draw_style) +2C dword XPos +30 dword YPos +34 char[8] text GxtEntry +3C dword number param #1 (045Ah) +40 dword number param #2 (045Bh) +44 endVielleicht hilft dir das weiter...
Wenn nicht, versuche genauer zu erklären was du benötigst...
bzw google evtl:
http://gtaforums.com/topic/194…-memory-addresses/page-26
http://gtaforums.com/topic/194…esses/page-3#entry2925218 -
//Edit: Okay, dann so

-
Bin mir nicht genau sicher, was du suchst.
Aber geht das evtl in diese Richtung: gPM Nachrichtenverwaltung 1.3.2
mfg.

-
Google hilft da meistens, hab ich gehört.
http://www.willemer.de/informatik/unix/unprsock.htm
http://openbook.rheinwerk-verl…erkprogrammierung_004.htm
mfg.

-
Mache es einfach so:
C
Alles anzeigen//Das Makro für isnull #define isnull(%1) ((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1])))) ocmd:create(playerid, params[]) { if(isnull(params)) return SendClientMessage(playerid, COLOR_GREY, "Benutze: /create [ Pickup]"); if(!strcmp(params,"Pickup",true)) { //Hier hat er Pickup eingegeben } return 1; } -
Das kommt darauf an, was der Wert von der "index" Variable bei dir ist.
Wenn diese schreibbar ist..also z.B. 20, musst du das 20x auflisten...
Ansonsten einfach unter OnGameModeInit 2 Schleifen nutzen

-
-
Nein
Doch natürlich..ich rede hier von der Performanz...aber ok.
-
Der Fehler ist kein Klammerfehler.
Das kann, muss aber nicht sein.
Weil wenn man das Skript hat, permanent kompiliert alles gut läuft...dann einen Command hinzufügt und plötzlich 26 Errors hat...und zufälliger Weise habe ich auch schonmal vor etlichen Jahren an einem GF-Edit gearbeitet und mal eine Klammer vergessen und da kamen auch diese Fehler.Nichtsdestotrotz ist die strtok Funktion schlecht.
mfg.
