could someone help me to modify this code so everybody that is holding a pistol aims good (no chat messages or anything, remove the unneedded parts like the command i_aim_good! Onley the things needed!)
Code:
/*
*
*Original plugin by avalanche can be found at:
*<a href="http://forums.alliedmods.net/showthread.php?t=20810" target="_blank" rel="nofollow noopener">http://forums.alliedmods.net/showthread.php?t=20810</a>
*/
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <engine>
new aiming_good[33];
public plugin_init() {
register_plugin("i aim good","0.13","Avalanche");
register_forward(FM_TraceLine,"fw_traceline");
register_concmd("i_aim_good","cmd_setaim",ADMIN_BAN,"<user> <0|1> - makes user aim good");
}
public client_putinserver(id) {
aiming_good[id] = 0;
}
public cmd_setaim(id,level,cid) {
if(!cmd_access(id,level,cid,3))
return PLUGIN_HANDLED;
new arg1[32], arg2[32];
read_argv(1,arg1,31);
read_argv(2,arg2,31);
new player = cmd_target(id,arg1,10);
if(!player)
return PLUGIN_HANDLED;
if(str_to_num(arg2))
aiming_good[player] = 1;
else
aiming_good[player] = 0;
new playername[32];
get_user_name(player,playername,31);
console_print(id,"* %s %s aims good",playername,(str_to_num(arg2)) ? "now" : "no longer");
return PLUGIN_HANDLED;
}
public fw_traceline(Float:v1[3],Float:v2[3],noMonsters,id) {
if(!is_user_alive(id))
return FMRES_IGNORED;
if(!aiming_good[id])
return FMRES_IGNORED;
// get crosshair aim
new MyAim[3], Float:flMyAim[3];
get_user_origin(id,MyAim,3);
IVecFVec(MyAim,flMyAim);
// set crosshair aim
set_tr(TR_vecEndPos,flMyAim);
// get ent looking at
new ent, body;
get_user_aiming(id,ent,body);
// if looking at something
if(is_valid_ent(ent)) {
set_tr(TR_flFraction,0.1); // 1.0 == no hit, < 1.0 == hit
set_tr(TR_pHit,ent); // entity hit
set_tr(TR_iHitgroup,body); // bodypart hit
}
return FMRES_IGNORED;
}
EDIT: changed to aims again, after all it's avas plugin and i personally think it rocks so whatever.