/unban

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


  • Kann nicht falsch sein da es sonst bei mir nicht funktionieren würde.


    Das ist ein Nameban den ich mir so umgebaut habe, da beim PPC Script mit Bantime gearbeitet wird und das sehr nervig ist.


    Habe es zudem mit einigen getestet und es funktioniert zu 100%.


    Zudem werde ich doch nicht ihm ein command schreiben damit er copy/paste machen kann, er soll ja nun auch was dabei lernen.

  • dcmd_tunban(playerid,params[])
    {
    new pName[MAX_PLAYER_NAME],pIdName[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pAdmin] <= 2) { return 1; }
    if(sscanf(params,"s",pIdName)) { return SendClientMessage(playerid,COLOR_GRAD1,"Benutzung: /tunban [Voller Spielername]"); }
    GetPlayerName(playerid,pName,sizeof(pName));
    if(Playerinfo[pIdName][pBan == 1)
    {
    UnBan(pIdName);
    format(string2,sizeof(string2,"Spieler %s wurde entbannt!", name);
    ABroadCast(COLOR_RED,string2,1);
    return 1;
    } else { return SendClientMessage(playerid,COLOR_RED,"Dieser Spieler finden wir nicht im Ordner!"); }
    }
    stock TUnban(playername[])
    {
    format(FB_tbDir,sizeof(FB_tbDir),FB_foxBanFile,playername);
    if(FB_dini_Exists(FB_tbDir)) {
    FB_dini_Remove(FB_tbDir); return true; }
    return false;
    }


    wie mache ich bei dem stock das die playerinfo pban auf 0 ist?

    Einmal editiert, zuletzt von SenTiZz ()

  • ocmd:unban(playerid,params[])
    {
    if(!IsPlayerAnAdmin(playerid,4))return SendClientMessage(playerid,COLOR_GREY,"Du bist kein Admin Rang 4!");
    new name[MAX_PLAYER_NAME];
    new grund[64];
    new SpielerDatei[128];
    if(sscanf(params,"ss",name,grund)) return SendClientMessage(playerid,COLOR_WHITE,"Benutzung: /unban [Name][Grund]");
    new string[128];
    format(SpielerDatei,sizeof(SpielerDatei),"/Accounts/%s.ini",name);
    (!dini_Exists(SpielerDatei))return SendClientMessage(playerid,COLOR_WHITE,"Dieser Spieler existiert nicht!");
    format(string,sizeof(string),"[Unban]: %s hat den Spieler %s entsperrt. Grund: %s",PlayerName(playerid),name,grund);
    dini_IntSet(SpielerDatei,"Baned",0);
    SendAdminMessage(string);
    return 1;
    }


    Ich weiß nicht warum man eine Servervariable auf 0 setzt, wenn der Spieler höchstwarscheinlich nichtmal Online ist..

  • Habs so aber wie setze ich dem den ban auf 0?


    dcmd_unban(playerid,params[])
    {
    if(!IsPlayerAnAdmin(playerid,4))return SendClientMessage(playerid,COLOR_GREY,"Du bist kein Admin Rang 4!");
    new name[MAX_PLAYER_NAME];
    new grund[64];
    new string15[128];
    if(sscanf(params,"ss",name,grund)) return SendClientMessage(playerid,COLOR_WHITE,"Benutzung: /unban [Name][Grund]");
    new string[128];
    format(string15,sizeof(string15),"/Accounts/%s.ini",name);
    (!dini_Exists(SpielerDatei))return SendClientMessage(playerid,COLOR_WHITE,"Dieser Spieler existiert nicht!");
    format(string,sizeof(string),"[Unban]: %s hat den Spieler %s entsperrt. Grund: %s",PlayerName(playerid),name,grund);
    //PlayerInfo[playerid][pBan] = 0;
    SendAdminMessage(string);
    return 1;
    }

  • enum pInfo
    {
    pPunkte,
    pRest,
    pKey[128],
    pLevel,
    pAdmin,
    pSupporter,
    pDonateRank,
    gPupgrade,
    pConnectTime,
    pReg,
    pSex,
    pLand,
    pAge,
    pOrigin,
    pCK,
    pMuted,
    pExp,
    pCash,
    pAccount,
    pPlayerKreditDauer,
    pPlayerKredit,
    pCrimes,
    pKills,
    pDeaths,
    pArrested,
    pWantedDeaths,
    pPhoneBook,
    pLottoNr,
    pFishes,
    pBiggestFish,
    pJob,
    pHarz,
    pPayCheck,
    pHeadValue,
    pJailed,
    pRobTime,
    pJailTime,
    pDuty,
    pGangJailed,
    pwJailed,
    pMauled,
    pMats,
    pDrugs,
    pLeader,
    pMember,
    pFMember,
    pRank,
    pChar,
    pContractTime,
    pDetSkill,
    pSexSkill,
    pBoxSkill,
    pLawSkill,
    pMechSkill,
    pJackSkill,
    pCarSkill,
    pNewsSkill,
    pDrugsSkill,
    pCookSkill,
    pFishSkill,
    Float:pHealth,
    Float:pSHealth,
    pInt,
    pLocal,
    pTeam,
    pModel,
    pPnumber,
    pPhousekey,
    pPbiskey,
    Float:pPos_x,
    Float:pPos_y,
    Float:pPos_z,
    pCarLic,
    pNewLic,
    pFlyLic,
    pBoatLic,
    pFishLic,
    pGunLic, //Definition des Scheines zb die Aufgabe später
    pLKWLic,
    pRollerLic,
    pMotoLic,
    pZig,
    pSchaufel,
    pKekse,
    pZigSucht,
    pGun1,
    pGun2,
    pGun3,
    pGun4,
    pAmmo1,
    pAmmo2,
    pAmmo3,
    pAmmo4,
    pCarTime,
    pMulltime,
    pArbeittime,
    pJobstart,
    pBusTime,
    pPayDay,
    pPayDayHad,
    pCDPlayer,
    pWins,
    pLoses,
    pAlcoholPerk,
    pDrugPerk,
    pMiserPerk,
    pPainPerk,
    pTraderPerk,
    pTut,
    pWarns,
    pAdjustable,
    pFuel,
    pMarried,
    pMarriedTo[128],
    pInvWeapon,
    pInvAmmo,
    pInvWeapon2,
    pInvAmmo2,
    pInvDrugs,
    pInvMats,
    pFlugTime,
    pRoadblock,
    pPlayMinutes,
    pGesamtMinutes,
    pMinutesSinceLogin,
    pMinutesSinceAn,
    pSFPASS,
    pLVPASS,
    pSPECIAL,
    pLUFTWAFFE,
    pHandyGeld,
    pHandyVer,
    pUhrID,
    pHandyID,
    pOwnPerso,
    pOwnAntrag,
    pPersoStop,
    pGehalt,
    pFrakSperre,
    pBoxMats,
    pBankPin,
    pBan,
    pBankPinCode,
    pJobgeld,
    pHatJob,
    pBoxDrugs,
    pSASpawn,
    pOamtSpawn,
    pMedicSpawn,
    pFeuerSpawn,
    pFBISpawn,
    pFahrer,
    pCNNSpawn,
    Text:LetterboxTop,Text:LetterboxBottom2, Text:LetterboxBottom,
    pTot,
    pFarmTime,
    pGDeaths,
    pGKills,
    pMeldung,
    };


    dcmd_unban(playerid,params[])
    {
    if(PlayerInfo[playerid][pAdmin] >= 1)return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
    new name[MAX_PLAYER_NAME];
    new grund[64];
    new string15[128];
    if(sscanf(params,"ss",name,grund)) return SendClientMessage(playerid,COLOR_WHITE,"Benutzung: /unban [Name][Grund]");
    new string[128];
    if(PlayerInfo[name][pBan] == 1)
    {
    format(string15,sizeof(string15),"/Accounts/%s.ini",name);
    (!dini_Exists(string15))return SendClientMessage(playerid,COLOR_WHITE,"Dieser Spieler existiert nicht!");
    //format(string,sizeof(string),"[Unban]: %s hat den Spieler %s entsperrt. Grund: %s",PlayerName(playerid),name,grund);
    //PlayerInfo[playerid][pBan] = 0;
    //SendAdminMessage(string);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Der Spieler ist nicht gebannt!");
    }
    return 1;
    }

  • Habs nun so:


    stock Unban(playerid)
    {
    format(string15,sizeof(string15),"/Accounts/%s.ini",playerid);
    (!dini_Exists(string15))return SendClientMessage(playerid,COLOR_WHITE,"Dieser Spieler existiert nicht!");
    PlayerInfo[playerid][pBan] = 0;
    }


    dcmd_unban(playerid,params[])
    {
    if(PlayerInfo[playerid][pAdmin] >= 1)return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
    new pIdName[MAX_PLAYER_NAME];
    new grund[64];
    if(sscanf(params,"ss",pIdName,grund)) return SendClientMessage(playerid,COLOR_WHITE,"Benutzung: /unban [Name][Grund]");
    if(PlayerInfo[pIdName][pBan] == 1)
    {
    /*format(string15,sizeof(string15),"/Accounts/%s.ini",pIdName);
    (!dini_Exists(string15))return SendClientMessage(playerid,COLOR_WHITE,"Dieser Spieler existiert nicht!");
    PlayerInfo[pIdName][pBan] = 0;*/
    SendClientMessage(playerid, COLOR_GREEN, "Spieler entbannt!");
    UnBan(pIdName);
    //format(string,sizeof(string),"[Unban]: %s hat den Spieler %s entsperrt. Grund: %s",PlayerName(playerid),name,grund);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Der Spieler ist nicht gebannt!");
    return 1;
    }
    }


    kriege errors:


    C:\Users\Moritz\Desktop\Scripte\Era Script\gamemodes\Release.pwn(63531) : error 033: array must be indexed (variable "pIdName")
    C:\Users\Moritz\Desktop\Scripte\Era Script\gamemodes\Release.pwn(63537) : error 017: undefined symbol "UnBan"
    C:\Users\Moritz\Desktop\Scripte\Era Script\gamemodes\Release.pwn(63545) : warning 209: function "dcmd_unban" should return a value

    Einmal editiert, zuletzt von SenTiZz ()

  • ocmd:unban(playerid,params[])
    {
    if(!IsPlayerAnAdmin(playerid,4))return SendClientMessage(playerid,COLOR_GREY,"Du bist kein Admin Rang 4!");
    new name[MAX_PLAYER_NAME];
    new grund[64];
    new SpielerDatei[128];
    if(sscanf(params,"ss",name,grund)) return SendClientMessage(playerid,COLOR_WHITE,"Benutzung: /unban [Name][Grund]");
    new string[128];
    format(SpielerDatei,sizeof(SpielerDatei),"/Accounts/%s.ini",name);
    (!dini_Exists(SpielerDatei))return SendClientMessage(playerid,COLOR_WHITE,"Dieser Spieler existiert nicht!");
    format(string,sizeof(string),"[Unban]: %s hat den Spieler %s entsperrt. Grund: %s",PlayerName(playerid),name,grund);
    dini_IntSet(SpielerDatei,"Baned",0); // HIER WIRD DER VERDAMMTE BAN AUF 0 GESETZT
    SendAdminMessage(string);
    return 1;
    }

  • Du siehst ja wie es aufgebaut ist, den Rest kannste selber, niemand wird dir hier irgendwelche Copy&Paste Dinge schreiben, die direkt zu deinem Script passen, das musst du selbst anpassen.


    Aber dann solltet ihr ihm auch vernünftige Sachen schreiben und nicht sowas:


    Zitat

    (!dini_Exists(SpielerDatei))return SendClientMessage(playerid,COLOR_WHITE,"Dieser Spieler existiert nicht!");


    :pinch:


    Aber ansonsten sollte der Code von roOlling funktionieren, musst nur paar Sachen noch ausbessern und evtl anpassen... ^^


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • ocmd:unban(playerid,params[])
    {
    if(PlayerInfo[playerid][pAdmin] >= 1)return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
    new name[MAX_PLAYER_NAME];
    new grund[64];
    new Spielerdatei[128];
    if(sscanf(params,"ss",name,grund)) return SendClientMessage(playerid,COLOR_WHITE,"Benutzung: /unban [Name][Grund]");
    new string[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    format(string,sizeof(string),"[Unban]: Man hat den Spieler %s entsperrt. Grund: %s",name,grund);
    PlayerInfo[Spielerdatei][pBan] = 0;
    SendClientMessageToAll(COLOR_RED,string);
    return 1;
    }


    Error:


    C:\Users\Moritz\Desktop\Scripte\Era Script\gamemodes\Release.pwn(63528) : error 033: array must be indexed (variable "Spielerdatei")


    PlayerInfo[Spielerdatei][pBan] = 0;

  • Du kannst nicht PlayerInfo[Spielerdatei][pBan] = 0; nutzen !


    Du musst das nutzen:


    dini_IntSet(SpielerDatei,"Baned",0);



    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • ob der spieler gebannt ist


    if(PlayerInfo[playerid][pBan] == 1) //autoban
    {
    format(string2,sizeof(string2)," %s wurde gekickt, sein Account ist gebannt...",playername2);
    ABroadCast(COLOR_LIGHTRED,string2,1);
    SendClientMessage(playerid,COLOR_RED," Dein Account ist gebannt! Mach dir mal Gedanken, warum...");
    Kick(playerid);
    return 1;
    }


    ist beim login wenn ich mich einlogge werde ich nicht gekickt sondern bei em reloggt er sich oder ladet sich halt neu

    2 Mal editiert, zuletzt von SenTiZz ()


  • Mein Freund, dat passiert, wenn man Kick(); unter OnPlayerConnect verwendet. Benutz es am Besten unter OnPlayerRequestClass / OnPlayerSpawn. :x

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen