warum geht mein Ban befehl nicht ?
Was geht denn nicht?
warum geht mein Ban befehl nicht ?
Was geht denn nicht?
Alles anzeigenHallo leute,
warum geht mein Ban befehl nicht ? BITTE KEINE DIREKTE ANTWORTEN BZW WAS GENAU DARAN FALSCH IST! Bitte erst so ein Tipp geben
ocmd:ban(playerid,params[])
{
if(SpielerInfo[playerid][Alevel] >= 1)
{
new pID,string[256],aname[MAX_PLAYER_NAME],SpielerName[MAX_PLAYER_NAME],grund[256];
GetPlayerName(pID,SpielerName,sizeof(SpielerName));
GetPlayerName(playerid,aname,sizeof(aname));
if(sscanf(params,"us",pID,grund))return SendClientMessage(playerid, Rot,"[FEHLER]{FFFFFF} Benutze: /Kick [ID/Name] [Grund]");
format(string,sizeof(string),"[INFO]{FFFFFF} %s %s hat {FF9D00}%s {FFFFFF}verbannt. Grund: {FF9D00}%s",GetPlayerAdminRankName(playerid),aname,SpielerName,grund);
SendClientMessageToAll(Rot,string);
Ban(pID);
SpielerInfo[playerid][Banned] = 1;
}
return 1;
}
Tipp 1: Sich selbst weg bannen, wenn man den Befehl eingibt?
Tipp 2: Jemanden Bannen und dann noch eine seiner Variablen verändern ? -> Nicht sicher ob der Tipp sinn macht
Sollten genug tipps sein Es handelt sich um die letzten 2 zeilen
So habe den Befehl nochmal etwas übearbeitet , leider wird der Spieler nur gekickt, aber wenn man wieder online kommt passiert nichts!
ocmd:ban(playerid,params[])
{
if(SpielerInfo[playerid][Alevel] >= 1)
{
new pID,string[256],aname[MAX_PLAYER_NAME],SpielerName[MAX_PLAYER_NAME],grund[256];
GetPlayerName(pID,SpielerName,sizeof(SpielerName));
GetPlayerName(playerid,aname,sizeof(aname));
if(sscanf(params,"us",pID,grund))return SendClientMessage(playerid, Rot,"[FEHLER]{FFFFFF} Benutze: /Kick [ID/Name] [Grund]");
if(!IsPlayerConnected(pID) || IsPlayerNPC(pID))return SendClientMessage(playerid, Rot, "[FEHLER]{FFFFFF} Der Spieler ist nicht eingeloggt!");
SpielerInfo[pID][Banned] = 1;
format(string,sizeof(string),"[INFO]{FFFFFF} %s {FF9D00}%s {FFFFFF}hat {FF9D00}%s {FFFFFF}verbannt. Grund: {FF9D00}%s",GetPlayerAdminRankName(playerid),aname,SpielerName,grund);
SendClientMessageToAll(Rot,string);
SavePlayer(playerid);
Kick(pID);
}
return 1;
}
//EDIT: MySQL error ist nun weg.. aber es wird trz nicht in die MYSQL datenbank eingetragen!
//EDIT 2 : Es wird garnichts gespeichert!
Hier die Save Funktion:
SavePlayer(playerid)
{
if(SpielerInfo[playerid][eingeloggt] == 0)return 1;
{
new query[1024];
format(query,sizeof(query),"UPDATE user SET Level='%i',Fraktion='%i',Geldaufhand='%i',Kills='%i',Tode='%i',Alevel='%i',Skin='%i',Banned='%i',p_x='%f',p_y='%f',p_z='%f',Health='%f' WHERE id='%i'",SpielerInfo[playerid][Level],SpielerInfo[playerid][Fraktion],GetPlayerMoney(playerid),SpielerInfo[playerid][Kills],SpielerInfo[playerid][Tode],SpielerInfo[playerid][Alevel],SpielerInfo[playerid][Skin],
SpielerInfo[playerid][Banned],SpielerInfo[playerid][p_x],SpielerInfo[playerid][p_y],SpielerInfo[playerid][p_z],SpielerInfo[playerid][db_id]);
mysql_function_query(dbhandle,query,false,"","");
}
return 1;
}
So habe den Befehl nochmal etwas übearbeitet , leider wird der Spieler nur gekickt, aber wenn man wieder online kommt passiert nichts!
Was soll den passieren wenn der Spieler online kommt?
Poste mal den Code dazu, das was passieren soll, wenn der Spieler online kommt.
Wird Banned = 1 in der Datenbank gespeichert? Wenn nein: Hast du die Spalte in der Tabelle erstellt? Wenn ja, und es trotzdem nicht gespeichert wird, poste bitte den MySQL Log.
Was soll den passieren wenn der Spieler online kommt?
Poste mal den Code dazu, das was passieren soll, wenn der Spieler online kommt.
Wird Banned = 1 in der Datenbank gespeichert? Wenn nein: Hast du die Spalte in der Tabelle erstellt? Wenn ja, und es trotzdem nicht gespeichert wird, poste bitte den MySQL Log.
1) Wenn man Online kommt, soll man direkt gekickt werden.
2)
//unter OnPasswordRespone
if(SpielerInfo[playerid][Banned] == 1)
{
Kick(playerid);
}
3) Es wird nichts gespeichert + Tabelle wurde erstellt + MySQL log steht nichts vorhin war ein Synx fehler , aber wurde auch behoben!
NebenInfo:
Es wird allgemein nichts mehr gespeichert.. selbst das Geld nicht mehr
Dann schalte bitte den MySQL Debug Modus an und poste was im Log steht, wenn du den Spieler bannst.
Wie du den Debug Modus an machst steht hier: Tipps: Scripting-Probleme richtig erklären (Kapitel 1.4.)
EDIT:
SavePlayer(playerid);
ändere das nebenbei mal zu:
SavePlayer(pID);
Dann schalte bitte den MySQL Debug Modus an und poste was im Log steht, wenn du den Spieler bannst.
Wie du den Debug Modus an machst steht hier: Tipps: Scripting-Probleme richtig erklären (Kapitel 1.4.)
EDIT:
SavePlayer(playerid);
ändere das nebenbei mal zu:
SavePlayer(pID);
Hier:
[21:33:38] [DEBUG] CMySQLHandle::Create - creating new connection..
[21:33:38] [DEBUG] CMySQLHandle::CMySQLHandle - constructor called
[21:33:38] [DEBUG] CMySQLHandle::Create - connection created with ID = 1
[21:33:38] [DEBUG] CMySQLConnection::Connect - connection was successful
[21:33:38] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
[21:33:38] [DEBUG] CMySQLConnection::Connect - connection was successful
[21:33:38] [DEBUG] CMySQLConnection::Connect - auto-reconnect has been enabled
[21:34:58] [DEBUG] mysql_tquery - connection: 1, query: "SELECT * FROM user WHERE username='[SL]Max'", callback: "OnPlayerDataLoaded", format: "i"
[21:34:58] [DEBUG] CMySQLQuery::CMySQLQuery() - constructor called
[21:34:58] [DEBUG] mysql_tquery - scheduling query "SELECT * FROM user WHERE username='[SL]Max'"..
[21:34:58] [DEBUG] CMySQLQuery::Execute[OnPlayerDataLoaded(i)] - starting query execution
[21:34:58] [DEBUG] CMySQLQuery::Execute[OnPlayerDataLoaded(i)] - query was successful
[21:34:58] [DEBUG] CMySQLResult::CMySQLResult() - constructor called
[21:34:58] [DEBUG] CMySQLQuery::Execute[OnPlayerDataLoaded(i)] - data being passed to ProcessCallbacks()
[21:34:58] [DEBUG] Calling callback "OnPlayerDataLoaded"..
[21:34:58] [DEBUG] cache_get_row_count - connection: 1
[21:34:58] [DEBUG] CMySQLResult::~CMySQLResult() - deconstructor called
[21:34:58] [DEBUG] CMySQLQuery::~CMySQLQuery() - deconstructor called
[21:35:45] [DEBUG] mysql_tquery - connection: 1, query: "SELECT * FROM user WHERE username='[IL]Max'", callback: "OnPlayerDataLoaded", format: "i"
[21:35:45] [DEBUG] CMySQLQuery::CMySQLQuery() - constructor called
[21:35:45] [DEBUG] mysql_tquery - scheduling query "SELECT * FROM user WHERE username='[IL]Max'"..
[21:35:45] [DEBUG] CMySQLQuery::Execute[OnPlayerDataLoaded(i)] - starting query execution
[21:35:45] [DEBUG] CMySQLQuery::Execute[OnPlayerDataLoaded(i)] - query was successful
[21:35:45] [DEBUG] CMySQLResult::CMySQLResult() - constructor called
[21:35:45] [DEBUG] CMySQLQuery::Execute[OnPlayerDataLoaded(i)] - data being passed to ProcessCallbacks()
[21:35:45] [DEBUG] Calling callback "OnPlayerDataLoaded"..
[21:35:45] [DEBUG] cache_get_row_count - connection: 1
[21:35:45] [DEBUG] CMySQLResult::~CMySQLResult() - deconstructor called
[21:35:45] [DEBUG] CMySQLQuery::~CMySQLQuery() - deconstructor called
[21:35:47] [DEBUG] mysql_escape_string - source: "BLABLA", connection: 1, max_len: 35
[21:35:47] [DEBUG] mysql_tquery - connection: 1, query: "SELECT * FROM user WHERE username='[IL]Max' AND passwort=MD5('wa", callback: "OnPasswordResponse", format: "i"
[21:35:47] [DEBUG] CMySQLQuery::CMySQLQuery() - constructor called
[21:35:47] [DEBUG] mysql_tquery - scheduling query "SELECT * FROM user WHERE username='[IL]Max' AND passwort=MD5('BLABLA')"..
[21:35:47] [DEBUG] CMySQLQuery::Execute[OnPasswordResponse(i)] - starting query execution
[21:35:47] [DEBUG] CMySQLQuery::Execute[OnPasswordResponse(i)] - query was successful
[21:35:47] [DEBUG] CMySQLResult::CMySQLResult() - constructor called
[21:35:47] [DEBUG] CMySQLQuery::Execute[OnPasswordResponse(i)] - data being passed to ProcessCallbacks()
[21:35:47] [DEBUG] Calling callback "OnPasswordResponse"..
[21:35:47] [DEBUG] cache_get_data - connection: 1
[21:35:47] [DEBUG] cache_get_field_content_int - row: 0, field_name: "Level", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "Level", data: "8"
[21:35:47] [DEBUG] cache_get_field_content_int - row: 0, field_name: "id", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "id", data: "22"
[21:35:47] [DEBUG] cache_get_field_content_int - row: 0, field_name: "Alevel", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "Alevel", data: "8"
[21:35:47] [DEBUG] cache_get_field_content_int - row: 0, field_name: "Geldaufhand", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "Geldaufhand", data: "500000"
[21:35:47] [DEBUG] cache_get_field_content_int - row: 0, field_name: "Skin", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "Skin", data: "20"
[21:35:47] [DEBUG] cache_get_field_content_int - row: 0, field_name: "Fraktion", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "Fraktion", data: "1"
[21:35:47] [DEBUG] cache_get_field_content_int - row: 0, field_name: "Kills", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "Kills", data: "0"
[21:35:47] [DEBUG] cache_get_field_content_int - row: 0, field_name: "Banned", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "Banned", data: "0"
[21:35:47] [DEBUG] cache_get_field_content_int - row: 0, field_name: "Tode", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "Tode", data: "0"
[21:35:47] [DEBUG] cache_get_field_content_float - row: 0, field_name: "p_x", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "p_x", data: "299.662"
[21:35:47] [DEBUG] cache_get_field_content_float - row: 0, field_name: "p_y", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "p_y", data: "-9.8622"
[21:35:47] [DEBUG] cache_get_field_content_float - row: 0, field_name: "p_z", connection: 1
[21:35:47] [DEBUG] CMySQLResult::GetRowDataByName - row: '0', field: "p_z", data: "2.43928"
[21:35:47] [DEBUG] mysql_tquery - connection: 1, query: "SELECT * FROM autos WHERE besitzer='22'", callback: "OnPlayerCarsLoad", format: "i"
[21:35:47] [DEBUG] CMySQLQuery::CMySQLQuery() - constructor called
[21:35:47] [DEBUG] mysql_tquery - scheduling query "SELECT * FROM autos WHERE besitzer='22'"..
[21:35:47] [DEBUG] CMySQLResult::~CMySQLResult() - deconstructor called
[21:35:47] [DEBUG] CMySQLQuery::~CMySQLQuery() - deconstructor called
[21:35:47] [DEBUG] CMySQLQuery::Execute[OnPlayerCarsLoad(i)] - starting query execution
[21:35:47] [DEBUG] CMySQLQuery::Execute[OnPlayerCarsLoad(i)] - query was successful
[21:35:47] [DEBUG] CMySQLResult::CMySQLResult() - constructor called
[21:35:47] [DEBUG] CMySQLQuery::Execute[OnPlayerCarsLoad(i)] - data being passed to ProcessCallbacks()
[21:35:47] [DEBUG] Calling callback "OnPlayerCarsLoad"..
[21:35:47] [DEBUG] cache_get_data - connection: 1
[21:35:47] [DEBUG] CMySQLResult::~CMySQLResult() - deconstructor called
[21:35:47] [DEBUG] CMySQLQuery::~CMySQLQuery() - deconstructor called
[21:35:53] [DEBUG] mysql_tquery - connection: 1, query: "UPDATE user SET Level='8',Fraktion='1',Geldaufhand='500000',Kill", callback: "(null)", format: "(null)"
[21:35:53] [DEBUG] CMySQLQuery::CMySQLQuery() - constructor called
[21:35:53] [DEBUG] mysql_tquery - scheduling query "UPDATE user SET Level='8',Fraktion='1',Geldaufhand='500000',Kills='0',Tode='0',Alevel='8',Skin='20',Banned='1',p_x='299.661987',p_y='-9.862199',p_z='2.439280',Health='0.000000' WHERE id=''"..
[21:35:53] [DEBUG] CMySQLQuery::Execute[()] - starting query execution
[21:35:53] [DEBUG] CMySQLQuery::Execute[()] - query was successful
[21:35:53] [DEBUG] CMySQLQuery::Execute[()] - no callback specified, skipping result saving
[21:35:53] [DEBUG] CMySQLQuery::Execute[()] - data being passed to ProcessCallbacks()
[21:35:53] [DEBUG] CMySQLQuery::~CMySQLQuery() - deconstructor called
[21:35:53] [DEBUG] mysql_tquery - connection: 1, query: "UPDATE user SET Level='8',Fraktion='1',Geldaufhand='500000',Kill", callback: "(null)", format: "(null)"
[21:35:53] [DEBUG] CMySQLQuery::CMySQLQuery() - constructor called
[21:35:53] [DEBUG] mysql_tquery - scheduling query "UPDATE user SET Level='8',Fraktion='1',Geldaufhand='500000',Kills='0',Tode='0',Alevel='8',Skin='20',Banned='1',p_x='299.661987',p_y='-9.862199',p_z='2.439280',Health='0.000000' WHERE id=''"..
[21:35:53] [DEBUG] CMySQLQuery::Execute[()] - starting query execution
[21:35:53] [DEBUG] CMySQLQuery::Execute[()] - query was successful
[21:35:53] [DEBUG] CMySQLQuery::Execute[()] - no callback specified, skipping result saving
[21:35:53] [DEBUG] CMySQLQuery::Execute[()] - data being passed to ProcessCallbacks()
[21:35:53] [DEBUG] CMySQLQuery::~CMySQLQuery() - deconstructor called
Alles anzeigen
//EDIT 2: Habe geändert , passiert immer noch nichts.
SavePlayer(playerid)
{
if(SpielerInfo[playerid][eingeloggt] == 0) return 1;
new query[1024];
format(query,sizeof(query),"UPDATE user SET Level='%i',Fraktion='%i',Geldaufhand='%i',Kills='%i',Tode='%i',Alevel='%i',Skin='%i',Banned='%i',p_x='%f',p_y='%f',p_z='%f' WHERE id='%i'",SpielerInfo[playerid][Level],SpielerInfo[playerid][Fraktion],GetPlayerMoney(playerid),SpielerInfo[playerid][Kills],SpielerInfo[playerid][Tode],SpielerInfo[playerid][Alevel],SpielerInfo[playerid][Skin],
SpielerInfo[playerid][Banned],SpielerInfo[playerid][p_x],SpielerInfo[playerid][p_y],SpielerInfo[playerid][p_z],SpielerInfo[playerid][db_id]);
mysql_function_query(dbhandle,query,false,"","");
return 1;
}
Das Health war zu viel im Query. die Klammern brauchst du auch nicht. So sollte es passen.
Alles anzeigenSavePlayer(playerid)
{
if(SpielerInfo[playerid][eingeloggt] == 0) return 1;
new query[1024];
format(query,sizeof(query),"UPDATE user SET Level='%i',Fraktion='%i',Geldaufhand='%i',Kills='%i',Tode='%i',Alevel='%i',Skin='%i',Banned='%i',p_x='%f',p_y='%f',p_z='%f' WHERE id='%i'",SpielerInfo[playerid][Level],SpielerInfo[playerid][Fraktion],GetPlayerMoney(playerid),SpielerInfo[playerid][Kills],SpielerInfo[playerid][Tode],SpielerInfo[playerid][Alevel],SpielerInfo[playerid][Skin],
SpielerInfo[playerid][Banned],SpielerInfo[playerid][p_x],SpielerInfo[playerid][p_y],SpielerInfo[playerid][p_z],SpielerInfo[playerid][db_id]);
mysql_function_query(dbhandle,query,false,"","");
return 1;
}
Das Health war zu viel im Query. die Klammern brauchst du auch nicht. So sollte es passen.
okay danke geht nun, aber ist jetzt "Health" weg oder? Weil ich es nicht mehr sehe und ich brauch es später noch..
okay danke geht nun, aber ist jetzt "Health" weg oder? Weil ich es nicht mehr sehe und ich brauch es später noch..
Ja, das musst du dann später, wenn du die Variable hast, wieder (mit Variable!) in das Query einfügen. Du hattest es ohne eine Variable für die Health anzugeben im Query. Deshalb hat es deine DB-ID in das Health Feld geschrieben, und das Feld der ID war leer, folglich hat es deine Stats nicht mehr aktualisiert.
Die Platzhalter (%s, %d, ...) müssen immer gleich viele sein, wie Variablen in den Parametern am Ende vom format.
Ja, das musst du dann später, wenn du die Variable hast, wieder (mit Variable!) in das Query einfügen. Du hattest es ohne eine Variable für die Health anzugeben im Query. Deshalb hat es deine DB-ID in das Health Feld geschrieben, und das Feld der ID war leer, folglich hat es deine Stats nicht mehr aktualisiert.
Die Platzhalter (%s, %d, ...) müssen immer gleich viele sein, wie Variablen in den Parametern am Ende vom format.
Alles klar danke dir! geht nun Perfekt!
Jedoch habe noch eine Frage
-> Wie mache ich das mit den Alter,RegisterDatum,Männlich/Weiblich etc? Am besten bitte einen Beispiel dazu!
Was meinst du damit?
Hast du denn dazu schon einen Code? Was willst du überhaupt machen? Speichern, oder die gesamte Eingabe, oder für was brauchst du Hilfe?
Am besten du fängst erst mal an mit dem was du vor hast und postest dann den Teil an dem du hängst.
Was meinst du damit?
Hast du denn dazu schon einen Code? Was willst du überhaupt machen? Speichern, oder die gesamte Eingabe, oder für was brauchst du Hilfe?
Am besten du fängst erst mal an mit dem was du vor hast und postest dann den Teil an dem du hängst.
Nein Code habe ich leider nicht.. Anfang möchte ich ja , aber ich weiß ehrlichgesagt nicht wie genau.. nehmen wir an , ich möchte als erstes den RegisterDatum in die Datenbank abspeichern und wie mache ich das jetzt genau , und wo muss ich das einfügen? (ich weiß nur das es etwasmit Getdata zu tuen hat)
Dann poste bitte den Code mit dem du den Spieler in die Datenbank einträgst, als den Registrations Code, der der INSERT INTO enthält, dann erkläre ich es dir daran.
INSERT INTO
//Unter OnPlayerDialog....
if(dialogid==DIALOG_REGISTER)
{
if(response)
{
new name[MAX_PLAYER_NAME],query[128],passwort[35];
GetPlayerName(playerid,name,sizeof(name));
if(strlen(inputtext)>=3)
{
//Registerfunktion
mysql_escape_string(inputtext,passwort,dbhandle);
format(query,sizeof(query),"INSERT INTO user (username,passwort) VALUES ('%s',MD5('%s')) ",name,passwort);
mysql_function_query(dbhandle,query,false,"OnPlayerRegister","i",playerid);
SpawnPlayer(playerid);
}
else
{
//Kleiner als 4 Zeichen
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD,"Registrierung","Das angegebende Passwort war zu kurz! Bitte versuchs nochmal:","Register","Abbrechen");
}
}
else
{
SendClientMessage(playerid,Rot,"[INFO]{FFFFFF} Du hast auf Abbrechen gedrückt!");
}
return 1;
}
Da der Spieler sich da registriert, kannst du es direkt hier erstellen, also über:
format(query,sizeof(query),"INSERT INTO user (username,passwort) VALUES ('%s',MD5('%s')) ",name,passwort);
machst du:
new tag, monat, jahr, datum[16];
getdate(tag, monat, jahr);
format(datum, sizeof(datum), "%02d.%02d.%d", tag, monat, jahr);
und dann fügst du es in das Query ein:
format(query,sizeof(query),"INSERT INTO user (username,passwort) VALUES ('%s',MD5('%s')) ",name,passwort);
zu:
format(query,sizeof(query),"INSERT INTO user (username,passwort,registerdatum) VALUES ('%s',MD5('%s'),'%s') ",name,passwort,datum);
=> Nicht vergessen in der Tabelle eine Spalte "registerdatum" als VARCHAR anzulegen.
Alles anzeigenDa der Spieler sich da registriert, kannst du es direkt hier erstellen, also über:
format(query,sizeof(query),"INSERT INTO user (username,passwort) VALUES ('%s',MD5('%s')) ",name,passwort);
machst du:
new tag, monat, jahr, datum[16];
getdate(tag, monat, jahr);
format(datum, sizeof(datum), "%02d.%02d.%d", tag, monat, jahr);
und dann fügst du es in das Query ein:
format(query,sizeof(query),"INSERT INTO user (username,passwort) VALUES ('%s',MD5('%s')) ",name,passwort);
zu:
format(query,sizeof(query),"INSERT INTO user (username,passwort,registerdatum) VALUES ('%s',MD5('%s'),'%s') ",name,passwort,datum);
=> Nicht vergessen in der Tabelle eine Spalte "registerdatum" als VARCHAR anzulegen.
alles klar danke! Aber warum die 02 in der formatirung?
Und wie mache ich dass jetzt mit der Junge/Mädchen abfrage + Alter abfrage ? Diesmal ist es ja kein Datum etc.
Weiß jemand wie man sowas macht irg wie AttachObjectToVehice irg was
Screen http://prntscr.com/4v8shf
mfg
alles klar danke! Aber warum die 02 in der formatirung?
Das bewirkt, dass da zum Beispiel 01.01.2015 steht, anstatt 1.1.2015.
Und wie mache ich dass jetzt mit der Junge/Mädchen abfrage + Alter abfrage ? Diesmal ist es ja kein Datum etc.
Das machst du ähnlich, nur eben dass du einen Dialog machst in dem du den Spieler das Geschlecht auswählen lässt (LIST-Dialog) und dann einen Input Dialog in den der Spieler sein Alter eingeben kann. Beides speicherst du jeweils in eine Variable und speicherst es das ganz normal über die Statistiken, oder du fragst es vor der Registration ab, dann kannst du es auch im selben Query wie das Register-Datum einfügen.
Wenigstens die Dialoge solltest du hinbekommen, beginne einfach mal.
CapriZ: http://forum.sa-mp.com/showthread.php?t=282883 Objekt: 18646
Hay,
weiß einer ob man einen Sirenen Mod Scripten kann oder ob jeder Spieler sich einen Runterladen müsste?