Beiträge von John_Sanclear

    Habs jetzt so aber geht nicht.

    if(GetPVarInt(playerid,"1")<=GetPVarInt(pID,"2")) return SendClientMessage(playerid,HELLROT,"AdmCmd:Du kannst keine Administratoren kicken.");
    if(GetPVarInt(playerid,"1")<=GetPVarInt(pID,"2")) return
    SendClientMessage(playerid,HELLROT,"AdmCmd:Du kannst keine Projektleiter kicken.");
    if(GetPVarInt(playerid,"2")<=GetPVarInt(pID,"3")) return
    SendClientMessage(playerid,HELLROT,"AdmCmd:Du kannst keine Projektleiter kicken.");


    Sie drie Zeilen habe ich in meinem kick Befehl eingefügt, funktioniert aber nicht.

    Sers Community,
    ich möchte:
    Das die Supporter keine Administrator & Projektleiter kicken können.
    Das die Administratoren Supporter kicken können aber nicht die Projektleiter.
    Das die Projektleiter Supporter & Administratoren kicken können.


    So sieht mein ocmd:kick Befehl aus:

    ocmd:kick(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,HELLROT,"AdmCmd: Du besitzt keine Rechte, um diesen Befehl zu benutzen!");
    new pID,reason[64],string[256],adminrank[20];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,HELLROT,"AdmCmd: Benutze /kick [SpielerID] [Grund]");
    if(IsPlayerConnected(pID))
    {
    switch (GetPVarInt(playerid,"Adminlevel"))
    {
    case 0:{adminrank="Spieler";}
    case 1:{adminrank="Supporter";}
    case 2:{adminrank="Administrator";}
    case 3:{adminrank="Projektleiter";}
    }
    format(string,sizeof(string),"AdmCmd: %s wurde vom %s %s vom Server gekickt. Grund: %s",SpielerName(pID),adminrank,SpielerName(playerid),reason);
    SendClientMessageToAll(HELLROT,string);
    SetTimerEx("KickTimer",200,false,"i",pID);
    }
    else
    {
    SCM(playerid,HELLROT,"AdmCmd: Der Spieler befindet sich zurzeit nicht auf dem Server!");
    return 1;
    }
    return 1;
    }

    Was hat das mit meinem Timer zutun?
    Mein Timer löst nur Kick(playerid); aus und somit wird er nach 2 Sekunden gekickt.
    Und GetPVarInt(playerid,"Gebant",1); müsst eig sorgen das er nicht mehr on kommen kann.

    Das ist mein KickTimer und nicht BanTimer.
    Mein Timer kickt die leute SetPVarInt(playerid,"Gebant",1);
    sorgt dafür das sie nicht mehr on kommen.

    Also ich habe bei OnPlayerDisconnect:
    SpielerSpeichern(playerid); drinne -


    Aber beim Login hab ich das nicht nur bei SpielerLaden(playerid);
    habe ich das hier:

    new pID;
    if(GetPVarInt(playerid,"Gebant")==1)
    {
    SetTimerEx("BanWarnung",100,false,"i",pID);
    SetTimerEx("KickTimer",200,false,"i",pID);
    }
    SetPVarInt(playerid,"Eingeloggt",1);
    return 1;
    }

    Hallo Community,
    ich habe vorhin mit meinem Kollegen unsern Anti Waffenhack System ausprobiert und
    haben dabei einen Fehler entdeckt. Der Fehler ist, dass er zwar gekickt wird aber nicht gebant wird.
    D.h er kann wieder Connecten.

    new weapon[MAX_PLAYERS];
    weapon[playerid] = GetPlayerWeapon(playerid);
    if(weapon[playerid] == 17 || weapon[playerid] == 18 || weapon[playerid] == 38 || weapon[playerid] == 32 || weapon[playerid] == 35 || weapon[playerid] == 36 || weapon[playerid] == 37 || weapon[playerid] == 39 || weapon[playerid] == 40)
    {


    if(IsPlayerAdmin(playerid))
    {
    return 1;
    }
    else
    {
    new str[128], name[MAX_PLAYER_NAME],pID;
    GetPlayerName(playerid, name, sizeof(name));
    format(str, sizeof(str), "[ANTI-CHEAT]: %s wurde vom Anti Waffenhack Tool gebannt. Grund: Waffenhack", name);
    SendClientMessageToAll(0xD30000FF, str);
    ResetPlayerWeapons(playerid);
    SetTimerEx("KickTimer",200,false,"i",playerid);
    SetPVarInt(pID,"Gebant",1);
    return 1;
    }
    }


    Das ist mein Script.

    So?

    if(isPlayerPremium(playerid) == 0)
    {
    SendClientMessage(playerid,BAIGE,"Du bist gestorben. Deine Behandlung kostet 500$.");
    SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") + 1);
    SetPVarInt(killerid,"Killstreak",GetPVarInt(killerid,"Killstreak") + 1);
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
    GameTextForPlayer(killerid,"~r~Gangwar Kill", 3000, 1);
    SetPlayerScore(playerid, GetPlayerScore(playerid) -1);
    PayPlayerMoney(killerid,2500);
    SetPVarInt(playerid, "Tode", GetPVarInt(playerid, "Tode") + 1);
    PayPlayerMoney(playerid,-500);
    SetPVarInt(playerid,"Killstreak",0);
    }
    else
    {
    SendClientMessage(playerid,BAIGE,"Durch dein Premium Account kostet dich der Tot 200$.");
    PayPlayerMoney(killerid, 4500);
    PayPlayerMoney(playerid,-200);
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 2);
    GameTextForPlayer(killerid,"~r~Gangwar Kill", 3000, 1);
    SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") + 2);
    SetPVarInt(killerid,"Killstreak",GetPVarInt(killerid,"Killstreak") + 2);
    SetPVarInt(playerid, "Tode", GetPVarInt(playerid, "Tode") + 1);
    SetPlayerScore(playerid, GetPlayerScore(playerid) -1);
    SetPVarInt(playerid,"Killstreak",0);
    }

    Hallo,
    ich möchte das normale & Premium User verschiedene Kill's und Geld bekommen.
    D.h das Premium User mehr Vorteile als normale User haben siehe hier:

    if(isPlayerPremium(playerid) == 0) // Wenn er kein Premium ist.
    {
    SendClientMessage(playerid,BAIGE,"Du bist gestorben. Deine Behandlung kostet 500$.");
    SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") + 1);
    SetPVarInt(killerid,"Killstreak",GetPVarInt(killerid,"Killstreak") + 1);
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
    GameTextForPlayer(killerid,"~r~Gangwar Kill", 3000, 1);
    SetPlayerScore(playerid, GetPlayerScore(playerid) -1);
    PayPlayerMoney(killerid,2500);
    SetPVarInt(playerid, "Tode", GetPVarInt(playerid, "Tode") + 1);
    PayPlayerMoney(playerid,-500);
    SetPVarInt(playerid,"Killstreak",0);
    }
    else
    {
    if(isPlayerPremium(playerid) == 1) // Wenn er Premium ist.
    {
    SendClientMessage(playerid,BAIGE,"Durch dein Premium Account kostet dich der Tot 200$.");
    PayPlayerMoney(killerid, 4500);
    PayPlayerMoney(playerid,-200);
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 2);
    GameTextForPlayer(killerid,"~r~Gangwar Kill", 3000, 1);
    SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") + 2);
    SetPVarInt(killerid,"Killstreak",GetPVarInt(killerid,"Killstreak") + 2);
    SetPVarInt(playerid, "Tode", GetPVarInt(playerid, "Tode") + 1);
    SetPlayerScore(playerid, GetPlayerScore(playerid) -1);
    SetPVarInt(playerid,"Killstreak",0);
    }
    }


    So, wenn ich z.B Premium bin und mein Gegner nicht bekomme ich trotzdem 2500$ statt 4500$.
    Wenn beide Spieler Premium sind bekommt der killerid 4500.
    Ich weiß nicht warum hab alles versucht doch kein Erfolg.