/* Silver Bullets */ damage_faktor = register_cvar("zp_silver_bullets_damage_factor", "5.0") g_silver_bullets_cost = register_cvar("zp_silver_bullets_cost", "40")
I cena sie zmieniła, lecz obrazenia nie... proszę tutaj daje cały plugin i proszę o pomoc ;(
/* [ZP] Extra Item : Silver Bullets ( ability for Humans ) by Fry! & SnoW Description : When You will buy these Silver Bullets ammos will be different and will be able to do screen shake as well, You will create more damage to victim (can change by cvar). Cvars : - Silver Bullets zp_silver_bullets_damage_factor "1.5" - How much damage bullets will do. zp_silver_bullets_cost "13" - How much Silver Bullets will cost. Credits : SnoW - for his Silver bullets plugin! <img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/wink.gif' class='bbc_emoticon' alt=';)' /> Changelog : 08/01/2009 - v1.0 - First release */ #include <amxmodx> #include <fakemeta> #include <hamsandwich> #include <zombieplague> #define PLUGIN "[ZP] Extra Item : Magic Bullets" #define VERSION "1.0.3" #define AUTHOR "Fry! & SnoW" #define LAST 0 #define FULL 1 new m_spriteTexture new damage_factor new fov_value, shake_value new has_sbullets[33], last_bullet[33] new g_item_name1[] = "Silver Bullets" new g_itemid_silverb, g_silver_bullets_cost public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_cvar("zp_extra_magic_bullets",VERSION,FCVAR_SERVER|FCVAR_EXTDLL|FCVAR_UNLOGGED|FCVAR_SPONLY) fov_value = get_user_msgid("SetFOV") shake_value = get_user_msgid ("ScreenShake") /* Silver Bullets */ damage_factor = register_cvar("zp_silver_bullets_damage_factor", "5.0") g_silver_bullets_cost = register_cvar("zp_silver_bullets_cost", "40") g_itemid_silverb = zp_register_extra_item(g_item_name1, get_pcvar_num(g_silver_bullets_cost), ZP_TEAM_HUMAN) register_forward(FM_PlayerPreThink, "PreThink") RegisterHam(Ham_TakeDamage, "player", "Damage") RegisterHam(Ham_Spawn, "player", "Spawn", 1) } public plugin_precache() { m_spriteTexture = precache_model("sprites/dot.spr") } public PreThink(id) { if(!is_user_alive(id)) return FMRES_IGNORED new weapon, clip, ammo weapon = get_user_weapon(id,clip,ammo) if(~pev(id, pev_button) & IN_ATTACK || weapon == 13 || clip == 0 || clip == last_bullet[id]) return FMRES_IGNORED last_bullet[id] = clip if(has_sbullets[id]) bullet_effect(id, 0) return FMRES_IGNORED } public zp_extra_item_selected(player, itemid) { if(itemid == g_itemid_silverb) { new ammo_packs = zp_get_user_ammo_packs(player); new price = get_pcvar_num(g_silver_bullets_cost); if(ammo_packs > price) { zp_set_user_ammo_packs(player, ammo_packs - price) has_sbullets[player] = 1 client_print(player, print_chat, "[ZP] You just bought Silver Bullets. Just reload and go!") } else client_print(player, print_chat, "[ZP] You don't have enough ammo packs to buy Silver Bullets."); } } public Damage(id, inflictor, attacker, Float:damage, Damage_d) { if(~Damage_d & DMG_BULLET) if(0 < attacker < 33 && has_sbullets[attacker]) { SetHamParamFloat(4, damage * get_pcvar_float(damage_factor)) fov_shake(id) } return HAM_HANDLED } public Spawn(id) { if(is_user_alive(id)) has_sbullets[id] = 0 return HAM_HANDLED } public bullet_effect(id, num) { new k_origin[3] new v_origin[3] get_user_origin(id,k_origin, 1) get_user_origin(id,v_origin, 4) message_begin(MSG_ONE, SVC_TEMPENTITY,{0,0,0}, id) write_byte(0) write_coord(k_origin[0]) write_coord(k_origin[1]) write_coord(k_origin[2]) //origins -> write_coord(v_origin[0]) write_coord(v_origin[1]) write_coord(v_origin[2]) //origins <- write_short( m_spriteTexture ) write_byte(1) // framestart write_byte(1) // framerate write_byte(1) // life in 0.1's write_byte(5) // width write_byte(0) // noise write_byte(255) // r, g, b write_byte(255) // r, g, b write_byte(255) // r, g, b write_byte(100) // brightness write_byte(0) // speed message_end() } public fov_shake(id) { message_begin(MSG_ONE, fov_value, {0,0,0}, id) write_byte(fov_value + 4) message_end() message_begin( MSG_ONE, shake_value, { 0, 0, 0 }, id) write_short(1<<14) write_short(1<<12) write_short(1<<14) message_end() set_task(0.4, "un_fov", id) } public un_fov(id) { message_begin(MSG_ONE, fov_value, {0,0,0}, id) write_byte(fov_value) message_end() }
2. A jak sie nie da to mógłby ktoś przerobić plugin w załączniku, że nie ma srebrnej amunicji tylko jest sama Zatruta.