Befehl nur in reichweite von Spieler

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
  • stock IsPlayerInRangeOfPlayer(playerid, otherid, Float:range)
    {
    new Float:Pos[3];
    GetPlayerPos(otherid, Pos[0], Pos[1], Pos[2]);
    if(IsPlayerInRangeOfPoint(playerid, range, Pos[0], Pos[1], Pos[2])) return true;
    return false;
    }


    einfache Funktion..


    Dann nur noch


    IsPlayerInRangeOfPlayer(playerid, derspielerwoesseinsoll, Float:range)

  • Es reicht wenn du die Funktion IsPlayerInRangeOfPoint returnst. Diese gibt ja bereits true bzw. false zurück.

    stock IsPlayerInRangeOfPlayer(playerid, otherid, Float:range)
    {
    new Float:Pos[3];
    GetPlayerPos(otherid, Pos[0], Pos[1], Pos[2]);
    return IsPlayerInRangeOfPoint(playerid, range, Pos[0], Pos[1], Pos[2]);
    }


    Nicht jeder, der sich für super hält, ist ein Superheld. :love:
    ------------------------------------------------------------------------------------------------

  • Das ist der Befehl ^^


    if(!strcmp(strget(cmdtext,0),"/cuff")) // Der Befehl
    {
    if(gTeam[playerid] == TEAM_COP)
    {
    new ziel = strval(strget(cmdtext,1))
    if(!strlen(strget(cmdtext,1)))//Wenn Playerid fehlt.
    {
    SendClientMessage(playerid,0xFF6347AA,"Benutze: /cuff [ID]"); return 1;
    }
    new admin[MAX_PLAYER_NAME], string[128];
    GetPlayerName(playerid,admin,sizeof(admin));
    GetPlayerName(ziel,spieler,sizeof(spieler));
    if(status[playerid]==0)
    {
    IsPlayerInRangeOfPlayer(playerid, ziel, 3.0);
    TogglePlayerControllable(ziel,0);
    format(string, sizeof(string), "Officer %s hat dir Handschellen angelegt.!",admin);
    SendClientMessage(ziel, 0xFFFF00AA, string);
    format(string, sizeof(string), "Du hast %s Handschellen angelegt.!", spieler);
    SendClientMessage(playerid,0x33CCFFAA, string);
    status[playerid]=1;
    }
    else if(status[playerid]==1)
    {
    IsPlayerInRangeOfPlayer(playerid, ziel, 3.0);
    TogglePlayerControllable(ziel,1);
    format(string, sizeof(string), "Officer %s hat dir die Handschellen abgelegt.!",admin);
    SendClientMessage(ziel, 0xFFFF00AA, string);
    format(string, sizeof(string), "Du hast %s die Handschellen wieder abgelegt.!", spieler);
    SendClientMessage(playerid,0x33CCFFAA, string);
    status[playerid]=0;
    }
    return 1;
    }
    }


    vielleicht kannst es mir gleich so einfuegen das es das anzeigt wenn man es auf sich selbst macht, und guck mal ob ich das IsPlayerInRangeOfPlayer richtig drinnen hab.


    Lg
    BoB