Warum sollte ich jedem mein RCON geben wollen ? Genau, macht man nicht, deswegen benutze ich ein Adminsystem, warum ? Es soll Benutzerfreundlich sein. Mein Server hat mehr als nur ausreichende Ressourcen, weswegen ich mir diese Performancefressenden Klassen noch leisten darf 
Beiträge von LoomaR
- 
					
- 
					Spiele kein Minecraft  
- 
					Adde mich mal in Skype und wir schauen uns dass gerne mal fix gemeinsam an ! Bei mir mit ein wenig hin und her unter Unix Fixxed : ZitatAlles anzeigenSA-MP Dedicated Server 
 ----------------------
 v0.3z, (C)2005-2014 SA-MP Team[11-04-2015 - 01:17:23] 
 [11-04-2015 - 01:17:23] Server Plugins
 [11-04-2015 - 01:17:23] --------------
 [11-04-2015 - 01:17:23] Loading plugin: mysql.so
 [11-04-2015 - 01:17:23] >> plugin.mysql: R39-3 successfully loaded.
 [11-04-2015 - 01:17:23] Loaded.
 [11-04-2015 - 01:17:23] Loaded 1 plugins.[11-04-2015 - 01:17:23] I couldn't load any gamemode scripts. Please verify your server.cfg 
 [11-04-2015 - 01:17:23] It needs a gamemode0 line at the very least.Ja ich habe absichtlich keinen Gamemode geladen ! 
- 
					So funktioniert das ganze ! Also mit deinem Code, aber wie mache ich es nun, dass dort etwas in der Richtung steht wie: "[AdmMsg]: %s, Du bist nicht befugt diesen Befehl zu benutzen!" Mindest benötigter Rang : (RANG) Und eventuell noch sowas wie ... Du hast %s zum (Rang) befördert. Hat Spieler %s zum (RANG) befördert ? Eventuell würde mir auch helfen, wenn du es detaliert erklärst warum du es so machst ! Den Query habe ich absichtlich wieder nach oben geschoben ! Da ich sonst Fehler bekomme ! ocmd:setadmin(playerid, params[]) 
 {
 new query[256];
 if(isPlayerAnAdmin(playerid,1))
 {
 format(query, sizeof query, "[AdmMsg]: %s, Du bist nicht befugt diesen Befehl zu benutzen!" ,Spielername(playerid));
 return SendClientMessage(playerid, Rot, query);
 }
 new pID;
 if(sscanf(params, "ui", pID, rang)) return SendClientMessage(playerid, Blau, "[SysMsg]: Benutze: /setadmin [SpielerID][Rang 0 - 5]");
 SetPVarInt(pID, "Adminlevel", rang);
 SendClientMessage(playerid, Blau, "Der Vorgang war erfolgreich");
 mysql_format(Handle, query, sizeof(query), "UPDATE `users` SET `Adminlevel`='%i' WHERE `username`='%s'",rang,Spielername(pID));
 mysql_pquery(Handle, query);
 return 1;
 }Und zur Hölle warum muss ich GetPVarInt und SetPVarInt nutzren wenn ich mit MySQL arbeite, das verstehe ich nicht ganz  
- 
					Du willst Dinge aus dem Workshop laden ? okay, dass ist nicht ganz so leicht  Schau dich hier mal um  
- 
					Schrott ! Grund : FERTIGPC ( Allgemein Müll ) Beu dir deinen Rechner selber zusammen, ist kosteng+ünstiger und du kannst deine Komponenten aufeinander abstimmen  
- 
					 Quelle : Mein Programm 
