Beiträge von Steven

    Moin Alles zusammen: Ich habe es jetzt wo weit geschafft ein Kick Command auf die Beine zu bekommen
    Das was ich jetzt nicht schaffe ist den kick mit einem Grund anzeige zu verbinden


    dcmd_kick(playerid, params[])
    {
    if(IsPlayerConnected(playerid))
    {
    new id;
    if (strlen(params))
    {
    id = strval(params);
    new name[MAX_PLAYER_NAME];
    new sendername[MAX_PLAYER_NAME];
    GetPlayerName(playerid,sendername,sizeof(sendername));
    GetPlayerName(id,name,sizeof(name));
    new string[256];
    if(pInfo[id][padmin] > pInfo[playerid][padmin])
    {
    SendClientMessage(playerid, grau, "Info: Du kannst diesen Spieler nicht kicken, da er ein höheres Adminlevel hat als du!");
    return 1;
    }
    if (IsPlayerConnected(id))
    {
    format(string, sizeof(string), "Server Info: {FFFFFF}Admin/Mod %s Hat %s gekickt, Grund: ", sendername,name);
    SendClientMessageToAll(rot, string);
    Kick(id);
    }
    else
    {
    SendClientMessage(playerid,tipporange, "Info: {FFFFFF}Player wurde nicht gefunden.");
    }
    }
    else
    {
    SendClientMessage(playerid,tipporange, "Tipp: {FFFFFF}/kick <ID> <Grund>");
    }
    }
    return 1;
    }

    Guten Tag liebe Com..


    Ich habe mal wieder ein Problem..


    Wenn ich jemanden ein Admin rang gebe, kommt bei mir der Text Z.b:
    "Du hast (mein name) den Admin rang (z.b 5) gegeben"
    Ob wohl ich nicht mir sondern ein anderen den Admin rang gegeben habe


    dcmd_eadmin(playerid, params[])
    {
    new id;
    new string[265];
    new name[MAX_PLAYER_NAME];
    new sendername[MAX_PLAYER_NAME];
    GetPlayerName(playerid,sendername,sizeof(sendername));
    if(pInfo[playerid][padmin] >= 6)
    {
    if (strlen(params))
    {
    id = strval(params);
    if (IsPlayerConnected(id))
    {
    pInfo[id][padmin] +=1;
    printf("AdmCmd: %s hat %s zu einem Level %d Admin befördert.", sendername, name, pInfo[id][padmin]);
    format(string, sizeof(string), " Du wurdest durch %s zu einem Level %d Admin befördert", sendername, pInfo[id][padmin]);
    SendClientMessage(id, tipporange, string);
    //hier
    falsch
    ----> ------->
    format(string, sizeof(string), " Du hast %s zu einem Level %d Admin befördert.", name,pInfo[id][padmin]);
    SendClientMessage(playerid, tipporange, string);
    }
    else
    {
    SendClientMessage(playerid,tipporange, "Info: {FFFFFF}Player wurde nicht gefunden.");
    }
    }
    else
    {
    SendClientMessage(playerid,tipporange, "Tipp: {FFFFFF}/eadmin ");
    }
    }
    else
    {
    SendClientMessage(playerid,tipporange,"Info: {FFFFFF}Du bist kein Admin");
    }
    return 1;
    }


    new id;
    new string[256];
    new name[MAX_PLAYER_NAME];
    new sendername[MAX_PLAYER_NAME];
    GetPlayerName(playerid,sendername,sizeof(sendername));
    if(pInfo[playerid][padmin] >= 6)



    //Push

    Hier noch mal mein Admin CMD
    if(strcmp(cmdtext,"/admin",true)==0)
    {
    SetPVarInt(playerid,"Adminlevel",GetPVarInt(playerid,"Adminlevel")+1);
    SendClientMessage(playerid,weiß,"Admin level geaddet +1");
    SpielerSpeichern(playerid);
    return 1;
    }

    Wenn ich den eingebe wird in der INI Datei der wert 1 geschrieben
    Wenn ich jetzt ein Restart mache steht da wieder 0 drinn
    Wenn ich mich normal auslogge speichert er den wert
    ..
    beim restart speichert er aber das geld.. blos nicht das adminlevel

    Guten Mittag: Mein Problem ist das wenn ich ein Server Neustart mache, Das Adminlevel nicht gespeichert wird..
    Wenn ich mich aber auslogge und wieder einlogge Speichert er das.. Wieso aber nicht beim Neustart


    public OnGameModeExit()
    {
    for(new i = 0; i {
    SpielerSpeichern(i);
    }
    return 1;
    }


    stock SpielerSpeichern(playerid)
    {
    new Spielerdatei[256];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    return 1;
    }

    stock LoadAccount(playerid)
    {
    SendClientMessage(playerid,tipporange,"Info: {FFFFFF}Lade Daten");
    new Spielerdatei[256];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SendClientMessage(playerid,tipporange,"Info: {FFFFFF}Daten Fertig geladen");
    return 1;
    }

    public OnPlayerDisconnect(playerid, reason)
    {
    SpielerSpeichern(playerid);
    return 1;
    }

    Guten Abend liebe Com..


    Ich bin gerade dabei ein register & login System zu Scripten, Dann wollte ich noch per /stats
    die Stats anzeigen lassen Zb das Adminlevel. In die INI Datei steht jetzt Adminlevel=3.
    In den Stats steht Adminlevel:0 wieso?


    Loggin:
    if (dialogid == Logged)
    {
    new Spielerdatei[64];
    new nombrejugador[MAX_PLAYER_NAME], archivo[256], comprobante[256];
    if (!strlen(inputtext)) return Kick(playerid);
    if (!response) return ShowPlayerDialog(playerid, Logged, DIALOG_STYLE_INPUT, "{0085FF}Login", "Hier dein Passwort", "Login", "Abbrechen");
    GetPlayerName(playerid, nombrejugador, sizeof(nombrejugador));
    format(archivo, sizeof(archivo), "/Users/%s.ini", nombrejugador);
    format(comprobante, sizeof(comprobante), "%s", dini_Get(archivo, "Password"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    if (!strcmp (inputtext, comprobante))
    {
    Login[playerid] = 1;
    }
    else
    {
    SendClientMessage(playerid,BLAU,"{FFB900}Info: {FFFFFF}Falsches Passwort.");
    SendClientMessage(playerid,BLAU,"{FFB900}Info: {FFFFFF}Du wurdest gekickt.");
    Kick(playerid);
    }
    }
    return 1;
    }


    Register:
    if (dialogid == Register)
    {
    new nombrejugador[MAX_PLAYER_NAME], archivo[256];
    if (!strlen(inputtext)) return ShowPlayerDialog(playerid, Register, DIALOG_STYLE_INPUT, "{0085FF}Register", "{FFFFFF}Hier dein Passwort", "Register", "Abbrechen");
    if (!response) return ShowPlayerDialog(playerid, Register, DIALOG_STYLE_INPUT, "{0085FF}Register", "{FFFFFF}Hier dein Passwort", "Register", "Abbrechen");
    GetPlayerName(playerid, nombrejugador, sizeof(nombrejugador));
    format(archivo, sizeof(archivo), "/Users/%s.ini", nombrejugador);
    dini_Create(archivo);
    dini_Set(archivo, "User", nombrejugador);
    dini_Set(archivo, "Password", inputtext);
    SetPVarInt(playerid,"Adminlevel",0);
    ShowPlayerDialog(playerid, Logged, DIALOG_STYLE_INPUT, "{0085FF}Login", "Hier dein Passwort", "Login", "{Abbrechen");
    return 1;
    }


    /stats
    if(strcmp(cmdtext,"/stats",true)==0)
    {
    new statistik[MAX_PLAYER_NAME];
    new heading[64];
    new mainstring[256];
    GetPlayerName(playerid,statistik,sizeof(statistik));
    format(heading,256,"Statistiken von %s' Account",statistik);
    format(mainstring,sizeof(mainstring),"[Adminlevel: %d]",GetPVarInt(playerid,"Adminlevel"));
    ShowPlayerDialog(playerid,stats,DIALOG_STYLE_MSGBOX,heading,mainstring,"","");
    return 1;
    }



    Vielen Dank für die Hilfe

    beim speichern vielleicht so?: PlayerInfo[playerid][hp] = GetPlayerHealth(playerid);
    sonst : GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);


    Edit:
    sonst GetPlayerHealth(playerid,PlayerInfo[playerid][hp]);