Hänge an meinem Script -.-

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
  • Guten Tag,


    bin grad eher ein nicht Profi beim Scripten und versuche grad ein Stunt/Fun Script zu Scripten. Das Register & Login System wollte ich von meinem alten Reallife GF Edit übernehmen und hänge grad mal wieder fest.


    C:\Users\Daniel\Desktop\SA-MP\pawno\include\Dini.inc(239) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(179) : error 017: undefined symbol "M_OnPlayerUpdate"
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(318) : error 017: undefined symbol "ABroadCast"
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(374) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(377) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(380) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(382) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(384) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(386) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(393) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(396) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(399) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(401) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(403) : error 021: symbol already defined: "OnPlayerLogin"
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(405) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(411) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(413) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(421) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(428) : error 021: symbol already defined: "GetPlayerName"
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(434) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(436) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(442) : error 021: symbol already defined: "OnPlayerRegister"
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(444) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(453) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(456) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(459) : error 010: invalid function or declaration
    C:\Users\Daniel\Desktop\SA-MP\gamemodes\Script.pwn(462) : error 010: invalid function or declaration


    //----------------------------------------------------------
    //
    // BlackWarriors-Gaming
    //
    //----------------------------------------------------------


    //====================================[ include ]=====================================


    #include <a_samp>
    #include <core>
    #include <float>
    #include <Dini>
    #include <streamer>
    #include <audio>
    #include <time>


    #pragma tabsize 0


    //====================================[ define ]=====================================
    //Server
    #define SERVERNAME "BlackWarriors-Gaming Stunt&Fun"
    #define KURZSERVERNAME "BwG Stunt&Fun"
    #define CLANTAG "BwG"
    #define SCRIPTVERSION "0.1"
    //Farben
    #define FARBE_WEIS 0xFFFFFFFF
    #define FARBE_SCHWARZ 0x000000FF
    #define FARBE_ROT 0xFF0000FF
    #define FARBE_ORANGE 0xFF4000FF
    #define FARBE_GELB 0xFFFF00FF
    #define FARBE_GRUEN 0x00FF00FF
    #define FARBE_BLAU 0x0040FFFF
    #define FARBE_LILA 0xB404AEFF
    #define FARBE_PINK 0xFF00FFFF
    //Dialoge
    #define DIALOG_LOGIN 0
    #define DIALOG_REG 1
    #define DIALOG_REG2 2
    //Sonstiges
    #define foxBanFile "FoxBan/%s.ini"
    #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1


    //======================================[ new ]=======================================
    new pname[MAX_PLAYERS];
    new gPlayerLogged[MAX_PLAYERS];
    new gPlayerLogTries[MAX_PLAYERS];
    new gPlayerSpawned[MAX_PLAYERS];
    new gPlayerAccount[MAX_PLAYERS];
    new ConsumingMoney[MAX_PLAYERS];
    new CurrentMoney[MAX_PLAYERS];


    //====================================[ forward ]=====================================
    forward PlayerUpdate(playerid);
    forward OnPlayerRegister(playerid, password[]);
    forward OnPlayerLogin(playerid,password[]);


    //======================================[ enum ]======================================
    enum pInfo
    {
    pKey[128],
    pLevel,
    pBanned,
    pAdmin,
    pDonateRank,
    pConnectTime,
    pReg,
    pSex,
    pAge,
    pAccount,
    pCK,
    pMuted,
    pCash,
    pKills,
    pDeaths,
    pMats,
    pContractTime,
    Float:pHealth,
    Float:pSHealth,
    pInt,
    Float:pPos_x,
    Float:pPos_y,
    Float:pPos_z,
    pPlayMinutes,
    pGesamtMinutes,
    pMinutesSinceLogin,
    pMinutesSinceAn,
    };
    new PlayerInfo[MAX_PLAYERS][pInfo];
    //----------------------------------------------------------


    main()
    {
    print("\n---------------------------------------");
    print("BlackWarriors-Gaming Stunt & Fun Script\n");
    print("---------------------------------------\n");
    }


    //----------------------------------------------------------
    //=====================================[ public ]=====================================


    public OnPlayerConnect(playerid)
    {
    GameTextForPlayer(playerid,"~w~"KURZSERVERNAME,3000,4);
    SendClientMessage(playerid,0xFFFFFFFF,"Willkommen auf "KURZSERVERNAME);
    }


    public OnGameModeInit()
    {
    SetGameModeText(CLANTAG" v"SCRIPTVERSION);
    ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
    ShowNameTags(1);
    SetNameTagDrawDistance(40.0);
    EnableStuntBonusForAll(0);
    DisableInteriorEnterExits();
    SetWeather(2);
    SetWorldTime(11);
    return 1;
    }


    public OnPlayerRegister(playerid, password[])
    {
    if(IsPlayerConnected(playerid))
    {
    new string3[64];
    new playername3[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername3, sizeof(playername3));
    format(string3, sizeof(string3), "/Accounts/%s.ini", playername3);
    new File: hFile = fopen(string3, io_write);
    if (hFile)
    {
    strmid(PlayerInfo[playerid][pKey], password, 0, strlen(password), 255);
    new var[32];
    format(var, 32, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
    PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
    format(var, 32, "Level=%d\n",PlayerInfo[playerid][pLevel]);fwrite(hFile, var);
    format(var, 32, "Banned=%d\n",PlayerInfo[playerid][pBanned]);fwrite(hFile, var);
    format(var, 32, "AdminLevel=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
    format(var, 32, "DonateRank=%d\n",PlayerInfo[playerid][pDonateRank]);fwrite(hFile, var);
    format(var, 32, "ConnectedTime=%d\n",PlayerInfo[playerid][pConnectTime]);fwrite(hFile, var);
    format(var, 32, "Registered=%d\n",PlayerInfo[playerid][pReg]);fwrite(hFile, var);
    format(var, 32, "Sex=%d\n",PlayerInfo[playerid][pSex]);fwrite(hFile, var);
    format(var, 32, "Age=%d\n",PlayerInfo[playerid][pAge]);fwrite(hFile, var);
    format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
    format(var, 32, "Kills=%d\n",PlayerInfo[playerid][pKills]);fwrite(hFile, var);
    format(var, 32, "Deaths=%d\n",PlayerInfo[playerid][pDeaths]);fwrite(hFile, var);
    format(var, 32, "Materials=%d\n",PlayerInfo[playerid][pMats]);fwrite(hFile, var);
    format(var, 32, "pSHealth=%.1f\n",PlayerInfo[playerid][pSHealth]);fwrite(hFile, var);
    GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);
    format(var, 32, "pHealth=%.1f\n",PlayerInfo[playerid][pHealth]);fwrite(hFile, var);
    format(var, 32, "Int=%d\n",PlayerInfo[playerid][pInt]);fwrite(hFile, var);
    GetPlayerName(playerid,pname,sizeof(pname));
    if ((PlayerInfo[playerid][pPos_x]==0.0 && PlayerInfo[playerid][pPos_y]==0.0 && PlayerInfo[playerid][pPos_z]==0.0))
    {
    PlayerInfo[playerid][pPos_x] = 1684.9;
    PlayerInfo[playerid][pPos_y] = -2244.5;
    PlayerInfo[playerid][pPos_z] = 13.5;
    }
    format(var, 32, "Pos_x=%.1f\n",PlayerInfo[playerid][pPos_x]);fwrite(hFile, var);
    format(var, 32, "Pos_y=%.1f\n",PlayerInfo[playerid][pPos_y]);fwrite(hFile, var);
    format(var, 32, "Pos_z=%.1f\n",PlayerInfo[playerid][pPos_z]);fwrite(hFile, var);
    format(var, 32, "PlayMinutes=%d\n",PlayerInfo[playerid][pPlayMinutes]);fwrite(hFile, var);
    format(var, 32, "GesamtMinutes=%d\n",PlayerInfo[playerid][pGesamtMinutes]);fwrite(hFile, var);
    format(var, 32, "MinutesSinceAn=%d\n",PlayerInfo[playerid][pMinutesSinceAn]);fwrite(hFile, var);
    fclose(hFile);
    new clientlogonmsg[512];
    format(clientlogonmsg, sizeof clientlogonmsg, "%s hat sich registriert.", playername3);
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login (3/6)","Bitte logge dich nun in deinen {FF0000}Account{FFFFFF} ein!","Login","Abbrechen");
    }
    }
    return 1;
    }


    public PlayerUpdate(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    if(gPlayerLogged[playerid])
    {
    M_OnPlayerUpdate(playerid);
    new string3[64];
    new playername3[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername3, sizeof(playername3));
    format(string3, sizeof(string3), "/Accounts/%s.ini", playername3);
    new File: hFile = fopen(string3, io_write);
    if (hFile)
    {
    new var[32];
    format(var, 32, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
    PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
    format(var, 32, "Level=%d\n",PlayerInfo[playerid][pLevel]);fwrite(hFile, var);
    format(var, 32, "Banned=%d\n",PlayerInfo[playerid][pBanned]);fwrite(hFile, var);
    format(var, 32, "AdminLevel=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
    format(var, 32, "DonateRank=%d\n",PlayerInfo[playerid][pDonateRank]);fwrite(hFile, var);
    format(var, 32, "ConnectedTime=%d\n",PlayerInfo[playerid][pConnectTime]);fwrite(hFile, var);
    format(var, 32, "Registered=%d\n",PlayerInfo[playerid][pReg]);fwrite(hFile, var);
    format(var, 32, "Sex=%d\n",PlayerInfo[playerid][pSex]);fwrite(hFile, var);
    format(var, 32, "Age=%d\n",PlayerInfo[playerid][pAge]);fwrite(hFile, var);
    format(var, 32, "Muted=%d\n",PlayerInfo[playerid][pMuted]);fwrite(hFile, var);
    format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
    format(var, 32, "Kills=%d\n",PlayerInfo[playerid][pKills]);fwrite(hFile, var);
    format(var, 32, "Deaths=%d\n",PlayerInfo[playerid][pDeaths]);fwrite(hFile, var);
    format(var, 32, "Materials=%d\n",PlayerInfo[playerid][pMats]);fwrite(hFile, var);
    format(var, 32, "pSHealth=%.1f\n",PlayerInfo[playerid][pSHealth]);fwrite(hFile, var);
    GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);
    format(var, 32, "pHealth=%.1f\n",PlayerInfo[playerid][pHealth]);fwrite(hFile, var);
    format(var, 32, "Int=%d\n",PlayerInfo[playerid][pInt]);fwrite(hFile, var);
    if ((PlayerInfo[playerid][pPos_x]==0.0 && PlayerInfo[playerid][pPos_y]==0.0 && PlayerInfo[playerid][pPos_z]==0.0))
    {
    PlayerInfo[playerid][pPos_x] = 1684.9;
    PlayerInfo[playerid][pPos_y] = -2244.5;
    PlayerInfo[playerid][pPos_z] = 13.5;
    }
    format(var, 32, "Pos_x=%.1f\n",PlayerInfo[playerid][pPos_x]);fwrite(hFile, var);
    format(var, 32, "Pos_y=%.1f\n",PlayerInfo[playerid][pPos_y]);fwrite(hFile, var);
    format(var, 32, "Pos_z=%.1f\n",PlayerInfo[playerid][pPos_z]);fwrite(hFile, var);
    format(var, 32, "PlayMinutes=%d\n",PlayerInfo[playerid][pPlayMinutes]);fwrite(hFile, var);
    format(var, 32, "GesamtMinutes=%d\n",PlayerInfo[playerid][pGesamtMinutes]);fwrite(hFile, var);
    format(var, 32, "MinutesSinceAn=%d\n",PlayerInfo[playerid][pMinutesSinceAn]);fwrite(hFile, var);
    fclose(hFile);
    }
    }
    }
    return 1;
    }


    public OnPlayerLogin(playerid,password[])
    {
    new tmp2[256];
    new playername2[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername2, sizeof(playername2));
    new string3[128];
    format(string3, sizeof(string3), "/Accounts/%s.ini", playername2);
    new File: UserFile = fopen(string3, io_read);
    if ( UserFile )
    {
    new PassData[256];
    new keytmp[256], valtmp[256];
    fread( UserFile , PassData , sizeof( PassData ) );
    keytmp = ini_GetKey( PassData );
    if( strcmp( keytmp , "Key" , true ) == 0 )
    {
    valtmp = ini_GetValue( PassData );
    strmid(PlayerInfo[playerid][pKey], valtmp, 0, strlen(valtmp)-1, 255);
    }
    if(strcmp(PlayerInfo[playerid][pKey],password, true ) == 0 )
    {
    new key[ 256 ] , val[ 256 ];
    new Data[ 256 ];
    while ( fread( UserFile , Data , sizeof( Data ) ) )
    {
    key = ini_GetKey( Data );
    if( strcmp( key , "Level" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pLevel] = strval( val ); }
    if( strcmp( key , "Banned" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pBanned] = strval ( val ); }
    if( strcmp( key , "AdminLevel" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAdmin] = strval( val ); }
    if( strcmp( key , "DonateRank" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pDonateRank] = strval( val ); }
    if( strcmp( key , "ConnectedTime" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pConnectTime] = strval( val ); }
    if( strcmp( key , "Registered" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pReg] = strval( val ); }
    if( strcmp( key , "Sex" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSex] = strval( val ); }
    if( strcmp( key , "Age" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAge] = strval( val ); }
    if( strcmp( key , "CK" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCK] = strval( val ); }
    if( strcmp( key , "Muted" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pMuted] = strval( val ); }
    if( strcmp( key , "Money" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCash] = strval( val ); }
    if( strcmp( key , "Kills" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pKills] = strval( val ); }
    if( strcmp( key , "Deaths" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pDeaths] = strval( val ); }
    if( strcmp( key , "ContractTime" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pContractTime] = strval( val ); }
    if( strcmp( key , "pSHealth" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSHealth] = floatstr( val ); }
    if( strcmp( key , "pHealth" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pHealth] = floatstr( val ); }
    if( strcmp( key , "Int" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pInt] = strval( val ); }
    if( strcmp( key , "Pos_x" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPos_x] = floatstr( val ); }
    if( strcmp( key , "Pos_y" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPos_y] = floatstr( val ); }
    if( strcmp( key , "Pos_z" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPos_z] = floatstr( val ); }
    if( strcmp( key , "PlayMinutes" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPlayMinutes] = strval( val ); }
    if( strcmp( key , "GesamtMinutes" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGesamtMinutes] = strval( val ); }
    if( strcmp( key , "MinutesSinceAn" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pMinutesSinceAn] = strval( val ); }


    }//end while
    fclose(UserFile);//close the file after everything has been read in the while
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das Passwort ist nicht korrekt! Bitte gib nun dein richtiges Passwort ein:","Login","Abbrechen");
    fclose(UserFile);
    gPlayerLogTries[playerid] += 1;
    if(gPlayerLogTries[playerid] == 4) { Kick(playerid); }
    return 1;
    }
    ResetPlayerMoney(playerid);
    ConsumingMoney[playerid] = 1;
    GivePlayerMoney(playerid,PlayerInfo[playerid][pCash]);
    CurrentMoney[playerid] = PlayerInfo[playerid][pCash];
    new time[3], time2[6];
    gettime(time[0], time[1], time[2]);
    if(time[1] < 10)
    {
    format(time2, sizeof(time2), "%d:0%d",time[0], time[1]);
    }
    else
    {
    format(time2, sizeof(time2), "%d:%d",time[0], time[1]);
    }
    if(PlayerInfo[playerid][pReg] == 0)
    {
    PlayerInfo[playerid][pLevel] = 1;
    PlayerInfo[playerid][pBanned] = 0;
    PlayerInfo[playerid][pSHealth] = 0.0;
    PlayerInfo[playerid][pHealth] = 150.0;
    PlayerInfo[playerid][pPos_x] = 2246.6;
    PlayerInfo[playerid][pPos_y] = -1161.9;
    PlayerInfo[playerid][pPos_z] = 1029.7;
    PlayerInfo[playerid][pInt] = 15;
    PlayerInfo[playerid][pAccount] = 5000;
    PlayerInfo[playerid][pReg] = 1;
    GivePlayerMoney(playerid, 7000);
    }
    if(PlayerInfo[playerid][pBanned] == 1) //autoban
    {
    format(string3,sizeof(string3)," %s versucht mit seinem gebannten Account online zu kommen und wurde gekickt!",playername2);
    ABroadCast(COLOR_LIGHTRED,string3,1);
    SendClientMessage(playerid,FARBE_ROT," Dein Account ist gebannt! Mach dir mal Gedanken, warum...");
    Kick(playerid);
    return 1;
    }
    else if(PlayerInfo[playerid][pCK] > 0)
    {
    Kick(playerid);
    }
    new string4[128];
    format(string4, sizeof(string4), "SERVER: Erfolgreich eingeloggt, Willkommen %s",playername2);
    SendClientMessage(playerid, FARBE_WEIS,string4);
    printf("%s has logged in.",playername2);
    if(PlayerInfo[playerid][pDonateRank] > 0)
    {
    SendClientMessage(playerid, FARBE_WEIS,"SERVER: Du bist ein Premium Nutzer. Für Premiumhilfe /ph");
    }
    if (PlayerInfo[playerid][pAdmin] > 0)
    {
    format(string4, sizeof(string4), "SERVER: ..::Du bist ein %d Admin::..",PlayerInfo[playerid][pAdmin]);
    SendClientMessage(playerid, FARBE_WEIS,string4);
    }
    gPlayerLogged[playerid] = 1;
    SpawnPlayer(playerid);
    format(tmp2, sizeof(tmp2), "~w~Willkommen ~n~~y~ %s", playername2);
    GameTextForPlayer(playerid, tmp2, 5000, 1);
    }
    return 1;
    }



    //=====================================[ stock ]======================================


    stock ini_GetKey( line[] )
    {
    new keyRes[256];
    keyRes[0] = 0;
    if ( strfind( line , "=" , true ) == -1 ) return keyRes;
    strmid( keyRes , line , 0 , strfind( line , "=" , true ) , sizeof( keyRes) );
    return keyRes;
    }


    stock ini_GetValue( line[] )
    {
    new valRes[256];
    valRes[0]=0;
    if ( strfind( line , "=" , true ) == -1 ) return valRes;
    strmid( valRes , line , strfind( line , "=" , true )+1 , strlen( line ) , sizeof( valRes ) );
    return valRes;
    }


    //====================================[ Commands ]====================================



    //====================================[ Function ]====================================


    Function BroadCast(color,const string[])
    {
    SendClientMessageToAll(color, string);
    return 1;
    }


    Function ABroadCast(color,const string[],level)
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if (PlayerInfo[i][pAdmin] >= level || PlayerInfo[i][pSupporter] >= level||PlayerInfo[i][pAdmin2] >= level || PlayerInfo[i][pServiceTeam] >= level)
    {
    SendClientMessage(i, color, string);
    printf("%s", string);
    }
    }
    }
    return 1;
    }


    Function OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {


    if(dialogid == DIALOG_LOGIN)
    {
    if(response && strlen(inputtext) > 0)
    {
    OnPlayerLogin(playerid,inputtext);
    }
    else
    {
    Kick(playerid);
    }
    }


    if(dialogid == DIALOG_REG)
    {
    if(response)
    {
    SetPlayerPos(playerid,1821.4423,-1317.9711,120.2656);
    SetPlayerCameraPos(playerid,1821.4235,-1314.1632,120.2656);
    SetPlayerCameraLookAt(playerid,1821.4512,-1314.5305,120.2656);
    SetPlayerSkin(playerid,60);
    ShowPlayerDialog(playerid,DIALOG_REG2,DIALOG_STYLE_PASSWORD,"Account erstellen","Gib das Passwort für deinen Account ein:","OK","Abbrechen");
    }
    else
    {
    SetPlayerPos(playerid,1821.4423,-1317.9711,120.2656);
    SetPlayerCameraPos(playerid,1821.4235,-1314.1632,120.2656);
    SetPlayerCameraLookAt(playerid,1821.4512,-1314.5305,120.2656);
    SetPlayerSkin(playerid,60);
    new playername[MAX_PLAYER_NAME];
    GetPlayerName(playerid,playername,MAX_PLAYER_NAME);
    format(string,sizeof(string),"Herzlich Willkommen %i,\nUnsere Community heißt dich Willkommen und wir hoffen\ndas du Hier viel Spaß Hast\nKlicke auf 'Weiter' um dir einen Account zu Erstellen",playername);
    ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_MSGBOX,"Willkommen",string,"Erstellen","");
    }
    }


    if(dialogid == DIALOG_REG2)
    {
    if(response && strlen(inputtext) > 0)
    {
    SetPlayerPos(playerid,1821.4423,-1317.9711,120.2656);
    SetPlayerCameraPos(playerid,1821.4235,-1314.1632,120.2656);
    SetPlayerCameraLookAt(playerid,1821.4512,-1314.5305,120.2656);
    SetPlayerSkin(playerid,60);
    OnPlayerRegister(playerid,inputtext);
    }
    else
    {
    SetPlayerPos(playerid,1821.4423,-1317.9711,120.2656);
    SetPlayerCameraPos(playerid,1821.4235,-1314.1632,120.2656);
    SetPlayerCameraLookAt(playerid,1821.4512,-1314.5305,120.2656);
    SetPlayerSkin(playerid,60);
    ShowPlayerDialog(playerid,DIALOG_REG2,DIALOG_STYLE_PASSWORD,"Account erstellen","Gib das Passwort für deinen Account ein:","OK","Abbrechen");
    }
    }
    return 1;
    }


    Function OnPlayerRequestClass(playerid, classid)
    {


    if(IsPlayerNPC(playerid))
    {
    SpawnPlayer(playerid);
    return 1;
    }
    if(gPlayerAccount[playerid] == 1 && gPlayerLogged[playerid] == 0)
    {
    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"{FF0000}"SERVERNAME"{FFFFFF}: Login","Bitte gib zur Verifizierung deiner Person dein Accountpasswort ein:","Login","Verlassen");
    }
    else if(gPlayerAccount[playerid] == 0 && gPlayerLogged[playerid] == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_MSGBOX,"Account erstellen (1/6)","Du benötigst einen {FF0000}Account{FFFFFF}, um auf diesem {FF0000}Server{FFFFFF} zu spielen!\n\nBitte wähle ein {FF0000}sicheres{FFFFFF} Passwort aus!\n\nMindestens 5 Zeilen!\n\n www.blackwarriors-gaming.de","Erstellen","Abbrechen");
    }
    PlayerPlaySound(playerid, 1176, 0.0, 0.0, 0.0);
    PlayerInfo[playerid][pModel] = Peds[classid][0];
    SetupPlayerForClassSelection(playerid);
    return 1;


    }


    Function OnPlayerConnect(playerid)
    {
    SetPlayerVirtualWorld(playerid, 0);
    SetPlayerInterior(playerid,0);
    PlayAudioStreamForPlayer(playerid, "http://www.blackwarriors-gaming.de/MusicbyMcLeod");


    //====================[ Betreten ]====================
    new psender[MAX_PLAYER_NAME];
    new string2[200];
    GetPlayerName(playerid, psender, sizeof(psender));
    format(string2, sizeof(string2), "** {00FF00}%s {D8D8D8}hat den Server betreten.{FFFFFF}", psender);
    SendClientMessageToAll(0xD8D8D8FF, string2);


    //---------------------------------------------------------------------------------//
    ShowPlayerDialog(playerid,Regeln,DIALOG_STYLE_MSGBOX,"Willkommen","Herzlich Willkommen auf unserem Server.\n\n{FF0000}Zurzeit ist unser Beta-Script auf unserem Server\n{FF0000}drauf, daher das unser richtiges Script im\n{FF0000}mega Umbau ist.\nBitte habe einen Moment gedult, es wird überprüft ob du einen Account hast.\n\nMit freundlichen Grüßen,\nDas Admin Team.","Login","Verlassen");
    new xDIP[16];
    GetPlayerIp(playerid,xDIP,16);
    for(new i = 0; i < AUTOHAUSER; i++)
    {
    SetPlayerMapIcon(playerid, 30+i);
    }


    SendClientMessage(playerid, FARBE_GELB, "Laden...");
    SendClientMessage(playerid, FARBE_GELB, "Laden...");
    SendClientMessage(playerid, FARBE_GELB, "Laden...");
    SendClientMessage(playerid, FARBE_WEIS, "Bitte warte einen Augenblick, dein Account wird gesucht..");
    //------------------------------------------------------------------------------
    M_OnPlayerConnect(playerid);
    TextDrawShowForPlayer(playerid,ServerTEXT);
    TextDrawShowForPlayer(playerid,Ts3);
    TextDrawShowForPlayer(playerid,Datum);


    new plname[MAX_PLAYER_NAME];
    new string[64];
    KickPlayer[playerid] = 0;MapIconsShown[playerid] = 0;Mats[playerid] = 0;
    gPlayerLogged[playerid] = 0; gPlayerLogTries[playerid] = 0; gPlayerAccount[playerid] = 0;
    PlayerStoned[playerid] = 0;
    GivePlayerMoney(playerid,PlayerInfo[playerid][pCash]);
    PlayerInfo[playerid][pLevel] = 1;
    PlayerInfo[playerid][pBanned] = 0;
    PlayerInfo[playerid][pAdmin] = 0;
    PlayerInfo[playerid][pDonateRank] = 0;
    PlayerInfo[playerid][pConnectTime] = 0;
    PlayerInfo[playerid][pReg] = 0;
    PlayerInfo[playerid][pSex] = 0;
    PlayerInfo[playerid][pAge] = 0;
    PlayerInfo[playerid][pCrimes] = 0;
    PlayerInfo[playerid][pDeaths] = 0;
    PlayerInfo[playerid][pMats] = 0;
    PlayerInfo[playerid][pContractTime] = 0;
    PlayerInfo[playerid][pHealth] = 150.0;
    PlayerInfo[playerid][pPos_x] = 2246.6;
    PlayerInfo[playerid][pPos_y] = -1161.9;
    PlayerInfo[playerid][pPos_z] = 1029.7;
    PlayerInfo[playerid][pInt] = 15;
    PlayerInfo[playerid][pPlayMinutes] = 0;
    PlayerInfo[playerid][pGesamtMinutes] = 0;
    PlayerInfo[playerid][pMinutesSinceLogin] = 0;
    PlayerInfo[playerid][pMinutesSinceAn] = 0;
    new spname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, spname, sizeof(spname));


    if(IsPlayerNPC(playerid))
    {
    gPlayerLogged[playerid] = 1;
    SpawnPlayer(playerid);
    return 1;
    }
    GetPlayerIp(playerid,pIP[playerid],16);
    GetPlayerName(playerid, plname, sizeof(plname));
    format(string, sizeof(string), "/Accounts/%s.ini", plname);
    if(fexist(string))
    {
    gPlayerAccount[playerid] = 1;
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    //format(string2, sizeof(string2), "{ff0000}|---------------{E1E1E1} Willkommen zurück, {ff0000}%s{E1E1E1} :) ! {ff0000}---------------|{E1E1E1}",psender);
    //SendClientMessage(playerid, FARBE_WEIS, string2);
    //SendClientMessage(playerid, FARBE_WEIS, "{ff0000}....:{E1E1E1}Willkommen auf German Elite Reallife !!! {ff0000}:....");
    //SendClientMessage(playerid, FARBE_WEIS, "{ff0000}....:{E1E1E1}Der {ff0000}Server{E1E1E1} hat deinen {ff0000}Account{E1E1E1} gefunden, Viel Spaß :) {ff0000}:....");
    //SendClientMessage(playerid, FARBE_WEIS, "{ff0000}....:{E1E1E1}Login geht nicht? FORUM {ff0000}:....");
    return 1;
    }
    else
    {
    gPlayerAccount[playerid] = 0;
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "");
    SendClientMessage(playerid, FARBE_WEIS, "{ff0000}|---------------{E1E1E1} Willkommen auf "SERVERNAME" {ff0000}---------------|{E1E1E1}");
    SendClientMessage(playerid, FARBE_WEIS, "{ff0000}....:{E1E1E1}"SERVERNAME" Registration - Willkommen !!{ff0000}:....");
    SendClientMessage(playerid, FARBE_WEIS, "{ff0000}....:{E1E1E1}Du hast noch kein {ff0000}Account{E1E1E1}. Du kannst nun einen {ff0000}Erstellen{E1E1E1}!{ff0000}:....");
    SendClientMessage(playerid, FARBE_WEIS, "{ff0000}....:{E1E1E1}Dein {ff0000}Account{E1E1E1} wurde {ff0000}nicht{E1E1E1} gefunden. Du kannst dir aber ein Account {ff0000}Erstellen{E1E1E1}! {ff0000}:....");
    SendClientMessage(playerid, FARBE_WEIS, "{ff0000}....:{E1E1E1}Login geht nicht? " FORUM" {ff0000}:....");
    return 1;
    }
    return 1;
    }


    //------------------------------------------------------------------------------------------------------
    Function OnPlayerDisconnect(playerid, reason)
    {
    GW_OnPlayerDisconnect(playerid);
    switch(reason)
    {
    case 0:
    {
    new Name[MAX_PLAYER_NAME], string[128];
    GetPlayerName(playerid, Name, sizeof(Name));
    format(string, sizeof(string), "** {FF0000}%s{D8D8D8} hat den Server verlassen.{FFFFFF} (Timeout/Crash){D8D8D8}",Name);
    SendClientMessageToAll(0xD8D8D8FF, string);
    }
    case 1:
    {
    new Name[MAX_PLAYER_NAME], string[128];
    GetPlayerName(playerid, Name, sizeof(Name));
    format(string, sizeof(string), "** {FF0000}%s{D8D8D8} hat den Server verlassen.",Name);
    SendClientMessageToAll(0xD8D8D8FF, string);
    }
    case 2:
    {
    new Name[MAX_PLAYER_NAME], string[128];
    GetPlayerName(playerid, Name, sizeof(Name));
    format(string, sizeof(string), "** {FF0000}%s{D8D8D8} hat den Server verlassen.{FFFFFF} (Kick/Ban){D8D8D8}",Name);
    SendClientMessageToAll(0xD8D8D8FF, string);
    }
    }
    PlayerUpdate(playerid);
    GetPlayerName(playerid,sendername,sizeof(sendername));
    format(string,sizeof(string),"%s war nun %d Minuten online! (ID: %d | IP: %s)",sendername,PlayerInfo[playerid][pMinutesSinceLogin],playerid,pIP[playerid]);
    Log("Online.txt",string);
    return 1;
    }



    Nicht wundern wenn etwas bissl angefangen ist, daher das ich dummerweise es kreuz und quer wie immer mache -.-