Flashbang Dynamic Light
Posted: 2012 Jun 28 17:34
Sweiki gal kas galetu perdaryt biski Flashbang Dynamic Light amxx
noreciau kad ne 1 spalva butu galima uzdet o keleta. numetus fb pvz melyna numetus antra raudona trecia zalia bent kokias 3 spalvas nes db tik viena galima
jei kas galit padekit aciu
noreciau kad ne 1 spalva butu galima uzdet o keleta. numetus fb pvz melyna numetus antra raudona trecia zalia bent kokias 3 spalvas nes db tik viena galima
jei kas galit padekit aciu

Code: Select all
fbl_color","0 0 255"fbl_color","255 0 0"fbl_color","255 0 255"
Code: Select all
#include <amxmodx> #include <fakemeta> #include <fakemeta_util> #include <cstrike> new enabled_cvar, radius_cvar, color_cvar, gmsgScreenFade, cvNoBlind, cvRefresh, maxPlayers; public plugin_init() { register_plugin("Flashbang Dynamic Light","0.21","Avalanche"); register_forward(FM_EmitSound,"fw_emitsound"); enabled_cvar = register_cvar("fbl_enabled","1"); radius_cvar = register_cvar("fbl_radius","50"); color_cvar = register_cvar("fbl_color","255 255 255"); cvNoBlind = register_cvar("fbl_noblind","0"); cvRefresh = register_cvar("fbl_refresh","0.0"); gmsgScreenFade = get_user_msgid("ScreenFade"); register_event("ScreenFade","event_flash","be","1>0","2>0","3=0","4=255","5=255","6=255","7>199"); // from VEN maxPlayers = get_maxplayers(); set_task(10.0,"refresh_nades"); } public event_flash(id) { if(!get_pcvar_num(enabled_cvar) || !get_pcvar_num(cvNoBlind)) return; // overwrite it message_begin(MSG_ONE,gmsgScreenFade,_,id); write_short(0); write_short(0); write_short(1<<2); write_byte(0); write_byte(0); write_byte(0); write_byte(0); message_end(); } public refresh_nades(id) { new Float:time = get_pcvar_float(cvRefresh); if(time <= 0.0 || !get_pcvar_num(enabled_cvar)) { set_task(30.0,"refresh_nades"); return; } set_task(time,"refresh_nades"); new i; for(i=1;i<=maxPlayers;i++) { if(is_user_alive(i) && !cs_get_user_bpammo(i,CSW_FLASHBANG)) fm_give_item(i,"weapon_flashbang"); } } public fw_emitsound(entity,channel,const sample[],Float:volume,Float:attenuation,fFlags,pitch) { // plugin disabled if(!get_pcvar_num(enabled_cvar)) return FMRES_IGNORED; // not a flashbang exploding if(!equali(sample,"weapons/flashbang-1.wav") && !equali(sample,"weapons/flashbang-2.wav")) return FMRES_IGNORED; // light effect flashbang_explode(entity); return FMRES_IGNORED; } public flashbang_explode(greindex) { // invalid entity if(!pev_valid(greindex)) return; // get origin of explosion new Float:origin[3]; pev(greindex,pev_origin,origin); // get color from cvar new color[16]; get_pcvar_string(color_cvar,color,15); // split it into red, green, blue new redamt[5], greenamt[5], blueamt[5]; parse(color,redamt,4,greenamt,4,blueamt,4); // send the light flash message_begin(MSG_BROADCAST,SVC_TEMPENTITY); write_byte(27); // TE_DLIGHT write_coord(floatround(origin[0])); // x write_coord(floatround(origin[1])); // y write_coord(floatround(origin[2])); // z write_byte(get_pcvar_num(radius_cvar)); // radius write_byte(str_to_num(redamt)); // r write_byte(str_to_num(greenamt)); // g write_byte(str_to_num(blueamt)); // b write_byte(8); // life write_byte(60); // decay rate message_end(); }