Beiträge von James.Spader

    Hallo ihr da,


    ich habe das Problem, ich bekomme diesen Warning: und weiß nicht was ich machen soll

    Code
    C:\SA-MP Server\gamemodes\KA-1-0-0.pwn(33936) : warning 202: number of arguments does not match definition
    Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase
    Header size:          10800 bytes
    Code size:          3288372 bytes
    Data size:          9151704 bytes
    Stack/heap size:      16384 bytes; estimated max. usage=4987 cells (19948 bytes)
    Total requirements:12467260 bytes
    1 Warning.

    die Zeilen:

    if (strcmp(cmd, "/admins", true) == 0)
    {
    new adminrang[128], adminname[128];
    if(!IsPlayerConnected(playerid))return 1;
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    switch(IsPlayerAAdminR(i))
    {
    case 1:{adminrang="{FFFF00}Supporter";}
    case 2:{adminrang="{00B200}Moderator";}
    case 3:{adminrang="{009999}High Moderator";}
    case 4:{adminrang="{0099FF}Trial Administrator";}
    case 1336:{adminrang="{0000FF}Administrator";}
    case 1337:{adminrang="{B40404}Head Administrator";}
    case 1338:{adminrang="{01DFD7}Community & Projektmanager";}
    case 1339:{adminrang="{F78181}stellvertretender Projektleiter";}
    case 2000:{adminrang="{FF0000}Projektleiter";}
    }
    GetPlayerName(i, adminname, sizeof(adminname));
    format(string,sizeof(string),"Folgende Administratoren von *** sind zurzeit online:\n\n%s{FFFFFF}: %s, ID: %d",adminrang,adminname,i);
    }
    ShowPlayerDialog(playerid,DIALOG_INFO,DIALOG_STYLE_MSGBOX,"{FFFFFF}Administration ({00FF00}online{FFFFFF})",string,"Bestätigen","");
    return 1;
    }


    andere vlt wichtige Zeilen:

    stock IsPlayerAAdminR(playerid,adminrang)
    {
    if (PlayerInfo[playerid][pAdmin] == adminrang)
    return 1;
    return 0;
    }


    stock CountPlayersAdminR(adminrang)
    {
    new count = 0;
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i) && IsPlayerAAdminR(i,adminrang))
    {
    count++;
    }
    }
    return count;
    }


    Ich hoffe ihr könnt helfen.. :)


    MfG,
    James.

    Ich hab slots so defined:
    #define SLOTS 50
    Wie soll ich daraus MAX_PLAYERS machen?


    Ich habe mal versucht, das SLOTS (im OtherTimer) durch MAX_PLAYERS zu ersetzen


    Ich habs mal in einen anderen Timer reingemacht (Timer2):

    public Timer2()
    {
    new Float:Speedo_X,Float:Speedo_Y,Float:Speedo_Z;
    new Float:Speedo_HP;
    for(new i=0; i<SLOTS; i++)
    {
    if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i) && !IsANoTachoVehicle(GetPlayerVehicleID(i)))
    {
    GetPlayerPos(i, Speedo_X, Speedo_Y, Speedo_Z);
    GetPlayerVehicleID(i);
    GetVehicleHealth(GetPlayerVehicleID(i), Speedo_HP);
    new str1[256],str2[256],str3[256],str4[256];
    if(TachoAn[i] == 0)
    {
    TextDrawShowForPlayer(i, box[i]); TextDrawShowForPlayer(i, fahrzeug[i]); TextDrawShowForPlayer(i, kmh[i]);
    TextDrawShowForPlayer(i, tank[i]); TextDrawShowForPlayer(i, zustand[i]); ShowProgressBarForPlayer(i, BarZustand[i]); TextDrawShowForPlayer(i, KilometerAnzeige[i]); TextDrawShowForPlayer(i, StatusAnzeige[i]);
    TachoAn[i] = 1;
    }
    new veh = GetPlayerVehicleID(i);
    new Float:speed_x,Float:speed_y,Float:speed_z,Float:final_speed,final_speed_int;
    GetVehicleVelocity(veh, speed_x, speed_y, speed_z);
    final_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*120.0; // 136.666667 = kmph // 85.4166672= mph
    final_speed_int = floatround(final_speed,floatround_round);
    new kmh_anzahl = final_speed_int;
    format(str1,sizeof(str1),"Fahrzeug: ~b~%s ~n~~l~---------------------------------",VehicleName[GetVehicleModel(GetPlayerVehicleID(i))-400]);
    TextDrawSetString(fahrzeug[i], str1);
    if(kmh_anzahl >= 150)
    {
    format(str2,sizeof(str2),"KM/H: ~r~%d ~n~~l~---------------------------------",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    else if(kmh_anzahl >= 100)
    {
    format(str2,sizeof(str2),"KM/H: ~y~%d ~n~~l~---------------------------------",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    else if(kmh_anzahl >= 50)
    {
    format(str2,sizeof(str2),"KM/H: ~g~%d ~n~~l~---------------------------------",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    else
    {
    format(str2,sizeof(str2),"KM/H: ~b~%d ~n~~l~---------------------------------",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    new vehicleid = GetPlayerVehicleID(i);
    format(str3,sizeof(str3),"Tank: ~g~%d / %d Liter ~n~~l~---------------------------------", Gas[vehicleid],GetGasMax(GetVehicleModel(vehicleid)));
    TextDrawSetString(tank[i], str3);
    if(kmh_anzahl == 0) {}
    else
    {
    Kilometer[vehicleid] += final_speed*0.0008;
    }
    format(str4,sizeof(str4),"Kilometer: ~g~%d ~n~~l~---------------------------------",floatround(Kilometer[vehicleid],floatround_floor));
    TextDrawSetString(KilometerAnzeige[i], str4);
    if(Speedo_HP >= 551)
    {
    SetProgressBarColor(BarZustand[i], 0x00A628FF);
    }
    else if(Speedo_HP >= 361)
    {
    SetProgressBarColor(BarZustand[i], 0xFFA300FF);
    }
    else
    {
    SetProgressBarColor(BarZustand[i], 0xFF0000FF);
    }
    SetProgressBarValue(BarZustand[i], floatround(Speedo_HP,floatround_round)-281);
    UpdateProgressBar(BarZustand[i], i);
    new engine,lights,alarm,doors,bonnet,boot,objective;
    GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
    if(engine == VEHICLE_PARAMS_ON && lights == VEHICLE_PARAMS_OFF)
    {
    TextDrawSetString(StatusAnzeige[i], " ~g~Motor~w~ - ~r~Licht");
    }
    else if(engine == VEHICLE_PARAMS_ON && lights == VEHICLE_PARAMS_ON)
    {
    TextDrawSetString(StatusAnzeige[i], " ~g~Motor~w~ - ~g~Licht");
    }
    else if(engine == VEHICLE_PARAMS_OFF && lights == VEHICLE_PARAMS_ON)
    {
    TextDrawSetString(StatusAnzeige[i], " ~r~Motor~w~ - ~g~Licht");
    }
    else if(engine == VEHICLE_PARAMS_OFF && lights == VEHICLE_PARAMS_OFF)
    {
    TextDrawSetString(StatusAnzeige[i], " ~r~Motor~w~ - ~r~Licht");
    }
    else if(engine == VEHICLE_PARAMS_ON)
    {
    TextDrawSetString(StatusAnzeige[i], " ~g~Motor~w~ - ~r~Licht");
    }
    else
    {
    TextDrawSetString(StatusAnzeige[i], " ~r~Motor~w~ - ~r~Licht");
    }
    }
    SavePlayerPos[i][sX] = Speedo_X, SavePlayerPos[i][sY] = Speedo_Y, SavePlayerPos[i][sZ] = Speedo_Z;
    }
    for(new i=0; i<SLOTS; i++)
    {
    if(!IsPlayerInAnyVehicle(i))
    {
    TextDrawHideForPlayer(i, box[i]); TextDrawHideForPlayer(i, fahrzeug[i]); TextDrawHideForPlayer(i, kmh[i]);
    TextDrawHideForPlayer(i, tank[i]); TextDrawHideForPlayer(i, zustand[i]); HideProgressBarForPlayer(i, BarZustand[i]); TextDrawHideForPlayer(i, KilometerAnzeige[i]); TextDrawHideForPlayer(i, StatusAnzeige[i]);
    TachoAn[i] = 0;
    }
    }
    return 1;
    }


    Ich bekomme jedoch immer noch die Errors

    Code
    [11:01:08] [debug] Run time error 4: "Array index out of bounds"
    [11:01:08] [debug]  Accessing element at index 842 past array upper bound 699
    [11:01:08] [debug] AMX backtrace:
    [11:01:08] [debug] #0 000396bc in public Timer2 () from x-1-0-0.amx
    [11:01:09] [debug] Run time error 4: "Array index out of bounds"
    [11:01:09] [debug]  Accessing element at index 842 past array upper bound 699
    [11:01:09] [debug] AMX backtrace:
    [11:01:09] [debug] #0 000396bc in public Timer2 () from x-1-0-0.amx


    Also, es funktioniert immer noch nicht auf den Fahrzeugen...
    ( Jeffry)

    Liebe Community..


    Ich habe das Problem, wenn ich bei meinen Clienten (1.3.7) auf Internet klicke und dann als Filter z.b. "ger" oder "reallife" eingebe, erscheint immer nur 1 Server (der LyD) - früher waren es fast hunderte.
    (wenn ich kein Filter eingebe, erscheinen sehr viele ausländische Server, aber keine deutschen)
    Woran liegt das?

    Huhu ihr lieben,
    ich habe das Problem, das Tacho wird InGame nicht angezeigt. (beim Roller)
    Die Log:

    Code
    [13:57:55] [debug] Run time error 4: "Array index out of bounds"
    [13:57:55] [debug]  Accessing element at index 842 past array upper bound 699
    [13:57:55] [debug] AMX backtrace:
    [13:57:55] [debug] #0 00039434 in public OtherTimer () from x-1-0-0.amx
    [13:57:56] [debug] Run time error 4: "Array index out of bounds"
    [13:57:56] [debug]  Accessing element at index 842 past array upper bound 699
    [13:57:56] [debug] AMX backtrace:
    [13:57:56] [debug] #0 00039434 in public OtherTimer () from x-1-0-0.amx


    Unter OtherTimer:

    public OtherTimer()
    {
    new Float:maxspeed = 175.0;
    new plname[MAX_PLAYER_NAME];
    new string[256];
    new Float:Speedo_X,Float:Speedo_Y,Float:Speedo_Z;
    new Float:Speedo_HP;
    for(new i=0; i<SLOTS; i++)
    {
    if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i) && !IsANoTachoVehicle(GetPlayerVehicleID(i)))
    {
    GetPlayerPos(i, Speedo_X, Speedo_Y, Speedo_Z);
    GetPlayerVehicleID(i);
    GetVehicleHealth(GetPlayerVehicleID(i), Speedo_HP);
    new str1[256],str2[256],str3[256],str4[256];
    if(TachoAn[i] == 0)
    {
    TextDrawShowForPlayer(i, box[i]); TextDrawShowForPlayer(i, fahrzeug[i]); TextDrawShowForPlayer(i, kmh[i]);
    TextDrawShowForPlayer(i, tank[i]); TextDrawShowForPlayer(i, zustand[i]); ShowProgressBarForPlayer(i, BarZustand[i]); TextDrawShowForPlayer(i, KilometerAnzeige[i]); TextDrawShowForPlayer(i, StatusAnzeige[i]);
    TachoAn[i] = 1;
    }
    new veh = GetPlayerVehicleID(i);
    new Float:speed_x,Float:speed_y,Float:speed_z,Float:final_speed,final_speed_int;
    GetVehicleVelocity(veh, speed_x, speed_y, speed_z);
    final_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*120.0; // 136.666667 = kmph // 85.4166672= mph
    final_speed_int = floatround(final_speed,floatround_round);
    new kmh_anzahl = final_speed_int;
    format(str1,sizeof(str1),"Fahrzeug: ~b~%s ~n~~l~---------------------------------",VehicleName[GetVehicleModel(GetPlayerVehicleID(i))-400]);
    TextDrawSetString(fahrzeug[i], str1);


    if(kmh_anzahl >= 150)
    {
    format(str2,sizeof(str2),"KM/H: ~r~%d ~n~~l~---------------------------------",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    else if(kmh_anzahl >= 100)
    {
    format(str2,sizeof(str2),"KM/H: ~y~%d ~n~~l~---------------------------------",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    else if(kmh_anzahl >= 50)
    {
    format(str2,sizeof(str2),"KM/H: ~g~%d ~n~~l~---------------------------------",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    else
    {
    format(str2,sizeof(str2),"KM/H: ~b~%d ~n~~l~---------------------------------",kmh_anzahl);
    TextDrawSetString(kmh[i], str2);
    }
    new vehicleid = GetPlayerVehicleID(i);
    format(str3,sizeof(str3),"Tank: ~g~%d / %d Liter ~n~~l~---------------------------------", Gas[vehicleid],GetGasMax(GetVehicleModel(vehicleid)));
    TextDrawSetString(tank[i], str3);
    if(kmh_anzahl == 0) {}
    else
    {
    Kilometer[vehicleid] += final_speed*0.0008;
    }
    format(str4,sizeof(str4),"Kilometer: ~g~%d ~n~~l~---------------------------------",floatround(Kilometer[vehicleid],floatround_floor));
    TextDrawSetString(KilometerAnzeige[i], str4);
    if(Speedo_HP >= 551)
    {
    SetProgressBarColor(BarZustand[i], 0x00A628FF);
    }
    else if(Speedo_HP >= 361)
    {
    SetProgressBarColor(BarZustand[i], 0xFFA300FF);
    }
    else
    {
    SetProgressBarColor(BarZustand[i], 0xFF0000FF);
    }
    SetProgressBarValue(BarZustand[i], floatround(Speedo_HP,floatround_round)-281);
    UpdateProgressBar(BarZustand[i], i);
    new engine,lights,alarm,doors,bonnet,boot,objective;
    GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
    if(engine == VEHICLE_PARAMS_ON && lights == VEHICLE_PARAMS_OFF)
    {
    TextDrawSetString(StatusAnzeige[i], " ~g~Motor~w~ - ~r~Licht");
    }
    else if(engine == VEHICLE_PARAMS_ON && lights == VEHICLE_PARAMS_ON)
    {
    TextDrawSetString(StatusAnzeige[i], " ~g~Motor~w~ - ~g~Licht");
    }
    else if(engine == VEHICLE_PARAMS_OFF && lights == VEHICLE_PARAMS_ON)
    {
    TextDrawSetString(StatusAnzeige[i], " ~r~Motor~w~ - ~g~Licht");
    }
    else if(engine == VEHICLE_PARAMS_OFF && lights == VEHICLE_PARAMS_OFF)
    {
    TextDrawSetString(StatusAnzeige[i], " ~r~Motor~w~ - ~r~Licht");
    }
    else if(engine == VEHICLE_PARAMS_ON)
    {
    TextDrawSetString(StatusAnzeige[i], " ~g~Motor~w~ - ~r~Licht");
    }
    else
    {
    TextDrawSetString(StatusAnzeige[i], " ~r~Motor~w~ - ~r~Licht");
    }
    }
    SavePlayerPos[i][sX] = Speedo_X, SavePlayerPos[i][sY] = Speedo_Y, SavePlayerPos[i][sZ] = Speedo_Z;
    }
    for(new i=0; i<SLOTS; i++)
    {
    if(!IsPlayerInAnyVehicle(i))
    {
    TextDrawHideForPlayer(i, box[i]); TextDrawHideForPlayer(i, fahrzeug[i]); TextDrawHideForPlayer(i, kmh[i]);
    TextDrawHideForPlayer(i, tank[i]); TextDrawHideForPlayer(i, zustand[i]); HideProgressBarForPlayer(i, BarZustand[i]); TextDrawHideForPlayer(i, KilometerAnzeige[i]); TextDrawHideForPlayer(i, StatusAnzeige[i]);
    TachoAn[i] = 0;
    }
    }
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(SafeTime[i] > 0)
    {
    SafeTime[i]--;
    }
    if(SafeTime[i] == 1)
    {
    if(gPlayerAccount[i] == 1 && gPlayerLogged[i] == 0)
    {
    SendClientMessage(i, COLOR_WHITE, "");
    }
    }
    if(GetPlayerState(i) == 2)
    {
    GetPlayerPos(i, TelePos[i][3], TelePos[i][4], TelePos[i][5]);
    if(TelePos[i][5] > 550.0)
    {
    TelePos[i][0] = 0.0;
    TelePos[i][1] = 0.0;
    }
    if(TelePos[i][0] != 0.0)
    {
    new Float:xdist = TelePos[i][3]-TelePos[i][0];
    new Float:ydist = TelePos[i][4]-TelePos[i][1];
    new Float:sqxdist = xdist*xdist;
    new Float:sqydist = ydist*ydist;
    new Float:distance = (sqxdist+sqydist)/31;
    if(gSpeedo[i] == 2)
    {
    if(distance <10)
    {
    format(string, 256, "~n~~n~~n~~n~~n~~n~~n~~g~mph : ~w~%.0f",distance);
    }
    if(distance > 10 && distance < 100)
    {
    format(string, 256, "~n~~n~~n~~n~~n~~n~~n~~g~mph : ~w~%.0f",distance);
    }
    if(distance > 100)
    {
    format(string, 256, "~n~~n~~n~~n~~n~~n~~n~~g~mph : ~w~%.0f",distance);
    }
    GameTextForPlayer(i, string, 2000, 5);
    }
    if(distance > maxspeed && PlayerInfo[i][pAdmin] < 1)
    {
    new tmpcar = GetPlayerVehicleID(i);
    if(!IsAPlane(tmpcar))
    {
    GetPlayerName(i, plname, sizeof(plname));
    format(string, 256, "[!]: [%d]%s %.0f km/h",i,plname,distance);
    ABroadCast(COLOR_YELLOW,string,1);
    }
    }
    }
    if(TelePos[i][5] < 550.0 && TelePos[i][3] != 0.0)
    {
    TelePos[i][0] = TelePos[i][3];
    TelePos[i][1] = TelePos[i][4];
    }
    }
    if(CellTime[i] > 0)
    {
    if (CellTime[i] == cchargetime)
    {
    CellTime[i] = 1;
    if(Mobile[Mobile[i]] == i)
    {
    CallCost[i] = CallCost[i]+callcost;
    }
    }
    CellTime[i] = CellTime[i] +1;
    if (Mobile[Mobile[i]] == 255 && CellTime[i] == 5)
    {
    if(IsPlayerConnected(Mobile[i]))
    {
    new called[MAX_PLAYER_NAME];
    GetPlayerName(Mobile[i], called, sizeof(called));
    format(string, sizeof(string), "* %s's Handy klingelt.", called);
    RingTone[Mobile[i]] = 10;
    ProxDetector(30.0, Mobile[i], string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    }
    }
    }
    if(CellTime[i] == 0 && CallCost[i] > 0)
    {
    format(string, sizeof(string), "~w~Der Anruf kostet~n~~r~$%d",CallCost[i]);
    GivePlayerMoney(i, -CallCost[i]);
    SBizzInfo[2][sbTill] += CallCost[i];
    ExtortionSBiz(2, CallCost[i]);
    GameTextForPlayer(i, string, 5000, 1);
    CallCost[i] = 0;
    }
    if(TransportTime[i] > 0)
    {//Taxi driver and passenger only
    if(TransportTime[i] >= 16)
    {
    TransportTime[i] = 1;
    if(TransportDriver[i] < 999)
    {
    if(IsPlayerConnected(TransportDriver[i]))
    {
    TransportCost[i] += TransportValue[TransportDriver[i]];
    TransportCost[TransportDriver[i]] = TransportCost[i];
    }
    }
    }
    TransportTime[i] += 1;
    format(string, sizeof(string), "~r~%d ~w~: ~g~$%d",TransportTime[i],TransportCost[i]);
    GameTextForPlayer(i, string, 15000, 6);
    }
    }
    }
    return 1;
    }



    Ich hoffe ihr könnt mir helfen. :) (Alle Dinge sind natürlich auch defined.)

    Hier:

    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if(pickupid == GELDSACK)
    {
    if(atmrob == 1)
    {
    SendClientMessage(playerid,COLOR_GRAD1,"Der Tresor wurde gerade erst ausgeraubt!");
    return 1;
    }
    else
    {
    new string[128];
    new BANKGELD = 60000 + random(80000); // Geld / Checkpoint
    GELDWASCHE[playerid] = BANKGELD;
    format(string, sizeof(string), ">* Du hast jetzt $%d in deiner Tasche, fahr zur Geldwäsche. *<",BANKGELD);
    SendClientMessage(playerid, COLOR_LIGHTGREEN, string);
    SetPlayerCheckpoint(playerid, -2179.1943,715.7703,53.8909,8.0);
    atmrob = 1;
    SetTimer("RobATM_Reset",3600000,0); // Nach 60 Minuten erst wieder ausrauben
    return 1;
    }
    }
    return 1;
    }

    Ansonsten such mal mit STRG+F nach der ID des Totenkopfs in deinem Script, vielleicht kommt diese mehrfach vor.

    Dies habe ich schon versucht, die ID kommt jedoch nur 1x vor.


    Ich habe nur noch ein Uhrzeit-System, Fahrzeug-System & AntiCheat als FS. Diese können aber damit nicht in Verbindung stehen, da dort ganz andere Sachen abgefragt werden - zudem ist es ja immer am Totenkopf, somit muss es ja am GM liegen.

    Also, :D

    • Problem - Namen (mit _, [])

    Ich will mich auf meinen Server registrieren, zum Beispiel mit dem Namen: Carli_Maro, jedoch falle ich direkt nach der Registration aus der Welt (eigentlich müsste da ein Tutorial etc. folgen),
    dieses Problem ist auch bei den Namen mit einer Klammer drin, zum Beispiel: [X]Carli. Es funktioniert alles perfekt bei "normalen" Namen oder mit Punkten. (zum Beispiel: Carli / Carli.Maro).


    • Problem - "Bann-Bug"

    Ich spielte seit ca. 10min auf dem Server, auf einmal ist der Server für mich nicht mehr erreichbar, und dort steht dann You are banned from the server (oder so ähnlich). Ich will mich dann wieder einloggen und kann dies nicht, erst nach dem 2./3. mal funktioniert es, davor kommt der selbe Fehler. (in den Logs steht dazu nichts)



    Die Login/Register-Abfragen etc.:
    Register

    public OnPlayerRegister(playerid, password[])
    {
    if(IsPlayerConnected(playerid))
    {
    new string3[32];
    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);
    SetPlayerHealth(playerid,100);
    SpawnPlayer(playerid);
    if (hFile)
    {


    Login

    public OnPlayerLogin(playerid,password[])
    {
    new tmp2[256];
    new string2[100];
    //new string[256];
    new playername2[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername2, sizeof(playername2));
    format(string2, sizeof(string2), "/Accounts/%s.ini", playername2);
    SpawnPlayer(playerid);
    if ( fexist(string2) )
    {
    new valtmp[256];
    valtmp = dini_Get(string2, "Key");
    strmid(PlayerInfo[playerid][pKey], valtmp, 0, strlen(valtmp), 255);
    //printf("key: %s | pw: %s", PlayerInfo[playerid][pKey],password);
    if(strcmp(PlayerInfo[playerid][pKey],password) == 0 )
    {


    OnPlayerConnect

    SetPlayerColor(playerid,COLOR_GRAD2);
    GetPlayerName(playerid, plname, sizeof(plname));
    format(string, sizeof(string),"/Accounts/%s.ini", plname);
    //
    new login[128];
    new spname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, spname, sizeof(spname));
    format(login,sizeof(login),"* Mitbürger %s hat den Server betreten.", spname);
    SendClientMessageToAll(COLOR_GREEN,login);
    SetPlayerHealth(playerid, 100);

    Ich hab nur den Anfang gepostet, weil es ja eig. nur um den Namen geht... ^^

    Hallo. :)
    Ich habe zurzeit noch das Problem, wenn ich mich mit einen Namen (zum Beispiel: Name_Name oder [X]Name_Name / [X]Name) anmelde bzw. registriere, also getrennt mit einen _ oder enthält Klammern, fliege ich nach dem Register bzw. Login einfach aus der Welt. Dies ist nicht bei einen Namen der mit Punkten getrennt ist (Name.Name) bzw. ein normalen Namen (Name). Ich habe zudem auch den Bug, nach einiger Zeit wird man aus dem Server geworfen mit der Nachricht:


    Code
    The server is restarting...
    You are banned from this server!

    (zumind. irgendwie so :D )
    Man ist aber nicht gebannt (nach dem 2. bzw. 3 Versuch funktioniert es dann wieder)
    Ich weiß nicht woran dies alles liegt? Habt ihr irgendwelche Ideen, bzw. ich hoffe ihr könnt mir helfen. :love: (sehe unten)

    Der Totenkopf wird nicht unter OnPlayerPickupPickup , sondern er wird aufgerufen wenn der Spieler getötet wurde. Bei dem Befehl /wiederbeleben, kann er nur wiederbeleben, wenn er bei seinen Todeskoordinaten befindet, welche auch gespeichert werden. // also er ließt es von den Koordinaten ab, und nicht, wann er am Checkpoint ist.



    if (strcmp(cmd, "/wiederbeleben", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Verwendung: /wiederbeleben [PlayerID]");
    return 1;
    }
    if (PlayerInfo[playerid][pMember] == 4 || PlayerInfo[playerid][pLeader] == 4 || PlayerInfo[playerid][pAdmin] == 2000)
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i) && PlayerInfo[i][pTod] == 1 && PlayerToPoint(5.0,playerid,PlayerInfo[i][pTx],PlayerInfo[i][pTy],PlayerInfo[i][pTz]))
    {
    new pname[256];
    GetPlayerName(i, pname, 256);
    format(string, 256, "» Du hast %s, wiederbelebt!",pname);
    SendClientMessage(playerid, COLOR_WRED, string);
    GetPlayerName(playerid, pname, 256);
    format(string, 256, "» Paramedic %s hat dich wiederbelebt!",pname);
    SendClientMessage(i, COLOR_WRED, string);
    SetPlayerSkin(i,GetPVarInt(i,"tot_Skin"));
    PlayerInfo[i][pTod] = 0;
    pIstTot[i] = 0;
    SetPlayerPos(i,PlayerInfo[i][pTx],PlayerInfo[i][pTy],PlayerInfo[i][pTz]);
    SetCameraBehindPlayer(i);
    DestroyPickup(TotenKopf[i]);
    TogglePlayerControllable(i, 1);
    PlayerInfo[i][pTx] = 0.0;
    PlayerInfo[i][pTy] = 0.0;
    PlayerInfo[i][pTz] = 0.0;
    new Float:tempheal;
    GetPlayerHealth(i,tempheal);
    SetPlayerHealth(i,15.0);
    SetPlayerColor(i, COLOR_ZIVI);
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du hast keine Berechtigung.");
    }
    }
    return 1;
    }

    hat die ID 1210
    public OnFilterScriptInit()

    {
    new File:csfile,readline[256],bpModel;
    if(!fexist("carshop.cfg")) { //Die PickupID beim Shop, die Pickup Positionen und die Spawnpositionen vom Wagen, die der Spieler neulich gekauft hat
    csfile=fopen("carshop.cfg",io_write);
    fwrite(csfile,"shopPickup=1210\r\nbuyposX=0.0\r\nbuyposY=0.0\r\nbuyposZ=0.0\r\ncarspawnX=0.0\r\ncarspawnY=0.0\r\ncarspawnZ=0.0\r\ncarspawnA=0.0"); // <--
    fclose(csfile); }
    else {
    csfile=fopen("carshop.cfg",io_read);
    while(fread(csfile,readline)) {
    if(!strcmp(readline,"shopPickup=",true,11)) { bpModel=strval(strpart(readline,1,'=')); }
    else if(!strcmp(readline,"buyposX=",true,8)) { bpcoords[0]=floatstr(strpart(readline,1,'=')); }
    else if(!strcmp(readline,"buyposY=",true,8)) { bpcoords[1]=floatstr(strpart(readline,1,'=')); }
    else if(!strcmp(readline,"buyposZ=",true,8)) { bpcoords[2]=floatstr(strpart(readline,1,'=')); csPickup=CreatePickup(bpModel,2,bpcoords[0],bpcoords[1],bpcoords[2]); }
    else if(!strcmp(readline,"carspawnX=",true,10)) { carspawn[0]=floatstr(strpart(readline,1,'=')); }
    else if(!strcmp(readline,"carspawnY=",true,10)) { carspawn[1]=floatstr(strpart(readline,1,'=')); }
    else if(!strcmp(readline,"carspawnZ=",true,10)) { carspawn[2]=floatstr(strpart(readline,1,'=')); }
    else if(!strcmp(readline,"carspawnA=",true,10)) { carspawn[3]=floatstr(strpart(readline,1,'=')); } }
    fclose(csfile); }


    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    new string[64];
    if(pickupid==csPickup)
    {
    if(PlayerVehicle[playerid][0][pvModel] && PlayerVehicle[playerid][1][pvModel] && PlayerVehicle[playerid][2][pvModel] && PlayerVehicle[playerid][3][pvModel] && PlayerVehicle[playerid][4][pvModel]) { return SendClientMessage(playerid,COLOR_GREEN,"{33AA33}AUTOHAUS{FFFF00}:{33AA33} {FFFFFF}Du besitzt bereits 5 Fahrzeuge! Du musst erst einen verkaufen, wenn du einen anderen kaufen willst."); }
    SetPlayerVirtualWorld(playerid,playerid); //jeder Spieler hat die Virtuelle welt von seiner spielerid. so hat jeder seine eigene virtuelle welt, und so gibt es auch kein Weg dass 2 spieler sich treffen, während sie wagen auswählen =)
    TogglePlayerControllable(playerid,0);
    SetPlayerPos(playerid,VehicleReviewData[vrVehiclePos][0],VehicleReviewData[vrVehiclePos][1],(VehicleReviewData[vrVehiclePos][2]-5));
    SetPlayerCameraPos(playerid,VehicleReviewData[vrCameraPos][0],VehicleReviewData[vrCameraPos][1],VehicleReviewData[vrCameraPos][2]);
    SetPlayerCameraLookAt(playerid,VehicleReviewData[vrVehiclePos][0],VehicleReviewData[vrVehiclePos][1],VehicleReviewData[vrVehiclePos][2]);


    ShowingVehicle[playerid]=0;
    ReviewingVehicleID[playerid]=CreateVehicle(ShopVehicle[0][svModel],VehicleReviewData[vrVehiclePos][0],VehicleReviewData[vrVehiclePos][1],VehicleReviewData[vrVehiclePos][2],VehicleReviewData[vrVehiclePos][3],-1,-1,60);
    SetVehicleParamsForAll(ReviewingVehicleID[playerid],1,1);
    SetVehicleVirtualWorld(ReviewingVehicleID[playerid],playerid);
    SendClientMessage(playerid,COLOR_GREEN,"{33AA33}AUTOHAUS{FFFF00}:{33AA33} Verwende {FFFF00}Rechte & Linke Maustaste{33AA33} um dir die Fahrzeuge auswählen zu können!");
    SendClientMessage(playerid,COLOR_GREEN,"{33AA33}AUTOHAUS{FFFF00}:{33AA33} Verwende {FFFF00}Enter/Taste F{33AA33} um das Autohaus verlassen!");
    SendClientMessage(playerid,COLOR_GREEN,"{33AA33}AUTOHAUS{FFFF00}:{33AA33} Verwende die {FFFF00}Leertaste (Space){33AA33}, um das Fahrzeug zu kaufen, die du dir ansiehst!");
    format(string,sizeof(string),"~w~%s~n~~g~$%d",VehicleName[ShopVehicle[0][svModel]-400],ShopVehicle[0][svCost]);
    GameTextForPlayer(playerid,string,30000,4);
    return 0;
    }
    return 1;
    }

    (AH-System)