- 
					Ich habe da ein Problemchen ! Ich nutze ein MySQL System, Admin erstellen und in der DB Speichern alles kein Thema ... Aber warum geht dieses hier nicht : /*Hier kann man die Enums finden !*/ enum PD 
 {
 pEingeloggt,
 pGeld,
 pLevel,
 pAdminlevel,
 pFraktion,
 pOnline
 };new SpielerInfo[MAX_PLAYERS][PD]; 
 new Handle;
 new rang;
 new fraktion;/*Das Script beginnt hier !*/ ocmd:setadmin(playerid, params[]) 
 {
 new query[256];
 //if(!IsPlayerAdmin(playerid))
 if(isPlayerAnAdmin(playerid,1, rang))
 {
 format(query, sizeof query, "[AdmMsg]: %s, Du bist nicht befugt diesen Befehl zu benutzen!" ,Spielername(playerid));
 return SendClientMessage(playerid, Rot, query);
 }
 new pID;
 if(sscanf(params, "ui", pID, rang)) return SendClientMessage(playerid, Blau, "[SysMsg]: Benutze: /setadmin [SpielerID][Rang 0 - 5]");
 SetPVarInt(playerid, "Adminlevel", rang);
 SendClientMessage(pID, Blau, "Der Vorgang war erfolgreich");
 mysql_format(Handle, query, sizeof(query), "UPDATE `users` SET `Adminlevel`='%i' WHERE `username`='%s'",rang,Spielername(playerid));
 mysql_pquery(Handle, query);
 return 1;
 }stock isPlayerAnAdmin(playerid) 
 {
 if(GetPVarInt(playerid,"Adminlevel")>=rang)
 return 0;
 }stock isPlayerNotAnAdmin(playerid) 
 {
 if(getPVarInt(playerid,"Adminlevel")<=rang)
 return 0;
 }stock Adminrang(playerid) 
 {
 new rang[128];
 switch(SpielerInfo[playerid][pAdminlevel])
 {
 case 0 : rang = "Zivilist";
 case 1 : rang = "Probe Supporter";
 case 2 : rang = "Supporter";
 case 3 : rang = "Moderator";
 case 4 : rang = "Admin";
 case 5 : rang = "FullAdmin";
 case 6 : rang = "Inhaber";
 }
 return rang;
 }Vielen Dank für Eure Hilfe ! 
- 
					Der Compiler crasht dann, dass hatte ich gestern, so wie mein stock ist, geht alles wunderbar ! 
- 
					    Und ich suche doch nur eine Erklärung für : if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, Rot, "[AdmMsg]: [u]'%s[/u]', Du bist nicht befugt diesen Befehl zu benutzen!"); Nicht wegen einem case oder return oder wie auch immer, und warum dass so sein muss, damit ich auch einen grund und nicht nur eine Vorlage habe !  
- 
					Dank deine Antwort bin ich auf das hier gestoßen  [ SCRIPTING ] sscanf 2.0 Besten Dank ! new pID,rang; Das hatte ich absichtlich weggelassen, da die Ränge aus einem Stock enstehen  stock Adminrang(playerid) 
 {
 new rang[54];
 switch(SpielerInfo[playerid][pAdminlevel])
 {
 case 0 : rang = "Zivilist";
 case 1 : rang = "Probe Supporter";
 case 2 : rang = "Supporter";
 case 3 : rang = "Moderator";
 case 4 : rang = "Admin";
 case 5 : rang = "FullAdmin";
 case 6 : rang = "Inhaber";
 }
 return rang;
 }Dafür nochmals besten Dank an @seegran und ChristianW wegen die Hilfe gestern Abend im TS³ ! 
- 
					Guten Tag zusammen, ich versuche gerade einen Setadmin Befehl zu basteln, der einen User jedoch persönlich anspricht. Ich glaube ich mache da was verkehrt, kann mir Jemand einen Tipp geben ? Zudem, ich Suche eine Erklärung für die Verwendung von %i, %s, %d, %e und so weiter. Was steht genau für was und ist wie anzuwenden ? Danke  ocmd:setadmin(playerid, params[]) 
 {
 new query[256];
 if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, Rot, "[AdmMsg]: %s, Du bist nicht befugt diesen Befehl zu benutzen!");
 new pID;
 if(sscanf(params, "ui", pID, rang)) return SendClientMessage(playerid, Blau, "Benutze: /setadmin [SpielerID][Rang 0 - 5]");
 SetPVarInt(playerid, "Adminlevel", rang);
 SendClientMessage(pID, Blau ,"Der Vorgang war erfolgreich");
 mysql_format(Handle, query, sizeof(query), "UPDATE `samp_database`.`users` SET `Adminlevel`='%i' WHERE `username`='%s'", Spielername(playerid));
 mysql_pquery(Handle, query);
 return 1;
 }
