added functionality to check the map on a bunch of map specific plugins. this way we dont have to load/unload plugins that usually causes slow map changes or even causes crashes. momsurffix was compiled with sourcemod 1.11

This commit is contained in:
2024-08-04 16:56:23 +02:00
parent 0e5cc3175c
commit a296dd400c
8 changed files with 1575 additions and 882 deletions
+9 -9
View File
@@ -30,7 +30,7 @@ public int GetEntityIndexByName(const char[] name, const char[] classname){
return -1;
}
public int FindEntityByClassnameWithin(int startEnt, const char[] classname, const float[3] origin, const float radius){ //Tested. Works properly.
public int FindEntityByClassnameWithin(int startEnt, const char[] classname, const float origin[3], const float radius){ //Tested. Works properly.
float torigin[3];
while((startEnt = FindEntityByClassname(startEnt,classname))!= -1){
GetOrigin(startEnt, torigin);
@@ -39,7 +39,7 @@ public int FindEntityByClassnameWithin(int startEnt, const char[] classname, con
return -1;
}
public float TraceLine(const float[3] origin, const float[3] v2, int entity){ //Tested. Works properly
public float TraceLine(const float origin[3], const float v2[3], int entity){ //Tested. Works properly
Handle trace = TR_TraceRayFilterEx(origin, v2, CONTENTS_SOLID, RayType_EndPoint, TraceEntityFilterSelf, entity);
float pos[3], dist = 1.0;
if(TR_DidHit(trace)){
@@ -55,27 +55,27 @@ public bool TraceEntityFilterSelf(int entity, int contentsMask, any data)
return (data != entity && entity > 64);
}
public void GetOrigin(int entity, float[3] buffer){ //Tested. Works properly.
public void GetOrigin(int entity, float buffer[3]){ //Tested. Works properly.
if(IsValidEntity(entity))
GetEntPropVector(entity, Prop_Send, "m_vecOrigin", buffer);
}
public void GetAngles(int entity, float[3] buffer){ //Gives you wrong values after spawn it via env_entity_maker
public void GetAngles(int entity, float buffer[3]){ //Gives you wrong values after spawn it via env_entity_maker
if(IsValidEntity(entity))
GetEntPropVector(entity, Prop_Send, "m_angRotation", buffer);
}
public void SetAngles(int entity, const float[3] buffer){ //Tested. Works properly.
public void SetAngles(int entity, const float buffer[3]){ //Tested. Works properly.
if(IsValidEntity(entity))
TeleportEntity(entity, NULL_VECTOR, buffer, NULL_VECTOR);
}
public void SetOrigin(int entity, const float[3] buffer){ //Tested. Works properly.
public void SetOrigin(int entity, const float buffer[3]){ //Tested. Works properly.
if(IsValidEntity(entity))
TeleportEntity(entity, buffer, NULL_VECTOR, NULL_VECTOR);
}
public void GetForwardVector(int entity, float[3] buffer) //Tested. Works properly.
public void GetForwardVector(int entity, float buffer[3]) //Tested. Works properly.
{
if(IsValidEntity(entity))
{
@@ -85,7 +85,7 @@ public void GetForwardVector(int entity, float[3] buffer) //Tested. Works proper
}
}
public void SetForwardVector(int entity, const float[3] buffer) //Tested. Works properly.
public void SetForwardVector(int entity, const float buffer[3]) //Tested. Works properly.
{
if(IsValidEntity(entity))
{
@@ -134,4 +134,4 @@ public Action InputDelay(Handle timer, DataPack data)
SetVariantString(parametr);
AcceptEntityInput(target, input, activator);
}
}
}
@@ -208,7 +208,7 @@ const float DEFAULT_PER_FRAME_MAX_VEL_DELTA = 0.0003333; // 2.0 / (120.0 * 50.0)
const float DEFAULT_PER_FRAME_MAX_ACC_DELTA = 0.0000125; // 0.075 / (120.0 * 50.0);
#define PI 3.14159
public bool SphereCollideWithWorld(const float[3] orig, const float radius, float degree, float[3] buffer, int entity)
public bool SphereCollideWithWorld(const float orig[3], const float radius, float degree, float buffer[3], int entity)
{
float inc = PI / degree;
@@ -371,22 +371,22 @@ methodmap Eye < Basic
}
}
public void GetVel(float[3] vel)
public void GetVel(float vel[3])
{
this.GetVector("vVel", vel);
}
public void SetVel(const float[3] vel)
public void SetVel(const float vel[3])
{
this.SetVector("vVel", vel);
}
public void GetAcc(float[3] acc)
public void GetAcc(float acc[3])
{
this.GetVector("vAcc", acc);
}
public void SetAcc(const float[3] acc)
public void SetAcc(const float acc[3])
{
this.SetVector("vAcc", acc);
}
@@ -565,4 +565,4 @@ methodmap Eye < Basic
}
}
}
}
+4 -5
View File
@@ -12,14 +12,14 @@
#define SPEED_FORWARD 1.0
#define SPEED_TURNING 0.5
stock float FloatMod(float num, float denom)
stock float FloatMod1(float num, float denom)
{
return num - denom * RoundToFloor(num / denom);
}
stock float operator%(float oper1, float oper2)
{
return FloatMod(oper1, oper2);
return FloatMod1(oper1, oper2);
}
public bool IsValidPlayer(int player)
@@ -27,7 +27,7 @@ public bool IsValidPlayer(int player)
return player >= 1 && player <= 64 && IsValidEntity(player) && IsPlayerAlive(player);
}
public float GetDistance(const float[3] v1, const float[3] v2)
public float GetDistance(const float v1[3], const float v2[3])
{
return SquareRoot((v1[0] - v2[0]) * (v1[0] - v2[0]) + (v1[1] - v2[1]) * (v1[1] - v2[1]) + (v1[2] - v2[2]) * (v1[2] - v2[2]));
}
@@ -130,9 +130,8 @@ methodmap MovingNpc < Basic
}
}
public float GetTargetYaw(const float[3] start, const float[3] target)
public float GetTargetYaw(const float start[3], const float target[3])
{
float yaw = 0.00;
float v[3];
SubtractVectors(start, target, v);
+98 -102
View File
@@ -36,83 +36,77 @@ public void OnMapStart()
HookEvent("round_end", OnRoundEnd, EventHookMode_PostNoCopy);
g_aEyes = new ArrayList();
}
else
{
char sFilename[256];
GetPluginFilename(INVALID_HANDLE, sFilename, sizeof(sFilename));
ServerCommand("sm plugins unload %s", sFilename);
}
}
public void OnRoundStart(Event event, const char[] name, bool dontBroadcast)
{
if(!bValidMap)
return;
g_Chess = new Chess(GetEntityIndexByName("GreenStart", "path_track"), GetEntityIndexByName("GreenEnd", "path_track"),
GetEntityIndexByName("PurpleStart", "path_track"), GetEntityIndexByName("PurpleEnd", "path_track"));
int tmp = GetEntityIndexByName("GreenEnd", "path_track");
if(bValidMap)
{
g_Chess = new Chess(GetEntityIndexByName("GreenStart", "path_track"), GetEntityIndexByName("GreenEnd", "path_track"),
GetEntityIndexByName("PurpleStart", "path_track"), GetEntityIndexByName("PurpleEnd", "path_track"));
int tmp = GetEntityIndexByName("GreenEnd", "path_track");
HookSingleEntityOutput(tmp, "OnPass", OnGreenEndPass);
tmp = GetEntityIndexByName("PurpleEnd", "path_track");
HookSingleEntityOutput(tmp, "OnPass", OnGreenEndPass);
tmp = GetEntityIndexByName("PurpleEnd", "path_track");
HookSingleEntityOutput(tmp, "OnPass", OnPurpleEndPass);
tmp = GetEntityIndexByHammerID(92835, "func_button");
HookSingleEntityOutput(tmp, "OnPass", OnPurpleEndPass);
tmp = GetEntityIndexByHammerID(92835, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton1);
tmp = GetEntityIndexByHammerID(92838, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton1);
tmp = GetEntityIndexByHammerID(92838, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton2);
tmp = GetEntityIndexByHammerID(92841, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton2);
tmp = GetEntityIndexByHammerID(92841, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton3);
tmp = GetEntityIndexByHammerID(92844, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton3);
tmp = GetEntityIndexByHammerID(92844, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton4);
tmp = GetEntityIndexByHammerID(92850, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton4);
tmp = GetEntityIndexByHammerID(92850, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton5);
tmp = GetEntityIndexByHammerID(92847, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton6);
tmp = GetEntityIndexByHammerID(92853, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton5);
tmp = GetEntityIndexByHammerID(92847, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton6);
tmp = GetEntityIndexByHammerID(92853, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton7);
tmp = GetEntityIndexByHammerID(92856, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton7);
tmp = GetEntityIndexByHammerID(92856, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton8);
tmp = GetEntityIndexByHammerID(92013, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPurpleButton8);
tmp = GetEntityIndexByHammerID(92013, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton1);
tmp = GetEntityIndexByHammerID(92084, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton1);
tmp = GetEntityIndexByHammerID(92084, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton2);
tmp = GetEntityIndexByHammerID(91906, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton2);
tmp = GetEntityIndexByHammerID(91906, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton3);
tmp = GetEntityIndexByHammerID(92081, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton3);
tmp = GetEntityIndexByHammerID(92081, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton4);
tmp = GetEntityIndexByHammerID(92016, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton4);
tmp = GetEntityIndexByHammerID(92016, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton5);
tmp = GetEntityIndexByHammerID(92075, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton5);
tmp = GetEntityIndexByHammerID(92075, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton6);
tmp = GetEntityIndexByHammerID(89814, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton6);
tmp = GetEntityIndexByHammerID(89814, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton7);
tmp = GetEntityIndexByHammerID(92046, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton7);
tmp = GetEntityIndexByHammerID(92046, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton8);
tmp = GetEntityIndexByHammerID(89040, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnGreenButton8);
tmp = GetEntityIndexByHammerID(89040, "func_button");
HookSingleEntityOutput(tmp, "OnPressed", OnPressedTrig, true);
tmp = GetEntityIndexByHammerID(490936, "trigger_push");
HookSingleEntityOutput(tmp, "OnPressed", OnPressedTrig, true);
tmp = GetEntityIndexByHammerID(490936, "trigger_push");
HookSingleEntityOutput(tmp, "OnStartTouch", OnPushTrigger);
tmp = GetEntityIndexByHammerID(445713, "trigger_push");
HookSingleEntityOutput(tmp, "OnStartTouch", OnPushTrigger);
tmp = GetEntityIndexByHammerID(445713, "trigger_push");
HookSingleEntityOutput(tmp, "OnStartTouch", OnPushTrigger2);
HookSingleEntityOutput(tmp, "OnStartTouch", OnPushTrigger2);
}
}
public void OnPushTrigger2(const char[] output, int caller, int activator, float delay)
@@ -304,29 +298,30 @@ public void OnPurpleEndPass(const char[] output, int caller, int activator, floa
public void OnEntitySpawned(int entity, const char[] classname)
{
if(!bValidMap)
return;
if(IsValidEntity(entity))
{
if(strcmp(classname, "func_breakable") == 0)
{
char sName[128];
GetEntPropString(entity, Prop_Data, "m_iName", sName, sizeof(sName));
if(!sName[0])
return;
int pos = FindCharInString(sName, '&', true);
if(pos != -1)
{ sName[pos] = 0;
if(strcmp(sName, "EyeBoss") == 0)
{
if(bValidMap)
{
if(IsValidEntity(entity))
{
if(strcmp(classname, "func_breakable") == 0)
{
char sName[128];
GetEntPropString(entity, Prop_Data, "m_iName", sName, sizeof(sName));
if(!sName[0])
return;
int pos = FindCharInString(sName, '&', true);
if(pos != -1)
{ sName[pos] = 0;
if(strcmp(sName, "EyeBoss") == 0)
{
Eye eye = new Eye(entity);
HookSingleEntityOutput(entity, "OnUser2", OnEyeMove);
g_aEyes.Push(eye);
}
}
}
}
Eye eye = new Eye(entity);
HookSingleEntityOutput(entity, "OnUser2", OnEyeMove);
g_aEyes.Push(eye);
}
}
}
}
}
}
public void OnEyeMove(const char[] output, int caller, int activator, float delay)
@@ -345,33 +340,34 @@ public void OnEyeMove(const char[] output, int caller, int activator, float dela
public void OnEntityDestroyed(int entity)
{
if(!bValidMap)
return;
if(IsValidEntity(entity))
{
char sClassname[64];
GetEntityClassname(entity, sClassname, sizeof(sClassname));
if(strcmp(sClassname, "func_breakable") == 0)
{
char sName[128];
GetEntPropString(entity, Prop_Data, "m_iName", sName, sizeof(sName));
if(!sName[0])
return;
if(StrContains(sName, "EyeBoss") != -1)
{
for (int i = 0; i < g_aEyes.Length; i++)
{
Eye tmp = view_as<Eye>(g_aEyes.Get(i));
if(entity == tmp.entity)
{
if(bValidMap)
{
if(IsValidEntity(entity))
{
char sClassname[64];
GetEntityClassname(entity, sClassname, sizeof(sClassname));
if(strcmp(sClassname, "func_breakable") == 0)
{
char sName[128];
GetEntPropString(entity, Prop_Data, "m_iName", sName, sizeof(sName));
if(!sName[0])
return;
if(StrContains(sName, "EyeBoss") != -1)
{
for (int i = 0; i < g_aEyes.Length; i++)
{
Eye tmp = view_as<Eye>(g_aEyes.Get(i));
if(entity == tmp.entity)
{
delete tmp;
g_aEyes.Erase(i);
}
}
}
}
}
delete tmp;
g_aEyes.Erase(i);
}
}
}
}
}
}
}
public void Cleanup()
@@ -402,4 +398,4 @@ public void OnMapEnd()
UnhookEvent("round_end", OnRoundEnd, EventHookMode_PostNoCopy);
}
bValidMap = false;
}
}
+69 -74
View File
@@ -34,91 +34,86 @@ public void OnMapStart()
{
g_aMovingNpc = new ArrayList();
}
else
{
char sFilename[256];
GetPluginFilename(INVALID_HANDLE, sFilename, sizeof(sFilename));
ServerCommand("sm plugins unload %s", sFilename);
}
}
public void OnEntitySpawned(int entity, const char[] classname)
{
if(!bValidMap)
return;
if(IsValidEntity(entity))
{
if(strcmp(classname, "phys_thruster") == 0)
{
char sTarget[128];
GetOutputTarget(entity, "m_OnUser1", 0, sTarget, sizeof(sTarget));
if(!sTarget[0])
return;
if(bValidMap)
{
if(IsValidEntity(entity))
{
if(strcmp(classname, "phys_thruster") == 0)
{
char sTarget[128];
GetOutputTarget(entity, "m_OnUser1", 0, sTarget, sizeof(sTarget));
if(!sTarget[0])
return;
if (StrContains(sTarget, "npc_physbox") != -1)
{
int ent = GetEntityIndexByName(sTarget, "func_physbox");
MovingNpc npc = null;
bool bAlreadyInList = false;
for (int i = 0; i < g_aMovingNpc.Length; i++)
{
MovingNpc tmp = view_as<MovingNpc>(g_aMovingNpc.Get(i));
if(tmp.entity == ent)
{
npc = tmp;
bAlreadyInList = true;
}
}
if(!bAlreadyInList)
{
npc = new MovingNpc(ent);
}
GetEntPropString(entity, Prop_Data, "m_iName", sTarget, sizeof(sTarget));
if(StrContains(sTarget, "npc_thruster_forward") != -1)
{
npc.SetThruster(true, entity);
}
else if(StrContains(sTarget, "npc_thruster_side") != -1)
{
npc.SetThruster(false, entity);
}
if (StrContains(sTarget, "npc_physbox") != -1)
{
int ent = GetEntityIndexByName(sTarget, "func_physbox");
MovingNpc npc = null;
bool bAlreadyInList = false;
for (int i = 0; i < g_aMovingNpc.Length; i++)
{
MovingNpc tmp = view_as<MovingNpc>(g_aMovingNpc.Get(i));
if(tmp.entity == ent)
{
npc = tmp;
bAlreadyInList = true;
}
}
if(!bAlreadyInList)
{
npc = new MovingNpc(ent);
}
GetEntPropString(entity, Prop_Data, "m_iName", sTarget, sizeof(sTarget));
if(StrContains(sTarget, "npc_thruster_forward") != -1)
{
npc.SetThruster(true, entity);
}
else if(StrContains(sTarget, "npc_thruster_side") != -1)
{
npc.SetThruster(false, entity);
}
if(bAlreadyInList)
{
npc.Start();
if(bAlreadyInList)
{
npc.Start();
}
else
g_aMovingNpc.Push(npc);
}
}
}
}
else
g_aMovingNpc.Push(npc);
}
}
}
}
}
public void OnEntityDestroyed(int entity)
{
if(!bValidMap)
return;
if(IsValidEntity(entity))
{
char sClassname[128];
GetEntityClassname(entity, sClassname, sizeof(sClassname));
if(strcmp(sClassname, "func_physbox") == 0)
{
for (int i = 0; i < g_aMovingNpc.Length; i++)
{
MovingNpc npc = view_as<MovingNpc>(g_aMovingNpc.Get(i));
if(npc.entity == entity)
{
if(bValidMap)
{
if(IsValidEntity(entity))
{
char sClassname[128];
GetEntityClassname(entity, sClassname, sizeof(sClassname));
if(strcmp(sClassname, "func_physbox") == 0)
{
for (int i = 0; i < g_aMovingNpc.Length; i++)
{
MovingNpc npc = view_as<MovingNpc>(g_aMovingNpc.Get(i));
if(npc.entity == entity)
{
npc.Stop();
g_aMovingNpc.Erase(i);
break;
}
}
}
}
npc.Stop();
g_aMovingNpc.Erase(i);
break;
}
}
}
}
}
}
@@ -135,4 +130,4 @@ public void OnMapEnd()
delete g_aMovingNpc;
}
bValidMap = false;
}
}
+285 -286
View File
@@ -5,16 +5,18 @@
#pragma semicolon 1
#pragma newdecls required
bool g_bIsDreamingv2 = false;
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public Plugin myinfo =
{
name = "ze_dreamin VScript",
author = "Neon",
description = "",
version = "1.0",
url = "https://steamcommunity.com/id/n3ontm"
name = "ze_dreamin VScript",
author = "Neon",
description = "",
version = "1.0",
url = "https://steamcommunity.com/id/n3ontm"
}
//----------------------------------------------------------------------------------------------------
@@ -22,7 +24,8 @@ public Plugin myinfo =
//----------------------------------------------------------------------------------------------------
public void OnPluginStart()
{
HookEvent("round_start", OnRoundStart);
VerifyMap();
HookEvent("round_start", OnRoundStart);
}
//----------------------------------------------------------------------------------------------------
@@ -30,7 +33,7 @@ public void OnPluginStart()
//----------------------------------------------------------------------------------------------------
public void OnMapStart()
{
VerifyMap();
VerifyMap();
}
//----------------------------------------------------------------------------------------------------
@@ -38,16 +41,9 @@ public void OnMapStart()
//----------------------------------------------------------------------------------------------------
public void VerifyMap()
{
char sCurrentMap[64];
GetCurrentMap(sCurrentMap, sizeof(sCurrentMap));
if (strncmp(sCurrentMap, "ze_dreamin_v2", 13, false) != 0)
{
char sFilename[256];
GetPluginFilename(INVALID_HANDLE, sFilename, sizeof(sFilename));
ServerCommand("sm plugins unload %s", sFilename);
}
char sCurrentMap[64];
GetCurrentMap(sCurrentMap, sizeof(sCurrentMap));
g_bIsDreamingv2 = strncmp(sCurrentMap, "ze_dreamin_v2", 13, false) == 0;
}
//----------------------------------------------------------------------------------------------------
@@ -55,141 +51,144 @@ public void VerifyMap()
//----------------------------------------------------------------------------------------------------
public void OnRoundStart(Event hEvent, const char[] sEvent, bool bDontBroadcast)
{
int iEntity = INVALID_ENT_REFERENCE;
if (g_bIsDreamingv2)
{
int iEntity = INVALID_ENT_REFERENCE;
iEntity = FindEntityByTargetName("reflect_logic");
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnFalse", st3_hitbox_reflect, false);
iEntity = FindEntityByTargetName("reflect_logic");
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnFalse", st3_hitbox_reflect, false);
iEntity = FindEntityByTargetName("upline_timer");
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnTimer", upline_maker_upline, false);
iEntity = FindEntityByTargetName("upline_timer");
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnTimer", upline_maker_upline, false);
iEntity = FindEntityByTargetName("explo_timer");
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnTimer", explo_maker_setan, false);
iEntity = FindEntityByTargetName("explo_timer");
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnTimer", explo_maker_setan, false);
iEntity = FindEntityByTargetName("linelaser_random");
if (iEntity != INVALID_ENT_REFERENCE)
{
HookSingleEntityOutput(iEntity, "OnCase01", linelaser_maker_left, false);
HookSingleEntityOutput(iEntity, "OnCase02", linelaser_maker_right, false);
}
iEntity = FindEntityByTargetName("linelaser_random");
if (iEntity != INVALID_ENT_REFERENCE)
{
HookSingleEntityOutput(iEntity, "OnCase01", linelaser_maker_left, false);
HookSingleEntityOutput(iEntity, "OnCase02", linelaser_maker_right, false);
}
iEntity = FindEntityByTargetName("totem_random");
if (iEntity != INVALID_ENT_REFERENCE)
{
HookSingleEntityOutput(iEntity, "OnCase01", push_maker_setrandom, false);
HookSingleEntityOutput(iEntity, "OnCase02", heal_maker_setrandom, false);
HookSingleEntityOutput(iEntity, "OnCase03", stable_maker_setrandom, false);
HookSingleEntityOutput(iEntity, "OnCase04", rotate_maker_setrandom, false);
}
iEntity = FindEntityByTargetName("totem_random");
if (iEntity != INVALID_ENT_REFERENCE)
{
HookSingleEntityOutput(iEntity, "OnCase01", push_maker_setrandom, false);
HookSingleEntityOutput(iEntity, "OnCase02", heal_maker_setrandom, false);
HookSingleEntityOutput(iEntity, "OnCase03", stable_maker_setrandom, false);
HookSingleEntityOutput(iEntity, "OnCase04", rotate_maker_setrandom, false);
}
iEntity = FindEntityByTargetName("spike_timer");
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnTimer", spike_maker_top, false);
iEntity = FindEntityByTargetName("spike_timer");
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnTimer", spike_maker_top, false);
iEntity = FindEntityByHammerID(389450);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_389450_display, false);
iEntity = FindEntityByHammerID(389450);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_389450_display, false);
iEntity = FindEntityByHammerID(385777);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_385777_display, false);
iEntity = FindEntityByHammerID(385777);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_385777_display, false);
iEntity = FindEntityByHammerID(385886);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_385886_display, false);
iEntity = FindEntityByHammerID(385886);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_385886_display, false);
iEntity = FindEntityByHammerID(386004);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_386004_display, false);
iEntity = FindEntityByHammerID(386004);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_386004_display, false);
iEntity = FindEntityByHammerID(381396);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnPressed", func_button_381396_display, false);
iEntity = FindEntityByHammerID(381396);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnPressed", func_button_381396_display, false);
iEntity = FindEntityByHammerID(381463);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_381463_display, false);
iEntity = FindEntityByHammerID(381463);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_381463_display, false);
iEntity = FindEntityByHammerID(381581);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_381581_display, false);
iEntity = FindEntityByHammerID(381581);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_381581_display, false);
iEntity = FindEntityByHammerID(381648);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_381648_display, false);
iEntity = FindEntityByHammerID(381648);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_381648_display, false);
iEntity = FindEntityByHammerID(378212);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_378212_display, false);
iEntity = FindEntityByHammerID(378212);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_378212_display, false);
iEntity = FindEntityByHammerID(375007);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_375007_display, false);
iEntity = FindEntityByHammerID(375007);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_375007_display, false);
iEntity = FindEntityByHammerID(241061);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnPressed", func_button_241061_display, false);
iEntity = FindEntityByHammerID(241061);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnPressed", func_button_241061_display, false);
iEntity = FindEntityByHammerID(213033);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_213033_display, false);
iEntity = FindEntityByHammerID(213033);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_213033_display, false);
iEntity = FindEntityByHammerID(142829);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_142829_display, false);
iEntity = FindEntityByHammerID(142829);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_142829_display, false);
iEntity = FindEntityByHammerID(95608);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_95608_display, false);
iEntity = FindEntityByHammerID(95608);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_95608_display, false);
iEntity = FindEntityByHammerID(95733);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_95733_display, false);
iEntity = FindEntityByHammerID(95733);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_95733_display, false);
iEntity = FindEntityByHammerID(95823);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_95823_display, false);
iEntity = FindEntityByHammerID(95823);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_95823_display, false);
iEntity = FindEntityByHammerID(77927);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnPressed", func_button_77927_display, false);
iEntity = FindEntityByHammerID(77927);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnPressed", func_button_77927_display, false);
iEntity = FindEntityByHammerID(23408);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_23408_display, false);
iEntity = FindEntityByHammerID(23408);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_23408_display, false);
iEntity = FindEntityByHammerID(23452);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_23452_display, false);
iEntity = FindEntityByHammerID(23452);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_23452_display, false);
iEntity = FindEntityByHammerID(23474);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_23474_display, false);
iEntity = FindEntityByHammerID(23474);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnStartTouch", trigger_once_23474_display, false);
iEntity = FindEntityByHammerID(23551);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnBreak", func_breakable_23551_display, false);
iEntity = FindEntityByHammerID(23551);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnBreak", func_breakable_23551_display, false);
iEntity = FindEntityByHammerID(21950);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnPressed", func_button_21950_display, false);
iEntity = FindEntityByHammerID(21950);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnPressed", func_button_21950_display, false);
iEntity = FindEntityByHammerID(22017);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnPressed", func_button_22017_display, false);
iEntity = FindEntityByHammerID(22017);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnPressed", func_button_22017_display, false);
iEntity = FindEntityByHammerID(3664);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnBreak", func_breakable_3664_display, false);
iEntity = FindEntityByHammerID(3664);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnBreak", func_breakable_3664_display, false);
iEntity = FindEntityByHammerID(11288);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnHitMin", math_counter_11288_display, false);
iEntity = FindEntityByHammerID(11288);
if (iEntity != INVALID_ENT_REFERENCE)
HookSingleEntityOutput(iEntity, "OnHitMin", math_counter_11288_display, false);
CreateTimer(12.0, Credits, INVALID_HANDLE, TIMER_FLAG_NO_MAPCHANGE);
CreateTimer(12.0, Credits, INVALID_HANDLE, TIMER_FLAG_NO_MAPCHANGE);
}
}
//----------------------------------------------------------------------------------------------------
@@ -197,7 +196,7 @@ public void OnRoundStart(Event hEvent, const char[] sEvent, bool bDontBroadcast)
//----------------------------------------------------------------------------------------------------
public Action Credits(Handle timer)
{
CPrintToChatAll("{pink}[VScripts] {white}Map using VScripts ported by Neon™");
CPrintToChatAll("{pink}[VScripts] {white}Map using VScripts ported by Neon™");
}
//----------------------------------------------------------------------------------------------------
@@ -205,19 +204,19 @@ public Action Credits(Handle timer)
//----------------------------------------------------------------------------------------------------
public void st3_hitbox_reflect(const char[] output, int caller, int activator, float delay)
{
if (!IsValidClient(activator))
return;
if (!IsValidClient(activator))
return;
int iHealth = GetClientHealth(activator);
int iHealth = GetClientHealth(activator);
if(iHealth > 10)
{
SetEntityHealth(activator, iHealth - 10);
}
else
{
SetEntityHealth(activator, 1);
}
if(iHealth > 10)
{
SetEntityHealth(activator, iHealth - 10);
}
else
{
SetEntityHealth(activator, 1);
}
}
//----------------------------------------------------------------------------------------------------
@@ -225,16 +224,16 @@ public void st3_hitbox_reflect(const char[] output, int caller, int activator, f
//----------------------------------------------------------------------------------------------------
public void upline_maker_upline(const char[] output, int caller, int activator, float delay)
{
float fOrigin[3];
fOrigin[0] = GetRandomFloat(-1280.0, 1280.0);
fOrigin[1] = GetRandomFloat(-1280.0, 1280.0);
fOrigin[2] = -2780.0;
float fOrigin[3];
fOrigin[0] = GetRandomFloat(-1280.0, 1280.0);
fOrigin[1] = GetRandomFloat(-1280.0, 1280.0);
fOrigin[2] = -2780.0;
int iEntity = INVALID_ENT_REFERENCE;
int iEntity = INVALID_ENT_REFERENCE;
iEntity = FindEntityByTargetName("upline_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
iEntity = FindEntityByTargetName("upline_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
}
//----------------------------------------------------------------------------------------------------
@@ -242,16 +241,16 @@ public void upline_maker_upline(const char[] output, int caller, int activator,
//----------------------------------------------------------------------------------------------------
public void explo_maker_setan(const char[] output, int caller, int activator, float delay)
{
float fAngles[3];
fAngles[0] = 0.0;
fAngles[1] = GetRandomFloat(0.0, 359.0);
fAngles[2] = 0.0;
float fAngles[3];
fAngles[0] = 0.0;
fAngles[1] = GetRandomFloat(0.0, 359.0);
fAngles[2] = 0.0;
int iEntity = INVALID_ENT_REFERENCE;
int iEntity = INVALID_ENT_REFERENCE;
iEntity = FindEntityByTargetName("explo_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, NULL_VECTOR, fAngles, NULL_VECTOR);
iEntity = FindEntityByTargetName("explo_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, NULL_VECTOR, fAngles, NULL_VECTOR);
}
//----------------------------------------------------------------------------------------------------
@@ -259,21 +258,21 @@ public void explo_maker_setan(const char[] output, int caller, int activator, fl
//----------------------------------------------------------------------------------------------------
public void linelaser_maker_left(const char[] output, int caller, int activator, float delay)
{
float fOrigin[3];
fOrigin[0] = 0.0;
fOrigin[1] = GetRandomFloat(-640.0, 640.0);
fOrigin[2] = -1780.0;
float fOrigin[3];
fOrigin[0] = 0.0;
fOrigin[1] = GetRandomFloat(-640.0, 640.0);
fOrigin[2] = -1780.0;
float fAngles[3];
fAngles[0] = 0.0;
fAngles[1] = 0.0;
fAngles[2] = 0.0;
float fAngles[3];
fAngles[0] = 0.0;
fAngles[1] = 0.0;
fAngles[2] = 0.0;
int iEntity = INVALID_ENT_REFERENCE;
int iEntity = INVALID_ENT_REFERENCE;
iEntity = FindEntityByTargetName("linelaser_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, fAngles, NULL_VECTOR);
iEntity = FindEntityByTargetName("linelaser_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, fAngles, NULL_VECTOR);
}
//----------------------------------------------------------------------------------------------------
@@ -281,21 +280,21 @@ public void linelaser_maker_left(const char[] output, int caller, int activator,
//----------------------------------------------------------------------------------------------------
public void linelaser_maker_right(const char[] output, int caller, int activator, float delay)
{
float fOrigin[3];
fOrigin[0] = 0.0;
fOrigin[1] = GetRandomFloat(-640.0, 640.0);
fOrigin[2] = -1820.0;
float fOrigin[3];
fOrigin[0] = 0.0;
fOrigin[1] = GetRandomFloat(-640.0, 640.0);
fOrigin[2] = -1820.0;
float fAngles[3];
fAngles[0] = 0.0;
fAngles[1] = 90.0;
fAngles[2] = 0.0;
float fAngles[3];
fAngles[0] = 0.0;
fAngles[1] = 90.0;
fAngles[2] = 0.0;
int iEntity = INVALID_ENT_REFERENCE;
int iEntity = INVALID_ENT_REFERENCE;
iEntity = FindEntityByTargetName("linelaser_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, fAngles, NULL_VECTOR);
iEntity = FindEntityByTargetName("linelaser_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, fAngles, NULL_VECTOR);
}
//----------------------------------------------------------------------------------------------------
@@ -303,16 +302,16 @@ public void linelaser_maker_right(const char[] output, int caller, int activator
//----------------------------------------------------------------------------------------------------
public void push_maker_setrandom(const char[] output, int caller, int activator, float delay)
{
float fOrigin[3];
fOrigin[0] = GetRandomFloat(-768.0, 768.0);
fOrigin[1] = GetRandomFloat(-768.0, 768.0);
fOrigin[2] = -2720.0;
float fOrigin[3];
fOrigin[0] = GetRandomFloat(-768.0, 768.0);
fOrigin[1] = GetRandomFloat(-768.0, 768.0);
fOrigin[2] = -2720.0;
int iEntity = INVALID_ENT_REFERENCE;
int iEntity = INVALID_ENT_REFERENCE;
iEntity = FindEntityByTargetName("push_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
iEntity = FindEntityByTargetName("push_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
}
//----------------------------------------------------------------------------------------------------
@@ -320,16 +319,16 @@ public void push_maker_setrandom(const char[] output, int caller, int activator,
//----------------------------------------------------------------------------------------------------
public void heal_maker_setrandom(const char[] output, int caller, int activator, float delay)
{
float fOrigin[3];
fOrigin[0] = GetRandomFloat(-768.0, 768.0);
fOrigin[1] = GetRandomFloat(-768.0, 768.0);
fOrigin[2] = -2720.0;
float fOrigin[3];
fOrigin[0] = GetRandomFloat(-768.0, 768.0);
fOrigin[1] = GetRandomFloat(-768.0, 768.0);
fOrigin[2] = -2720.0;
int iEntity = INVALID_ENT_REFERENCE;
int iEntity = INVALID_ENT_REFERENCE;
iEntity = FindEntityByTargetName("heal_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
iEntity = FindEntityByTargetName("heal_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
}
//----------------------------------------------------------------------------------------------------
@@ -337,16 +336,16 @@ public void heal_maker_setrandom(const char[] output, int caller, int activator,
//----------------------------------------------------------------------------------------------------
public void stable_maker_setrandom(const char[] output, int caller, int activator, float delay)
{
float fOrigin[3];
fOrigin[0] = GetRandomFloat(-768.0, 768.0);
fOrigin[1] = GetRandomFloat(-768.0, 768.0);
fOrigin[2] = -2720.0;
float fOrigin[3];
fOrigin[0] = GetRandomFloat(-768.0, 768.0);
fOrigin[1] = GetRandomFloat(-768.0, 768.0);
fOrigin[2] = -2720.0;
int iEntity = INVALID_ENT_REFERENCE;
int iEntity = INVALID_ENT_REFERENCE;
iEntity = FindEntityByTargetName("stable_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
iEntity = FindEntityByTargetName("stable_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
}
//----------------------------------------------------------------------------------------------------
@@ -354,16 +353,16 @@ public void stable_maker_setrandom(const char[] output, int caller, int activato
//----------------------------------------------------------------------------------------------------
public void rotate_maker_setrandom(const char[] output, int caller, int activator, float delay)
{
float fOrigin[3];
fOrigin[0] = GetRandomFloat(-768.0, 768.0);
fOrigin[1] = GetRandomFloat(-768.0, 768.0);
fOrigin[2] = -2720.0;
float fOrigin[3];
fOrigin[0] = GetRandomFloat(-768.0, 768.0);
fOrigin[1] = GetRandomFloat(-768.0, 768.0);
fOrigin[2] = -2720.0;
int iEntity = INVALID_ENT_REFERENCE;
int iEntity = INVALID_ENT_REFERENCE;
iEntity = FindEntityByTargetName("rotate_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
iEntity = FindEntityByTargetName("rotate_maker");
if (iEntity != INVALID_ENT_REFERENCE)
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
}
//----------------------------------------------------------------------------------------------------
@@ -371,19 +370,19 @@ public void rotate_maker_setrandom(const char[] output, int caller, int activato
//----------------------------------------------------------------------------------------------------
public void spike_maker_top(const char[] output, int caller, int activator, float delay)
{
float fOrigin[3];
fOrigin[0] = GetRandomFloat(12090.0, 14363.0);
fOrigin[1] = GetRandomFloat(1280.0, 3560.0);
fOrigin[2] = 1500.0;
float fOrigin[3];
fOrigin[0] = GetRandomFloat(12090.0, 14363.0);
fOrigin[1] = GetRandomFloat(1280.0, 3560.0);
fOrigin[2] = 1500.0;
int iEntity = INVALID_ENT_REFERENCE;
int iEntity = INVALID_ENT_REFERENCE;
iEntity = FindEntityByTargetName("spike_maker");
if (iEntity != INVALID_ENT_REFERENCE)
{
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
AcceptEntityInput(iEntity, "ForceSpawn");
}
iEntity = FindEntityByTargetName("spike_maker");
if (iEntity != INVALID_ENT_REFERENCE)
{
TeleportEntity(iEntity, fOrigin, NULL_VECTOR, NULL_VECTOR);
AcceptEntityInput(iEntity, "ForceSpawn");
}
}
//----------------------------------------------------------------------------------------------------
@@ -391,7 +390,7 @@ public void spike_maker_top(const char[] output, int caller, int activator, floa
//----------------------------------------------------------------------------------------------------
public void trigger_once_389450_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -399,7 +398,7 @@ public void trigger_once_389450_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void trigger_once_385777_display(const char[] output, int caller, int activator, float delay)
{
Display(20);
Display(20);
}
//----------------------------------------------------------------------------------------------------
@@ -407,7 +406,7 @@ public void trigger_once_385777_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void trigger_once_385886_display(const char[] output, int caller, int activator, float delay)
{
Display(20);
Display(20);
}
//----------------------------------------------------------------------------------------------------
@@ -415,7 +414,7 @@ public void trigger_once_385886_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void trigger_once_386004_display(const char[] output, int caller, int activator, float delay)
{
Display(20);
Display(20);
}
//----------------------------------------------------------------------------------------------------
@@ -423,7 +422,7 @@ public void trigger_once_386004_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void func_button_381396_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -431,7 +430,7 @@ public void func_button_381396_display(const char[] output, int caller, int acti
//----------------------------------------------------------------------------------------------------
public void trigger_once_381463_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -439,7 +438,7 @@ public void trigger_once_381463_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void trigger_once_381581_display(const char[] output, int caller, int activator, float delay)
{
Display(50);
Display(50);
}
//----------------------------------------------------------------------------------------------------
@@ -447,7 +446,7 @@ public void trigger_once_381581_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void trigger_once_381648_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -455,7 +454,7 @@ public void trigger_once_381648_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void trigger_once_378212_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -463,7 +462,7 @@ public void trigger_once_378212_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void trigger_once_375007_display(const char[] output, int caller, int activator, float delay)
{
Display(20);
Display(20);
}
//----------------------------------------------------------------------------------------------------
@@ -471,7 +470,7 @@ public void trigger_once_375007_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void func_button_241061_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -479,7 +478,7 @@ public void func_button_241061_display(const char[] output, int caller, int acti
//----------------------------------------------------------------------------------------------------
public void trigger_once_213033_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -487,7 +486,7 @@ public void trigger_once_213033_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void trigger_once_142829_display(const char[] output, int caller, int activator, float delay)
{
Display(20);
Display(20);
}
//----------------------------------------------------------------------------------------------------
@@ -495,7 +494,7 @@ public void trigger_once_142829_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void trigger_once_95608_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -503,7 +502,7 @@ public void trigger_once_95608_display(const char[] output, int caller, int acti
//----------------------------------------------------------------------------------------------------
public void trigger_once_95733_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -511,7 +510,7 @@ public void trigger_once_95733_display(const char[] output, int caller, int acti
//----------------------------------------------------------------------------------------------------
public void trigger_once_95823_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -519,7 +518,7 @@ public void trigger_once_95823_display(const char[] output, int caller, int acti
//----------------------------------------------------------------------------------------------------
public void func_button_77927_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -527,7 +526,7 @@ public void func_button_77927_display(const char[] output, int caller, int activ
//----------------------------------------------------------------------------------------------------
public void trigger_once_23408_display(const char[] output, int caller, int activator, float delay)
{
Display(35);
Display(35);
}
//----------------------------------------------------------------------------------------------------
@@ -535,7 +534,7 @@ public void trigger_once_23408_display(const char[] output, int caller, int acti
//----------------------------------------------------------------------------------------------------
public void trigger_once_23452_display(const char[] output, int caller, int activator, float delay)
{
Display(20);
Display(20);
}
//----------------------------------------------------------------------------------------------------
@@ -543,7 +542,7 @@ public void trigger_once_23452_display(const char[] output, int caller, int acti
//----------------------------------------------------------------------------------------------------
public void trigger_once_23474_display(const char[] output, int caller, int activator, float delay)
{
Display(25);
Display(25);
}
//----------------------------------------------------------------------------------------------------
@@ -551,7 +550,7 @@ public void trigger_once_23474_display(const char[] output, int caller, int acti
//----------------------------------------------------------------------------------------------------
public void func_breakable_23551_display(const char[] output, int caller, int activator, float delay)
{
Display(20);
Display(20);
}
//----------------------------------------------------------------------------------------------------
@@ -559,7 +558,7 @@ public void func_breakable_23551_display(const char[] output, int caller, int ac
//----------------------------------------------------------------------------------------------------
public void func_button_21950_display(const char[] output, int caller, int activator, float delay)
{
Display(30);
Display(30);
}
//----------------------------------------------------------------------------------------------------
@@ -567,7 +566,7 @@ public void func_button_21950_display(const char[] output, int caller, int activ
//----------------------------------------------------------------------------------------------------
public void func_button_22017_display(const char[] output, int caller, int activator, float delay)
{
Display(10);
Display(10);
}
//----------------------------------------------------------------------------------------------------
@@ -575,7 +574,7 @@ public void func_button_22017_display(const char[] output, int caller, int activ
//----------------------------------------------------------------------------------------------------
public void func_breakable_3664_display(const char[] output, int caller, int activator, float delay)
{
Display(45);
Display(45);
}
//----------------------------------------------------------------------------------------------------
@@ -583,7 +582,7 @@ public void func_breakable_3664_display(const char[] output, int caller, int act
//----------------------------------------------------------------------------------------------------
public void math_counter_11288_display(const char[] output, int caller, int activator, float delay)
{
Display(51);
Display(51);
}
//----------------------------------------------------------------------------------------------------
@@ -591,25 +590,25 @@ public void math_counter_11288_display(const char[] output, int caller, int acti
//----------------------------------------------------------------------------------------------------
public void Display(int iTimer)
{
int iRelay = CreateEntityByName("logic_relay");
DispatchKeyFormat(iRelay, "targetname", "vscript_countdown_relay");
DispatchKeyFormat(iRelay, "spawnflags", "0");
DispatchKeyFormat(iRelay, "OnSpawn", "seconds_left,AddOutput,message seconds left,0,-1");
DispatchKeyFormat(iRelay, "OnSpawn", "text_sec,AddOutput,message %d,0,-1", iTimer - 1);
int iRelay = CreateEntityByName("logic_relay");
DispatchKeyFormat(iRelay, "targetname", "vscript_countdown_relay");
DispatchKeyFormat(iRelay, "spawnflags", "0");
DispatchKeyFormat(iRelay, "OnSpawn", "seconds_left,AddOutput,message seconds left,0,-1");
DispatchKeyFormat(iRelay, "OnSpawn", "text_sec,AddOutput,message %d,0,-1", iTimer - 1);
int iBackup = iTimer;
for (int j = 0; j <= iTimer; j++)
{
iBackup--;
DispatchKeyFormat(iRelay, "OnSpawn", "text_sec,AddOutput,message %d,%d,-1", iBackup, j);
DispatchKeyFormat(iRelay, "OnSpawn", "seconds_left,Display,,%d,-1", j);
DispatchKeyFormat(iRelay, "OnSpawn", "text_sec,Display,,%d,-1", j);
}
int iBackup = iTimer;
for (int j = 0; j <= iTimer; j++)
{
iBackup--;
DispatchKeyFormat(iRelay, "OnSpawn", "text_sec,AddOutput,message %d,%d,-1", iBackup, j);
DispatchKeyFormat(iRelay, "OnSpawn", "seconds_left,Display,,%d,-1", j);
DispatchKeyFormat(iRelay, "OnSpawn", "text_sec,Display,,%d,-1", j);
}
DispatchKeyFormat(iRelay, "OnSpawn", "seconds_left,AddOutput,message ,%d,-1", iTimer + 1);
DispatchKeyFormat(iRelay, "OnSpawn", "text_sec,AddOutput,message ,%d,-1", iTimer + 1);
DispatchKeyFormat(iRelay, "OnSpawn", "!self,Kill,,%d,-1", iTimer + 2);
SpawnAndActivate(iRelay);
DispatchKeyFormat(iRelay, "OnSpawn", "seconds_left,AddOutput,message ,%d,-1", iTimer + 1);
DispatchKeyFormat(iRelay, "OnSpawn", "text_sec,AddOutput,message ,%d,-1", iTimer + 1);
DispatchKeyFormat(iRelay, "OnSpawn", "!self,Kill,,%d,-1", iTimer + 2);
SpawnAndActivate(iRelay);
}
//----------------------------------------------------------------------------------------------------
@@ -617,20 +616,20 @@ public void Display(int iTimer)
//----------------------------------------------------------------------------------------------------
public int FindEntityByTargetName(const char[] sTargetnameToFind)
{
int iEntity = INVALID_ENT_REFERENCE;
while((iEntity = FindEntityByClassname(iEntity, "*")) != INVALID_ENT_REFERENCE)
{
char sTargetname[64];
GetEntPropString(iEntity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname));
int iEntity = INVALID_ENT_REFERENCE;
while((iEntity = FindEntityByClassname(iEntity, "*")) != INVALID_ENT_REFERENCE)
{
char sTargetname[64];
GetEntPropString(iEntity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname));
if (strcmp(sTargetnameToFind, sTargetname, false) == 0)
{
return iEntity;
}
}
if (strcmp(sTargetnameToFind, sTargetname, false) == 0)
{
return iEntity;
}
}
PrintToChatAll("[VScripts] Error! Could not find entity: %s", sTargetnameToFind);
return INVALID_ENT_REFERENCE;
PrintToChatAll("[VScripts] Error! Could not find entity: %s", sTargetnameToFind);
return INVALID_ENT_REFERENCE;
}
//----------------------------------------------------------------------------------------------------
@@ -638,17 +637,17 @@ public int FindEntityByTargetName(const char[] sTargetnameToFind)
//----------------------------------------------------------------------------------------------------
public int FindEntityByHammerID(int iHammerID)
{
int iEntity = INVALID_ENT_REFERENCE;
while((iEntity = FindEntityByClassname(iEntity, "*")) != INVALID_ENT_REFERENCE)
{
if(GetEntProp(iEntity, Prop_Data, "m_iHammerID") == iHammerID)
{
return iEntity;
}
}
int iEntity = INVALID_ENT_REFERENCE;
while((iEntity = FindEntityByClassname(iEntity, "*")) != INVALID_ENT_REFERENCE)
{
if(GetEntProp(iEntity, Prop_Data, "m_iHammerID") == iHammerID)
{
return iEntity;
}
}
PrintToChatAll("[VScripts] Error! Could not find entity: #%d", iHammerID);
return INVALID_ENT_REFERENCE;
PrintToChatAll("[VScripts] Error! Could not find entity: #%d", iHammerID);
return INVALID_ENT_REFERENCE;
}
//----------------------------------------------------------------------------------------------------
@@ -656,10 +655,10 @@ public int FindEntityByHammerID(int iHammerID)
//----------------------------------------------------------------------------------------------------
stock bool DispatchKeyFormat(int entity, const char[] key, const char[] value, any ...)
{
char buffer[1024];
VFormat(buffer, sizeof(buffer), value, 4);
char buffer[1024];
VFormat(buffer, sizeof(buffer), value, 4);
DispatchKeyValue(entity, key, buffer);
DispatchKeyValue(entity, key, buffer);
}
//----------------------------------------------------------------------------------------------------
@@ -667,8 +666,8 @@ stock bool DispatchKeyFormat(int entity, const char[] key, const char[] value, a
//----------------------------------------------------------------------------------------------------
stock void SpawnAndActivate(int entity)
{
DispatchSpawn(entity);
ActivateEntity(entity);
DispatchSpawn(entity);
ActivateEntity(entity);
}
//----------------------------------------------------------------------------------------------------
@@ -676,5 +675,5 @@ stock void SpawnAndActivate(int entity)
//----------------------------------------------------------------------------------------------------
stock bool IsValidClient(int client)
{
return (client > 0 && client <= MaxClients && IsClientInGame(client) && IsPlayerAlive(client));
}
return (client > 0 && client <= MaxClients && IsClientInGame(client) && IsPlayerAlive(client));
}
File diff suppressed because it is too large Load Diff