[HELP] Get Enemy origin in Radius
i trying to detect zombie around me, when i shooting.
i put the code on fw_TraceAttack, i using "print_chat" to test counting wrong or not.
i'm using this method to count zombie around me
PHP Code:
public fw_TraceAttack(iEnt, iAttacker, Float:flDamage, Float:fDir[3], ptr, iDamageType) { if(!is_user_alive(iAttacker)) return if(get_user_weapon(iAttacker) != CSW_M249) return new NearestZombie = 0 for(new i = 0; i <= get_maxplayers(); i++) { if(is_user_alive(i) && entity_range(iAttacker, i) < 400.0 && zp_get_user_zombie(i)) NearestZombie ++ } if(NearestZombie == 0) client_print(iAttacker, print_chat, "0 Zombie Near You !") if(NearestZombie == 1) client_print(iAttacker, print_chat, "1 Zombie Near You !") if(NearestZombie == 2) client_print(iAttacker, print_chat, "2 Zombie Near You !") if(NearestZombie == 3) client_print(iAttacker, print_chat, "3 Zombie Near You !") if(NearestZombie == 4) client_print(iAttacker, print_chat, "4 Zombie Near You !") }
it works well to detect zombie, but my question is:
how to get each zombie origin near me & count it ??
i try this but not work
Code:
new vOrigin[3]
pev(NearestZombie, pev_origin, vOrigin)
-----------------------------------------------
Note:
but when i change to this.
it's not work, counting zombie is wrong.
PHP Code:
public fw_TraceAttack(iEnt, iAttacker, Float:flDamage, Float:fDir[3], ptr, iDamageType) { if(!is_user_alive(iAttacker)) return if(get_user_weapon(iAttacker) != CSW_M249) return for(new i = 0; i <= get_maxplayers(); i++) { if(!is_user_alive(i)) continue if(entity_range(iAttacker, i) > 400.0) continue if(!zp_get_user_zombie(i)) continue if(i == 0) client_print(iAttacker, print_chat, "0 Zombie Near You !") if(i == 1) client_print(iAttacker, print_chat, "1 Zombie Near You !") if(i == 2) client_print(iAttacker, print_chat, "2 Zombie Near You !") if(i == 3) client_print(iAttacker, print_chat, "3 Zombie Near You !") if(i == 4) client_print(iAttacker, print_chat, "4 Zombie Near You !") } }
|