N
NiGaByte
Мне нужно каждый респавн выдавать игроку хилшот, при этом:
если выжил и есть не использованный то не выдавать.
Вот что я сделал поковыряв другие плагины, работает но криво:
Не знаю зачем я присобачил таймер, просто не знаю как по другому выдать шмотку, вот лог:
если выжил и есть не использованный то не выдавать.
Вот что я сделал поковыряв другие плагины, работает но криво:
PHP:
#include <sourcemod>
#include <sdktools>
public OnPluginStart()
{
HookEvent("player_spawn", Event_PlayerSpawn);
}
public Action:Event_PlayerSpawn(Handle:event, const String:name[], bool:dontBroadcast)
{
new iClient = GetClientOfUserId(GetEventInt(event, "userid"));
CreateTimer(0.25, GiveHealShot, iClient);
}
public Action:GiveHealShot(Handle:timer, any:iClient)
{
if(GetEntProp(iClient, Prop_Data, "m_iAmmo", _, 21) == 0)
{
GivePlayerItem(iClient, "weapon_healthshot");
}
}
public void OnMapStart()
{
int iFlags;
ConVar hCvar = FindConVar("ammo_item_limit_healthshot");
if (hCvar != null)
{
iFlags = hCvar.Flags;
iFlags &= ~FCVAR_CHEAT;
hCvar.Flags = iFlags;
}
hCvar = FindConVar("healthshot_health");
if (hCvar != null)
{
iFlags = hCvar.Flags;
iFlags &= ~FCVAR_CHEAT;
hCvar.Flags = iFlags;
}
}
Не знаю зачем я присобачил таймер, просто не знаю как по другому выдать шмотку, вот лог:
C-подобный:
L 08/30/2017 - 01:38:29: SourceMod error session started
L 08/30/2017 - 01:38:29: Info (map "de_dust2") (file "errors_20170830.log")
L 08/30/2017 - 01:38:29: [SM] Exception reported: Entity 3 (3) is invalid
L 08/30/2017 - 01:38:29: [SM] Blaming: my.smx
L 08/30/2017 - 01:38:29: [SM] Call stack trace:
L 08/30/2017 - 01:38:29: [SM] [0] GetEntProp
L 08/30/2017 - 01:38:29: [SM] [1] Line 17, C:\Users\NB\Desktop\server\csgo\addons\sourcemod\scripting\my.sp::GiveHealShot