[SM] Не удалось найти переменную fog_enable - CSS OBsm_cvar fog_enable 0 ?
#include <sourcemod>
#include <sdktools_entinput>
#include <sdktools_functions>
//new String:fogEntities[][] = { "env_fog_controller" }; // env_particlelight env_smokestack
new bool:b_fogs = true;
public OnPluginStart()
{
new Handle:cvar;
HookConVarChange((cvar = CreateConVar("sm_disfog_enable", "1", "Включить плагин", 0, true, 0.0, true, 1.0)), Cvar_b_fogs);
b_fogs = GetConVarBool(cvar);
RegAdminCmd("sm_disfog", FogOn, ADMFLAG_ROOT);
HookEvent("round_start", Event_OnRoundStart);
AutoExecConfig(true, "sm_disfog");
}
public OnMapStart()
{
if (b_fogs)
{
DisableFog1();
}
}
public Cvar_b_fogs(Handle:cvar, const String:oldvalue[], const String:newvalue[])
{
b_fogs = GetConVarBool(cvar);
}
public Action:FogOn(client, args)
{
if (b_fogs)
{
DisableFog1();
DisableFog2();
}
return Plugin_Handled;
}
public Event_OnRoundStart(Handle:event, const String:name[], bool:dontBroadcast)
{
if (b_fogs)
{
DisableFog2();
}
}
DisableFog1()
{
new maxEntities = GetMaxEntities();
decl String:SerComm[32];
for (new j = MaxClients; j < maxEntities; j++)
{
if (IsValidEdict(j) && IsValidEntity(j) && GetEdictClassname(j, SerComm, sizeof(SerComm)))
{
if (StrEqual(SerComm, "env_fog_controller"))
{
AcceptEntityInput(j, "TurnOff");
}
}
}
}
DisableFog2()
{
new maxEntities = GetMaxEntities();
decl String:SerComm[32];
for (new i = MaxClients; i < maxEntities; i++)
{
if (IsValidEdict(i) && IsValidEntity(i) && GetEdictClassname(i, SerComm, sizeof(SerComm)))
{
if (StrEqual(SerComm, "func_smokevolume") || StrEqual(SerComm, "func_dustmotes"))
{
AcceptEntityInput(i, "Kill");
//RemoveEdict(i);
}
}
}
}
Его и нет.env_fog_controller
Hook на round_start не нужен
Всмысле нету ?HookEvent("round_start", Event_OnRoundStart);
Тоже самое.А fog_override ?
--- Добавлено позже ---
@DarklSide, env_fog_controller
Hook на round_start не нужен
Падает сервер при заходе.Его и нет.
Ничего не происходитПопробуй на локальном сервере:
ent_fire env_fog_controller TurnOff
--- Добавлено позже ---
@DarklSide, Вопрос просто был о тумане, подумал не то)
--- Добавлено позже ---
А вообще возможно то, что туман взаимодействует через sky_camera
Бесподобно! Спасибо))
1.Первый скрин с вашим плагином !@Kaptain,
PHP:#include <sourcemod> #include <sdktools_entinput> #include <sdktools_functions> //new String:fogEntities[][] = { "env_fog_controller" }; // env_particlelight env_smokestack new bool:b_fogs = true; public OnPluginStart() { new Handle:cvar; HookConVarChange((cvar = CreateConVar("sm_disfog_enable", "1", "Включить плагин", 0, true, 0.0, true, 1.0)), Cvar_b_fogs); b_fogs = GetConVarBool(cvar); RegAdminCmd("sm_disfog", FogOn, ADMFLAG_ROOT); HookEvent("round_start", Event_OnRoundStart); AutoExecConfig(true, "sm_disfog"); } public OnMapStart() { if (b_fogs) { DisableFog1(); } } public Cvar_b_fogs(Handle:cvar, const String:oldvalue[], const String:newvalue[]) { b_fogs = GetConVarBool(cvar); } public Action:FogOn(client, args) { if (b_fogs) { DisableFog1(); DisableFog2(); } return Plugin_Handled; } public Event_OnRoundStart(Handle:event, const String:name[], bool:dontBroadcast) { if (b_fogs) { DisableFog2(); } } DisableFog1() { new maxEntities = GetMaxEntities(); decl String:SerComm[32]; for (new j = MaxClients; j < maxEntities; j++) { if (IsValidEdict(j) && IsValidEntity(j) && GetEdictClassname(j, SerComm, sizeof(SerComm))) { if (StrEqual(SerComm, "env_fog_controller")) { AcceptEntityInput(j, "TurnOff"); } } } } DisableFog2() { new maxEntities = GetMaxEntities(); decl String:SerComm[32]; for (new i = MaxClients; i < maxEntities; i++) { if (IsValidEdict(i) && IsValidEntity(i) && GetEdictClassname(i, SerComm, sizeof(SerComm))) { if (StrEqual(SerComm, "func_smokevolume") || StrEqual(SerComm, "func_dustmotes")) { AcceptEntityInput(i, "Kill"); //RemoveEdict(i); } } } }
Последнее редактирование - давно, отправил без изменений.
я уже скриншоти скинул что такая проблема есть на миду@DarklSide, Ну, как сказать..Не работает) На том же dd2 если за CT выйти в мид - дымка есть, заходишь на Б - дымка есть.