if(ZedTimeGoing == true) return;
StripAndChangeServerConVarInt("nb_blind", 1);
StripAndChangeServerConVarInt("nb_stop", 1);
ZedTimeGoing = true;
CPrintToChatAll("{red}【世界】\x03在开启状态下 时间流失更变0.3倍!所有电脑控制的丧尸、特感会放慢或停止活动。");
decl i_Ent ;
i_Ent = CreateEntityByName("func_timescale");
DispatchKeyValue(i_Ent, "desiredTimescale", "0.3");
DispatchKeyValue(i_Ent, "acceleration", "2.0");
DispatchKeyValue(i_Ent, "minBlendRate", "1.0");
DispatchKeyValue(i_Ent, "blendDeltaMultiplier", "2.0");
DispatchSpawn(i_Ent);
AcceptEntityInput(i_Ent, "Start");
for(new i = 1; i <= GetMaxClients(); i++)
{
if(!IsClientInGame(i))
continue;
if(GetEntProp(i, Prop_Send, "m_zombieClass") != 8 && GetClientTeam(i) != 2)
{
SetEntPropFloat(i, Prop_Data, "m_flLaggedMovementValue", 0.2);
FreezePlayer(i);
} if (GetClientTeam(i) == 2)
{
ScreenFade(i, 230, 210, 50, 150, 1000, 1);
}
}
decl i_Ent, Handle:h_pack;
i_Ent = CreateEntityByName("func_timescale");
DispatchKeyValue(i_Ent, "desiredTimescale", "1.0");
DispatchKeyValue(i_Ent, "acceleration", "2.0");
DispatchKeyValue(i_Ent, "minBlendRate", "1.0");
DispatchKeyValue(i_Ent, "blendDeltaMultiplier", "2.0");
DispatchSpawn(i_Ent);
AcceptEntityInput(i_Ent, "Start");
h_pack = CreateDataPack();
WritePackCell(h_pack, i_Ent);
ResetPack(h_pack, false);
i_Ent = ReadPackCell(h_pack);
CloseHandle(h_pack);
if(IsValidEdict(i_Ent))
{
AcceptEntityInput(i_Ent, "Stop");
StripAndChangeServerConVarInt("nb_blind", 0);
StripAndChangeServerConVarInt("nb_stop", 0);
StripAndChangeServerConVarInt("sv_infinite_ammo", 0);
ZedTimeGoing = false;
for(new i = 1; i <= GetMaxClients(); i++)
{
if(!IsClientInGame(i))
continue;
if (IsPlayerAlive(i))
{
SetEntPropFloat(i, Prop_Data, "m_flLaggedMovementValue", 1.0);
DefrostPlayer(i);
ScreenFade(i, 201, 123, 0, 147, 1234, 1);
}
}
}else
{
PrintToServer("[SM] i_Ent is not a valid edict!");
}