Beiträge von [NeS]Fischer

    moni nächste frage hab schon gesucht aber nix passendes gefunden...
    also es gibt diese schöne funtkion mit GetPlayerName
    nun kann mir jemand erklären wie ich es verwenden kann zb in meinem anticheatscript.
    jemand wird gebannt und es soll dan dastehn %s wurde wegen Armourhack gebannt!
    aber wie definier ich den namen?

    so gins danke an euch! :thumbup:
    forward GeldCheck();
    SetTimer("GeldCheck",5000,1);
    public GeldCheck()
    {
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(GetPlayerMoney(i) > 0)
    {
    SendClientMessage(i, FARBE_ROT, "Lass den Geldcheat aus!");
    ResetPlayerMoney(i);
    Kick(i);
    }
    }
    }

    also ich hab nen geldcheck gemacht der überprüft ob der spieler geld hat wenn ja gibs nen kick so aber warum geht das nicht?


    forward GeldCheck(playerid);
    public GeldCheck(playerid)
    {
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(GetPlayerMoney(i) > 0)
    {
    SendClientMessage(playerid, FARBE_ROT, "Lass den Geldcheat aus!");
    ResetPlayerMoney(playerid);
    Kick(playerid);
    }
    }
    }
    kann es sein das bei forward (playerid) und nicht (i) steht? ?(

    hat auch noch mehr nachteile:
    1. Gamerank sinkt
    2. soll man auf beiden server spielen können oder muss man sich einen aussuchen?(wäre nämlich scheiße)
    3. wenn man auf beiden spielen kann: müsste die datenbank immer ausgetauscht werden und das zieht leistung und dauert wenns ne externe datenbank ist
    4. muss man 2 server verwalten mit neuen admins....


    wäre extrem kacke, hat nova ja auch nur gemacht weil der alte zu wenig leistung für das neue script hatte und die leute dadurch die neue ip bekommen

    nova hat auch noch im moment 2 server. auf einem warn 200 drauf und auf dem, der noch auf der offiziellen liste seteht waren 150 drauf

    mein server crasht bei folgenden befehlen(aus gf kopiert)
    //---------------------Kick+skick-----------------------------

    if(strcmp(cmd, "/skick", true) == 0)
    {
    new giveplayerid;
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, FARBE_WEIß, "Benutze: /skick [playerid]");
    return 1;
    }

    if (PlayerInfo[playerid][pAdmin] >= 1)
    {
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    Kick(giveplayerid);
    }
    }
    }
    else
    {
    format(string, sizeof(string), " %d ist kein Aktiver Spieler.", giveplayerid);
    SendClientMessage(playerid, FARBE_WEIß, string);
    }
    }
    return 1;
    }
    ///-------------------------------------------------

    if(strcmp(cmd, "/kick", true) == 0)
    {
    new giveplayerid;
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, FARBE_WEIß2, "Benutze: /kick [playerid] [Grund]");
    return 1;
    }
    if (PlayerInfo[playerid][pAdmin] >= 1)
    {
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, FARBE_WEIß, "Benutze: /kick [playerid] [Grund]");
    return 1;
    }

    Kick(giveplayerid);
    format(string, sizeof(string), "AdmCmd: %s wurde von %s gekickt, Grund: %s", giveplayer, sendername, (result));
    SendClientMessageToAll(FARBE_ROT, string);
    return 1;
    }
    }
    }
    else
    {
    format(string, sizeof(string), " %d is not an active player.", giveplayerid);
    SendClientMessage(playerid, FARBE_WEIß, string);
    }
    }
    return 1;
    }

    stunt dm server, dort bekommt man kein geld und wenn man hat wird man gekickt und das geld wird abgenommen eben anti-moneycheat^^


    //edit ich glaub weniger das justin mich scripten lässt wenn ich hier dauernt sachen frage oder?

    ich hab das login system von ka^^ hier ausm forum und admin dort eingefügt durch "pAdmin" ich poste mal zeile
    format(var, 32, "Admin=%d\n", PlayerInfo[playerid][pAdmin]);fwrite(hFile,var);beim login und registerbefehl
    enum pInfo
    {
    pPassword[128],
    pKills,
    pDeaths,
    pCash,
    pAdmin
    };

    so ich schreib hier ja jeden tag ne frage rein^^ aber naja dafür is das forum da...
    public geldcheck(playerid)
    {
    new geld = GetPlayerMoney(playerid);





    if(geld > 0)
    {

    Kick(playerid);
    //GetPlayerName(kickname)//oder wie bekomm ich den kicknamen?
    //SendClientMessage(pAdmin...//geht das so mit den meldungen an admins?



    }


    return 1;
    }
    ich hab das und will das die admins eine meldung bekommen wer gekickt wurde, ich hab schon viel versucht klappt aber trotzdem nicht

    danke klappt wunderbar


    //edit: öhm ja diese print: blablabla
    für wen wird das angezeigt? admins, alle?


    //edit edit geht doch nicht


    //edit edit edit habs hinbekommen danke^^ :thumbup:

    moin und zwar hab ich folgendes vor:
    ich will nen timer der jede 5 sekunden überprüft ob der spieler mehr geld als 0 hat
    ich hab schon alles mögliche gelesen nur rall ich das net ganz könnte mal jemand ein beispiel geben?