Alternativ kannst du dir auch diesen Editor anschauen: forum.sa-mp.com/showthread.php?t=282883
Könnte mir jemand das pastebin in ne .txt Datei packen und hochladen? Bei dem Pastebin friert irgendwie mein Browser ein
Alternativ kannst du dir auch diesen Editor anschauen: forum.sa-mp.com/showthread.php?t=282883
Könnte mir jemand das pastebin in ne .txt Datei packen und hochladen? Bei dem Pastebin friert irgendwie mein Browser ein
Hey @Jeffry könntest du mir erklären wie man AttachObjectToVehicle richtig anwendet bzw ein Beispiel zeigen?
Habe immer das Problem gehabt dass ich immer ein Objekt erstellt habe bei OnGameModeInit und das denn Später an ein bestimmtes Fahrzeug attached, jedoch funktionierte es nie
naja mir gings eher um AttachObjectToVehicle nicht den 3D text zu attachen
Das mit Draw Distance 30.00 werde ich mal testen.. hatte es mal auf 10 und da ging es auch nicht
jo wie genau funktioniert AttachObjectToVehicle und Create3DTextLabel?
Immer wenn ich diese Sachen anwenden will passiert genau nichts.
Hab noch keinen Code für AttachObjectToVehicle da ich das nicht wieder ausprobiert habe seitdem es früher nie funktioniert hat
Ich kenn mich zwar nicht viels mit Bots aus aber ich denke mal es wäre für jeden hilfreich wenn du den code postest
Edit: Habe handle = mysql_connect vergessen, lol.
Car wird aber trotzdem nicht gespawnt
Edit 2.o: Es funktioniert wenn ich einen Timer auf 5 Sekunden setze bei OnGameModeInit und dort werden die vehicles gespawnt.
Im server_log gibst keine Fehlermeldung, steht halt es konnte keine verbindung aufgebaut werden und den MySQL log hab ich ja schon geposted
Jetzt kann keine connection zum MySQL Server aufgebaut werden
Ja ich benutze Port 3306
[20:05:13] [ERROR] mysql_query - invalid connection handle (id: 0)
[20:05:13] [WARNING] cache_get_data - no active cache
[20:05:13] [ERROR] cache_delete - invalid connection handle (id: 1)
[20:05:13] [ERROR] mysql_errno - invalid connection handle (id: 0)
[20:05:13] [WARNING] CMySQLHandle::Create - connection already exists
[20:05:13] [ERROR] mysql_errno - invalid connection handle (id: 0)
[20:05:13] [WARNING] CMySQLHandle::Create - connection already exists
[20:05:13] [ERROR] mysql_errno - invalid connection handle (id: 0)
[20:05:13] [ERROR] mysql_close - invalid connection handle (id: 0)
[20:05:26] [ERROR] mysql_query - invalid connection handle (id: 0)
[20:05:26] [WARNING] cache_get_data - no active cache
[20:05:26] [ERROR] cache_delete - invalid connection handle (id: 1)
[20:05:26] [ERROR] mysql_errno - invalid connection handle (id: 0)
[20:05:26] [WARNING] CMySQLHandle::Create - connection already exists
[20:05:26] [ERROR] mysql_errno - invalid connection handle (id: 0)
[20:05:26] [WARNING] CMySQLHandle::Create - connection already exists
[20:05:26] [ERROR] mysql_errno - invalid connection handle (id: 0)
[20:05:26] [ERROR] mysql_close - invalid connection handle (id: 0)
Alles anzeigen
Mal so ne willkürliche Frage, bist du sicher dass es nname ist und nicht name?
Ich hab eigentlich nix anders außer die Stock von dem Renz und das basic MySQL tutorial von jeffry.
Also ne handle gibt es aber ka wo die gespeichert wird da das einfach copy/paste von Jeffry war
Naja die fahrzeuge spawnen nicht in meinem SQL log steht:
Keine Ahnung was ich ändern muss
[19:01:03] [ERROR] mysql_query - invalid connection handle (id: 0)
[19:01:03] [WARNING] cache_get_data - no active cache
[19:01:03] [ERROR] cache_delete - invalid connection handle (id: 1)
Edit: Meine User DB lädt es aber die Fahrzeuge ka
Funktioniert bei mir irwie nicht so gut.
gamemodeinit
stock LoadVehs()
{
new rows,fields;
new Cache:Vehs = mysql_query(handle, "SELECT * FROM `fahrzeuge`",true);
cache_get_data(rows,fields);
for(new i=0;i<rows;i++)
{
Vehicle[i][VID] = cache_get_field_content_int(i, "id");
Vehicle[i][fModel] = cache_get_field_content_int(i, "modelid");
Vehicle[i][fSposX] = cache_get_field_content_float(i, "sPos-X");
Vehicle[i][fSposY] = cache_get_field_content_float(i, "sPos-Y");
Vehicle[i][fSposZ] = cache_get_field_content_float(i, "sPos-Z");
Vehicle[i][fSposO] = cache_get_field_content_float(i, "sPos-O");
Vehicle[i][fColor1] = cache_get_field_content_int(i, "color_1");
Vehicle[i][fColor2] = cache_get_field_content_int(i, "color_2");
Vehicle[i][fFrak] = cache_get_field_content_int(i, "fraktion_id");
Vehicle[i][fSirene] = cache_get_field_content_int(i, "sirene");
Vehicle[i][fFuel] = cache_get_field_content_int(i, "tank");
cache_get_field_content(i,"Besitzer", Vehicle[i][fOwner],handle,32);
cache_get_field_content(i,"Besitzer", Vehicle[i][fLastDriver],handle,32);
cache_get_field_content(i,"Second_Key", Vehicle[i][fSecond_Owner],handle,32);
cache_get_field_content(i,"Nummernschild", Vehicle[i][fPlate],handle,32);
SetVehicleParamsEx(i, false, false, false, false, false, false, false);
new cCarID = CreateVehicle(Vehicle[i][fModel],Vehicle[i][fSposX],Vehicle[i][fSposY],Vehicle[i][fSposZ],Vehicle[i][fSposO],Vehicle[i][fColor1],Vehicle[i][fColor2], CAR_RESPAWN_TIME,Vehicle[i][fSirene]);
SetVehicleNumberPlate(cCarID, Vehicle[i][fPlate]);
}
cache_delete(Vehs);
return 1;
}
Alles anzeigen
Ne eig garnet
CodeAlles anzeigenstock LoadVehs() { new rows,fields; new Cache:Vehs = mysql_query(mysql_handle, "SELECT * FROM `Fahrzeuge`",true); cache_get_data(rows,fields); for(new i=0;i<rows;i++) { Vehicle[i][VID] = cache_get_field_content_int(i, "ID"); Vehicle[i][ModelID] = cache_get_field_content_int(i, "Modell"); Vehicle[i][vPosX] = cache_get_field_content_float(i, "X"); Vehicle[i][vPosY] = cache_get_field_content_float(i, "Y"); Vehicle[i][vPosZ] = cache_get_field_content_float(i, "Z"); Vehicle[i][vPosA] = cache_get_field_content_float(i, "A"); Vehicle[i][Color1] = cache_get_field_content_int(i, "Farbe1"); Vehicle[i][Color2] = cache_get_field_content_int(i, "Farbe2"); Vehicle[i][Color2] = cache_get_field_content_int(i, "Car_Destroyed"); cache_get_field_content(i,"Besitzer", Vehicle[i][Ownername],mysql_handle,32); cache_get_field_content(i,"Second_Key", Vehicle[i][Second_Owner],mysql_handle,32); cache_get_field_content(i,"Nummernschild", Vehicle[i][Plate],mysql_handle,32); SetVehicleParamsEx(i, false, false, false, false, false, false, false); new cCarID = CreateVehicle(Vehicle[i][ModelID],Vehicle[i][vPosX],Vehicle[i][vPosY],Vehicle[i][vPosZ],Vehicle[i][vPosA],Vehicle[i][Color1],Vehicle[i][Color1], CAR_RESPAWN_TIME,0); SetVehicleNumberPlate(cCarID, Vehicle[i][Plate]); } cache_delete(Vehs); return 1; }
Trag die Daten direkt in ein Enum ein, falls du sie später noch brauchst...^^
Was hast du das bei i im new; vom enum verwendet? new Vehicle[MAX_VEHICLES][fDataEnum]; so als Beispiel?
wärs da auch möglich ein eher mehr dynamisches system zu machen wie z.B. das MySQL tutorial bei Jeffry bloß als Fahrzeug?
Kann ja nicht einfach [MAX_PLAYERS] durch MAX_VEHICLES ersetzen da das Fahrzeug ja noch gar nicht existiert, brauche nämlich Fahrzeug-Daten aus der MySQL datenbank die zum Fahrzeug verlinkt sind ingame, am besten ohne dann immer ne endlos lange zeile mit cache_get und son kram
z.B. Fraktions-ID bzw. Besitzer, Tank, KM-Stand
wenn ich da jedes mal dieses cache_get_field und son kram vor dem Feld machen muss dann wird das ne verdammt lange reihe xD
Habe mal vor ein kleines MySQL Datenbank Fahrzeugsystem selber zu erschaffen da ich mal sehen will was ich noch kann und wie gut es geht.
Da habe ich aber noch ein paar Fragen bevor ich richtig Anfange:
Wenn ich jedes Fahrzeug spawnen will, was in der Datenbank ist, wie mache ich das denn am besten? Ne Schleife machen die jede ID in der Datenbank einmal auf und ab spawnt? Wie verhindere ich dass es dieselben Fahrzeuge auf einmal spawnt?
Naja auf die altmodische Art wir wollen jetzt nicht wirklich immer deine Drecksarbeit erledigen bzw. für dich ganze Codes scripten, nach Hilfe zu fragen ist ja immer OK da nicht jeder alles weiß aber ich find das auch schon ein bisschen gemein von dir wenn du nicht mal versuchst scripten zu lernen und hier erwartest dass wir hier alles für dich machen
Auf RPG City benutze ich folgenden:
Wenn man dort jemanden tötet bekommt man eine Nachricht die enthält, dass man 2/1 Wanteds wegen Mord erhält, jetzt aktiviert ich den timer (SetTimer, 1erTimer, 1) und er ließt jede Millisekunde den Chat aus und guckt nach ob ich die Nachricht bekommen habe, falls ja dann fügt er der Datei +1 Kill hinzu und sendet im /F (Fraktion) eine Nachricht
1erTimer:
GetChatLine(0, CL0)
GetChatLine(1, CL1)
If(CL1= "Du hast ein Verbrechen begangen ( Mord ). Zeuge: Niemand.")
{
IniRead, Killspruch, %A_ScriptDir%\geiledaten\Daten.ini, KD, kspruch
IniRead, kills, %A_ScriptDir%\geiledaten\Daten.ini, KD, kills, 0
kills ++
IniWrite, %kills%, %A_ScriptDir%\geiledaten\Daten.ini, KD, kills
SendChat("/f +1 Snack in " getPlayerZone() ", " getPlayerCity() " Gesamt:" kills ".")
}
SetTimer, 1erTimer, 1
return
Alles anzeigen
Edit: Find ichn bisschen blöd ihn die Antwort bzw. die Lösung per Nachricht zu schicken da dies ein öffentliches Forum ist und falls jemand anders nach derselben Lösung sucht kann er sie jetzt wenigstens hier finden
Installiere AHK mit Ansii 32 Bit
Wieso möchte man überhaupt einen Server/script haben wenn man nicht mal einen Scripter hat oder es selber machen kann?
Das verstehe ich jetzt nicht so richtig