Здравствуйте. Не пойму как переписывать оружие с ZP на Public. Смотрел видео и статьи, но везде что-то удалять, а как цену указывать (чтобы игрок мог покупать) не сказано.
Кто знает, помогите.
Исходник плагина супер авп, его надо как-то под паблик сделать, но ума не приложу как.
Код:
#include <amxmodx>
#include <fakemeta>
#include <cstrike>
#include <zombieplague>
#include <hamsandwich>
#include <fun>
#include <engine>
#include <fakemeta_util>
new g_DMG, cvar_DMG
new bool:g_HasDMG[33]
new cvar_green
new const v_model[] = "models/zombie_plague/v_sniper_awp.mdl"
new const p_model[] = "models/zombie_plague/p_sniper_awp.mdl"
public plugin_init()
{
register_plugin("[ZP] Extra Item: AWP", "1.1", "Strax")
g_DMG = zp_register_extra_item("AWP", 50, ZP_TEAM_HUMAN)
RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage")
register_event("CurWeapon", "check_weapon", "be", "1=1")
register_event("DeathMsg", "Death", "a")
RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1)
cvar_DMG = register_cvar("zp_dmg_awp", "10000")
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled")
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_Post", 1)
cvar_green = register_cvar ("zp_kit_glow_G", "255")
}
public zp_extra_item_selected(id, item)
{
if (item == g_DMG)
{
g_HasDMG[id] = true
fm_set_rendering(id, kRenderFxGlowShell, (cvar_green), kRenderNormal, 16);
strip_user_weapons(id)
give_item(id, "weapon_knife")
give_item(id, "weapon_awp")
client_print(id, print_chat, "[ZP] You have bought AWP SNIPER!")
}
}
public plugin_precache()
{
precache_model(v_model)
precache_model(p_model)
}
public check_weapon(id)
{
new curweapon = read_data(2)
if(get_user_weapon(id) == CSW_AWP && g_HasDMG[id])
{
if(curweapon == CSW_AWP)
{
set_pev(id, pev_viewmodel2, v_model)
set_pev(id, pev_weaponmodel2, p_model)
}
}
}
public client_connect(id)
{
g_HasDMG[id] = false
}
public client_disconnect(id)
{
g_HasDMG[id] = false
}
public Death()
{
g_HasDMG[read_data(2)] = false
}
public fwHamPlayerSpawnPost(id)
{
g_HasDMG[id] = false
}
public zp_user_infected_post(id)
{
if (zp_get_user_zombie(id))
{
g_HasDMG[id] = false
}
}
public fw_TakeDamage(victim, inflictor, attacker, Float:damage)
{
if (victim != attacker)
{
if(get_user_weapon(attacker) == CSW_AWP && g_HasDMG[attacker])
SetHamParamFloat(4, get_pcvar_float(cvar_DMG))
}
}
public fw_PlayerKilled(victim, attacker, shouldgib)
{
if (g_HasDMG[attacker] && get_user_weapon(attacker) == CSW_AWP)
{
SetHamParamInteger(3, 2)
static origin[3]
get_user_origin(victim, origin)
message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
write_byte(TE_LAVASPLASH)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2] - 26)
message_end()
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1066\\ f0\\ fs16 \n\\ par }
*/