// // WeaponDissolver 0.1 by Stabby@zmmapperz.net // Requirements: Eventscripts 1.5+ , ES_Tools 0.420c+ , Extendevents V4+ // // Description: // Dissolves weapon entities when a player dies or drops his weapon. // // http://www.zmmapperz.net // block load { es_xset weapon_dissolver_death 1 // If 1 dissolves weapons upon player death. es_xset weapon_dissolver_drop 1 // If 1 dissolves weapons when dropped. es_xset weapon_dissolver_time 3 // Delay in seconds before weapon is dissolved es_xset weapon_dissolver_effect 3 // Effect to use for dissolving weapons: // 1 = Weapon fades black, zaps away // 3 = HL2 effect est_regeventblock player_death "es_xdoblock weapondissolver/pre_death" es_xset dtype 0 es_xformatv dtype "dissolvetype %1" weapon_dissolver_effect } block pre_death { if (server_var(weapon_dissolver_death) == 1) do { es_xset userid_temp 0 es_xset weap_temp 0 est_geteventinfo userid_temp userid est_geteventinfo weap_temp weapon es_xset temp_wid1 0 es_xset temp_wid2 0 es_xset temp_primary 0 es_xset temp_secondary 0 es playerget primary temp_primary server_var(userid_temp) wid1 es playerget secondary temp_secondary server_var(userid_temp) wid2 es_xset temp_w1string 0 es_xset temp_w2string 0 es_xset temp_w1name 0 es_xset temp_w2name 0 es_xformatv temp_w1name "dw1_%1" wid1 es_xformatv temp_w2name "dw2_%1" wid2 es est_setentname server_var(wid1) server_var(temp_w1name) es est_setentname server_var(wid2) server_var(temp_w2name) es_delayed server_var(weapon_dissolver_time) es_give server_var(userid_temp) env_entity_dissolver es_delayed server_var(weapon_dissolver_time) es_fire server_var(userid_temp) env_entity_dissolver AddOutput "magnitude 1" es_delayed server_var(weapon_dissolver_time) es_fire server_var(userid_temp) env_entity_dissolver AddOutput server_var(dtype) es_delayed server_var(weapon_dissolver_time) es_fire server_var(userid_temp) env_entity_dissolver Dissolve server_var(temp_w1name) es_delayed server_var(weapon_dissolver_time) es_fire server_var(userid_temp) env_entity_dissolver Dissolve server_var(temp_w2name) es_delayed server_var(weapon_dissolver_time) es_delayed 0.05 es_xremove env_entity_dissolver } } event player_drop { if (server_var(weapon_dissolver_drop) == 1) do { es est_setentname event_var(index) "dwtemp" es_delayed server_var(weapon_dissolver_time) es_give event_var(userid) env_entity_dissolver es_delayed server_var(weapon_dissolver_time) es_fire event_var(userid) env_entity_dissolver AddOutput "magnitude 1" es_delayed server_var(weapon_dissolver_time) es_fire event_var(userid) env_entity_dissolver AddOutput server_var(dtype) es_delayed server_var(weapon_dissolver_time) es_fire event_var(userid) env_entity_dissolver Dissolve dwtemp es_delayed server_var(weapon_dissolver_time) es_delayed 0.05 es_xremove env_entity_dissolver } }