da kommt nur pw oder benutzer name falsch ich wills ja nur auf md5 oder sha1 haben im script
Beiträge von TimeLine
-
-
nicht bleibt eine weiße seite
-
kannst du mir nicht einfach zeigen wie ich den code auf md5 oder sha1 machen kann kenne micht php html nicht aus
-
ja aber wird nicht erkannt
-
Pass dein UCP doch lieber an?
Irgendwo müsste da ein hash('sha1', $pw) sein...das ändereste auf hash('sha256', $pw) und fertig
$req = mysql_query('select UCPPassword,id from accounts where Name="'.$username.'"');
$dn = mysql_fetch_array($req);
if($dn['UCPPassword']==Sha256($password) and mysql_num_rows($req)>0)
{
$form = false;
$_SESSION['username'] = $_POST['username'];
$_SESSION['userid'] = $dn['id'];
if(isset($_POST['memorize']) and $_POST['memorize']=='yes')
{
$one_year = time()+(60*60*24*365);
setcookie('username', $_POST['username'], $one_year);
setcookie('password', Sha256($password), $one_year);
}
?> -
Einfach so:
Cnew MyHash[64 + 1]; //+1 für NULL Byte SHA256_PassHash(PlayerInfo[playerid][pUCPPassword], "IchBinEinSichererSalt", MyHash, sizeof MyHash); //Natürlich Salt anpassen xD mysql_SetString("accounts", "UCPPassword", MyHash, "Name", PlayerInfo[playerid][pIngameName]);
Und musst natürlich die Abfrage ändern...ob er das richtige Passwort eingegeben hat..da musst du dann seinen inputtext auch hashen
und wie kann ich das in SHA1
umwandeln weil mein ucp erkennt SHA256 nicht
if(PlayerInfo[playerid][pAdjustable] == 1)
{
if(strlen(inputtext) > 3)
{
new string22[128];
new MyHash[64 + 1]; //+1 für NULL Byte
format(string22, 128, "Du hast dein UCP-Passwort zu {FF1E00} %s {FFFFFF} geändert", inputtext);
SendClientMessage(playerid, 0xFFFFFFFF, string22);
// format(PlayerInfo[playerid][pUCPPassword],16,"%s",inputtext);
SHA256_PassHash(PlayerInfo[playerid][pUCPPassword], "%s", MyHash, sizeof MyHash); //Natürlich Salt anpassen xD
format(query,sizeof(query),"SELECT * FROM `accounts` WHERE `Name` = '%s'",PlayerInfo[playerid][pIngameName]);
mysql_query(query);
mysql_store_result();
//mysql_SetString("accounts", "UCPPassword", PlayerInfo[playerid][pUCPPassword], "Name", PlayerInfo[playerid][pIngameName]);
mysql_SetString("accounts", "UCPPassword", MyHash, "Name", PlayerInfo[playerid][pIngameName]);
mysql_SetString();
mysql_free_result();
return 1;
}
else SendClientMessage(playerid, 0xFFFFFFFF, "Dein UCP-Passwort muss mindestens 4 Zeichen lang sein.");
}
else
{
SendClientMessage(playerid,COLOR_RED,"Du kannst dein UCP-Passwort nicht ändern, da du nicht eingeloggt bist.");
}
}
} -
Wieso nutzt du nicht SHA-256 (SHA2): https://wiki.sa-mp.com/wiki/SHA256_PassHash
Wurde doch seit 0.3.7 in Pawn implementiert
und wie mache ich das im dem code von mir rein
-
hallo
undzwar habe ich ein problem ich möchte das ucppasswort in sha1 verschlüsselt haben aber ich weiß wie
hoffentlich könnt ihr mir da weiter helfen
@Jeffry
@maddin @definitivnichtmaddin
if(dialogid == DIALOG_CHANGEUCPPASS) { if(response) { if(PlayerInfo[playerid][pAdjustable] == 1) { if(strlen(inputtext) > 3) { new string22[128]; format(string22, 128, "Du hast dein UCP-Passwort zu {FF1E00} %s {FFFFFF} geändert", inputtext); SendClientMessage(playerid, 0xFFFFFFFF, string22); format(PlayerInfo[playerid][pUCPPassword],16,"%s",inputtext); format(query,sizeof(query),"SELECT * FROM `accounts` WHERE `Name` = '%s'",PlayerInfo[playerid][pIngameName]); mysql_query(query); mysql_store_result(); mysql_SetString("accounts", "UCPPassword", PlayerInfo[playerid][pUCPPassword], "Name", PlayerInfo[playerid][pIngameName]); mysql_free_result(); return 1; } else SendClientMessage(playerid, 0xFFFFFFFF, "Dein UCP-Passwort muss mindestens 4 Zeichen lang sein."); } else { SendClientMessage(playerid,COLOR_RED,"Du kannst dein UCP-Passwort nicht ändern, da du nicht eingeloggt bist."); } } } -
Hallo leute
ich habe ein Problem
undzwar der contract befehl geht eing. schon gut aber er wird nicht gespeichert es kommen nur die bei den nachrichten Du hast einem Hitman den Auftrag zur Beseitigung von test für $10000000 erteilt und
[INFO] Auftragsänderung | Zielperson: Test | Neues Kopfgeld: $10000000
@Jeffry
ocmd:contract(playerid,params[])
{
new pID,Menge,playername[MAX_PLAYER_NAME],string[400];
if(sscanf(params,"ui",pID,Menge)) return SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /contract [PlayerID/PlayerName] [Kopfgeldmenge]");
if(Menge < 10000 || Menge > 10000000) { SendClientMessage(playerid, COLOR_GREY, " Die Vertragssumme muss mindestens $10000, aber nicht mehr als $10000000 betragen!"); return 1; }
if(!IsPlayerLoggedIn(pID)) return SendClientMessage(playerid, COLOR_GRAD2, "Der Spieler ist nicht Online!");
if(GetPlayerMoney(playerid) >= Menge)
{
if(PlayerInfo[playerid][pLevel] < 3)return SendClientMessage(playerid, COLOR_GRAD1, "Du musst mindestens Level 3 haben, um einen Auftrag zu erstellen.");
if(PlayerInfo[pID][pLevel] < 3)return SendClientMessage(playerid, COLOR_GRAD1, "Die Person, die du in Auftrag geben möchtest, steht noch unter Neulingsschutz!");
if(GetPlayerFaction(playerid) == 8)return SendClientMessage(playerid, COLOR_GRAD1, "Hitmans können keine Aufträge geben.");
if(pID == playerid) { SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selber unter Vertrag nehmen!"); return 1; }
if(IsPlayerOnContractList(pID) != -1)
{
new i = IsPlayerOnContractList(pID);
GetPlayerName(pID,playername,sizeof playername);
GivePlayerMoney(playerid, -Menge);
Contracts[i][cMenge]+=Menge;
format(string, sizeof(string), "* Du hast einem Hitman den Auftrag zur Beseitigung von %s für $%d erteilt.",playername, Menge);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "[INFO] Auftragsänderung | Zielperson: %s | Neues Kopfgeld: $%d",playername, Contracts[i][cMenge]);
SendFamilyMessage(8, COLOR_YELLOW, string);
}
else
{
if(GetFreeConSlot() != -1)
{
new i = GetFreeConSlot();
GetPlayerName(pID,playername,sizeof playername);
GivePlayerMoney(playerid, -Menge);
Contracts[i][cMenge]=Menge;
format(Contracts[i][cName],32,"%s",playername);
format(string, sizeof(string), "* Du hast einem Hitman den Auftrag zur Beseitigung von %s für $%d erteilt.",playername, Menge);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "[INFO] Neuer Auftrag | Zielperson: %s | Kopfgeld: $%d",playername, Menge);
SendFamilyMessage(8, COLOR_YELLOW, string);
}
else SendClientMessage(playerid,COLOR_RED,"Im Moment können keine Aufträge mehr angenommen werden. Versuche es später noch einmal!");
}
}
else SendClientMessage(playerid,COLOR_RED,"Soviel Geld hast du nicht auf der Hand!");
return 1;
} -
ich habe den fehler
der kommt nur wenn die tabelle dafür leer ist kann man nicht eine eine meldung ausgeben lassen
weil unkow ist doff und wie kann ich verhindern das beim dem befhel gmx nicht der ganze server sich schlieeßt
[01.01.2017 | 03:00:31] 0 == 6
[01.01.2017 | 03:00:31] 6 == 6
[01.01.2017 | 03:00:38] 0 == 6
[01.01.2017 | 03:00:38] 6 == 6
[01.01.2017 | 03:00:43] 0 == 6
[01.01.2017 | 03:00:43] 6 == 6
[01.01.2017 | 03:00:48] 0 == 6
[01.01.2017 | 03:00:48] 6 == 6
[01.01.2017 | 03:00:50] 0 == 6
[01.01.2017 | 03:00:50] 6 == 6
[01.01.2017 | 03:00:52] 0 == 6
[01.01.2017 | 03:00:52] 6 == 6 -
das steht im log
Am besten beides in die Schleife vor die if Abfrage:
printf("%d == %d", GWB[i][gwbfraktion], GetPlayerFaction(playerid));
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6
[01.01.2017 | 02:45:48] 0 == 6 -
Danke, das wünsche ich dir auch
Das return ist insofern schon richtig, denn es wird zu GetPlayerFaction kein passendes GWB[i][gwbfraktion] gefunden.
Prüfe mal, was GetPlayerFaction ausgibt und schaue dann, ob dazu überhaupt ein GWB Wert existiert.
Ansonsten müsstest du deinem Befehl eventuell, wenn i gleich -1 ist, noch eine return Meldung hinzufügen, dass für diese Fraktion keine GWB existiert.
Also soll ich printf("i%",GetPlayerFaction);
oder printf("i%",GWB[i][gwbfraktion]); und wo soll ich das rein machen ? -
Frohes neues @Jeffry
vllt habe ich das return falsch gesetzt ?
stock GetPlayerGWB(playerid)
{
for(new i=0; i < sizeof(GWB); i++)
{
if(GWB[i][gwbfraktion] == GetPlayerFaction(playerid)) return i;
}
return -1;
}Den Teil mit der Ausgabe der Zeile hast du nicht eingebaut. Aber ich habe eine Vermutung.
Poste bitte mal deine GetPlayerGWB Funktion. Ich nehme an, dass die -1 zurück gibt, daher wird das Array gesprengt, was zu dem Fehler führt.
-
Lade dir das Crashdetect Plugin herunter und gehe nach Punkt 1.5 vor: Tipps: Scripting-Probleme richtig erklären
Gehe auch durch den Schritt mit der Zeilenausgabe.So erfährst du, in welcher Zeile der Fehler liegt, wenn du den Befehl nochmal eingibst.
Poste dann die Fehlerzeile nochmal separat, zusammen mit dem Log.
und nu ?
----------
Loaded log file: "server_log.txt".
----------SA-MP Dedicated Server
----------------------
v0.3.7-R2, (C)2005-2015 SA-MP Team[31.12.2016 | 22:52:37]
[31.12.2016 | 22:52:37] Server Plugins
[31.12.2016 | 22:52:37] --------------
[31.12.2016 | 22:52:37] Loading plugin: mysql
[31.12.2016 | 22:52:37] SA:MP MySQL Plugin v2.1.1 Loaded.
[31.12.2016 | 22:52:37] Loaded.
[31.12.2016 | 22:52:37] Loading plugin: crashdetect
[31.12.2016 | 22:52:37] [MySQL] Thread running. Threadsafe: Yes.
[31.12.2016 | 22:52:37] CrashDetect v4.17 is OK.
[31.12.2016 | 22:52:37] Loaded.
[31.12.2016 | 22:52:37] Loading plugin: sscanf
[31.12.2016 | 22:52:37][31.12.2016 | 22:52:37] ===============================
[31.12.2016 | 22:52:37] sscanf plugin loaded.
[31.12.2016 | 22:52:37] Version: 2.8.2
[31.12.2016 | 22:52:37] (c) 2012 Alex "Y_Less" Cole
[31.12.2016 | 22:52:37] ===============================
[31.12.2016 | 22:52:37] Loaded.
[31.12.2016 | 22:52:37] Loading plugin: whirlpool
[31.12.2016 | 22:52:37]
[31.12.2016 | 22:52:37] ==================
[31.12.2016 | 22:52:37]
[31.12.2016 | 22:52:37] Whirlpool loaded
[31.12.2016 | 22:52:37]
[31.12.2016 | 22:52:37] ==================
[31.12.2016 | 22:52:37]
[31.12.2016 | 22:52:37] Loaded.
[31.12.2016 | 22:52:37] Loading plugin: streamer
[31.12.2016 | 22:52:37]*** Streamer Plugin v2.8.2 by Incognito loaded ***
[31.12.2016 | 22:52:37] Loaded.
[31.12.2016 | 22:52:37] Loaded 5 plugins.[31.12.2016 | 22:52:37]
[31.12.2016 | 22:52:37] Filterscripts
[31.12.2016 | 22:52:37] ---------------
[31.12.2016 | 22:52:37] Loading filterscript 'DT_DynamicCar.amx'...
[31.12.2016 | 22:52:37][31.12.2016 | 22:52:37] -------- www.dark-trigardon.de --------
[31.12.2016 | 22:52:37] [FS]DT_DynamicCar by [DT]Sniper
[31.12.2016 | 22:52:37] ---------------------------------------[31.12.2016 | 22:52:37] 4
[31.12.2016 | 22:52:38] Loading filterscript 'JunkBuster.amx'...
[31.12.2016 | 22:52:38]
[31.12.2016 | 22:52:38] [junkbuster] Current JunkBuster configuration:
[31.12.2016 | 22:52:38] [junkbuster] - WeaponHack = 1
[31.12.2016 | 22:52:38] [junkbuster] - MoneyHack = 1
[31.12.2016 | 22:52:38] [junkbuster] - Jetpack = 1
[31.12.2016 | 22:52:38] [junkbuster] - HealthHack = 0
[31.12.2016 | 22:52:38] [junkbuster] - ArmourHack = 1
[31.12.2016 | 22:52:38] [junkbuster] - DriveBy = 2
[31.12.2016 | 22:52:38] [junkbuster] - Spam = 0
[31.12.2016 | 22:52:38] [junkbuster] - CommandSpam = 0
[31.12.2016 | 22:52:38] [junkbuster] - BadWords = 1
[31.12.2016 | 22:52:38] [junkbuster] - CarJackHack = 1
[31.12.2016 | 22:52:38] [junkbuster] - TeleportHack = 1
[31.12.2016 | 22:52:38] [junkbuster] - MaxPing = 600
[31.12.2016 | 22:52:38] [junkbuster] - SpectateHack = 0
[31.12.2016 | 22:52:38] [junkbuster] - Blacklist = 1
[31.12.2016 | 22:52:38] [junkbuster] - IpBans = 1
[31.12.2016 | 22:52:38] [junkbuster] - TempBans = 0
[31.12.2016 | 22:52:38] [junkbuster] - SpawnKill = 0
[31.12.2016 | 22:52:38] [junkbuster] - CapsLock = 1
[31.12.2016 | 22:52:38] [junkbuster] - 3DSpeed = 1
[31.12.2016 | 22:52:38] [junkbuster] - MaxSpeed = 250
[31.12.2016 | 22:52:38] [junkbuster] - AdminImmunity = 1
[31.12.2016 | 22:52:38] [junkbuster] - Advertisement = 0
[31.12.2016 | 22:52:38] [junkbuster] - FreezeUpdate = 0
[31.12.2016 | 22:52:38] [junkbuster] - SpawnTime = 10
[31.12.2016 | 22:52:38] [junkbuster] - CheckpointTeleport = 1
[31.12.2016 | 22:52:38] [junkbuster] - Airbrake = 150
[31.12.2016 | 22:52:38] [junkbuster] - TankMode = 0
[31.12.2016 | 22:52:38] [junkbuster] - WarnPlayers = 0
[31.12.2016 | 22:52:38] [junkbuster] - SingleplayerCheats = 1
[31.12.2016 | 22:52:38] [junkbuster] - MinFPS = 0
[31.12.2016 | 22:52:38] [junkbuster] - DisableBadWeapons = 1
[31.12.2016 | 22:52:38] [junkbuster] - CBug = 16
[31.12.2016 | 22:52:38] [junkbuster] - AntiBugKill = 1
[31.12.2016 | 22:52:38] [junkbuster] - NoReload = 0
[31.12.2016 | 22:52:38] [junkbuster] - NoReloadForSawnOff = 0
[31.12.2016 | 22:52:38] [junkbuster] - ActiveGMC = 1
[31.12.2016 | 22:52:38] [junkbuster] - GMCBan = 0
[31.12.2016 | 22:52:38] [junkbuster] - ServerSideHealth = 0
[31.12.2016 | 22:52:38] [junkbuster] - CheckVMPos = 0
[31.12.2016 | 22:52:38] [junkbuster] - QuickTurn = 0
[31.12.2016 | 22:52:38] [junkbuster] - VehicleTeleport = 1
[31.12.2016 | 22:52:38] [junkbuster] - Wallride = 170
[31.12.2016 | 22:52:38] [junkbuster] - DisplayTextDraw = 1
[31.12.2016 | 22:52:38] [junkbuster] - AFK = 5
[31.12.2016 | 22:52:38] [junkbuster] - PickupTeleport = 1
[31.12.2016 | 22:52:38] [junkbuster] - FlyHack = 40
[31.12.2016 | 22:52:38] [junkbuster] - JunkBusterChrome = 1
[31.12.2016 | 22:52:38] [junkbuster] - CheckWalkAnims = 1
[31.12.2016 | 22:52:38] [junkbuster] - ReportMoneyHack = 1
[31.12.2016 | 22:52:38] [junkbuster] - SpeedhackAdvanced = 20
[31.12.2016 | 22:52:38] [junkbuster] - Joypad = 0
[31.12.2016 | 22:52:38] [junkbuster] - ArmedVehicles = 0
[31.12.2016 | 22:52:38] [junkbuster] - VehicleRepair = 2
[31.12.2016 | 22:52:38] [junkbuster] - TuningHack = 1
[31.12.2016 | 22:52:38] [junkbuster] - PayForGuns = 3
[31.12.2016 | 22:52:38] [junkbuster] - SpawnVehicles = 0
[31.12.2016 | 22:52:38] [junkbuster] - MaxTotalWarnings = 15
[31.12.2016 | 22:52:38] [junkbuster] - TooManyWarningsAction = 1
[31.12.2016 | 22:52:38]
[31.12.2016 | 22:52:38] [junkbuster] 0 IP-bans have been loaded.
[31.12.2016 | 22:52:38] [junkbuster] 0 temporary bans have been loaded.
[31.12.2016 | 22:52:38] [junkbuster] 3 whitelist entries have been loaded.
[31.12.2016 | 22:52:38] [junkbuster] 10 blacklist entries have been loaded.
[31.12.2016 | 22:52:38] [junkbuster] 0 bad words have been loaded.
[31.12.2016 | 22:52:38] [junkbuster] 7 forbidden weapons have been loaded.
[31.12.2016 | 22:52:38] [junkbuster] JunkBuster has been configurated.
[31.12.2016 | 22:52:38] [junkbuster] JunkBuster (v10.0) has successfully been loaded.
[31.12.2016 | 22:52:38] Loaded 2 filterscripts.[31.12.2016 | 22:52:38] [MySQL] Connected (0) to 'test'@'localhost via TCP/IP'.
[31.12.2016 | 22:52:38] [MySQL] Server Version 5.6.32.
[31.12.2016 | 22:52:38] MySQL-Verbindung wurde erfolgreich hergestellt
[31.12.2016 | 22:52:38] Wetter ID: 19
[31.12.2016 | 22:52:38] [connection] 127.0.0.1:50158 requests connection cookie.
[31.12.2016 | 22:52:38] Lade Contracts
[31.12.2016 | 22:52:38] Loading Navipunkte
[31.12.2016 | 22:52:38] 2 Navi Punkte geladen
[31.12.2016 | 22:52:38] Tankstellen wurden geladen
[31.12.2016 | 22:52:38] Loading Radio System
[31.12.2016 | 22:52:38] 0 Radio Stationen geladen
[31.12.2016 | 22:52:38] Loading lohn
[31.12.2016 | 22:52:38] 25 Lohn Infos geladen
[31.12.2016 | 22:52:38] Loading Saveboxen
[31.12.2016 | 22:52:38] 0 Safeboxen geladen
[31.12.2016 | 22:52:39]
--------------------------------------
[31.12.2016 | 22:52:39] Gangautohaus am laden.
[31.12.2016 | 22:52:39] '112' Fraktionsfahrzeuge wurden geladen & erstellt.
[31.12.2016 | 22:52:39] Gangautohaus geladen.
[31.12.2016 | 22:52:39] Staatsfraktionsautohaus am laden.
[31.12.2016 | 22:52:39] '108' Staatsfraktionsautos wurden geladen & erstellt.
[31.12.2016 | 22:52:39] Staatsfraktionsautohaus geladen.
[31.12.2016 | 22:52:39] --------------------------------------[31.12.2016 | 22:52:39] Pickups Max = 2048, Current Pickups = 395
[31.12.2016 | 22:52:39] beta Version!
[31.12.2016 | 22:52:39] Number of vehicle models: 96
[31.12.2016 | 22:52:39] [connection] incoming connection: 127.0.0.1:50158 id: 0
[31.12.2016 | 22:52:39] [npc:join] busbotall has joined the server (0:127.0.0.1)
Console input: password 1
[31.12.2016 | 22:52:53] Setting server password to: "1"
Console input: password
[31.12.2016 | 22:53:03] password = "1" (string)
Console input: password
[31.12.2016 | 22:53:07] password = "1" (string)
[31.12.2016 | 22:53:09] Server password has been removed.
[31.12.2016 | 22:53:40] [connection] 92.224.164.216:57894 requests connection cookie.
[31.12.2016 | 22:53:41] [connection] incoming connection: 92.224.164.216:57894 id: 1
[31.12.2016 | 22:53:42] [join] test has joined the server (1:92.224.164.216)
[31.12.2016 | 22:54:00] [junkbuster] Executing JunkBuster Chrome for player 'test'.
[31.12.2016 | 22:54:00] [part] test has left the server (1:2)
[31.12.2016 | 22:54:35] [connection] 92.224.164.216:53792 requests connection cookie.
[31.12.2016 | 22:54:36] [connection] incoming connection: 92.224.164.216:53792 id: 1
Console input: password 1
[31.12.2016 | 22:55:07] Setting server password to: "1"
[31.12.2016 | 22:55:44] [connection] 92.224.164.216:65416 requests connection cookie.
[31.12.2016 | 22:55:45] [connection] incoming connection: 92.224.164.216:65416 id: 1
[31.12.2016 | 22:55:45] [join] test has joined the server (1:92.224.164.216)
[31.12.2016 | 22:55:56] test hat sich eingeloggt.
[31.12.2016 | 22:56:41] [debug] Run time error 4: "Array index out of bounds"
[31.12.2016 | 22:56:41] [debug] Attempted to read/write array element at negative index -1
[31.12.2016 | 22:56:41] [debug] AMX backtrace:
[31.12.2016 | 22:56:42] [debug] #0 0029f1d8 in public ocmdOnPlayerCommandText (1, 26483268) from test.amx
[31.12.2016 | 22:56:42] [debug] #1 native CallLocalFunction () from samp-server.exe
[31.12.2016 | 22:56:42] [debug] #2 000091f4 in public OnPlayerCommandText (1, 26483208) from test.amx -
da kommt immer unknow command odersoo
if(strcmp(cmd,"/gangwaffenbox",true)==0)
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInAGang(playerid) || GetPlayerFaction(playerid) == 20)
{
if(IsPlayerAtWaffenBox(playerid))
{
new i = GetPlayerGWB(playerid);
format(string,256,"Gangwaffenbox - Mats: %d | Drugs: %d",GWB[i][gwbmats],GWB[i][gwbdrugs]);
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
}
else SendClientMessage(playerid,COLOR_RED,"Du bist nicht bei der Gangwaffenbox!");
}
else SendClientMessage(playerid,COLOR_RED,"Du bist in keiner Gang!");
}
return 1;
}
if(dialogid == DIALOG_GWB)
{
if(response)
{
switch(listitem)
{
case 0://Einzahlen
{
ShowPlayerDialog(playerid,DIALOG_GWB_EINZAHLEN,DIALOG_STYLE_INPUT,"Gangwaffenbox - Mats einzahlen","Tippe hier ein, wieviele Materialien du einzahlen möchtest:","Einzahlen","Zurueck");
}
case 1://Bauen
{
if(PlayerInfo[playerid][pGunLic] == 1)
{
if(GetPlayerFaction(playerid) == 6)
{
ShowPlayerDialog(playerid,DIALOG_GWB_BAUEN,DIALOG_STYLE_LIST,"Gangwaffenbox - Waffe zusammenbauen","Desert Eagle\t100 Schuss\t500 Materialien\nShotgun\t100 Munition\t500Materialien\nAK47\t250 Munition\t750 Materialien\nM4\t250 Munition\t750 Materialien\nMP5\t300 Munition\t850 Materialien\nKatana\t1 Munition\t100 Materialien\nSchlagring\t1 Munition\t100 Materialien","Bauen","Zurueck");
}
else if(GetPlayerFaction(playerid) == 8)
{
ShowPlayerDialog(playerid,DIALOG_GWB_BAUEN,DIALOG_STYLE_LIST,"Gangwaffenbox - Waffe zusammenbauen","Desert Eagle\t100 Schuss\t500 Materialien\nShotgun\t100 Munition\t500Materialien\nAK47\t250 Munition\t750 Materialien\nM4\t250 Munition\t750 Materialien\nMP5\t300 Munition\t850 Materialien\nKatana\t1 Munition\t100 Materialien\nSchlagring\t1 Munition\t100 Materialien\nAlles zusammen\t5000 Materialien ","Bauen","Zurueck");
}
else
{
ShowPlayerDialog(playerid,DIALOG_GWB_BAUEN,DIALOG_STYLE_LIST,"Gangwaffenbox - Waffe zusammenbauen","Desert Eagle\t100 Schuss\t500 Materialien\nShotgun\t100 Munition\t500Materialien\nAK47\t250 Munition\t750 Materialien\nM4\t250 Munition\t750 Materialien\nMP5\t300 Munition\t850 Materialien\nBaseballschläger\t1 Munition\t100 Materialien\nSchlagring\t1 Munition\t100 Materialien","Bauen","Zurueck");
}
}
else
{
new i = GetPlayerGWB(playerid);
format(string,256,"Gangwaffenbox - Mats: %d | Drugs: %d",GWB[i][gwbmats],GWB[i][gwbdrugs]);
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
SendClientMessage(playerid,COLOR_RED,"Du hast keinen Waffenschein!");
}
}
case 2://Drogen einzahlen
{
ShowPlayerDialog(playerid,DIALOG_GWB_DRUGS_EIN,DIALOG_STYLE_INPUT,"Gangwaffenbox - Drugs einzahlen","Tippe hier ein, wieviele Drogen du einzahlen möchtest:","Einzahlen","Zurueck");
}
case 3://Drogen auszahlen
{
ShowPlayerDialog(playerid,DIALOG_GWB_DRUGS_AUS,DIALOG_STYLE_INPUT,"Gangwaffenbox - Drugs auszahlen","Tippe hier ein, wieviele Drogen du auszahlen möchtest:","Einzahlen","Zurueck");
}
}
/*Materialien einzahlen\nMaterialien Auszahlen\nWaffe zusammen bauen*/
}
}
if(dialogid == DIALOG_GWB_EINZAHLEN)
{
new i = GetPlayerGWB(playerid);
new sendername1[MAX_PLAYER_NAME];
new str[144];
GetPlayerName(playerid,sendername1,sizeof(sendername1));
format(string,256,"Gangwaffenbox - Mats: %d | Drugs: %d",GWB[i][gwbmats],GWB[i][gwbdrugs]);
if(response)
{
if(strval(inputtext)<0)
{
SendClientMessage(playerid,COLOR_RED," ERROR: Kein gültiger Wert!");
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
return 1;
}
if(!IsNumeric(inputtext))
{
SendClientMessage(playerid,COLOR_RED," ERROR: Kein gültiger Wert!");
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
return 1;
}
if(strval(inputtext)>PlayerInfo[playerid][pMats])
{
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
SendClientMessage(playerid,COLOR_RED,"Soviele Materialien hast du nicht!");
return 1;
}
if(strval(inputtext)>10000)
{
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
SendClientMessage(playerid,COLOR_RED,"Du kannst immer nur 10.000 Mats in die Box legen!");
return 1;
}
GWB[i][gwbmats]+=strval(inputtext);
PlayerInfo[playerid][pMats]-=strval(inputtext);
SendClientMessage(playerid,COLOR_GREEN,"Du hast die Materialien erfolgreich in die Gangwaffenbox getan.");
format(str,144,"%s hat %d Materialien in die Waffenbox getan.",sendername1,strval(inputtext));
SendFamilyMessage(i,COLOR_LIGHTBLUE,str);
}
else
{
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
}
}
if(dialogid == DIALOG_GWB_DRUGS_AUS)
{
new i = GetPlayerGWB(playerid);
new sendername11[MAX_PLAYER_NAME];
new str[144];
GetPlayerName(playerid,sendername11,sizeof(sendername11));
new pFrak = GetPlayerFaction(playerid);
format(string,256,"Gangwaffenbox - Mats: %d | Drugs: %d",GWB[i][gwbmats],GWB[i][gwbdrugs]);
if(response)
{
if(strval(inputtext)<0)
{
SendClientMessage(playerid,COLOR_RED," ERROR: Kein gültiger Wert!");
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
return 1;
}
if(!IsNumeric(inputtext))
{
SendClientMessage(playerid,COLOR_RED," ERROR: Kein gültiger Wert!");
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
return 1;
}
if(strval(inputtext)>GWB[i][gwbdrugs])
{
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
SendClientMessage(playerid,COLOR_RED,"Soviele Drogen sind nicht in der Gangwaffenbox!");
return 1;
}
if(strval(inputtext)>100)
{
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
SendClientMessage(playerid,COLOR_RED,"Du kannst immer nur 100 Drogen in die Box legen!");
return 1;
}
GWB[i][gwbdrugs]-=strval(inputtext);
PlayerInfo[playerid][pDrugs]+=strval(inputtext);
format(str,144,"%s hat %dg Drogen aus der Waffenbox ausgezahlt.",sendername11,strval(inputtext));
SendFamilyMessage(pFrak,COLOR_LIGHTBLUE,str);
SendClientMessage(playerid,COLOR_GREEN,"Du hast die Drogen erfolgreich aus der Gangwaffenbox genommen.");
}
else
{
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
}
}
if(dialogid == DIALOG_GWB_DRUGS_EIN)
{
new i = GetPlayerGWB(playerid);
new sendername22[MAX_PLAYER_NAME];
new str[144];
new pFrak = GetPlayerFaction(playerid);
GetPlayerName(playerid,sendername22,sizeof(sendername22));
format(string,256,"Gangwaffenbox - Mats: %d | Drugs: %d",GWB[i][gwbmats],GWB[i][gwbdrugs]);
if(response)
{
if(strval(inputtext)<0)
{
SendClientMessage(playerid,COLOR_RED," ERROR: Kein gültiger Wert!");
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
return 1;
}
if(!IsNumeric(inputtext))
{
SendClientMessage(playerid,COLOR_RED," ERROR: Kein gültiger Wert!");
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
return 1;
}
if(strval(inputtext)>PlayerInfo[playerid][pDrugs])
{
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
SendClientMessage(playerid,COLOR_RED,"Soviele Drogen hast du nicht!");
return 1;
}
if(strval(inputtext)>10000)
{
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
SendClientMessage(playerid,COLOR_RED,"Du kannst immer nur 100 Drogen in die Box legen!");
return 1;
}
GWB[i][gwbdrugs]+=strval(inputtext);
PlayerInfo[playerid][pDrugs]-=strval(inputtext);
format(str,144,"%s hat %dg Drogen in die Waffenbox getan.",sendername22,strval(inputtext));
SendFamilyMessage(pFrak,COLOR_LIGHTBLUE,str);
SendClientMessage(playerid,COLOR_GREEN,"Du hast die Drogen erfolgreich in die Gangwaffenbox getan.");
}
else
{
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
}
}
if(dialogid == DIALOG_GWB_BAUEN)
{
new i = GetPlayerGWB(playerid);
new sendername33[MAX_PLAYER_NAME];
new str[144];
new pFrak = GetPlayerFaction(playerid);
GetPlayerName(playerid,sendername33,sizeof(sendername33));
format(string,256,"Gangwaffenbox - Mats: %d | Drugs: %d",GWB[i][gwbmats],GWB[i][gwbdrugs]);
if(response)
{
switch(listitem)
{
case 0://Deagle - 100 Schuss - 500 Mats
{
if(GWB[i][gwbmats]<500) return SendClientMessage(playerid,COLOR_RED,"Soviele Materialien sind nicht in der Gangwaffenbox.");
GWB[i][gwbmats]-=500;
GivePlayerWeapon(playerid,24,100);
format(str,144,"%s hat sich eine Deagle aus der Waffenbox genommen.",sendername33);
SendFamilyMessage(pFrak,COLOR_LIGHTBLUE,str);
}
case 1://Shotgun - 100 Schuss - 500 Mats
{
if(GWB[i][gwbmats]<500) return SendClientMessage(playerid,COLOR_RED,"Soviele Materialien sind nicht in der Gangwaffenbox.");
GWB[i][gwbmats]-=500;
GivePlayerWeapon(playerid,25,100);
format(str,144,"%s hat sich eine Shotgun aus der Waffenbox genommen.",sendername33);
SendFamilyMessage(pFrak,COLOR_LIGHTBLUE,str);
}
case 2://AK47 - 250 Schuss - 750 Mats
{
if(GWB[i][gwbmats]<750) return SendClientMessage(playerid,COLOR_RED,"Soviele Materialien sind nicht in der Gangwaffenbox.");
GWB[i][gwbmats]-=750;
GivePlayerWeapon(playerid,30,250);
format(str,144,"%s hat sich eine AK-47 aus der Waffenbox genommen.",sendername33);
SendFamilyMessage(pFrak,COLOR_LIGHTBLUE,str);
}
case 3://M4 - 250 Schuss - 750 Mats
{
if(GWB[i][gwbmats]<750) return SendClientMessage(playerid,COLOR_RED,"Soviele Materialien sind nicht in der Gangwaffenbox.");
GWB[i][gwbmats]-=750;
GivePlayerWeapon(playerid,31,250);
format(str,144,"%s hat sich eine M4 aus der Waffenbox genommen.",sendername33);
SendFamilyMessage(pFrak,COLOR_LIGHTBLUE,str);
}
case 4://MP5 - 300 Schuss - 850 Mats
{
if(GWB[i][gwbmats]<850) return SendClientMessage(playerid,COLOR_RED,"Soviele Materialien sind nicht in der Gangwaffenbox.");
GWB[i][gwbmats]-=850;
GivePlayerWeapon(playerid,29,300);
format(str,144,"%s hat sich eine MP5 aus der Waffenbox genommen.",sendername33);
SendFamilyMessage(pFrak,COLOR_LIGHTBLUE,str);
}
case 5://Baseballschläger - 1 Schuss - 100 Mats bzw Katana
{
if(GWB[i][gwbmats]<100) return SendClientMessage(playerid,COLOR_RED,"Soviele Materialien sind nicht in der Gangwaffenbox.");
GWB[i][gwbmats]-=100;
if(GetPlayerFaction(playerid) == 6) {
GivePlayerWeapon(playerid,8,1);
format(str,144,"%s hat sich ein Katana aus der Waffenbox genommen.",sendername33);
SendFamilyMessage(pFrak,COLOR_LIGHTBLUE,str);
} else {
GivePlayerWeapon(playerid,5,1);
format(str,144,"%s hat sich einen Baseballschläger aus der Waffenbox genommen.",sendername33);
SendFamilyMessage(pFrak,COLOR_LIGHTBLUE,str);
}
}
case 6://Schlagring - 1 Schuss - 100 Mats
{
if(GWB[i][gwbmats]<100) return SendClientMessage(playerid,COLOR_RED,"Soviele Materialien sind nicht in der Gangwaffenbox.");
GWB[i][gwbmats]-=100;
GivePlayerWeapon(playerid,1,1);
format(str,144,"%s hat sich einen Schlagring aus der Waffenbox genommen.",sendername33);
SendFamilyMessage(pFrak,COLOR_LIGHTBLUE,str);
}
case 7:
{
if(GWB[i][gwbmats]<5000) return SendClientMessage(playerid,COLOR_RED,"Soviele Materialien sind nicht in der Gangwaffenbox.");
GivePlayerWeapon(playerid, 24, 500);
GivePlayerWeapon(playerid, 31, 500);
GivePlayerWeapon(playerid, 29, 500);
GivePlayerMoney(playerid,-5000);
GivePlayerWeapon(playerid, 34, 100);
GivePlayerWeapon(playerid, 4, 1);
GivePlayerWeapon(playerid, 25, 500);
GivePlayerMoney(playerid,-10000);
SetPlayerHealth(playerid,100.0);
GWB[i][gwbmats]-=5000;
}
}
}
else
{
ShowPlayerDialog(playerid,DIALOG_GWB,DIALOG_STYLE_LIST,string,"Materialien einzahlen\nWaffe zusammen bauen\nDrogen einzahlen\nDrogen auszahlen","Weiter","Schließen");
}
}
if(dialogid == DIALOGFACTIONCARBUY)
{ -
ahh okay danke geht aber kannst du mir noch bei was anderem helfen ?
Ändere die Spalte "id" auf AUTO_INCREMENT.
Dazu gibt es in der Struktur ein Feld. Es heißt auch oft "A_I" (Checkbox). -
ich kann keinen weiteren punkt erstellen der erstellt immer ein bei 0 und dann nicht mehr weiter
Nein, aber deine Schleife fängt bei 1 an, dann muss auch der erste Eintrag in der Datenbank die id 1 haben.
Error (0): Failed to exeute query. Duplicate entry '0' for key 'PRIMARY'.
-
okay muss ich jz immer in der DB auf eine andere zahl machen
-
Ändere die "id" beim ersten Datensatz in der Tabelle zu "1".
[31.12.2016 | 16:13:15] Loading Navipunkte
[31.12.2016 | 16:13:15] 1 Navi Punkte geladen
jz wurden sie geladen -
[b][/b]Loading Navipunkte 0 Navi Punkte geladen
Was gibt dir dieser Print aus?
Kannst du bitte mal einen Screenshot der Daten in der Datenbank posten?