/tazer moeglich aus jeder Entfernung.

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
  • Tja, also wie die ueberschrift schon sagt kann man bei meinem GF aus jeder entfernung tazern. Ich weiss aber nicht woran der fehler ist.
    if(strcmp(cmd, "/tazer", true) ==0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLeader] == 3|| PlayerInfo[playerid][pMember] == 21 || PlayerInfo[playerid][pLeader] == 21)
    {
    if(OnDuty[playerid]==0)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist nicht im Dienst!");
    return 1;
    }
    if(IsPlayerInAnyVehicle(playerid))
    {
    SendClientMessage(playerid, COLOR_GREY, "Du kannst das nicht benutzen während du im Fahrzeug sitzt!");
    return 1;
    }
    new suspect = GetClosestPlayer(playerid);
    if(IsPlayerConnected(suspect))
    {
    if(PlayerCuffed[suspect] > 1)
    {
    SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist schon getazed!");
    return 1;
    }
    if(OnDuty[playerid]==1)
    {
    if(IsPlayerInAnyVehicle(suspect))
    {
    SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist in einem Fahrzeug! Bringe in zuerst raus!");
    return 1;
    }
    GetPlayerName(suspect, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* Du wurdest von %s mit seinem Elektroschocker geschockt.", sendername);
    SendClientMessage(suspect, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* Du hast %s niedergestreckt.", giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* %s nimmt seinen Elektroschocker raus und streckt %s nieder.", sendername ,giveplayer);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    GameTextForPlayer(suspect, "~y~Geschockt!", 3000, 3);
    TogglePlayerControllable(suspect, 0);
    PlayerCuffed[suspect] = 1;
    PlayerCuffedTime[suspect] = 8;
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Niemand ist in deiner Nähe!");
    return 1;
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist kein Beamter!");
    }
    }
    return 1;
    }

  • da fehlt auch isplayerinrangeofpoint^^
    musst du erst die x,y,z koos von dem holen der getazerd werden soll und in IsPlayerInRangeOfPoint eintragen
    als range trägst du dann einfach 3 ein fertig

  • machs so ;D


    if(strcmp(cmd, "/tazer", true) ==0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLeader] == 3|| PlayerInfo[playerid][pMember] == 21 || PlayerInfo[playerid][pLeader] == 21)
    {
    if(OnDuty[playerid]==0)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist nicht im Dienst!");
    return 1;
    }
    if(IsPlayerInAnyVehicle(playerid))
    {
    SendClientMessage(playerid, COLOR_GREY, "Du kannst das nicht benutzen während du im Fahrzeug sitzt!");
    return 1;
    }
    new suspect = GetClosestPlayer(playerid);
    if(IsPlayerConnected(suspect))
    {
    if(PlayerCuffed[suspect] > 0)
    {
    SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist schon getazed!");
    return 1;
    }
    if(OnDuty[playerid]==1)
    {
    if(IsPlayerInAnyVehicle(suspect))
    {
    SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist in einem Fahrzeug! Bringe in zuerst raus!");
    return 1;
    }
    if(GetDistanceBetweenPlayers(playerid,suspect) < 8)
    {
    GetPlayerName(suspect, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* Du wurdest von %s mit seinem Elektroschocker geschockt.", sendername);
    SendClientMessage(suspect, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* Du hast %s niedergestreckt.", giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* %s nimmt seinen Elektroschocker raus und streckt %s nieder.", sendername ,giveplayer);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    GameTextForPlayer(suspect, "~y~Geschockt!", 3000, 3);
    TogglePlayerControllable(suspect, 0);
    PlayerCuffed[suspect] = 1;
    PlayerCuffedTime[suspect] = 8;
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Niemand ist in deiner Nähe!");
    return 1;
    }
    else
    {
    SendClientMessage(playerid,COLOR_GREY,"Du bist nicht im Dienst!");
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist kein Beamter!");
    }
    }
    return 1;
    }
    Du hast nicht abgefragt ob "suspect" in der nähe von "playerid" ist. Dies kannst du mit "GetDistanceBetweenPlayers(p1,p2);



    Mfg
    flippxtar aka sorkovitsch

    http://youtube.com/sixxaafx


    Ich habe dir bei einem Problem geholfen oder dir gefällt eines meiner Werke?
    Lass es mich Wissen, indem du auf dieses Bildchen klickst