Guten Abend Leute,
ich habe eben ein Bank System basierend auf MySQL geschrieben. Nun ja es speichert zwar..aber nur die ERSTE Person
Sprich wenn ich einen neuen Account anlege, wird NICHTS mehr gespeichert
Der Register Teil...
new query[128], Str128[128];
if(!response) return Kick(playerid);
if(!strlen(inputtext)) return ShowDialog(playerid, DG_REGISTER);
else
{
CreateAccount(playerid, inputtext);
format(query,sizeof(query),"INSERT INTO `Accounts` (Name,Passwort,Registriert,Level,Adminlevel,Premium,Skin,Tutorial,Personalausweis,Gebannt,Geld) VALUES('%s','%s','0','0','0','0','0','0','0','0','0')",GetName(playerid), inputtext);
mysql_query(query);
mysql_store_result();
format(Str128, sizeof(Str128), "Der Account "#COLB"%s "#COLW"wurde mit dem Passwort "#COLB"%s "#COLW"registriert.", GetName(playerid), inputtext);
SendClientMessage(playerid, Weiß, Str128);
}
CreateAccount Stock
stock CreateAccount(playerid, passwort[])
{
new query[256],Name[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
mysql_real_escape_string(Name,Name);
mysql_real_escape_string(passwort,passwort);
format(query, sizeof(query), "INSERT INTO Accounts (Name, Passwort) VALUES ('%s', '%s')", Name, passwort);
mysql_query(query);
SpielerInfo[playerid][ pRegistriert ] = 1;
SpielerInfo[playerid][ pLevel ] = Startlevel;
SpielerInfo[playerid][ pAdminlevel ] = 0;
SpielerInfo[playerid][ pPremium ] = 0;
SpielerInfo[playerid][ pSkin ] = (ZiviSkin[random(10)]);
SpielerInfo[playerid][ pGeld ] = Startgeld;
SpielerInfo[playerid][ pPerso ] = 0;
SpielerInfo[playerid][ pTutorial ] = 0;
SpielerInfo[playerid][ pGebannt ] = 0;
SpielerInfo[playerid][ pBankStatus ] = 0;
return true;
}
Hier die Stocks
stock LoadPlayer(playerid)
{
if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
{
SpielerInfo[playerid][ pRegistriert ] = mysql_GetInt("Accounts", "Registriert", "Name", GetName(playerid));
SpielerInfo[playerid][ pLevel ] = mysql_GetInt("Accounts", "Level", "Name", GetName(playerid));
SpielerInfo[playerid][ pAdminlevel ] = mysql_GetInt("Accounts", "Adminlevel", "Name", GetName(playerid));
SpielerInfo[playerid][ pPremium ] = mysql_GetInt("Accounts", "Premium", "Name", GetName(playerid));
SpielerInfo[playerid][ pSkin ] = mysql_GetInt("Accounts", "Skin", "Name", GetName(playerid));
SpielerInfo[playerid][ pPerso ] = mysql_GetInt("Accounts", "Personalausweis", "Name", GetName(playerid));
SpielerInfo[playerid][ pTutorial ] = mysql_GetInt("Accounts", "Tutorial", "Name", GetName(playerid));
SpielerInfo[playerid][ pGebannt ] = mysql_GetInt("Accounts", "Gebannt", "Name", GetName(playerid));
SpielerInfo[playerid][ pBankStatus ] = mysql_GetInt("Accounts", "Kontogeld", "Name", GetName(playerid));
SpielerInfo[playerid][ pGeld ] = mysql_GetInt("Accounts", "Geld", "Name", GetName(playerid));
}
return 1;
}
stock SavePlayer(playerid)
{
if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
{
mysql_SetInt("Accounts", "Registriert", SpielerInfo[playerid][ pRegistriert ], "Name", GetName(playerid));
mysql_SetInt("Accounts", "Level", SpielerInfo[playerid][ pLevel ], "Name", GetName(playerid));
mysql_SetInt("Accounts", "Adminlevel", SpielerInfo[playerid][ pAdminlevel ], "Name", GetName(playerid));
mysql_SetInt("Accounts", "Premium", SpielerInfo[playerid][ pPremium ], "Name", GetName(playerid));
mysql_SetInt("Accounts", "Skin", SpielerInfo[playerid][ pSkin ], "Name", GetName(playerid));
mysql_SetInt("Accounts", "Personalausweis", SpielerInfo[playerid][ pPerso ], "Name", GetName(playerid));
mysql_SetInt("Accounts", "Tutorial", SpielerInfo[playerid][ pTutorial ], "Name", GetName(playerid));
mysql_SetInt("Accounts", "Gebannt", SpielerInfo[playerid][ pGebannt ], "Name", GetName(playerid));
mysql_SetInt("Accounts", "Kontogeld", SpielerInfo[playerid][ pBankStatus ], "Name", GetName(playerid));
mysql_SetInt("Accounts", "Geld", SpielerInfo[playerid][ pGeld ], "Name", GetName(playerid));
}
return 1;
}
Hier die Dialoge
case DG_BANK_AUSZAHLEN:
{
new zahl = strval(inputtext);
if(zahl < 500001 && zahl > 0)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid, DG_BANK_AUSZAHLEN, DG_INPUT, ServerName, "Bitte gebe den gewünschten Betrag ein!", "Auszahlen", "Abbrechen");
return 1;
}
else
{
new geld = strval(inputtext);
if (SpielerInfo[playerid][pBankStatus] >= geld)
{
GivePlayerMoney(playerid, geld);
SpielerInfo[playerid][pBankStatus] -= geld;
return 1;
}
else
{
SendClientMessage(playerid,Rot, "Info:"COLW" Soviel Geld hast du nicht auf der Bank!");
return 1;
}
}
}
else
{
SendClientMessage(playerid,Rot, "Info:"COLW" Bitte wähle einen Betrag zwischen 0-500000 $");
return 1;
}
}
case DG_BANK_EINZAHLEN:
{
new zahl = strval(inputtext);
if(zahl < 500001 && zahl > 0)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid, DG_BANK_EINZAHLEN, DG_INPUT, ServerName, "Bitte gebe den gewünschten Betrag ein. (max. 500 k)", "Einzahlen", "Verlassen"); //Wird ihm der Dialog erneut gezeigt.
return 1;
}
else
{
new geld = strval(inputtext);
if(GetPlayerMoney(playerid) >= geld)
{
GivePlayerMoney(playerid, -geld);
SpielerInfo[playerid][pBankStatus] += geld;
return 1;
}
else
{
SendClientMessage(playerid,Rot, "Info:"COLW" Soviel Geld hast du nicht bei dir!");
return 1;
}
}
}
else
{
SendClientMessage(playerid,Rot, "Info:"COLW" Bitte wähle einen Betrag zwischen 0-500000 $");
return 1;
}
}
case DG_BANK_UEBERWEISEN_2:
{
if(response == 0)
{
SendClientMessage(playerid,Rot,"Info:"COLW" Du hast den Vorgang abgebrochen!");
return 1;
}
if(response == 1)
{
new geld = strval(inputtext);
new giveplayerid = GetPVarInt(playerid, "Überweisung");
if(geld < 50 || geld > 100000)
{
SendClientMessage(playerid,Rot,"Info:"COLW" Der Betrag muss zwischen 50$ und 100000$ liegen!");
ShowPlayerDialog(playerid, DG_BANK_UEBERWEISEN_2, DG_INPUT,ServerName, "Bitte gebe nun den Betrag ein den du überweisen willst!", "Überweisen", "Abbrechen");
return 1;
}
if(IsPlayerConnected(giveplayerid))
{
if(SpielerInfo[playerid][pBankStatus] >= geld)
{
if(geld >= 1 || geld <=100001)
{
new string[120];
new string2[128];
new name[MAX_PLAYER_NAME];
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
GetPlayerName(giveplayerid, pname, sizeof(pname));
SpielerInfo[playerid][pBankStatus]= -geld;
SpielerInfo[giveplayerid][pBankStatus]= geld;
format(string, sizeof(string), "Info:"COLW" Du hast %s gerade $%d überwiesen!", pname, geld);
SendClientMessage(playerid, Rot, string);
DeletePVar(playerid, "Überweisung");
format(string2, sizeof(string2), ""COLR"Info:"COLW" %s [ID:%d] hat %s [ID:%d] $%d überwiesen!",name,playerid,pname,giveplayerid,geld);
SendAdminMessage(Gelb, string2);
format(string2, sizeof(string2), "Info:"COLW" %s hat dir $%d überwiesen!",name,geld);
SendClientMessage(giveplayerid, Rot, string2);
return 1;
}
else
{
SendClientMessage(playerid,Rot,"Info:"COLW" Dein Betrag muss zwischen 50$ und 100000$ liegen!");
}
}
else
{
SendClientMessage(playerid,Rot,"Info:"COLW" So viel Geld hast du nicht auf der Bank!");
return 1;
}
}
else
{
SendClientMessage(playerid, Rot, "Info:"COLW" Dieser Spieler ist nicht Online!");
return 1;
}
}
}
case DG_BANK_UEBERWEISEN_1:
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid, DG_BANK_UEBERWEISEN_1, DG_INPUT, "Überweisen", "Bitte gebe die ID des Spielers ein, dem du Geld überweisen willst!", "Weiter", "Abbrechen");
return 1;
}
if(response == 0)
{
SendClientMessage(playerid,Rot,"Info:"COLW" Du hast den Vorgang abgebrochen!");
return 1;
}
if(response == 1)
{
new giveplayerid = strval(inputtext);
SetPVarInt(playerid, "Überweisung", giveplayerid);
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid, DG_BANK_UEBERWEISEN_1, DG_INPUT, ServerName, "Bitte gebe die ID des Spielers ein, dem du Geld überweisen willst!", "Weiter", "Abbrechen");
return 1;
}
if(IsPlayerConnected(giveplayerid))
{
if(IsPlayerNPC(giveplayerid))
{
SendClientMessage(playerid,Rot,"Info:"COLW" Du kannst keinem Bot Geld überweisen!");
return 1;
}
if(giveplayerid == playerid)
{
SendClientMessage(playerid,Rot,"Info:"COLW" Du kannst dir nicht selber etwas überweisen!");
return 1;
}
ShowPlayerDialog(playerid, DG_BANK_UEBERWEISEN_2, DG_INPUT, ServerName, "Bitte gebe nun den Betrag ein den du überweisen willst!", "Überweisen", "Abbrechen");
}
else
{
SendClientMessage(playerid, Rot, "Info:"COLW" Dieser Spieler ist nicht Online!");
return 1;
}
return 1;
}
}
Kann mir vllt. einer helfen? Wäre sehr dankbar für