He Grenade
1. Is there anyway i can add deathmessage to this plugin ?
2. I want the attacker which mean the Attacker holding He Grenade doesn't take damage from it own Grenade.
Codes:
PHP Code:
#include <amxmodx> #include <csx> #include <hamsandwich> new toggle_plugin,toggle_power,toggle_type, toggle_flash,toggle_shake,toggle_display, toggle_trail,trail_color; new g_MsgSync,g_trail,spower; public plugin_init() { register_plugin("Grenade Enhancer","1.2","anakin_cstrike"); toggle_plugin = register_cvar("grenade_enhancer","1"); toggle_flash = register_cvar("grenade_enhancer_screenflash","1"); toggle_display = register_cvar("grenade_enhancer_display","1"); toggle_trail = register_cvar("grenade_enhancer_trail","1"); toggle_shake = register_cvar("grenade_enhancer_shake","1"); toggle_power = register_cvar("grenade_enhancer_damage","700"); toggle_type = register_cvar("grenade_enhancer_damagetype","2"); trail_color = register_cvar("grenade_enhancer_trailcolor","255000000"); spower = get_pcvar_num(toggle_power); g_MsgSync = CreateHudSyncObj(); } public plugin_precache() g_trail = precache_model("sprites/smoke.spr"); public client_damage(attacker,victim,damage,wpnindex,hitplace,TA) { if(get_pcvar_num(toggle_plugin) != 1) return PLUGIN_CONTINUE; if(!attacker || !victim) return PLUGIN_CONTINUE; if(wpnindex != CSW_HEGRENADE) return PLUGIN_CONTINUE; switch(get_pcvar_num(toggle_type)) { case 0: user_slap(victim,spower,0); case 1: user_slap(victim,spower,1); case 2: user_slap(victim,spower,2); default: user_slap(victim,spower,2); } if(get_pcvar_num(toggle_flash) == 1) { if(is_user_connected(victim) && !is_user_bot(victim)) Fade(victim,255,0,0,170); } if(get_pcvar_num(toggle_shake) == 1) { if(is_user_connected(victim) && !is_user_bot(victim)) Shake(victim); } if(get_pcvar_num(toggle_display) == 1) { new sdamage = damage + spower; set_hudmessage(random(255),random(255),random(255), 0.03, 0.30, 0, 6.0, 12.0); ShowSyncHudMsg(victim,g_MsgSync,"%i",sdamage) } return PLUGIN_CONTINUE; } public grenade_throw(id,gid,wid) { if(get_pcvar_num(toggle_plugin) != 1) return PLUGIN_CONTINUE; if(get_pcvar_num(toggle_trail) != 1) return PLUGIN_CONTINUE; if(wid != CSW_HEGRENADE) return PLUGIN_CONTINUE; static r, g, b,color[10]; get_pcvar_string(trail_color, color, 9); new c = str_to_num(color); r = c / 1000000 c %= 1000000 g = c / 1000 b = c % 1000 Follow(gid,g_trail,10,5,r,g,b,195); return PLUGIN_CONTINUE; } Follow(entity,index,life,width,red,green,blue,alpha) { message_begin(MSG_BROADCAST, SVC_TEMPENTITY); write_byte(TE_BEAMFOLLOW); write_short(entity); write_short(index); write_byte(life); write_byte(width); write_byte(red); write_byte(green); write_byte(blue); write_byte(alpha); message_end(); } Fade(index,red,green,blue,alpha) { message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("ScreenFade"),{0,0,0},index); write_short(6<<10); write_short(5<<10); write_short(1<<12); write_byte(red); write_byte(green); write_byte(blue); write_byte(alpha); message_end(); } Shake(index) { message_begin(MSG_ONE,get_user_msgid("ScreenShake"),{0,0,0},index); write_short(1<<13); write_short(1<<13); write_short(1<<13); message_end(); }
|