Beiträge von Templer

    Bitte das untere neu ersetzen und mir die Zeilen schicken, wo der SPieler eingeloggt wird (also über /login bzw. Dialog Codeausschnitt)


    public OnPlayerLogin(playerid,password[])
    {
    SendClientMessage(playerid, COLOR_WHITE, "[Info:] Nur das Passwort eingeben ohne / oder sonstiges");
    new string2[128];
    format(string2, sizeof(string2), "chepi/Accounts/%s.ini", PlayerName(playerid));
    new File: UserFile = fopen(string2, io_read);
    if ( UserFile )
    {
    new PassData[256], keytmp[256];
    fread( UserFile , PassData , sizeof( PassData ) );
    keytmp = ini_GetKey( PassData );
    if( strcmp( keytmp , "Key" , true ) == 0 )
    {
    valtmp = ini_GetValue( PassData );
    format(PlayerInfo[playerid][pKey], 128, valtmp);
    }
    printf("LoginDEBUG-Matching: %s | %s", password, PlayerInfo[playerid][pKey]);
    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 , "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 , "Registered" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pRegistered] = 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 , "Experience" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pExp] = strval( val ); }
    if( strcmp( key , "Money" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCash] = strval( val ); }
    if( strcmp( key , "Gun1" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGun1] = strval( val ); }
    if( strcmp( key , "Gun2" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGun2] = strval( val ); }
    if( strcmp( key , "Gun3" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGun3] = strval( val ); }
    if( strcmp( key , "Gun4" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGun4] = strval( val ); }
    if( strcmp( key , "Ammo1" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAmmo1] = strval( val ); }
    if( strcmp( key , "Ammo2" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAmmo2] = strval( val ); }
    if( strcmp( key , "Ammo3" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAmmo3] = strval( val ); }
    if( strcmp( key , "Ammo4" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAmmo4] = strval( val ); }
    if( strcmp( key , "Bank" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pBank] = strval( val ); }
    if( strcmp( key , "Skin" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSkin] = strval( val ); }
    if( strcmp( key , "Drugs" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pDrugs] = strval( val ); }
    if( strcmp( key , "Materials" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pMaterials] = strval( val ); }
    if( strcmp( key , "Products" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pProducts] = strval( val ); }
    if( strcmp( key , "Job" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pJob] = strval( val ); }
    if( strcmp( key , "PlayingHours" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPlayingHours] = strval( val ); }
    if( strcmp( key , "AllowedPayday" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAllowedPayday] = strval( val ); }
    if( strcmp( key , "PayCheck" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPayCheck] = strval( val ); }
    if( strcmp( key , "Faction" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pFaction] = strval( val ); }
    if( strcmp( key , "Rank" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pRank] = strval( val ); }
    if( strcmp( key , "HouseKey" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pHouseKey] = strval( val ); }
    if( strcmp( key , "BizKey" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pBizKey] = strval( val ); }
    if( strcmp( key , "SpawnPoint" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSpawnPoint] = strval( val ); }
    if( strcmp( key , "Warnings" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pWarnings] = strval( val ); }
    if( strcmp( key , "CarLic" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCarLic] = strval( val ); }
    if( strcmp( key , "FlyLic" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pFlyLic] = strval( val ); }
    if( strcmp( key , "WepLic" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pWepLic] = strval( val ); }
    if( strcmp( key , "VisitPass" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pVisitPass] = strval( val ); }
    if( strcmp( key , "PhoneNumber" , true ) == 0 ) { val = ini_GetValue( Data ); }
    if( strcmp( key , "AccountLocked" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pLocked] = strval( val ); }
    }
    fclose(UserFile);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "[Error:] Falsches Passwort");
    fclose(UserFile);
    return 1;
    }
    if(PlayerInfo[playerid][pFaction] != 255)
    {
    if(DynamicFactions[PlayerInfo[playerid][pFaction]][fUseColor])
    {
    SetPlayerToFactionColor(playerid);
    }
    }
    else SetPlayerColor(playerid,COLOR_CIVILIAN);
    if (PlayerInfo[playerid][pLocked]) return KickPlayer(playerid,"SERVER","Account Geschlossen");
    if (PlayerInfo[playerid][pAdmin] > 0)
    {
    format(string2, sizeof(string2), "[Server:] Du bist eingeloggt als LvL %d admin",PlayerInfo[playerid][pAdmin]);
    SendClientMessage(playerid, COLOR_WHITE,string2);
    }
    if (PlayerInfo[playerid][pDonateRank] > 0) SendClientMessage(playerid, COLOR_WHITE,"[Server:] Du Bist ein Sonder Bürger ");
    if(PlayerInfo[playerid][pRegistered] == 0)
    {
    PlayerInfo[playerid][pLevel] = 1;
    PlayerInfo[playerid][pCash] = 2500;
    PlayerInfo[playerid][pBank] = 7500;
    PlayerInfo[playerid][pSkin] = 299;
    SetPlayerCash(playerid,PlayerInfo[playerid][pCash]);
    SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
    RegistrationStep[playerid] = 1;
    SendClientMessage(playerid,COLOR_LIGHTGREEN,"[Info:] Wilkommen zu Chaos Episode Austrian RPG Bitte fühlen sie das Formula aus.");
    SendClientMessage(playerid,COLOR_LIGHTGREEN, "|_________Schritt 1_________|");
    SendClientMessage(playerid,COLOR_WHITE,"[Info:] Wie alt bist du? ");
    }
    SetPlayerCash(playerid,PlayerInfo[playerid][pCash]);
    SendClientMessage(playerid, COLOR_WHITE,"[Server:] Für deine commands gib ein /cmds ");
    gPlayerLogged[playerid] = 1;
    SetSpawnInfo(playerid, 0, PlayerInfo[playerid][pSkin],CivilianSpawn[X],CivilianSpawn[Y],CivilianSpawn[Z],0,0,0,0,0,0,0);
    SpawnPlayer(playerid);
    }
    return 1;
    }

    Wenn du jetzt von meinem IsPlayerInRangeOfObject dann kommt es halt darauf an, ob du es als Funktion verwendest die in anderen Scripts über CallRemoteFunction oder SetTimer(Ex) aufgerufen werden oder du es einfach unter a_samp.inc als stock einfügst und es du dann auch in jedem Script hast ^^

    Meinst du sowas?


    stock IsPlayerInRangeOfObject(playerid, object, Float:distance) //by Templer
    {
    new Float:X, Float:Y, Float:Z;
    if(!IsValidObject(object)) return false;
    GetObjectPos(object, X, Y, Z);
    if(IsPlayerInRangeOfPoint(playerid, distance, X, Y, Z)) return object;
    return false;
    }

    Da ich sehe, dass du dich halbwegs auskennst hier der Code den ich für dich geschrieben habe ^^

    enum zollinfo
    {
    zModelID,
    zText[32],
    Float:zPosX,
    Float:zPosY,
    Float:zPosZ,
    Float:zToPosX,
    Float:zToPosY,
    Float:zToPosZ,
    Float:zPosRot,
    zPreis,
    }
    new ZollAmt[254][zollinfo] = {
    {978, "Gute Fahrt!", 52.0, -1539.19921875, 5.0533084869385, 79.991455078125, 54.0, -1524.0, 4.0, 500}, //LS-SF Brücke #1
    {978, "Gute Fahrt!", 54.19921875, -1524.5, 4.9744849205017, 261.98547363281, 52.0, -1539.0, 5.0, 500} //LS-SF Brücke #2
    };
    new ZollObject[254];
    new ZollAmtID[254];


    forward SetZollBack(zollid);


    public OnGameModeInit()
    {
    for(new zoll = 0; zoll < sizeof(ZollAmt); zoll++)
    {
    ZollObject[zoll] = CreateObject(ZollAmt[zoll][zModelID], ZollAmt[zoll][zPosX], ZollAmt[zoll][zPosY], ZollAmt[zoll][zPosZ], 0.0, 0.0, ZollAmt[zoll][zPosRot]);
    ZollAmtID[object] = zoll;
    }
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(strcmp(strget(cmdtext,0),"/zoll", true) ==0)
    {
    if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, 0xFFFFFF00, "Du bist in keinem Fahrzeug!");
    for(new zoll = 0; zoll < sizeof(ZollAmt); zoll++)
    {
    if(!IsPlayerInRangeOfPoint(playerid, 3.5, ZollAmt[zoll][zPosX], ZollAmt[zoll][zPosY], ZollAmt[zoll][zPosZ])) continue;
    if(GetPlayerMoney(playerid) < ZollAmt[zoll][zPreis]) return SendClientMessage(playerid, 0xFFFFFF00, "Zu wenig Geld mit dir dabei!");
    GivePlayerMoney(playerid, -ZollAmt[zoll][zPreis]);
    GameTextForPlayer(playerid, ZollAmt[zoll][zText], 2500, 3);
    MoveObject(ZollObject[zoll], ZollAmt[zoll][zToPosX], ZollAmt[zoll][zToPosY], ZollAmt[zoll][zToPosZ], 3.5);
    SetTimerEx("SetZollBack", 3500, 0, "d", zoll);
    return 1;
    }
    return SendClientMessage(playerid, 0xFFFFFF00, "Nicht in der Nähe eines Zollamtes!");;
    }
    return 0;
    }


    public SetZollBack(zollid)
    return MoveObject(ZollObject[zoll], ZollAmt[zoll][zPosX], ZollAmt[zoll][zPosY], ZollAmt[zoll][zPosZ], 3.5);

    zwei Kommentare:


    • Wow du benützt ocmd, was eigentlich nicht viel Schneller ist als dcmd xD
    • Lass doch die Arme Schleife alle Häuser durchgehen, du checkst ja nur die HausID 0 ab, also echt. Schleifen Quäler ! xD

    Hier der richtige Code:


    ocmd:kaufen(playerid,params[])
    {
    for(new i; i<MAX_HOUSES; i++)
    {
    if(IsPlayerInRangeOfPoint(playerid, 10, HouseInfo[i][PickupX], HouseInfo[i][PickupY], HouseInfo[i][PickupZ]))
    {
    new Pname[24]; GetPlayerName(playerid, Pname, 24);
    if(strlen(dini_Get("Owned.ini", Pname)))
    if(GetPlayerMoney(playerid) < HouseInfo[i][HouseCost]) return SendClientMessage(playerid, 0xF60000AA, "Du hast nicht genug Geld für das Haus");
    if(HouseInfo[i][Owned] == 1) return SendClientMessage(playerid, 0xF60000AA, "Dieses Haus hat schon einen Besitzer!");
    GivePlayerMoney(playerid, - HouseInfo[i][HouseCost]);
    GameTextForPlayer(playerid, "~r~Haus gekauft!", 2000, 3);
    HouseInfo[i][Owned] = 1;
    format(HouseInfo[i][HouseOwner], 24, "%s", Pname);
    dini_Set("Owners.ini", Pname, HouseInfo[i][HouseNames]);
    return 1;
    }
    }
    SendClientMessage(playerid, 0xF60000AA, "Du bist nicht in der Nähe eines Hauses!");
    return 1;
    }

    Ein stock ist eine temporäre Unterfunktion welche nur aufgerufen wird, wenn sie benötigt wird. Ein public hingegen wird aufgerufen auch wenn es nicht benötigt wird und gebraucht bei Timern und Lokalen Funktionsabrufungen wie zB CallLocalFunction... Von Ressourcen her ist stock besser als public, wenn die Funktion nicht unbedingt mit einem Timer oder von einem externen Script aufgerufen wird...

    Ah ja sry, die obere Fehlermeldung verpennt, hier bitte :P


    stock CreateInteriorPickup(pickupid, string[], Float:x1, Float:y1, Float:z1)
    {
    floatadd(z1, 0.4);
    Create3DTextLabel(string, COLOR_PICKUP3DTEXT, x1, y1, z2, 10, 0, 0);
    AddStaticPickup(pickupid, 1, x1, y1, z1, 0);
    }

    Hier bitte:


    stock CreateInteriorPickup(pickupid, 3dText[], Float:x1, Float:y1, Float:z1)
    {
    floatadd(z1, 0.4);
    Create3DTextLabel(3dText, COLOR_PICKUP3DTEXT, x1, y1, z2, 10, 0, 0);
    AddStaticPickup(pickupid, 1, x1, y1, z1, 0);
    }

    Edit:


    So da ises, hatte mich vorher vertan ^^:


    if(SpielerAccount[playerid][Autoschein] == 0 && fahrstunde[playerid] == 1) return SendClientMessage(playerid,COLOR_WEISS,"Deine Fahrstunde beginnt lese was der Fahrlehrer sagt!");
    else if(SpielerAccount[playerid][Autoschein] == 0)
    {
    SendClientMessage(playerid, COLOR_ROT, "Du hast keinen Auto-Führerschein!");
    return RemovePlayerFromVehicle(playerid);
    }

    Du sollst das, was ich oben gepostet habe vom Code (welchen ich überarbeitet, verbessert und gefixxt habe) einfügen und testen ob du nun dich normal einloggen kannst mit deinen passwörtern... Wenn nicht dann bitte das posten was oben steht....

    Du kannst nur Player-Objekte in virtuelle Welten setzen (Deshalb auch die Funktion von den Streamern): http://wiki.sa-mp.com/wiki/CreatePlayerObject


    Bedeutet, du musst eine Abfrage erstellen ob der Spieler in dem gewählten Virtuellen Welt ist, dass erst dann per CreatePlayerObject für Ihn das Objekt erstellt wird und wenn es unbrauchbar wird einfach löschen.. z.B.:


    forward CheckPlayerStatus();


    public OnPlayerConnect(playerid)
    {
    SetPVarInt(playerid, "CreatedVWObject", -1);
    return 1;
    }


    public OnGameModeInit()
    {
    SetTimer("CheckPlayerStatus", 2600, 1);
    return 1;
    }


    public CheckPlayerStatus()
    {
    new playerid = 0;
    for(; playerid < MAX_PLAYERS; playerid++)
    {
    if(GetPlayerVirtualWorld(playerid) == playerid && GetPVarInt(playerid, "CreatedVWObject") == -1) //Fragt ab ob SpielerID in der Virtuellen Welt von seiner ID ist, z.B.: Spieler ID 6 ist in VW 6 ^^
    {
    new object = CreatePlayerObject(playerid, 2345, 123.0, 123.0, 123.0, 123.0, 123.0, 123.0); //Koordinaten frei erfunden...
    SetPVarInt(playerid, "CreatedVWObject", object);
    }
    else if(GetPlayerVirtualWorld(playerid) != playerid && GetPVarInt(playerid, "CreatedVWObject") != -1)
    {
    DestroyPlayerObject(playerid, GetPVarInt(playerid, "CreatedVWObject")); //Zerstört das Object wenn nicht mehr in dieser VW Welt seiner SpielerID
    SetPVarInt(playerid, "CreatedVWObject", -1);
    }
    }
    }

    Du hast es falsch eingefügt.. Schick mal den Code wie du es eingefügt hast (mit Kommentaren welche Zeile den Error/Warning hat)

    Bitte dankeschön für das probieren ^^


    public OnPlayerLogin(playerid,password[])
    {
    SendClientMessage(playerid, COLOR_WHITE, "[Info:] Nur das Passwort eingeben ohne / oder sonstiges");
    new string2[128];
    format(string2, sizeof(string2), "chepi/Accounts/%s.ini", PlayerName(playerid));
    new File: UserFile = fopen(string2, io_read);
    if ( UserFile )
    {
    new PassData[256];
    fread( UserFile , PassData , sizeof( PassData ) );
    format(PlayerInfo[playerid][pKey], 128, ini_GetKey( PassData ));
    printf("LoginDEBUG-Matching: %s | %s", password, PlayerInfo[playerid][pKey]);
    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 , "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 , "Registered" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pRegistered] = 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 , "Experience" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pExp] = strval( val ); }
    if( strcmp( key , "Money" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCash] = strval( val ); }
    if( strcmp( key , "Gun1" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGun1] = strval( val ); }
    if( strcmp( key , "Gun2" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGun2] = strval( val ); }
    if( strcmp( key , "Gun3" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGun3] = strval( val ); }
    if( strcmp( key , "Gun4" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGun4] = strval( val ); }
    if( strcmp( key , "Ammo1" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAmmo1] = strval( val ); }
    if( strcmp( key , "Ammo2" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAmmo2] = strval( val ); }
    if( strcmp( key , "Ammo3" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAmmo3] = strval( val ); }
    if( strcmp( key , "Ammo4" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAmmo4] = strval( val ); }
    if( strcmp( key , "Bank" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pBank] = strval( val ); }
    if( strcmp( key , "Skin" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSkin] = strval( val ); }
    if( strcmp( key , "Drugs" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pDrugs] = strval( val ); }
    if( strcmp( key , "Materials" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pMaterials] = strval( val ); }
    if( strcmp( key , "Products" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pProducts] = strval( val ); }
    if( strcmp( key , "Job" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pJob] = strval( val ); }
    if( strcmp( key , "PlayingHours" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPlayingHours] = strval( val ); }
    if( strcmp( key , "AllowedPayday" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAllowedPayday] = strval( val ); }
    if( strcmp( key , "PayCheck" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPayCheck] = strval( val ); }
    if( strcmp( key , "Faction" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pFaction] = strval( val ); }
    if( strcmp( key , "Rank" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pRank] = strval( val ); }
    if( strcmp( key , "HouseKey" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pHouseKey] = strval( val ); }
    if( strcmp( key , "BizKey" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pBizKey] = strval( val ); }
    if( strcmp( key , "SpawnPoint" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSpawnPoint] = strval( val ); }
    if( strcmp( key , "Warnings" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pWarnings] = strval( val ); }
    if( strcmp( key , "CarLic" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCarLic] = strval( val ); }
    if( strcmp( key , "FlyLic" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pFlyLic] = strval( val ); }
    if( strcmp( key , "WepLic" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pWepLic] = strval( val ); }
    if( strcmp( key , "VisitPass" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pVisitPass] = strval( val ); }
    if( strcmp( key , "PhoneNumber" , true ) == 0 ) { val = ini_GetValue( Data ); }
    if( strcmp( key , "AccountLocked" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pLocked] = strval( val ); }
    }
    fclose(UserFile);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "[Error:] Falsches Passwort");
    fclose(UserFile);
    return 1;
    }
    if(PlayerInfo[playerid][pFaction] != 255)
    {
    if(DynamicFactions[PlayerInfo[playerid][pFaction]][fUseColor])
    {
    SetPlayerToFactionColor(playerid);
    }
    }
    else SetPlayerColor(playerid,COLOR_CIVILIAN);
    if (PlayerInfo[playerid][pLocked]) return KickPlayer(playerid,"SERVER","Account Geschlossen");
    if (PlayerInfo[playerid][pAdmin] > 0)
    {
    format(string2, sizeof(string2), "[Server:] Du bist eingeloggt als LvL %d admin",PlayerInfo[playerid][pAdmin]);
    SendClientMessage(playerid, COLOR_WHITE,string2);
    }
    if (PlayerInfo[playerid][pDonateRank] > 0) SendClientMessage(playerid, COLOR_WHITE,"[Server:] Du Bist ein Sonder Bürger ");
    if(PlayerInfo[playerid][pRegistered] == 0)
    {
    PlayerInfo[playerid][pLevel] = 1;
    PlayerInfo[playerid][pCash] = 2500;
    PlayerInfo[playerid][pBank] = 7500;
    PlayerInfo[playerid][pSkin] = 299;
    SetPlayerCash(playerid,PlayerInfo[playerid][pCash]);
    SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
    RegistrationStep[playerid] = 1;
    SendClientMessage(playerid,COLOR_LIGHTGREEN,"[Info:] Wilkommen zu Chaos Episode Austrian RPG Bitte fühlen sie das Formula aus.");
    SendClientMessage(playerid,COLOR_LIGHTGREEN, "|_________Schritt 1_________|");
    SendClientMessage(playerid,COLOR_WHITE,"[Info:] Wie alt bist du? ");
    }
    SetPlayerCash(playerid,PlayerInfo[playerid][pCash]);
    SendClientMessage(playerid, COLOR_WHITE,"[Server:] Für deine commands gib ein /cmds ");
    gPlayerLogged[playerid] = 1;
    SetSpawnInfo(playerid, 0, PlayerInfo[playerid][pSkin],CivilianSpawn[X],CivilianSpawn[Y],CivilianSpawn[Z],0,0,0,0,0,0,0);
    SpawnPlayer(playerid);
    }
    return 1;
    }


    Sollte es nicht gehen, bitte vom ServerLog die Zeile die mit LoginDEBUG-Matching: beginnt hierher bitte schicken, nochmals Danköö ^^

    @ [NeS]Fischer Das kannst du noch so oft sagen wie du willst. Du wirst ignoriert und gefordert ^^


    @ B2T: Hier dein Code: Schön eingerückt, Klammerfehler behoben und deine Errors vom kompilieren
    if(strcmp(cmd, "/takezollpass", true) == 0)
    {
    if(IsPlayerConnected(playerid) && PlayerInfo[playerid][pAdmin] > 4)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_ZOLL5, "Benutze: /takezollpass [ID/Name]");
    new string2[256];
    new userid = ReturnUser(tmp);
    new username[MAX_PLAYER_NAME];
    new spielername[MAX_PLAYER_NAME];
    GetPlayerName(userid, username, sizeof(username));
    GetPlayerName(playerid, spielername, sizeof(spielername));
    if(IsPlayerConnected(userid) && userid != INVALID_PLAYER_ID)
    {
    PlayerInfo[userid][pZollpass] = 0;
    format(string,sizeof(string)," Du hast %s seinen Zollpass abgenommen.",username);
    SendClientMessage(playerid,COLOR_ZOLL5,string);
    format(string,sizeof(string)," %s hat dir deinen Zollpass weggenommen.",spielername);
    SendClientMessage(userid,COLOR_ZOLL5,string);
    }
    else
    {
    format(string, sizeof(string)," %s ist nicht Online!", username);
    SendClientMessage(playerid,COLOR_ZOLL5,string);
    }
    }
    return 1;
    }