Senior Member
Join Date: Aug 2017
Location: Kyiv
|
03-18-2018
, 07:36
Re: Healthkit on dead body
|
#81
|
Hi.Tell me what value to put something to the first aid kit from a player with his murder,had NOT for HIM,and in the direction of somewhere?Toist ,something was flying at loss..
Thank You Very Much.
PHP Code:
#include <amxmodx>
#include <engine>
#include <fakemeta>
#include <fakemeta_util>
new const szModelKit[]="models/medkit_wc.mdl"
new const gMedKitClassname[]="kit_ent"
new gToggleKitEnable,gToggleGlowShow,gGMsgFade,gToggleFadeEnable
new gToggleDelRespawn,gKitPickMode,gKitHPCvar,gLimitHPCvar,gGMsgItemPickup
public plugin_init()
{
register_plugin("Death Medkit Drop","4.2","tuty; 731; Midnight Kid")
register_event("DeathMsg","dropkit","a")
register_logevent("logevent",2,"1=Round_Start")
register_touch("kit_ent","player","forward_FM_Touch")
gToggleKitEnable=register_cvar("kit_enable","1")
gToggleGlowShow=register_cvar("kit_glow","0")
gToggleFadeEnable=register_cvar("kit_fade","1")
gToggleDelRespawn=register_cvar("kit_del","1")
gKitPickMode=register_cvar("kit_pick","0")
gKitHPCvar=register_cvar("kit_hp","15")
gLimitHPCvar=register_cvar("kit_limit_hp","200")
gGMsgFade=get_user_msgid("ScreenFade")
}
public plugin_precache()
{
precache_model(szModelKit)
}
public dropkit()
{
if(!get_pcvar_num(gToggleKitEnable))
{
return PLUGIN_HANDLED
}
new gVic=read_data(2)
static Float:flOrigin[3]
pev(gVic,pev_origin,flOrigin)
new ent=engfunc(EngFunc_CreateNamedEntity,engfunc(EngFunc_AllocString,"info_target"))
flOrigin[2]-=36
engfunc(EngFunc_SetOrigin,ent,flOrigin)
if(!pev_valid(ent))
{
return PLUGIN_HANDLED
}
set_pev(ent,pev_classname,gMedKitClassname)
set_pev(ent, pev_sequence, 1)
set_pev(ent, pev_framerate, 1.0)
engfunc(EngFunc_SetModel,ent,szModelKit)
dllfunc(DLLFunc_Spawn,ent)
set_pev(ent,pev_solid,SOLID_TRIGGER)
set_pev(ent,pev_movetype,MOVETYPE_NONE)
engfunc(EngFunc_SetSize,ent,Float:{-23.160000,-13.660000,-0.050000},Float:{11.470000,12.780000,6.720000})
engfunc(EngFunc_DropToFloor,ent)
new KitPick=get_pcvar_num(gKitPickMode)
new Vic=get_user_team(gVic)
if(get_pcvar_num(gToggleGlowShow))
{
switch(KitPick)
{
case 0:
{
fm_set_rendering(ent,kRenderFxGlowShell,255,255,255,kRenderFxNone,27)
}
case 1:
{
switch(Vic)
{
case 1:
{
fm_set_rendering(ent,kRenderFxGlowShell,0,0,255,kRenderFxNone,27)
entity_set_int(ent,EV_INT_team,1)
}
case 2:
{
fm_set_rendering(ent,kRenderFxGlowShell,255,0,0,kRenderFxNone,27)
entity_set_int(ent,EV_INT_team,2)
}
}
}
case 2:
{
switch(Vic)
{
case 1:
{
fm_set_rendering(ent,kRenderFxGlowShell,255,0,0,kRenderFxNone,27)
entity_set_int(ent,EV_INT_team,1)
}
case 2:
{
fm_set_rendering(ent,kRenderFxGlowShell,0,0,255,kRenderFxNone,27)
entity_set_int(ent,EV_INT_team,2)
}
}
}
}
}
return PLUGIN_HANDLED
}
public forward_FM_Touch(ent,id)
{
if(!pev_valid(ent)||!get_pcvar_num(gToggleKitEnable))
{
return FMRES_IGNORED
}
new KitPick=get_pcvar_num(gKitPickMode)
new own_team=get_user_team(id)
new find_team=entity_get_int(ent,EV_INT_team)
switch(KitPick)
{
case 1:
{
if(find_team==own_team)
{
return FMRES_IGNORED
}
}
case 2:
{
if(find_team!=own_team)
{
return FMRES_IGNORED
}
}
}
new szClassname[32]
pev(ent,pev_classname,szClassname,charsmax(szClassname))
if(!equal(szClassname,gMedKitClassname))
{
return FMRES_IGNORED
}
new userHP=get_user_health(id)
new cvarHP=get_pcvar_num(gKitHPCvar)
new maxHP=get_pcvar_num(gLimitHPCvar)
if(userHP>=maxHP)
{
return FMRES_IGNORED
}
if(maxHP-userHP<cvarHP&&maxHP-userHP>0)
{
fm_set_user_health(id,maxHP)
}
else
{
fm_set_user_health(id,userHP+cvarHP)
}
client_cmd(id, "spk sound/items/smallmedkit1.wav")
if(get_pcvar_num(gToggleFadeEnable))
{
if(KitPick==0)
{
message_begin(MSG_ONE_UNRELIABLE,gGMsgFade,_,id)
write_short(1<<10)
write_short(1<<10)
write_short(0x0000)
write_byte(200)
write_byte(150)
write_byte(0)
write_byte(75)
message_end()
}
if(KitPick==1||KitPick==2)
{
switch(own_team)
{
case 1:
{
message_begin(MSG_ONE_UNRELIABLE,gGMsgFade,_,id)
write_short(1<<10)
write_short(1<<10)
write_short(0x0000)
write_byte(255)
write_byte(150)
write_byte(0)
write_byte(75)
message_end()
}
case 2:
{
message_begin(MSG_ONE_UNRELIABLE,gGMsgFade,_,id)
write_short(1<<10)
write_short(1<<10)
write_short(0x0000)
write_byte(255)
write_byte(150)
write_byte(0)
write_byte(75)
message_end()
}
}
}
}
engfunc(EngFunc_RemoveEntity,ent)
if(KitPick==0)
{
return PLUGIN_CONTINUE
}
return FMRES_IGNORED
}
public logevent()
{
if(get_pcvar_num(gToggleDelRespawn))
{
new entity=FM_NULLENT
while((entity=fm_find_ent_by_class(entity,gMedKitClassname)))
{
engfunc(EngFunc_RemoveEntity,entity)
}
}
}
stock UTIL_Send_PickMess(const id,const szItemName[])
{
message_begin(MSG_ONE_UNRELIABLE,gGMsgItemPickup,_,id)
write_string(szItemName)
message_end()
}
|
|