slot3: добавить строку FakeClientCommand(i, "slot3");#include <cstrike>
#include <sdktools_entinput>
#include <sdktools_functions>
enum
{
Slot_Primary = 0,
Slot_Secondary,
Slot_Knife,
Slot_Grenade,
Slot_C4,
Slot_None
};
public void OnPluginStart()
{
HookEvent("round_end", Event_RoundEnd, EventHookMode_PostNoCopy);
}
public void Event_RoundEnd(Event hEvent, const char[] sEvName, bool bDontBroadcast)
{
for(int i = 1, j, wpn; i <= MaxClients; ++i) if(IsClientInGame(i) && IsPlayerAlive(i))
{
for(j = Slot_Primary; j < Slot_None; j++)
{
while((wpn = GetPlayerWeaponSlot(i, j)) != -1)
{
if(RemovePlayerItem(i, wpn))
{
#if SOURCEMOD_V_MAJOR < 2 && SOURCEMOD_V_MINOR < 10
AcceptEntityInput(wpn, "Kill");
#else
RemoveEntity(wpn);
#endif
}
}
}
GivePlayerItem(i, "weapon_knife");
FakeClientCommand(i, "slot3");
}
}
отдельным плагином?
public void OnPluginStart()
{
HookEvent("round_end", Event_End, EventHookMode_PostNoCopy);
}
public void Event_End(Event event, const char[] name, bool dontBroadcast)
{
for(int i = 1; i <= MaxClients; ++i) if(IsClientInGame(i) && IsPlayerAlive(i)) FakeClientCommand(i, "slot3");
}
переключаетно 2 плагин не переключает на третий слот
public void OnPluginStart()
{
HookEvent("round_end", Event_End, EventHookMode_PostNoCopy);
}
public void Event_End(Event event, const char[] name, bool dontBroadcast)
{
RequestFrame(RequestFrame_Callback);
}
public void RequestFrame_Callback(any data)
{
for(int i = 1; i <= MaxClients; ++i) if(IsClientInGame(i) && IsPlayerAlive(i)) FakeClientCommand(i, "slot3");
}
#include <sdktools_functions>
public void OnPluginStart()
{
HookEvent("round_end", Event_End, EventHookMode_PostNoCopy);
}
public void Event_End(Event event, const char[] name, bool dontBroadcast)
{
RequestFrame(RequestFrame_Callback);
}
public void RequestFrame_Callback(any data)
{
for(int i = 1, wpn; i <= MaxClients; ++i)
if(IsClientInGame(i) && IsPlayerAlive(i) && (wpn = GetPlayerWeaponSlot(i, 3)) !=-1)
EquipPlayerWeapon(i, wpn);
}
Grey83, я бы сделал так: SetEntPropEnt(i, Prop_Send, "m_hActiveWeapon", GetPlayerWeaponSlot(i, 2));значит заблочено выполнение этой команды в CS:GO не игроком.