SA-MP Forums Archive
fix hs system pls - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: fix hs system pls (/showthread.php?tid=320106)



fix hs system pls - edennimni - 21.02.2012

this system when player is AFK steel hs him please fix it for me

PHP код:
#include <a_samp>
#define SERVER_MAX_PLAYERS 500
new RecentlyShot[SERVER_MAX_PLAYERS];
public 
OnFilterScriptInit()
{
    return 
1;
}
public 
OnFilterScriptExit()
{
    return 
1;
}
public 
OnPlayerConnect(playerid)
{
    return 
1;
}
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) == 34) {
                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 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(
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, 34);
                        }
                    }
                    else
                    {
                        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;
} 



Re: fix hs system pls - milanosie - 21.02.2012

https://sampforum.blast.hk/showthread.php?tid=283306