#include <amxmodx>
#include <amxmisc>
#include <dhudmessage>
#include <fakemeta_util>
#define PLUGIN "Advanced Bullet Damage"
#define VERSION "1.0"
#define AUTHOR "Sn!ff3r"
new const Float:g_locations[][] = {
{0.45, 0.5}, {-1.0, 0.55}, {0.55, -1.0},
{-1.0, 0.62}, {0.4, 0.55}, {0.55, 0.6}
}
new g_location[33]
new g_type, g_enabled, g_recieved, bool:g_showrecieved
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")
register_event("HLTV", "on_new_round", "a", "1=0", "2=0")
g_type = register_cvar("amx_bulletdamage","1")
g_recieved = register_cvar("amx_bulletdamage_recieved","1")
}
public on_new_round() {
g_enabled = get_pcvar_num(g_type)
g_showrecieved = bool:get_pcvar_num(g_recieved)
}
public on_damage(id) {
if(g_enabled) {
static attacker; attacker = get_user_attacker(id)
static damage; damage = read_data(2)
new r = random(256)
new g = random(256)
new b = random(256)
if(g_showrecieved) {
set_hudmessage(255, 0, 0, g_locations[g_location[id]][0], g_locations[g_location[id]][1], 2, 0.1, 4.0, 0.1, 0.1, -1)
show_hudmessage(id, "%i^n", damage)
g_location[id] = ++g_location[id] % sizeof(g_locations)
}
if(is_user_connected(attacker)) {
switch(g_enabled) {
case 1: {
set_hudmessage(r, g, b, g_locations[g_location[attacker]][0], g_locations[g_location[attacker]][1], 2, 0.1, 4.0, 0.02, 0.02, -1)
show_hudmessage(attacker, "%i^n", damage)
g_location[attacker] = ++g_location[attacker] % sizeof(g_locations)
}
case 2: {
if(fm_is_ent_visible(attacker,id)) {
set_hudmessage(r, g, b, g_locations[g_location[attacker]][0], g_locations[g_location[attacker]][1], 2, 0.1, 4.0, 0.02, 0.02, -1)
show_hudmessage(attacker, "%i^n", damage)
g_location[attacker] = ++g_location[attacker] % sizeof(g_locations)
}
}
}
}
}
}