[AJUDA]Head Shot
#7

tenta

pawn Код:
#include <a_samp>

#define SERVER_MAX_PLAYERS 500

new RecentlyShot[SERVER_MAX_PLAYERS];

new WeaponsTipe[]=
{
    22,
    23,
    24,
    25,
    26,
    27,
    28,
    29,
    30,
    31,
    32,
    33,
    34,
    38
};

public OnPlayerSpawn(playerid)
{
    RecentlyShot[playerid] = 0;
    return 1;
}

public OnPlayerUpdate(playerid)
{

    return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(newkeys & KEY_FIRE && newkeys & KEY_HANDBRAKE) {
        if(RecentlyShot[playerid] == 0) {
            RecentlyShot[playerid] = 1;
            SetTimerEx("AntiSpam", 1000, false, "d", playerid);
            if(GetPlayerWeapon(playerid) == 22 || GetPlayerWeapon(playerid) == 23 || GetPlayerWeapon(playerid) == 24 || GetPlayerWeapon(playerid) == 25 || GetPlayerWeapon(playerid) == 26 || GetPlayerWeapon(playerid) == 27 || GetPlayerWeapon(playerid) == 28 || GetPlayerWeapon(playerid) == 29 || GetPlayerWeapon(playerid) == 30 || GetPlayerWeapon(playerid) == 31 || GetPlayerWeapon(playerid) == 32 || GetPlayerWeapon(playerid) == 33 || GetPlayerWeapon(playerid) == 34 || GetPlayerWeapon(playerid) == 38) {
                new Float:blahx, Float:blahy, Float:blahz;
                HeadshotCheck(playerid, blahx, blahy, blahz);
                return 1;
            }
            return 1;
        }
        return 1;
    }
    return 1;
}

forward AntiSpam(playerid);
public AntiSpam(playerid) {
    RecentlyShot[playerid] = 0;
    return 1;
}

stock PlayerName(playerid) {
    new name[24];
    GetPlayerName(playerid, name, sizeof(name));
    return name;
}
stock IsValidWeaponForHeadShot(playerid)
{
    for(new i; i < 64; ++i)
    {
        if(GetPlayerWeapon(playerid) == WeaponsTipe[i])
        {
            return true;
        }
    }
    return false;
}
stock HeadshotCheck(playerid, &Float:x, &Float:y, &Float:z)
{
    new Float:fx,Float:fy,Float:fz;
    GetPlayerCameraFrontVector(playerid, fx, fy, fz);

    new Float:cx,Float:cy,Float:cz;
    GetPlayerCameraPos(playerid, cx, cy, cz);

    for(new Float:i = 0.0; i < 50; i = i + 0.5)
    {
        x = fx * i + cx;
        y = fy * i + cy;
        z = fz * i + cz;

        #if defined SHOWPATH
        CreatePickup(1239, 4, x, y, z, -1);
        #endif

        for(new player = 0; player < SERVER_MAX_PLAYERS; player ++)
        {
            if(IsPlayerConnected(playerid))
            {
                if(player != playerid)
                {
                    if(GetPlayerSpecialAction(player) == SPECIAL_ACTION_DUCK)
                    {
                        if(IsValidWeaponForHeadShot(playerid))
                        {
                            if(IsPlayerInRangeOfPoint(player, 0.3, x, y, z))
                            {
                                GameTextForPlayer(playerid, "~r~HEADSHOT!", 2000, 6);
                                GameTextForPlayer(player, "~r~HEADSHOT!", 2000, 6);

                                SetPlayerHealth(player, 0.0);
                                CallRemoteFunction("OnPlayerDeath", "ddd", player, playerid, GetPlayerWeapon(playerid));
                            }
                        }
                    }
                    else
                    {
                        if(IsValidWeaponForHeadShot(playerid))
                        {
                            if(IsValidWeaponForHeadShot(playerid))
                            {
                                if(IsPlayerInRangeOfPoint(player, 0.3, x, y, z - 0.7))
                                {

                                    GameTextForPlayer(playerid, "~r~HEADSHOT!", 2000, 6);
                                    GameTextForPlayer(player, "~r~HEADSHOT!", 2000, 6);

                                    SetPlayerHealth(player, 0.0);
                                    CallRemoteFunction("OnPlayerDeath", "ddd", player, playerid, 34);
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    return 1;
}
Reply


Messages In This Thread
[AJUDA]Head Shot - by Detonador - 22.06.2011, 15:51
Re: [AJUDA]Head Shot - by Miqueias Barros - 22.06.2011, 15:58
Re: [AJUDA]Head Shot - by Detonador - 22.06.2011, 20:57
Re: [AJUDA]Head Shot - by ViCtOr_Mc - 22.06.2011, 21:38
Re: [AJUDA]Head Shot - by TheGarfield - 22.06.2011, 21:47
Re: [AJUDA]Head Shot - by Detonador - 22.06.2011, 23:03
Re: [AJUDA]Head Shot - by TheGarfield - 22.06.2011, 23:08
Re: [AJUDA]Head Shot - by Detonador - 22.06.2011, 23:31
Re: [AJUDA]Head Shot - by TheGarfield - 22.06.2011, 23:34
Re: [AJUDA]Head Shot - by Detonador - 22.06.2011, 23:54

Forum Jump:


Users browsing this thread: 1 Guest(s)