- 
					Guten morgen zusammen, ich habe eine kleine Frage, kann mir eventuell Jemand sagen, was ich noch machen muss um das ganze 100% auf MySQL Basis zu haben ?ß? ocmd:setadmin(playerid, params[]) 
 {
 if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, Rot, "AdmMsg: Du bist nicht befugt diesen Befehl zu benutzen!");
 new pID, pRang;
 if(sscanf(params, "ui", pID, pRang)) return SendClientMessage(playerid, Blau, "Benutze: /setadmin [SpielerID][Rang 0 - 5]");
 SetPVarInt(playerid, "Adminlevel", pRang);
 SendClientMessage(pID, Blau ,"Der Vorgang war erfolgreich");
 SpielerSpeichern(playerid);
 return 1;
 }Das gannze läuft über die Datenbank ! Tabelle Users, Spalte Adminlevel! Gespeichert wird das ganze wie folgt : stock SpielerSpeichern(playerid) 
 {
 new query[256];
 if(!SpielerInfo[playerid][pEingeloggt])return 1;
 mysql_format(Handle, query, sizeof(query), "UPDATE `samp_database`.`users` SET `Geld`='%i',`Level`='%i', Adminlevel`='$i'` WHERE `username`='%e'", GetPlayerMoney(playerid), GetPlayerScore(playerid), Spielername(playerid)),
 mysql_pquery(Handle, query);
 return 1;
 }Aufgerufen wird es so : stock SpielerLaden(playerid) 
 {
 SpielerInfo[playerid][pEingeloggt] = true;
 SpielerInfo[playerid][pGeld] = cache_get_field_content_int(0, "Geld", Handle), GivePlayerMoney(playerid, SpielerInfo[playerid][pGeld]);
 SpielerInfo[playerid][pLevel] = cache_get_field_content_int(0, "Level", Handle), SetPlayerScore(playerid, SpielerInfo[playerid][pLevel]);
 SpielerInfo[playerid][pAdminlevel] = cache_get_field_content_int(0, "Adminlevel", Handle);
 return 1;
 }Thanks  
- 
					Guten Morgen zusammen, für die Nachtaktiven, ich hab euin wenig Langeweile und versuche mich derzeitig an Pawno  Wenn ihr wollt, dürft ihr mir gerne zuschauen ! Link : http://www.hitbox.tv/LoomaR Online bin ich meist ab 12 Uhr bis Open end  Kritik : Klar her damit, wenn ich nen Noob bin, dann ist es so  
