santazx
Участник
- Сообщения
- 23
- Реакции
- 5
Всем добрый вечер или ночи, на днях задумал реализовать плагин гибсов для нпц.
Смысл одинаковый и в итоге остановился на одном моменте.
Есть npc_zombie и нужно хукнуть правильно.
Я сделал набросок попутно смотря по интернету что и по чем в pawno scripts. :beer:
Но работает не правильно, часть гибса вылетает над моим персонажем.
Подскажите как решить проблему, в долгу не останусь знаю здесь есть толковые люди. :)
Смысл одинаковый и в итоге остановился на одном моменте.
Есть npc_zombie и нужно хукнуть правильно.
Я сделал набросок попутно смотря по интернету что и по чем в pawno scripts. :beer:
PHP:
#include <sourcemod>
#include <sdktools>
new g_iMaxClients;
public OnPluginStart()
{
HookEvent("player_spawn", PlayerSpawn_Event, EventHookMode_Pre);
HookEntityOutput("npc_zombie", "OnDeath", EntityOutput:OnEntityOutPut)
}
public Action:PlayerSpawn_Event(Handle:event, const String:name[], bool:dontBroadcast)
{
g_iMaxClients = GetClientOfUserId(GetEventInt(event,"userid"));
return Plugin_Handled;
}
public OnMapStart()
{
//Clients
//g_iMaxClients = GetMaxClients();
//Gibs:
PrecacheModel("models/player/Gibs/female_01_head.mdl", true);
}
public OnEntityOutPut(const String:output[], caller, activator, Float:delay)
{
new ent = CreateEntityByName("prop_physics")
//for (new i = 1; i <= g_iMaxClients; i++) {
if (IsValidEntity(ent))
{
SetEntityModel(ent, "models/player/Gibs/female_01_head.mdl")
new Float:origin[3]
GetClientAbsOrigin(g_iMaxClients/*i*/, origin)
origin[2] += 100
DispatchKeyValueVector(ent, "origin", origin)
DispatchKeyValue(ent, "targetname", "!activator")
DispatchKeyValue(ent, "spawnflags", "256")
DispatchSpawn(ent)
SetEntityMoveType(ent, MOVETYPE_FLY)
}
PrintToChatAll("output=%s, caller=%d, activator=%d",output, caller, activator)
//}
}
Подскажите как решить проблему, в долгу не останусь знаю здесь есть толковые люди. :)