Tatsächlich! Daran lag es. Sobald ich \ statt / nutze, tauchen die Errors wieder auf.
[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
-
-
Gibt es bei SQLite auch sowas wie InsertID?
-
Gibt es bei SQLite auch sowas wie InsertID?
Was genau meinst du?
-
Will beim erstellen den Autoincrement schlüssel haben ohne eine extra abfrage dafür zu machen machen.
Das Wiki gibt mir dazu wenig infos -
Will beim erstellen den Autoincrement schlüssel haben ohne eine extra abfrage dafür zu machen machen.
Es gibt:
SELECT last_insert_rowid() FROM Table
Aber keine Ahnung, was genau du suchst
-
Hi ich habe das problem das wenn ich InGame das geschenk lösche wird es ingame gelöscht aber nicht von der Datenbank.
stock RemoveGeschenk(playerid)
{
new bool:bFound = false;
for(new i = 0; i < MaxGeschenke; i++)
{
if(Geschenke[i][Erstellt] == 1)
{
if(IsPlayerInRangeOfPoint(playerid, 2, Geschenke[i][GeschenkX], Geschenke[i][GeschenkY], Geschenke[i][GeschenkZ]))
{
new query[264];
Geschenke[i][Erstellt] = 0;
Geschenke[i][GeschenkX] = 0.0;
Geschenke[i][GeschenkY] = 0.0;
Geschenke[i][GeschenkZ] = 0.0;
Geschenke[i][Object] = DestroyObject(Geschenke[i][Object]);
Geschenke[i][Label] = Delete3DTextLabel(Geschenke[i][Label]);
SendClientMessage(playerid, ROT, "Geschenk Gelöscht");
mysql_format(handle, query, sizeof(query), "DELETE FROM `geschenke` WHERE `id` = '%d'",Geschenke[i][ID]);
mysql_pquery(handle, query);
return 1;
}
}
}if(!bFound)
SendClientMessage(playerid, ROT, "Du befindest dich nicht an einem Geschenk");return !bFound;
}Beim Erstellen wird es in die Datenbank eingetragen.
stock AddGeschenk(playerid, ersteller[])
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid,x,y,z);
for(new i = 0; i < MaxGeschenke; i++)
{
if(Geschenke[i][Erstellt] == 0)
{
new query[264];
Geschenke[i][GeschenkX] = x + 1.0;
Geschenke[i][GeschenkY] = y + 1.0;
Geschenke[i][GeschenkZ] = z;
Geschenke[i][Erstellt] = 1;
Geschenke[i][Object] = CreateObject(1276,x,y,z,0,0,0);
Geschenke[i][Label] = Create3DTextLabel("{D7FF00}>> Geschenk <<\n{FFAA00}Geschenk Aufheben\nMit {FF000F}LALT\n{D7FF00}>> Geschenk <<", ROT,x,y,z+0.1, 5, 0, 0);
strmid(Geschenke[i][Ersteller], ersteller, 0, strlen(ersteller), 255);
mysql_format(handle, query, sizeof(query), "INSERT INTO geschenke (id, x, y, z, erstellt, ersteller) VALUES ('%d', '%f', '%f', '%f', '%d', '%e')", Geschenke[i][ID], Geschenke[i][GeschenkX], Geschenke[i][GeschenkY], Geschenke[i][GeschenkZ], Geschenke[i][Erstellt], Geschenke[i][Ersteller]);
mysql_pquery(handle, query);
SetPlayerPos(playerid, x+1,y,z);
break;
}
}
return 0;
} -
Gibt der MySQL Log irgendwelche Fehler an?
-
Gibt der MySQL Log irgendwelche Fehler an?
nein
-
Du füllst die ID vom enum beim AddGeschenk nicht. Dem Code nach benötigst du die ID gar nicht, sondern kannst einfach "i" nutzen, in beiden Queries bei der "id" der Datenbank.
-
Hä wie soll ich das dann schreiben ?
-
Anstatt
Geschenke[i][ID]
in beiden Funktionen
i
in mysql_format. -
Guten Abend zusammen,
ich habe irgendwie Total Reingehauen, sobald ich diesen Befehl nutze, Crasht mir mein Spiel weg, ist aber nur bei diesem Befehl so...
CMD:reports(playerid, params[])
{
if(!PlayerInfo[playerid][pEingeloggt])return SendClientMessage(playerid, -1, "{808080}[{FF3333}FEHLGESCHLAGEN{808080}]: Du bist nicht Eingeloggt!");
if(PlayerInfo[playerid][pAdmin] < 1)return SendClientMessage(playerid, -1, "{808080}[{FF3333}FEHLGESCHLAGEN{808080}]: Du hast nicht die benötige Rechte um diesen Befehl zu benutzen!");new str[1024];
for(new i = 0; i < MAX_SUP; i++){
if(SupportInfo[i][erstellt] == true){
if(SupportInfo[i][bearbeitung] == false){
format(str, sizeof(str), "{FFFFFF}%s %s | {B36B00}%s\n", str, SupportInfo[i][Name], SupportInfo[i][Ueberschrift]);
}
else{
format(str, sizeof(str), "{FFFFFF}%s %s | {B36B00}%s [In Bearbeitung]", str, SupportInfo[i][Name], SupportInfo[i][Ueberschrift]);
}
}else {format(str, sizeof(str), "{FFFFFF}%s{808080}---", str);}
}
ShowPlayerDialog(playerid, DIALOG_SUPPORT_LIST, DIALOG_STYLE_LIST, ""#TAG_SERVERKURZ" - Support Tickets:", str, "Auswählen", "Schließen");
return 1;
}Habt Ihr eine Idee wieso mein Game Crasht ?
Falls dies irgendwie Hilft, hier ist meine "Crashlog".
SA-MP 0.3.7
Exception At Address: 0x3830387B
Base: 0x03B20000Registers:
EAX: 0x000000D2 EBX: 0x19460100 ECX: 0x00000000 EDX: 0x0177D9FC
ESI: 0x193A2308 EDI: 0x0177DBC8 EBP: 0x0177DBD0 ESP: 0x0177DAA8
EFLAGS: 0x00010216Stack:
+0000: 0x3830387B 0x2D2D2D00 0x3830387B 0x2D2D2D00
+0010: 0x3830387B 0x2D2D2D00 0x3830387B 0x2D2D2D00
+0020: 0x3830387B 0x2D2D2D00 0x3830387B 0x2D2D2D00
+0030: 0x3830387B 0x2D2D2D00 0x3830387B 0x2D2D2D00
+0040: 0x3830387B 0x2D2D2D00 0x3830387B 0x2D2D2D00
+0050: 0x3830387B 0x2D2D2D00 0x3830387B 0x2D2D2D00
+0060: 0x3830387B 0x2D2D2D00 0x3830387B 0x2D2D2D00
+0070: 0x3830387B 0x7D464600 0x4646467B 0x7D464646
+0080: 0x4646467B 0x7D464646 0x4646467B 0x7D464646
+0090: 0x4646467B 0x7D464646 0x3830387B 0x7D303830
+00A0: 0x7B2D2D2D 0x30383038 0x2D7D3038 0x387B2D2D
+00B0: 0x38303830 0x2D2D7D30 0x30387B2D 0x30383038
+00C0: 0x2D2D2D7D 0x3830387B 0x7D303830 0x7B2D2D2D
+00D0: 0x30383038 0x2D7D3038 0x387B2D2D 0x38303830
+00E0: 0x2D2D7D30 0x30387B2D 0x30383038 0x2D2D2D7D
+00F0: 0x3830387B 0x7D303830 0x7B2D2D2D 0x30383038
+0100: 0x2D7D3038 0x387B2D2D 0x38303830 0x2D2D7D30
+0110: 0x30387B2D 0x30383038 0x2D2D2D7D 0x3830387B
+0120: 0x0177F000 0x03BD5D77 0x00000005 0x03B8BC66
+0130: 0x19460000 0x0177DBF0 0x0177F078 0x0177F061
+0140: 0x0177F084 0xFFFFFF01 0x00000000 0x00000000
+0150: 0x000000E1 0x00000012 0x03B2CD78 0x00000036
+0160: 0x00000002 0x0177DD48 0x0177E060 0x0177DF58
+0170: 0x0177DE50 0x00000001 0x193F47C0 0x02090000
+0180: 0x00000009 0x0000011D 0x00000EB8 0x00000EB8
+0190: 0x00000EB1 0x0177F084 0x00000000 0x00000000
+01A0: 0x00000000 0x00000000 0x00000000 0x00000000
+01B0: 0x00000000 0x00000000 0x00000000 0x00000000
+01C0: 0x00000000 0x00000000 0x00000000 0x00000000
+01D0: 0x00000000 0x00000000 0x00000000 0x00000000
+01E0: 0x00000000 0x00000000 0x00000000 0x00000000
+01F0: 0x00000000 0x00000000 0x00000000 0x00000000
+0200: 0x00000000 0x00000000 0x00000000 0x00000000
+0210: 0x00000000 0x00000000 0x00000000 0x00000000
+0220: 0x00000000 0x00000000 0x00000000 0x00000000
+0230: 0x00000000 0x00000000 0x00000000 0x00000000
+0240: 0x00000000 0x00000000 0x00000000 0x00000000
+0250: 0x00000000 0x00000000 0x00000000 0x00000000
+0260: 0x00000000 0x00000000 0x00000000 0x00000000
+0270: 0x00000000 0x00000000 0x00000000 0x00000000SCM Op: 0x77E, lDbg: 0 LastRendObj: 18306
Game Version: US 1.0
State Information: Ped Context: 0
-
Habt Ihr eine Idee wieso mein Game Crasht ?
Kannst du mal aus Spaß das ShowPlayerDialog auskommentieren und mal schauen ob du dann immer noch crashst?
Und printe dir mal den String und poste den mal
-
hi server startet nicht weiß nicht warum ja ist in der server cfg eingetragen.
socket.dll kann nicht geladen werden
----------
Loaded log file: "server_log.txt".
----------SA-MP Dedicated Server
----------------------
v0.3.7-R2, (C)2005-2015 SA-MP Teamfilterscripts = "" (string)
Server Plugins
--------------
Loading plugin: sscanf===============================
sscanf plugin loaded.
Version: 2.8.1
(c) 2012 Alex "Y_Less" Cole
===============================
Loaded.
Loading plugin: mysql
>> plugin.mysql: R34 successfully loaded.
Loaded.
Loading plugin: streamer*** Streamer Plugin v2.7.5.2 by Incognito loaded ***
Loaded.
Loading plugin: MapAndreas
Loaded.
Loading plugin: socket
Failed.
Loaded 4 plugins.Started server on port: 7777, with maxplayers: 30 lanmode is OFF.
Filterscripts
---------------
Loaded 0 filterscripts.Script[gamemodes/ABBAS.amx]: Run time error 19: "File or function is not found"
Number of vehicle models: 0 -
socket.dll kann nicht geladen werden
-
joke ?
alle auser den letzen link getestet ging tzd net. beim jetzten link kamm bei öffen der datei ein fehler
//Edit und das was du geschickt hast ist für " failed to load plugins (mysql & sscanf)"
-
und das was du geschickt hast ist für
...das spielt keine Rolle, das gilt für ALLE Plugins.
alle auser den letzen link getestet ging tzd net. beim jetzten link kamm bei öffen der datei ein fehler
Du hast überall die x86 Version gedownloadet und ausgeführt?! :o
Wie sieht das denn aus mit deinen Redistributable, kannst du da auch einen screen machen, wo die alle aufgelistet sind?
-
Du hast überall die x86 Version gedownloadet und ausgeführt?! :o
ja
Wie sieht das denn aus mit deinen Redistributable, kannst du da auch einen screen machen, wo die alle aufgelistet sind?
wo finde ich die liste
-
Hallo,
Ich wollte mal Nachfragen ob der Befehl so überhaupt Funktionieren würde?
Ich nutze MySqL.
CMD:ban(playerid,params[])
{
new id,reason,string[128];
if(sscanf(params,"uz[128]",id)) SendClientMessage(playerid,0x00FF00,"System: /ban [ID]");
else
{
if(PlayerInfo[playerid][pAdmin] >=4)
{
new query[256];
format(string,sizeof(string),"Player %s was banned by %s Reason: %s",id,pName,reason);
mysql_format(handle, query, sizeof(query), "UPDATE users SET ban = '%d'",
PlayerInfo[playerid][pLevel], PlayerInfo[playerid][pMoney], PlayerInfo[playerid][pKills], PlayerInfo[playerid][pDeaths], PlayerInfo[playerid][pAdmin], PlayerInfo[playerid][pBan], PlayerInfo[playerid][p_id]);
SendClientMessageToAll(0x00FF00,string);
BanEx(id,"reason");
}
}
return 1;
}}Mein Enum sieht wie folgt aus:
enum pDataEnum{p_id,bool:pLoggedIn,pName[MAX_PLAYER_NAME],pLevel,pMoney,pKills,pDeaths,pAdmin,pBan}new PlayerInfo[MAX_PLAYERS][pDataEnum]; -
So wird das nix
Nur das nutzen was benötigt wird..Code
Alles anzeigenCMD:ban(playerid,params[]) { new id,reason[30],string[128]; if(sscanf(params,"uz[30]",id, reason)) return SendClientMessage(playerid,0x00FF00,"System: /ban [ID]"); if(PlayerInfo[playerid][pAdmin] >=4) { format(string,sizeof(string),"Player %s was banned by %s Reason: %s",PlayerInfo[id][pName],PlayerInfo[playerid][pName],reason); SendClientMessageToAll(0x00FF00,string); mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `ban` = '1' WHERE `id`=%d;", PlayerInfo[id][p_id]); BanEx(id,reason); } else { //keine Rechte } return 1; }
musst ggf bei dir anpassen
-