- 
					Spoiler anzeigen 
 /*Allgemeine Includes sind hier zu finden !*/Spoiler anzeigen #include <a_samp>
 #include <a_mysql>
 #include <MD5>
 #include <npcdll>
 #include <ocmd>
 #include <sscanf2>Spoiler anzeigen /*Allgemeine Farben sind hier zu finden !*/Spoiler anzeigen #define Weiss 0xFFFFFFFF
 #define Rot 0xFF0000FF
 #define Gelb 0xFFFC00FF
 #define grün 0x00FF3CFF
 #define blau 0x0096FFFFSpoiler anzeigen /*Allgemeine Handles sind hier zu finden !*/Spoiler anzeigen new Handle;Spoiler anzeigen new CarRadio[MAX_VEHICLES],
 CarRadioName[MAX_PLAYERS][32],
 CarRadioURL[MAX_PLAYERS][128];
 /*Hier finsdest du die MySQL Daten !*/Spoiler anzeigen /*Warum nutze ich diese Reihenfolge ? Weil man erst den Host, dann den User, dann dass password und dann die Datenbank abruft !*/Spoiler anzeigen #define MYSQL_HOST "localhost"
 #define MYSQL_USER "root"
 #define MYSQL_DATA "samp_database"
 #define MYSQL_PASS ""
 /*Hier kann man noch Dialoge finden !*/Spoiler anzeigen #define DIALOG_REGISTER 1
 #define DIALOG_LOGIN 2Spoiler anzeigen #define RADIO_STREAMS_DEBUG 3
 
 #define DIALOG_CARMENU_RADIO 300
 #define DIALOG_RADIO_ADD_NAME 301
 #define DIALOG_RADIO_ADD_URL 302
 #define DIALOG_RADIO_ADD_CHECK 303
 #define DIALOG_RADIO_MANAGE_LIST 304
 /*Hier kann man die forwards finden !*/Spoiler anzeigen forward OnPasswordResponse(playerid);
 forward UserCheck(playerid);Spoiler anzeigen /*Hier = ENUM !!!*/Spoiler anzeigen enum PD
 {
 pEingeloggt,
 pGeld,
 pLevel,
 pFraktion,
 pOnline
 };Spoiler anzeigen new SpielerInfo[MAX_PLAYERS][PD];Spoiler anzeigen /*Das Script beginnt hier !*/Spoiler anzeigen main()
 {
 print("\n----------------------------------");
 print(" That is a gamemode made by LoomaR");
 print("----------------------------------\n");
 }Spoiler anzeigen public OnGameModeInit()
 {
 Handle = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_DATA, MYSQL_PASS);
 if(mysql_errno() < 1) print ("MySqlServer: Die Verbindung zum Server wurde erfolgreich hergestellt."), mysql_log(LOG_ALL); else print ("MySqlServer: Es konnte keine Verbindung zum Server hergestellt werden"), SendRconCommand("exit");
 SetGameModeText("That is a script made by LoomaR");
 AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
 return 1;
 }Spoiler anzeigen public OnGameModeExit()
 {
 return 1;
 }Spoiler anzeigen public OnPlayerRequestClass(playerid, classid)
 {
 SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
 SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
 SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
 return 1;
 }Spoiler anzeigen public OnPlayerConnect(playerid)
 {
 new query[256];
 mysql_escape_string(Spielername(playerid), Spielername(playerid));
 format(query, sizeof(query), "SELECT * FROM `samp_database`.`users` WHERE username='%s'", Spielername(playerid));
 mysql_tquery(Handle, query, "UserCheck", "i", playerid);
 format(query, sizeof(query), "UPDATE `samp_database`.`users` SET `Online`=1 WHERE `username`='%s'", Spielername(playerid));
 mysql_tquery(Handle, query);
 return 1;
 }Spoiler anzeigen public OnPlayerDisconnect(playerid, reason)
 {
 new query[256];
 format(query, sizeof(query), "UPDATE `samp_database`.`users` SET `Online`=0 WHERE `username`='%s'", Spielername(playerid));
 SpielerSpeichern(playerid);
 mysql_tquery(Handle, query);
 return 1;
 }Spoiler anzeigen public OnPlayerSpawn(playerid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerDeath(playerid, killerid, reason)
 {
 return 1;
 }Spoiler anzeigen public OnVehicleSpawn(vehicleid)
 {
 CarRadio[vehicleid] = 0;
 return 1;
 }Spoiler anzeigen public OnVehicleDeath(vehicleid, killerid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerText(playerid, text[])
 {
 return 1;
 }Spoiler anzeigen public OnPlayerCommandText(playerid, cmdtext[])
 {
 if (strcmp("/mycommand", cmdtext, true, 10) == 0)
 {
 // Do something here
 return 1;
 }
 return 1;
 }Spoiler anzeigen ocmd:carradio(playerid, params[])
 {
 new query [512];
 if(GetPlayerVehicleSeat(playerid) != 1 && GetPlayerVehicleSeat(playerid) != 0)return SendClientMessage(playerid, 0xAFAFAFFF, "Du bist kein Fahrer oder Beifahrer eines Fahrzeuges!");
 format(query, sizeof(query), "SELECT * FROM radiostations WHERE radio_active='1'", Spielername(playerid));
 new rows, fields;
 cache_get_data(rows, fields);
 if(!rows)return SendClientMessage(playerid, 0xAFAFAFFF, "Es sind keine Radiosender vorhanden.");
 new radios, dstring[1028];
 while(radios < rows) {
 new temp[512];
 cache_get_field_content(radios, "radio_name", temp);
 format(dstring, sizeof dstring, "%s%s\n", dstring, temp);
 radios++;
 }
 ShowPlayerDialog(playerid, DIALOG_CARMENU_RADIO, DIALOG_STYLE_LIST, "Radiosender", dstring, "Einschalten", "Ausschalten");
 mysql_tquery(Handle, query);
 return 1;
 }
 
 ocmd:listradios(playerid, params[])
 {
 new query [512];
 if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid, 0xAFAFAFFF, "Du bist kein Administrator.");
 format(query, sizeof(query), "SELECT * FROM radiostations WHERE radio_active='1'", Spielername(playerid));
 new rows, fields;
 cache_get_data(rows, fields);
 if(!rows)return ShowPlayerDialog(playerid, DIALOG_RADIO_MANAGE_LIST, DIALOG_STYLE_LIST, "Radiosender", "Es sind keine Radiosender vorhanden", "Hinzufügen", "");
 new radios, dstring[1028];
 while(radios < rows) {
 new temp[512];
 cache_get_field_content(radios, "radio_name", temp);
 format(dstring, sizeof dstring, "%s[%i] %s\n", cache_get_field_content_int(radios, "id"), dstring, temp);
 radios++;
 }
 ShowPlayerDialog(playerid, DIALOG_RADIO_MANAGE_LIST, DIALOG_STYLE_LIST, "Radiosender", dstring, "Hinzufügen", "Löschen");
 mysql_tquery(Handle, query);
 return 1;
 }Spoiler anzeigen public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerExitVehicle(playerid, vehicleid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerStateChange(playerid, newstate, oldstate)
 {
 new vehicleid = GetPlayerVehicleID(playerid);
 if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER) {
 if(CarRadio[vehicleid] != 0) {
 new query[512];
 format(query, sizeof(query), "SELECT * FROM radiostations WHERE id='%i' LIMIT 1", CarRadio[vehicleid], Spielername(playerid));
 mysql_tquery(Handle, query);
 new temp[512];
 cache_get_field_content(0, "radio_url", temp);
 PlayAudioStreamForPlayer(playerid, temp);
 }
 }
 if(newstate == PLAYER_STATE_ONFOOT) {
 StopAudioStreamForPlayer(playerid);
 }
 return 1;
 }Spoiler anzeigen public OnPlayerEnterCheckpoint(playerid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerLeaveCheckpoint(playerid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerEnterRaceCheckpoint(playerid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerLeaveRaceCheckpoint(playerid)
 {
 return 1;
 }Spoiler anzeigen public OnRconCommand(cmd[])
 {
 return 1;
 }Spoiler anzeigen public OnPlayerRequestSpawn(playerid)
 {
 return 1;
 }Spoiler anzeigen public OnObjectMoved(objectid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerObjectMoved(playerid, objectid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerPickUpPickup(playerid, pickupid)
 {
 return 1;
 }Spoiler anzeigen public OnVehicleMod(playerid, vehicleid, componentid)
 {
 return 1;
 }Spoiler anzeigen public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
 {
 return 1;
 }Spoiler anzeigen public OnVehicleRespray(playerid, vehicleid, color1, color2)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerSelectedMenuRow(playerid, row)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerExitedMenu(playerid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
 {
 return 1;
 }Spoiler anzeigen public OnRconLoginAttempt(ip[], password[], success)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerUpdate(playerid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerStreamIn(playerid, forplayerid)
 {
 return 1;
 }Spoiler anzeigen public OnPlayerStreamOut(playerid, forplayerid)
 {
 return 1;
 }Spoiler anzeigen public OnVehicleStreamIn(vehicleid, forplayerid)
 {
 return 1;
 }Spoiler anzeigen public OnVehicleStreamOut(vehicleid, forplayerid)
 {
 return 1;
 }Spoiler anzeigen public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
 {
 new query[256], key[50];
 if(dialogid == DIALOG_REGISTER)
 {
 if(!response)
 {
 return Kick(playerid);
 }
 if(strlen(inputtext) < 7) return SendClientMessage(playerid, Rot, "Error: {FFFFFF}Dein Passwort ist kleiner als 7 Zeichen. Bitte verwende ein sicheres Passwort."),ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registration","It was no Account found under this name.\nPlease take a safe Password to register you.","Register","Cancel"); format(key, 50, "%s", inputtext);
 mysql_escape_string(Spielername(playerid), Spielername(playerid)), mysql_escape_string(key, key);
 format(query, sizeof(query), "INSERT INTO `samp_database`.`users` (`username`, `password`, `Geld`, `Level`) VALUES ('%s', MD5('%s'), 50000, 1)", Spielername(playerid), key);
 mysql_tquery(Handle, query);
 SendClientMessage(playerid, -1, "Dein Account wurde erstellt.");
 GivePlayerMoney(playerid, 50000), SetPlayerScore(playerid, 1);
 return 1;
 }
 if(dialogid == DIALOG_LOGIN)
 {
 if(!response)
 {
 return Kick(playerid);
 }
 format(key, 50, "%s", inputtext);
 mysql_escape_string(Spielername(playerid), Spielername(playerid)), mysql_escape_string(key, key);
 format(query, sizeof(query), "SELECT * FROM `samp_database`.`users` WHERE username='%s' AND password=MD5('%s')", Spielername(playerid), key);
 mysql_tquery(Handle, query, "OnPasswordResponse", "i", playerid);
 }
 new string[512];
 switch(dialogid) {
 case DIALOG_CARMENU_RADIO: {
 if(response) {
 format(query, sizeof(query), "SELECT * FROM radiostations WHERE radio_name='%s' LIMIT 1", inputtext, Spielername(playerid));
 mysql_tquery(Handle, query);
 new temp[512];
 cache_get_field_content(0, "radio_url", temp);
 PlayAudioStreamForPlayer(playerid, temp);
 cache_get_field_content(0, "radio_name", temp);
 format(query, sizeof(query), "Du hast den Radiosender auf %s gestellt.", temp);
 SendClientMessage(playerid, -1, string);
 CarRadio[GetPlayerVehicleID(playerid)] = cache_get_field_content_int(0, "id");
 } else StopAudioStreamForPlayer(playerid);
 }
 case DIALOG_RADIO_ADD_NAME: {
 if(response) {
 if(!strlen(inputtext) || strlen(inputtext) < 6)return SendClientMessage(playerid, 0xAFAFAFFF, "Der Name ist zu kurz."), ShowPlayerDialog(playerid, DIALOG_RADIO_ADD_NAME, DIALOG_STYLE_INPUT, "Radio hinzufügen", "Gebe den Namen des Radios ein.", "Weiter", "Abbruch");
 if(strlen(inputtext) > 32)return SendClientMessage(playerid, 0xAFAFAFFF, "Der Name ist zu lang."), ShowPlayerDialog(playerid, DIALOG_RADIO_ADD_NAME, DIALOG_STYLE_INPUT, "Radio hinzufügen", "Gebe den Namen des Radios ein.", "Weiter", "Abbruch");
 ShowPlayerDialog(playerid, DIALOG_RADIO_ADD_URL, DIALOG_STYLE_INPUT, "Radio hinzufügen", "Gebe die URL des Radios ein.", "Weiter", "Zurück");
 format(CarRadioName[playerid], 32, "%s", inputtext);
 mysql_tquery(Handle, query);
 }
 }
 case DIALOG_RADIO_ADD_URL: {
 if(response) {
 if(!strlen(inputtext) || strlen(inputtext) < 6)return SendClientMessage(playerid, 0xAFAFAFFF, "Die URL ist zu kurz."), ShowPlayerDialog(playerid, DIALOG_RADIO_ADD_URL, DIALOG_STYLE_INPUT, "Radio hinzufügen", "Gebe die URL des Radios ein.", "Weiter", "Zurück");
 if(strlen(inputtext) > 128)return SendClientMessage(playerid, 0xAFAFAFFF, "Die URL ist zu lang."), ShowPlayerDialog(playerid, DIALOG_RADIO_ADD_URL, DIALOG_STYLE_INPUT, "Radio hinzufügen", "Gebe die URL des Radios ein.", "Weiter", "Zurück");
 format(CarRadioURL[playerid], 128, "%s", inputtext);
 format(query, sizeof(query), "Radio Name: %s\nRadio URL: %s\n\nWollen sie die Radiostation hinzufügen?", CarRadioName[playerid], CarRadioURL[playerid]);
 ShowPlayerDialog(playerid, DIALOG_RADIO_ADD_CHECK, DIALOG_STYLE_INPUT, "Radio hinzufügen", string, "Ja", "Nein");
 mysql_tquery(Handle, query);
 }
 }
 case DIALOG_RADIO_ADD_CHECK: {
 if(response) {
 format(query, sizeof(query), "INSERT INTO radiostations (`radio_name`, `radio_url`) VALUES ('%s', '%s')", CarRadioName[playerid], CarRadioURL[playerid]);
 mysql_tquery(Handle, query);
 SendClientMessage(playerid, -1, "Du hast erfolgreich eine Radiostation hinzugefügt.");
 #if RADIO_STREAMS_DEBUG == 1
 printf("[Radio-System]: %s hat einen Radiosender hinzugefügt.", PlayerName(playerid));
 #endif
 }
 }
 case DIALOG_RADIO_MANAGE_LIST: {
 if(response) {
 ShowPlayerDialog(playerid, DIALOG_RADIO_ADD_NAME, DIALOG_STYLE_INPUT, "Radio hinzufügen", "Gebe den Namen des Radios ein.", "Weiter", "Abbruch");
 } else if(!response) {
 new start, end;
 start = strfind(inputtext, "[");
 end = strfind(inputtext, "]");
 strdel(inputtext, 0, start+1);
 strdel(inputtext, end, strlen(inputtext));
 new id = strval(inputtext);
 format(query, sizeof(query), "DELETE FROM radiostations WHERE id='%i'", id);
 mysql_tquery(Handle, query);
 SendClientMessage(playerid, -1, "Du hast erfolgreich einen Radiosender gelöscht.");
 #if RADIO_STREAMS_DEBUG == 1
 printf("[Radio-System]: %s hat einen Radiosender gelöscht.", PlayerName(playerid));
 #endif
 }
 }
 }
 return 1;
 }Spoiler anzeigen public OnPlayerClickPlayer(playerid, clickedplayerid, source)
 {
 return 1;
 }Spoiler anzeigen public UserCheck(playerid)
 {
 new num_rows, num_fields;
 cache_get_data(num_rows, num_fields, Handle);
 if(num_rows == 0)
 {
 ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Anmeldung", "Es wurde kein Account unter diesem namen gefunden!", "Anmelden", "Abbrechen");
 }
 else
 {
 ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Anmeldung", "Es wurde ein Account unter diesem namen gefunden!", "Anmelden", "Abbrechen");
 }
 }
 public OnPasswordResponse(playerid)
 {
 new num_fields, num_rows;
 cache_get_data(num_rows, num_fields);
 if(num_rows == 0)
 {
 SendClientMessage(playerid, -1, "Das Passwort ist inkorrekt.");
 ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Anmeldung", "Es wurde ein Account unter diesem namen gefunden!", "Anmelden", "Abbrechen");
 }
 else
 {
 SendClientMessage(playerid, -1, "Erfolgreich eingeloggt.");
 SpielerInfo[playerid][pEingeloggt] = true;
 SpielerLaden(playerid);
 SpawnPlayer(playerid);
 }
 return 1;
 }Spoiler anzeigen stock Spielername(playerid)
 {
 new name[50];
 GetPlayerName(playerid, name, 50);
 return name;
 }Spoiler anzeigen stock PlayerName(playerid) {
 new Name[MAX_PLAYER_NAME];
 GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
 return Name;
 }Spoiler anzeigen stock SpielerLaden(playerid)
 {
 SpielerInfo[playerid][pEingeloggt] = true;
 SpielerInfo[playerid][pGeld] = cache_get_field_content_int(0, "Geld", Handle), GivePlayerMoney(playerid, SpielerInfo[playerid][pGeld]);
 SpielerInfo[playerid][pLevel] = cache_get_field_content_int(0, "Level", Handle), SetPlayerScore(playerid, SpielerInfo[playerid][pLevel]);
 return 1;
 }Spoiler anzeigen stock SpielerSpeichern(playerid)
 {
 new query[256];
 if(!SpielerInfo[playerid][pEingeloggt])return 1;
 mysql_format(Handle, query, sizeof(query), "UPDATE `samp_database`.`users` SET `Geld`='%i',`Level`='%i' WHERE `username`='%e'", GetPlayerMoney(playerid), GetPlayerScore(playerid), Spielername(playerid)),
 mysql_pquery(Handle, query);
 return 1;
 }Spoiler anzeigen stock CheckTables()
 {
 new query[256];
 mysql_format(Handle, query, sizeof(query), "CREATE TABLE IF NOT EXISTS `radiostations` (`id` int(11) NOT NULL AUTO_INCREMENT,`radio_name` text NOT NULL,`radio_url` text NOT NULL,`radio_active` tinyint(1) NOT NULL DEFAULT '1',PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;", Spielername(playerid));
 mysql_pquery(Handle, query);
 return 1;
 }So, beim Compilen nun keine Fehler mehr ! Aber ich bin mir sicher, ohne es zu testen, es sind Fehler vorhanden ! 
- 
					Und was fehlt nun ? 
- 
					Habe dir eine PM zukommen lassen Jeffry  
- 
					case DIALOG_RADIO_ADD_URL: { 
 if(response) {
 if(!strlen(inputtext) || strlen(inputtext) < 6)return SendClientMessage(playerid, 0xAFAFAFFF, "Die URL ist zu kurz."), ShowPlayerDialog(playerid, DIALOG_RADIO_ADD_URL, DIALOG_STYLE_INPUT, "Radio hinzufügen", "Gebe die URL des Radios ein.", "Weiter", "Zurück");
 if(strlen(inputtext) > 128)return SendClientMessage(playerid, 0xAFAFAFFF, "Die URL ist zu lang."), ShowPlayerDialog(playerid, DIALOG_RADIO_ADD_URL, DIALOG_STYLE_INPUT, "Radio hinzufügen", "Gebe die URL des Radios ein.", "Weiter", "Zurück");
 format(CarRadioURL[playerid], 128, "%s", inputtext);
 format(query, sizeof(query), "Radio Name: %s\nRadio URL: %s\n\nWollen sie die Radiostation hinzufügen?", CarRadioName[playerid], CarRadioURL[playerid]);
 ShowPlayerDialog(playerid, DIALOG_RADIO_ADD_CHECK, DIALOG_STYLE_INPUT, "Radio hinzufügen", string, "Ja", "Nein");
 }
 }Sicher nicht ? 
- 
					ocmd:carradio(playerid, params[]) 
 {
 new query [512];
 if(GetPlayerVehicleSeat(playerid) != 1 && GetPlayerVehicleSeat(playerid) != 0)return SendClientMessage(playerid, 0xAFAFAFFF, "Du bist kein Fahrer oder Beifahrer eines Fahrzeuges!");
 format(query, sizeof(query), "SELECT * FROM radiostations WHERE radio_active='1'", Spielername(playerid));
 new rows, fields;
 cache_get_data(rows, fields);
 if(!rows)return SendClientMessage(playerid, 0xAFAFAFFF, "Es sind keine Radiosender vorhanden.");
 new radios, dstring[1028];
 while(radios < rows) {
 new temp[512];
 cache_get_field_content(radios, "radio_name", temp);
 format(dstring, sizeof dstring, "%s%s\n", dstring, temp);
 radios++;
 }
 ShowPlayerDialog(playerid, DIALOG_CARMENU_RADIO, DIALOG_STYLE_LIST, "Radiosender", dstring, "Einschalten", "Ausschalten");
 return 1;
 }
 
 ocmd:listradios(playerid, params[])
 {
 new query [512];
 if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid, 0xAFAFAFFF, "Du bist kein Administrator.");
 format(query, sizeof(query), "SELECT * FROM radiostations WHERE radio_active='1'", Spielername(playerid));
 new rows, fields;
 cache_get_data(rows, fields);
 if(!rows)return ShowPlayerDialog(playerid, DIALOG_RADIO_MANAGE_LIST, DIALOG_STYLE_LIST, "Radiosender", "Es sind keine Radiosender vorhanden", "Hinzufügen", "");
 new radios, dstring[1028];
 while(radios < rows) {
 new temp[512];
 cache_get_field_content(radios, "radio_name", temp);
 format(dstring, sizeof dstring, "%s[%i] %s\n", cache_get_field_content_int(radios, "id"), dstring, temp);
 radios++;
 }
 ShowPlayerDialog(playerid, DIALOG_RADIO_MANAGE_LIST, DIALOG_STYLE_LIST, "Radiosender", dstring, "Hinzufügen", "Löschen");
 return 1;
 }Jemand eine Ahnung warum dies so ist ? 
- 
					Immer als erstes mysql.dll / mysql.so laden, sonst passiert dir dieser Fehler  
 
		