ich suche einen erfahrenden scripter der sich kurz mein script anguckt da der compiler seit dem perso system immer abstürzt

Suche jmd der sich mein script anguckt
- Silvio.Castro
- Geschlossen
- Erledigt
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
-
-
Stell doch einfach den Code, den du erstellt hast hier rein. So kann dir bestimmt schneller geholfen werden.
-
Spieler enum
//enums Spieler
enum playerInfo{
db_id,
eingeloggt,
level,
adminlevel,
fraktion,
frang,
spawnchange,
mute,
supinfo[3],
suptext[75],
beruf
}Die Dialoge sind defined
#define DIALOG_STADTHALLE 8
#define DIALOG_JOB 9Bei OnGamemode Init:
//Stadthallen Icon
CreatePickup(1239,1,361.8300,173.6138,1008.3828,0);save player
savePlayer(playerid)
{
if(sInfo[playerid][eingeloggt]==0)return 1;
//Speichern Level,money,adminlevel...
new query[265];
format(query,sizeof(query),"UPDATE user SET level='%i',money='%i',alevel='%i',fraktion='%i',frang='%i',spawnchange='%i',beruf='%i' WHERE id='%i'",sInfo[playerid][level],sInfo[playerid][beruf],GetPlayerMoney(playerid),sInfo[playerid][adminlevel],sInfo[playerid][fraktion],sInfo[playerid][frang],sInfo[playerid][spawnchange],sInfo[playerid][beruf],sInfo[playerid][db_id]);
mysql_pquery(dbhandle,query,"","");
return 1;
}Oberer Teil von OnPlayerKeyStateChange
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys & 16)
{
if(IsPlayerInRangeOfPoint(playerid,3,361.8300,173.6138,1008.3828))
{
//Stadthalle Punkt
ShowPlayerDialog(playerid,DIALOG_STADTHALLE,DIALOG_STYLE_LIST,"Stadthalle","Personalausweiß beantragen\nJob Auswahl","Wählen","Abbrechen");
}
}OnPasswortResponse
public OnPasswordResponse(playerid)
{
new num_fields,num_rows;
cache_get_data(num_rows,num_fields,dbhandle);
if(num_rows==1)
{
//passwort richtig //Spieler laden
sInfo[playerid][eingeloggt] = 1;
sInfo[playerid][level] = cache_get_field_content_int(0,"level",dbhandle);
SetPlayerScore(playerid,sInfo[playerid][level]);
sInfo[playerid][db_id] = cache_get_field_content_int(0,"id",dbhandle);
SetPlayerMoney(playerid,cache_get_field_content_int(0,"money",dbhandle));
sInfo[playerid][adminlevel] = cache_get_field_content_int(0,"alevel",dbhandle);
sInfo[playerid][fraktion] = cache_get_field_content_int(0,"fraktion",dbhandle);
sInfo[playerid][frang] = cache_get_field_content_int(0,"frang",dbhandle);
sInfo[playerid][spawnchange] = cache_get_field_content_int(0,"spawnchange",dbhandle);
sInfo[playerid][beruf] = cache_get_field_content_int(0,"beruf",dbhandle);
new query[256];
mysql_format(dbhandle, query, sizeof query, "SELECT * FROM `bans` WHERE `Benutzername` = '%e' AND `active` = 1", GetName(playerid));
mysql_pquery(dbhandle, query, "@baninfo", "i", playerid);
}
else
{
//passwort falsch
SendClientMessage(playerid,COLOR_RED,"Das eingegebne Passwort ist falsch!");
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Dein Account wurde in der Datenbank gefunden! Bitte melde dich mit deinem Passwort an","Weiter","Abbrechen");
}
return 1;
}OnDialogResponse
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOG_JOB)
{
if(response == 1)
{
switch(listitem)
{
case 0: //Busfahrer
{
sIfno[playerid][beruf] = 0;
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun Busfahrer!");
return 1;
}
case 1: //Pilot
{
sIfno[playerid][beruf] = 1;
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun Pilot!");
return 1;
}
case 3: //waffendealer
{
sIfno[playerid][beruf] = 2;
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun Waffendealer!");
return 1;
}
case 4: //Drogendealer
{
sIfno[playerid][beruf] = 3;
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun Drogendealer!");
return 1;
}
case 5: //Bergarbeiter
{
sIfno[playerid][beruf] = 4;
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun ein Bergarbeiter!");
}
case 6: // Harz4
{
sIfno[playerid][beruf] = 5;
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun ein echter Harzer!");
return 1;
}
}
}
if(response == 0)
{
return 1;
}
return 1;
}if(dialogid == DIALOG_STADTHALLE)
{
if(response ==1)
{
switch(listitem)
{
case 0: //1.Möglichkeit (Perso)
{
if(sInfo[playerid][perso] == 0)return
{
new pgeld = GetPlayerMoney(playerid);
if(pgeld >= 500)
{
sInfo[playerid][perso] =1;
GivePlayerMoney(playerid,-500);
sInfo[playerid][money] = sInfo[playerid][money] - 500;
SendClientMessage(playerid,COLOR_GREEN,"Herzlichen Glückwusch! Du besitzt nun einen Personalausweis.");
return 1;
}
else
{
return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Geld mit. Ein Personalausweis kostet 500$!");
}
}
else
{
return SendClientMessage(playerid,COLOR_RED,"Du hast bereits einen Personalausweis");
}}
case 1: //2. Möglichket (job)
{
ShowPlayerDialog(playerid,DIALOG_JOB,DIALOG_STYLE_LIST,"Jobs","\nBusfahrer\nPilot\nWaffendealer\nDrogendealer\nBergarbeiter\nHarz4","Wählen","Abbrechen");
return 1;
}
}
}
if(response ==0)
{
return 1;
}
return 1;
}Früher ging alles ab da wo das perso und job system kam ging garnichts mehr
-
format(query,sizeof(query),"UPDATE user SET level='%i',money='%i',alevel='%i',fraktion='%i',frang='%i',spawnchange='%i',beruf='%i' WHERE id='%i'",sInfo[playerid][level],sInfo[playerid][beruf],GetPlayerMoney(playerid),sInfo[playerid][adminlevel],sInfo[playerid][fraktion],sInfo[playerid][frang],sInfo[playerid][spawnchange],sInfo[playerid][beruf],sInfo[playerid][db_id]);
Ein Fehler beim speichern ist mir aufgefallen, was damit aber nichts zu tun hat. Du lässt das in der falschen Reihenfolge auslesen. Schaue dir deine Query an, und dann deine Reihenfolge der Variablen.Für das richtige Problem solltest du mal gucken, ob du eine Klammer zu viel oder zu wenig gesetzt hast. Das könnte die Ursache dafür sein.
-
breadfish.de
Hat das Thema geschlossen.