Fraktionssperre

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
  • Hallo Com.
    Ich bin auf der Suche nach einer Art "Scripterweiterung" (Sorry kp wie das heisen soll)
    bzw ein Code den ich in Pawno einfügen kann ,damit ein Spieler eine Fraktionssperre bekommt,wenn er z.B kürzer als 2 Wochen in einer Fraktion ist ..
    Kennt sich jemand damit aus ?


    MFG
    mxBiker


    Mein Schatz:*

  • if(strcmp(cmd, "/fraksperre", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /fraksperre [playerid] [grund]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if (PlayerInfo[playerid][pAdmin] >= 4)
    {
    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, COLOR_GRAD2, "FEHLER: /fraksperre [playerid] [grund]");
    return 1;
    }
    if(PlayerInfo[giveplayerid][pFrakSperre] == 0)
    {
    new year, month,day;
    getdate(year, month, day);
    format(string, sizeof(string), "AdmCmd: %s hat von %s eine Fraktionsperre bekommen! Grund: %s (%d-%d-%d)", giveplayer, sendername,(result),month,day,year);
    SperreLog(string);
    format(string, sizeof(string), "AdmCmd: Du hast von %s Eine FraktionsSperre bekommen! Grund: %s",giveplayer,(result));
    SendClientMessage(giveplayerid,COLOR_LIGHTRED,string);
    PlayerInfo[giveplayerid][pFrakSperre] = 1;
    }
    else if(PlayerInfo[giveplayerid][pFrakSperre] == 1)
    {
    new year, month,day;
    getdate(year, month, day);
    format(string, sizeof(string), "AdmCmd: %s hat von %s die Fraktionsperre aufgehoben! Grund: %s (%d-%d-%d)", giveplayer, sendername,(result),month,day,year);
    SperreLog(string);
    format(string, sizeof(string), "AdmCmd: Deine FraktionsSperre wurde von %s aufgehoben! Grund: %s",giveplayer,(result));
    SendClientMessage(giveplayerid,COLOR_LIGHTRED,string);
    PlayerInfo[giveplayerid][pFrakSperre] = 0;
    }
    return 1;
    }
    }//not connected
    }
    else
    {
    format(string, sizeof(string), " %d ist kein aktiver Spieler.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    }
    return 1;
    }


    Bei diesem System kann der Administrator, die Fraktionssperre vergeben & Entziehen.


    Mit freundlichen Grüßen,
    XxDenniSxX

  • XxDenniSxX:


    So wird allerdigns nichts gespeichert, er muss auch noch den Wert "pFrakSperre" an sein Script anpassen.
    Du müsstest beim Invite eigentlich einen TimeStamp erstellen, also den jetzigen Wert + 2 Wochen Zeit.
    Wenn der Spieler dann uninvitet ist, aber der TimeStamp größer ist, als die jetzige Zeit, dann erhält der Spieler halt durch eine Variable die Fraktionssperre zugewiesen. :)


    Grüße,
    tonyalva