Spring break cleanup.

Cleaning up all useless tabs, spaces, indents, you name it.
This commit is contained in:
zaCade 2018-07-23 17:06:03 +02:00
parent 0e8490f32f
commit c8b3433700
17 changed files with 925 additions and 962 deletions

View File

@ -27,11 +27,11 @@ char g_sStats[4096];
public Plugin myinfo =
{
name = "AntiBhopCheat",
author = "BotoX",
description = "Detect all kinds of bhop cheats",
version = "0.0",
url = ""
name = "AntiBhopCheat",
autho = "BotoX",
description = "Detect all kinds of bhop cheats",
version = "0.0",
url = ""
};
@ -51,7 +51,7 @@ public void OnPluginStart()
OnClientPutInServer(client);
}
}
// Api
g_hOnClientDetected = CreateGlobalForward("AntiBhopCheat_OnClientDetected", ET_Ignore, Param_Cell, Param_String, Param_String);
}
@ -364,7 +364,7 @@ NotifyAdmins(int client, const char[] sReason)
PrintStreak(i, client, -1, true);
}
}
Forward_OnDetected(client, sReason, g_sStats)
}
@ -421,7 +421,7 @@ void PrintStats(int client, int iTarget)
PrintToConsole(client, "Global jumps: %d | Hyper?: %.1f%% | Hack?: %.1f%%",
iGlobalJumps, HyperRatio * 100.0, HackRatio * 100.0);
int aGlobalJumps[3];
Player.GetJumps(aGlobalJumps);
@ -430,7 +430,7 @@ void PrintStats(int client, int iTarget)
(aGlobalJumps[1] / float(iGlobalJumps)) * 100.0,
(aGlobalJumps[2] / float(iGlobalJumps)) * 100.0);
PrintToConsole(client, "more to come...");
}
@ -475,9 +475,9 @@ public Action Command_Streak(int client, int argc)
void PrintStreak(int client, int iTarget, int iStreak, bool bDetected=false)
{
g_sStats = "";
PrintToConsole(client, "[SM] Bunnyhop streak %d for %L", iStreak, iTarget);
if (bDetected)
Format(g_sStats, sizeof(g_sStats), "%sBunnyhop streak %d for %L\n",
g_sStats, iStreak, iTarget);
@ -517,7 +517,7 @@ void PrintStreak(int client, int iTarget, int iStreak, bool bDetected=false)
PrintToConsole(client, "Streak jumps: %d | Hyper?: %.1f%% | Hack?: %.1f%%",
iStreakJumps, HyperRatio * 100.0, HackRatio * 100.0);
if (bDetected)
Format(g_sStats, sizeof(g_sStats), "%sStreak jumps: %d | Hyper?: %.1f%% | Hack?: %.1f%%\n",
g_sStats, iStreakJumps, HyperRatio * 100.0, HackRatio * 100.0);
@ -529,17 +529,17 @@ void PrintStreak(int client, int iTarget, int iStreak, bool bDetected=false)
(aStreakJumps[0] / float(iStreakJumps)) * 100.0,
(aStreakJumps[1] / float(iStreakJumps)) * 100.0,
(aStreakJumps[2] / float(iStreakJumps)) * 100.0);
if (bDetected)
Format(g_sStats, sizeof(g_sStats), "%sStreak jumps perf group (1 2 +): %1.f%% %1.f%% %1.f%%\n",
g_sStats,
g_sStats,
(aStreakJumps[0] / float(iStreakJumps)) * 100.0,
(aStreakJumps[1] / float(iStreakJumps)) * 100.0,
(aStreakJumps[2] / float(iStreakJumps)) * 100.0);
PrintToConsole(client, "#%2s %5s %7s %7s %5s %5s %8s %4s %6s %s",
"id", " diff", " invel", " outvel", " gain", " comb", " avgdist", " num", " avg+-", "pattern");
if (bDetected)
Format(g_sStats, sizeof(g_sStats), "%s#%2s %5s %7s %7s %5s %5s %8s %4s %6s %s\n",
g_sStats, "id", " diff", " invel", " outvel", " gain", " comb", " avgdist", " num", " avg+-", "pattern");
@ -624,10 +624,10 @@ void PrintStreak(int client, int iTarget, int iStreak, bool bDetected=false)
iPresses,
fAvgDownUp,
sPattern);
if (bDetected)
Format(g_sStats, sizeof(g_sStats), "%s#%2d %4d%% %7.1f %7.1f %4d%% %4d%% %8.2f %4d %6.2f %s\n",
g_sStats,
g_sStats,
i,
fPrevVel == 0.0 ? 100 : RoundFloat((fInVel / fPrevVel) * 100.0 - 100.0),
fInVel,
@ -651,6 +651,6 @@ bool Forward_OnDetected(int client, const char[] reason, const char[] stats)
Call_PushString(reason);
Call_PushString(stats);
Call_Finish();
g_sStats = "";
}

View File

@ -22,11 +22,11 @@ Handle g_hCustomMessageFile2;
// Purpose:
//----------------------------------------------------------------------------------------------------
public Plugin myinfo = {
name = "Connect Announce",
author = "Neon + Botox",
name = "Connect Announce",
author = "Neon + Botox",
description = "Connect Announcer",
version = "2.0",
url = ""
version = "2.0",
url = ""
}
//----------------------------------------------------------------------------------------------------
@ -150,16 +150,16 @@ public Action Command_ResetJoinMsg(int client, int args)
SetFailState("[ConnectAnnounce] Config file missing!");
return Plugin_Handled;
}
KvRewind(g_hCustomMessageFile);
if (KvJumpToKey(g_hCustomMessageFile, sAuth, true))
KvSetString(g_hCustomMessageFile, "message", "reset");
KvRewind(g_hCustomMessageFile);
KeyValuesToFile(g_hCustomMessageFile, g_sCustomMessageFile);
CPrintToChat(client, "[ConnectAnnounce] Your Join Message got reset.");
return Plugin_Handled;
@ -272,9 +272,9 @@ public void TQueryCB(Handle owner, Handle rs, const char[] error, any data)
else
ReplaceString(sRawMsg, sizeof(sRawMsg), "{COUNTRY}", "");
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////
if (g_hCustomMessageFile2 != null)
CloseHandle(g_hCustomMessageFile2);
@ -287,27 +287,27 @@ public void TQueryCB(Handle owner, Handle rs, const char[] error, any data)
}
KvRewind(g_hCustomMessageFile2);
char sFinalMessage[512];
char sCustomMessage[256];
if (KvJumpToKey(g_hCustomMessageFile2, sAuth))
{
{
KvGetString(g_hCustomMessageFile2, "message", sCustomMessage, sizeof(sCustomMessage), "");
if (StrEqual(sCustomMessage, "reset"))
CPrintToChatAll(sRawMsg);
else
{
{
Format(sFinalMessage, sizeof(sFinalMessage), "%s %s", sRawMsg, sCustomMessage);
CPrintToChatAll(sFinalMessage);
}
}
else
CPrintToChatAll(sRawMsg);
}
//----------------------------------------------------------------------------------------------------
// Purpose:
@ -321,7 +321,7 @@ public void OnClientPostAdminCheck(int client)
GetClientAuthId(client, AuthId_Steam2, sAuth, sizeof(sAuth));
strcopy(sAuth, sizeof(sAuth), sAuth[8]);
char sQuery[512];
Format(sQuery, sizeof(sQuery), "SELECT COUNT(*) AS rank FROM hlstats_Players WHERE hlstats_Players.game = 'css-ze' AND hideranking = 0 AND skill > (SELECT skill from hlstats_Players JOIN hlstats_PlayerUniqueIds ON hlstats_Players.playerId = hlstats_PlayerUniqueIds.playerId WHERE uniqueId = '%s' AND hlstats_PlayerUniqueIds.game = 'css-ze')", sAuth);
SQL_TQuery(g_hDatabase, TQueryCB, sQuery, GetClientUserId(client));

View File

@ -16,7 +16,7 @@ public Plugin myinfo =
author = "Neon",
description = "",
version = "1.0.0",
url = "https://steamcommunity.com/id/n3ontm"
url = "https://steamcommunity.com/id/n3ontm"
};
//----------------------------------------------------------------------------------------------------

View File

@ -49,11 +49,11 @@ int g_iLastReportID;
public Plugin myinfo =
{
name = "Discord core",
author = "Obus and Neon",
name = "Discord core",
author = "Obus and Neon",
description = "Chat- & Rcon-Support",
version = "1.2.0",
url = ""
version = "1.2.0",
url = ""
}
public APLRes AskPluginLoad2(Handle hThis, bool bLate, char[] sError, int err_max)
@ -530,7 +530,7 @@ stock void Discord_POST(const char[] sURL, char[] sText, bool bUsingUsername=fal
{
Format(sSafeText, sizeof(sSafeText), "%s", sText);
}
if (bTimestamp)
{
int iTime = GetTime();

View File

@ -2,13 +2,13 @@
#include <cstrike>
#include <zombiereloaded>
public Plugin myinfo =
public Plugin myinfo =
{
name = "InfectionExploitFix",
author = "zaCade & Neon",
name = "InfectionExploitFix",
author = "zaCade & Neon",
description = "Fixes Infection Dodge Exploit",
version = "1.0",
url = ""
version = "1.0",
url = ""
}
#pragma semicolon 1

View File

@ -19,7 +19,7 @@ public Plugin myinfo =
author = "Neon",
description = "",
version = "1.0.0",
url = "https://steamcommunity.com/id/n3ontm"
url = "https://steamcommunity.com/id/n3ontm"
};
//----------------------------------------------------------------------------------------------------

View File

@ -12,27 +12,27 @@ ConVar g_cvarMaximumStreak = null;
bool g_bIsMotherZM[MAXPLAYERS+1] = false;
int g_iKillStreak[MAXPLAYERS+1] = 0;
public Plugin myinfo =
public Plugin myinfo =
{
name = "KillStreaks",
author = "Neon",
name = "KillStreaks",
author = "Neon",
description = "Recreation of the original HLSTATS Killstreaks for Zombies only + new MotherZM-Win event",
version = "1.1",
url = "https://steamcommunity.com/id/n3ontm"
version = "1.1",
url = "https://steamcommunity.com/id/n3ontm"
};
public void OnPluginStart()
{
{
g_cvarMinimumStreak = CreateConVar("sm_killstreaks_min", "2", "amount of kills required for the lowest killstreak", 0, true, 0.0);
g_cvarMaximumStreak = CreateConVar("sm_killstreaks_max", "12", "amount of kills required for the highest killstreak", 0, true, 0.0);
HookEvent("round_end", OnRoundEnding, EventHookMode_Pre);
HookEvent("player_spawn", OnClientSpawn);
HookEvent("player_death", OnClientDeath, EventHookMode_Pre);
}
public void OnMapStart()
{
{
GetTeams();
}
@ -40,7 +40,7 @@ public void ZR_OnClientInfected(int client, int attacker, bool motherInfect, boo
{
if (motherInfect)
g_bIsMotherZM[client] = true;
if (attacker > -1)
g_iKillStreak[attacker] += 1;
}
@ -65,7 +65,7 @@ public void OnClientDeath(Event hEvent, const char[] sEvent, bool bDontBroadcast
public void OnRoundEnding(Event hEvent, const char[] sEvent, bool bDontBroadcast)
{
int iReason = hEvent.GetInt("reason");
if (iReason != view_as<int>(CSRoundEnd_GameStart))
{
for (int client = 1; client <= MaxClients; client++)
@ -74,9 +74,9 @@ public void OnRoundEnding(Event hEvent, const char[] sEvent, bool bDontBroadcast
{
if ((ZR_IsClientZombie(client)) && (g_bIsMotherZM[client]))
LogPlayerEvent(client, "triggered", "ze_m_zombies_win");
EndKillStreak(client);
}
}
}
}
}
@ -87,10 +87,10 @@ public void EndKillStreak(int client)
{
if (g_iKillStreak[client] > g_cvarMaximumStreak.IntValue)
g_iKillStreak[client] = g_cvarMaximumStreak.IntValue;
char StrEventName[32];
char StrEventName[32];
if(g_bIsMotherZM[client])
{
{
Format(StrEventName, sizeof(StrEventName), "ze_m_kill_streak_%d", g_iKillStreak[client]);
LogPlayerEvent(client, "triggered", StrEventName);
}
@ -98,9 +98,9 @@ public void EndKillStreak(int client)
{
Format(StrEventName, sizeof(StrEventName), "ze_kill_streak_%d", g_iKillStreak[client]);
LogPlayerEvent(client, "triggered", StrEventName);
}
}
ResetClient(client);
}
}
}
public void ResetClient(int client)

View File

@ -2,110 +2,84 @@
#include <cstrike>
#include <zombiereloaded>
new bool:G_bIsHuman[66];
new bool:G_bIsZombie[66];
new bool:G_bIsHuman[MAXPLAYERS+1];
new bool:G_bIsZombie[MAXPLAYERS+1];
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public Plugin myinfo =
{
name = "MVP_Stars",
author = "zaCade",
description = "",
version = "1.0",
url = ""
name = "MVP_Stars",
author = "zaCade",
description = "",
version = "1.0",
url = ""
};
public void OnPluginStart()
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public OnPluginStart()
{
HookEvent("round_start", Event_RoundStart, EventHookMode:1);
HookEvent("round_end", Event_RoundEnd, EventHookMode:1);
HookEvent("round_start", Event_RoundStart);
HookEvent("round_end", Event_RoundEnd);
}
public void ZR_OnClientInfected(int client, int attacker, bool motherInfect, bool respawnOverride, bool respawn)
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public ZR_OnClientInfected(client, attacker, bool:motherinfect, bool:respawnoverride, bool:respawn)
{
G_bIsHuman[client] = 0;
G_bIsZombie[client] = 1;
G_bIsHuman[client] = false;
G_bIsZombie[client] = true;
}
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public ZR_OnClientHumanPost(client, bool:respawn, bool:protect)
{
G_bIsHuman[client] = 1;
G_bIsZombie[client] = 0;
G_bIsHuman[client] = true;
G_bIsZombie[client] = false;
}
public Action:Event_RoundStart(Handle:event, String:name[], bool:dontBroadcast)
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public Action:Event_RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
{
new client = 1;
while (client <= MaxClients)
for (new client = 1; client <= MaxClients; client++)
{
G_bIsHuman[client] = 1;
G_bIsZombie[client] = 0;
client++;
G_bIsHuman[client] = true;
G_bIsZombie[client] = false;
}
return Action:0;
}
public Action:Event_RoundEnd(Handle:event, String:name[], bool:dontBroadcast)
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public Action:Event_RoundEnd(Handle:event, const String:name[], bool:dontBroadcast)
{
switch (GetEventInt(event, "winner"))
switch(GetEventInt(event, "winner"))
{
case 2:
{
CreateTimer(0.2, OnZombiesWin, any:0, 2);
}
case 3:
{
CreateTimer(0.2, OnHumansWin, any:0, 2);
}
default:
{
}
case(CS_TEAM_CT): CreateTimer(0.2, OnHumansWin, INVALID_HANDLE, TIMER_FLAG_NO_MAPCHANGE);
}
return Action:0;
}
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public Action:OnHumansWin(Handle:timer)
{
new client = 1;
while (client <= MaxClients)
for (new client = 1; client <= MaxClients; client++)
{
new var1;
if (IsClientInGame(client) && IsPlayerAlive(client) && !IsClientObserver(client) && !IsFakeClient(client))
{
new var2;
if (G_bIsHuman[client] && !G_bIsZombie[client])
{
CS_SetMVPCount(client, CS_GetMVPCount(client) + 1);
new String:sAuthID[64];
if (!GetClientAuthString(client, sAuthID, 64, true))
{
Format(sAuthID, 64, "UNKNOWN");
}
}
}
client++;
}
return Action:0;
}
public Action:OnZombiesWin(Handle:timer)
{
new client = 1;
while (client <= MaxClients)
{
new var1;
if (IsClientInGame(client) && IsPlayerAlive(client) && !IsClientObserver(client) && !IsFakeClient(client))
{
new var2;
if (G_bIsZombie[client] && !G_bIsHuman[client])
{
new String:sAuthID[64];
if (!GetClientAuthString(client, sAuthID, 64, true))
{
Format(sAuthID, 64, "UNKNOWN");
}
}
}
client++;
}
return Action:0;
}

View File

@ -9,11 +9,11 @@
public Plugin myinfo =
{
name = "MakoVoteSystem",
author = "Neon",
name = "MakoVoteSystem",
author = "Neon",
description = "MakoVoteSystem",
version = "1.0",
url = "https://steamcommunity.com/id/n3ontm"
version = "1.0",
url = "https://steamcommunity.com/id/n3ontm"
}
#define NUMBEROFSTAGES 6
@ -39,14 +39,14 @@ public void OnPluginStart()
public void OnMapStart()
{
VerifyMap();
PrecacheSound("#unloze/Pendulum - Witchcraft.mp3", true);
AddFileToDownloadsTable("sound/unloze/Pendulum - Witchcraft.mp3");
bStartVoteNextRound = false;
for (int i = 0; i <= (NUMBEROFSTAGES - 1); i++)
g_bOnCooldown[i] = false;
g_bOnCooldown[i] = false;
}
public Action VerifyMap()
@ -73,16 +73,16 @@ public void OnEntitySpawned(int iEntity)
{
if (g_bVoteFinished)
return;
char sTargetname[128];
GetEntPropString(iEntity, Prop_Data, "m_iName", sTargetname, sizeof(sTargetname));
char sClassname[128];
GetEdictClassname(iEntity, sClassname, sizeof(sClassname));
if ((strcmp(sTargetname, "espad") != 0) && (strcmp(sTargetname, "ss_slow") != 0) && (strcmp(sClassname, "ambient_generic") == 0))
{
AcceptEntityInput(iEntity, "Kill");
}
}
}
public void OnRoundStart(Event hEvent, const char[] sEvent, bool bDontBroadcast)
@ -92,87 +92,87 @@ public void OnRoundStart(Event hEvent, const char[] sEvent, bool bDontBroadcast)
g_CountdownTimer = CreateTimer(1.0, StartVote, INVALID_HANDLE, TIMER_REPEAT|TIMER_FLAG_NO_MAPCHANGE);
bStartVoteNextRound = false;
}
if (!(g_bVoteFinished))
{
int iStrip = FindEntityByTargetname(INVALID_ENT_REFERENCE, "race_game_zone", "game_zone_player");
{
int iStrip = FindEntityByTargetname(INVALID_ENT_REFERENCE, "race_game_zone", "game_zone_player");
if (iStrip != INVALID_ENT_REFERENCE)
AcceptEntityInput(iStrip, "FireUser1");
int iCounter = FindEntityByTargetname(INVALID_ENT_REFERENCE, "Level_Counter", "math_counter");
int iCounter = FindEntityByTargetname(INVALID_ENT_REFERENCE, "Level_Counter", "math_counter");
if (iCounter != INVALID_ENT_REFERENCE)
AcceptEntityInput(iCounter, "Kill");
int iDestination = FindEntityByTargetname(INVALID_ENT_REFERENCE, "arriba2ex", "info_teleport_destination");
if (iDestination != INVALID_ENT_REFERENCE)
{
SetVariantString("origin -9350 4550 100");
AcceptEntityInput(iDestination, "AddOutput");
SetVariantString("angles 0 -90 0");
AcceptEntityInput(iDestination, "AddOutput");
AcceptEntityInput(iDestination, "AddOutput");
}
int iTeleport = FindEntityByTargetname(INVALID_ENT_REFERENCE, "teleporte_extreme", "trigger_teleport");
if (iTeleport != INVALID_ENT_REFERENCE)
AcceptEntityInput(iTeleport, "Enable");
int iBarrerasfinal2 = FindEntityByTargetname(INVALID_ENT_REFERENCE, "barrerasfinal2", "func_breakable");
if (iBarrerasfinal2 != INVALID_ENT_REFERENCE)
AcceptEntityInput(iBarrerasfinal2, "Break");
int iBarrerasfinal = FindEntityByTargetname(INVALID_ENT_REFERENCE, "barrerasfinal", "prop_dynamic");
if (iBarrerasfinal != INVALID_ENT_REFERENCE)
AcceptEntityInput(iBarrerasfinal, "Kill");
int iPush = FindEntityByTargetname(INVALID_ENT_REFERENCE, "race_push", "trigger_push");
if (iPush != INVALID_ENT_REFERENCE)
AcceptEntityInput(iPush, "Kill");
int iFilter = FindEntityByTargetname(INVALID_ENT_REFERENCE, "humanos", "filter_activator_team");
if (iFilter != INVALID_ENT_REFERENCE)
AcceptEntityInput(iFilter, "Kill");
int iTemp1 = FindEntityByTargetname(INVALID_ENT_REFERENCE, "ex2_laser_1_temp", "point_template");
if (iTemp1 != INVALID_ENT_REFERENCE)
{
DispatchKeyValue(iTemp1, "OnEntitySpawned", "ex2_laser_1_hurt,SetDamage,0,0,-1");
DispatchKeyValue(iTemp1, "OnEntitySpawned", "ex2_laser_1_hurt,AddOutput,OnStartTouch !activator:AddOutput:origin -7000 -1000 100:0:-1,0,-1");
}
int iTemp2 = FindEntityByTargetname(INVALID_ENT_REFERENCE, "ex2_laser_2_temp", "point_template");
if (iTemp2 != INVALID_ENT_REFERENCE)
{
DispatchKeyValue(iTemp2, "OnEntitySpawned", "ex2_laser_2_hurt,SetDamage,0,0,-1");
DispatchKeyValue(iTemp2, "OnEntitySpawned", "ex2_laser_2_hurt,AddOutput,OnStartTouch !activator:AddOutput:origin -7000 -1000 100:0:-1,0,-1");
}
int iTemp3 = FindEntityByTargetname(INVALID_ENT_REFERENCE, "ex2_laser_3_temp", "point_template");
if (iTemp3 != INVALID_ENT_REFERENCE)
{
DispatchKeyValue(iTemp3, "OnEntitySpawned", "ex2_laser_3_hurt,SetDamage,0,0,-1");
DispatchKeyValue(iTemp3, "OnEntitySpawned", "ex2_laser_3_hurt,AddOutput,OnStartTouch !activator:AddOutput:origin -7000 -1000 100:0:-1,0,-1");
}
int iTemp4 = FindEntityByTargetname(INVALID_ENT_REFERENCE, "ex2_laser_4_temp", "point_template");
if (iTemp4 != INVALID_ENT_REFERENCE)
{
DispatchKeyValue(iTemp4, "OnEntitySpawned", "ex2_laser_4_hurt,SetDamage,0,0,-1");
DispatchKeyValue(iTemp4, "OnEntitySpawned", "ex2_laser_4_hurt,AddOutput,OnStartTouch !activator:AddOutput:origin -7000 -1000 100:0:-1,0,-1");
}
}
int iLaserTimer = FindEntityByTargetname(INVALID_ENT_REFERENCE, "cortes2", "logic_timer");
if (iLaserTimer != INVALID_ENT_REFERENCE)
AcceptEntityInput(iLaserTimer, "Enable");
int iGameText = FindEntityByTargetname(INVALID_ENT_REFERENCE, "Level_Text", "game_text");
if (iGameText != INVALID_ENT_REFERENCE)
AcceptEntityInput(iGameText, "Kill");
int iNewGameText;
iNewGameText = CreateEntityByName("game_text");
iNewGameText = CreateEntityByName("game_text");
DispatchKeyValue(iNewGameText, "targetname", "intermission_game_text");
DispatchKeyValue(iNewGameText, "channel", "4");
DispatchKeyValue(iNewGameText, "spawnflags", "1");
@ -189,7 +189,7 @@ public void OnRoundStart(Event hEvent, const char[] sEvent, bool bDontBroadcast)
DispatchSpawn(iNewGameText);
SetVariantString("!activator");
AcceptEntityInput(iNewGameText, "FireUser1");
int iMusic = FindEntityByTargetname(INVALID_ENT_REFERENCE, "ss_slow", "ambient_generic");
if (iMusic != INVALID_ENT_REFERENCE)
{
@ -204,7 +204,7 @@ public void GenerateArray()
{
int iBlockSize = ByteCountToCells(PLATFORM_MAX_PATH);
g_StageList = CreateArray(iBlockSize);
for (int i = 0; i <= (NUMBEROFSTAGES - 1); i++)
PushArrayString(g_StageList, g_sStageName[i]);
@ -225,27 +225,27 @@ public void GenerateArray()
public Action Command_StartVote(int args)
{
int iCurrentStage = GetCurrentStage();
if (iCurrentStage > -1)
g_bOnCooldown[iCurrentStage] = true;
int iOnCD = 0;
for (int i = 0; i <= (NUMBEROFSTAGES - 1); i++)
{
if (g_bOnCooldown[i])
iOnCD += 1;
}
if (iOnCD >= 3)
{
for (int i = 0; i <= (NUMBEROFSTAGES - 1); i++)
g_bOnCooldown[i] = false;
}
}
g_bVoteFinished = false;
GenerateArray();
bStartVoteNextRound = true;
return Plugin_Handled;
}
@ -280,7 +280,7 @@ public void InitiateVote()
{
char sBuffer[128];
GetArrayString(g_StageList, i, sBuffer, sizeof(sBuffer));
for (int i = 0; i <= (NUMBEROFSTAGES - 1); i++)
{
if (strcmp(sBuffer, g_sStageName[i]) == 0)
@ -289,8 +289,8 @@ public void InitiateVote()
AddMenuItem(g_VoteMenu, sBuffer, sBuffer, ITEMDRAW_DISABLED);
else
AddMenuItem(g_VoteMenu, sBuffer, sBuffer);
}
}
}
}
}
SetMenuOptionFlags(g_VoteMenu, MENUFLAG_BUTTON_NOVOTE);
@ -306,12 +306,12 @@ public int Handler_MakoVoteMenu(Handle menu, MenuAction action, int param1, int
case MenuAction_End:
{
CloseHandle(menu);
if (param1 != -1)
{
g_bVoteFinished = true;
float fDelay = 3.0;
CS_TerminateRound(fDelay, CSRoundEnd_GameStart, false);
CS_TerminateRound(fDelay, CSRoundEnd_GameStart, false);
}
}
}
@ -328,7 +328,7 @@ public int MenuHandler_NotifyPanel(Menu hMenu, MenuAction iAction, int iParam1,
}
public void Handler_SettingsVoteFinished(Handle menu, int num_votes, int num_clients, const int[][] client_info, int num_items, const int[][] item_info)
{
{
int highest_votes = item_info[0][VOTEINFO_ITEM_VOTES];
int required_percent = 60;
int required_votes = RoundToCeil(float(num_votes) * float(required_percent) / 100);
@ -362,15 +362,15 @@ public void Handler_VoteFinishedGeneric(Handle menu, int num_votes, int num_clie
float fPercentage = float(item_info[0][VOTEINFO_ITEM_VOTES] * 100) / float(num_votes);
CPrintToChatAll("{green}[MakoVote] {white}Vote Finished! Winner: {red}%s{white} with %d%% of %d votes!", sWinner, RoundToFloor(fPercentage), num_votes);
for (int i = 0; i <= (NUMBEROFSTAGES - 1); i++)
{
if (strcmp(sWinner, g_sStageName[i]) == 0)
g_Winnerstage = i;
}
ServerCommand("sm_stage %d", (g_Winnerstage + 4));
float fDelay = 3.0;
CS_TerminateRound(fDelay, CSRoundEnd_GameStart, false);
}
@ -378,10 +378,10 @@ public void Handler_VoteFinishedGeneric(Handle menu, int num_votes, int num_clie
public int GetCurrentStage()
{
int iLevelCounterEnt = FindEntityByTargetname(INVALID_ENT_REFERENCE, "Level_Counter", "math_counter");
int offset = FindDataMapInfo(iLevelCounterEnt, "m_OutValue");
int iCounterVal = RoundFloat(GetEntDataFloat(iLevelCounterEnt, offset));
int iCurrentStage;
if (iCounterVal == 5)
iCurrentStage = 0;
@ -395,9 +395,9 @@ public int GetCurrentStage()
iCurrentStage = 2;
else if (iCounterVal == 11)
iCurrentStage = 4;
else
else
iCurrentStage = 0;
return iCurrentStage;
}

View File

@ -144,13 +144,13 @@ public Action Command_Spectate(int client, int argc)
return Plugin_Handled;
}
public Action Command_SpectateViaConsole(int client, char[] command, int args)
public Action Command_SpectateViaConsole(int client, char[] command, int args)
{
if ((IsPlayerAlive(client) && ZR_IsClientHuman(client)) && GetTeamClientCount(CS_TEAM_T) > 0 && GetTeamAliveClientCount(CS_TEAM_T) > 0)
LogPlayerEvent(client, "triggered", "switch_to_spec");
return Plugin_Continue;
}
return Plugin_Continue;
}
// Fix spec_goto crash exploit
public Action Command_GoTo(int client, const char[] command, int argc)
@ -177,7 +177,7 @@ public Action Command_GoTo(int client, const char[] command, int argc)
stock int GetTeamAliveClientCount(int iTeam)
{
int ret = 0;
for (int i = 1; i <= MaxClients; i++)
{
if (!IsClientInGame(i) || GetClientTeam(i) != iTeam)
@ -188,6 +188,6 @@ stock int GetTeamAliveClientCount(int iTeam)
ret++;
}
return ret;
}

View File

@ -239,7 +239,7 @@ public void OnMapStart()
AddFileToDownloadsTable("materials/models/unloze/crown/crown_bump.vtf");
AddFileToDownloadsTable("materials/models/unloze/crown/crown_detail.vtf");
AddFileToDownloadsTable("materials/models/unloze/crown/crown_lightwarp.vtf");
GetTeams();
}
@ -421,7 +421,7 @@ public void OnRoundEnding(Event hEvent, const char[] sEvent, bool bDontBroadcast
{
Format(sBuffer, sizeof(sBuffer), "%s\n1. %N - %d DMG", sBuffer, iSortedList[0][0], iSortedList[0][1]);
LogPlayerEvent(iSortedList[0][0], "triggered", "top_defender");
g_iPlayerWinner[0] = GetSteamAccountID(iSortedList[0][0]);
}
@ -429,7 +429,7 @@ public void OnRoundEnding(Event hEvent, const char[] sEvent, bool bDontBroadcast
{
Format(sBuffer, sizeof(sBuffer), "%s\n2. %N - %d DMG", sBuffer, iSortedList[1][0], iSortedList[1][1]);
LogPlayerEvent(iSortedList[1][0], "triggered", "second_defender");
g_iPlayerWinner[1] = GetSteamAccountID(iSortedList[1][0]);
}
@ -437,7 +437,7 @@ public void OnRoundEnding(Event hEvent, const char[] sEvent, bool bDontBroadcast
{
Format(sBuffer, sizeof(sBuffer), "%s\n3. %N - %d DMG", sBuffer, iSortedList[2][0], iSortedList[2][1]);
LogPlayerEvent(iSortedList[2][0], "triggered", "third_defender");
g_iPlayerWinner[2] = GetSteamAccountID(iSortedList[2][0]);
}
@ -498,7 +498,7 @@ public void OnRoundEnding(Event hEvent, const char[] sEvent, bool bDontBroadcast
}
else
PrintToChatAll(sBuffer);
TopDefenders_OnRoundEnd(iPlayers, iDamage);
}
}

View File

@ -18,11 +18,11 @@ ConVar g_cCD;
//----------------------------------------------------------------------------------------------------
public Plugin myinfo =
{
name = "Trigger Rewards",
author = "Neon",
name = "Trigger Rewards",
author = "Neon",
description = "HLSTATS Trigger Rewards",
version = "1.0",
url = "https://steamcommunity.com/id/n3ontm"
version = "1.0",
url = "https://steamcommunity.com/id/n3ontm"
};
//----------------------------------------------------------------------------------------------------
@ -30,12 +30,12 @@ public Plugin myinfo =
//----------------------------------------------------------------------------------------------------
public void OnPluginStart()
{
g_cCD = CreateConVar("sm_trigger_reward_cd", "10.0", "Cooldown between HLSTATS Trigger rewards", 0, true, 0.1);
AutoExecConfig(true, "plugin.TriggerRewards");
HookEvent("round_start", OnRoundStart);
HookEntityOutput("trigger_once", "OnStartTouch", OnStartTouch);
HookEntityOutput("func_button", "OnPressed", OnPressed);
g_cCD = CreateConVar("sm_trigger_reward_cd", "10.0", "Cooldown between HLSTATS Trigger rewards", 0, true, 0.1);
AutoExecConfig(true, "plugin.TriggerRewards");
HookEvent("round_start", OnRoundStart);
HookEntityOutput("trigger_once", "OnStartTouch", OnStartTouch);
HookEntityOutput("func_button", "OnPressed", OnPressed);
}
//----------------------------------------------------------------------------------------------------
@ -51,7 +51,7 @@ public void OnMapStart()
//----------------------------------------------------------------------------------------------------
public Action OnRoundStart(Event hEvent, const char[] sEvent, bool bDontBroadcast)
{
for(int i = 0; i <= 2047; i++)
for(int i = 0; i < 2048; i++)
g_bDisabled[i] = false;
}
@ -60,13 +60,10 @@ public Action OnRoundStart(Event hEvent, const char[] sEvent, bool bDontBroadcas
//----------------------------------------------------------------------------------------------------
public void OnStartTouch(const char[] sOutput, int iCaller, int iActivator, float fDelay)
{
if (g_bDisabled[iCaller])
if (!IsValidClient(iActivator))
return;
if (g_bOnCD)
return;
if(!(1<=iActivator<= MaxClients ) || (iCaller == -1) || (!IsClientInGame(iActivator)) || !IsPlayerAlive(iActivator) || !IsPlayerAlive(iActivator))
if (g_bDisabled[iCaller] || g_bOnCD)
return;
if (!(ZR_IsClientHuman(iActivator)))
@ -88,26 +85,20 @@ public void OnPressed(const char[] sOutput, int iCaller, int iActivator, float f
if(!IsValidClient(iActivator))
return;
if (g_bDisabled[iCaller])
return;
if (g_bOnCD)
if (g_bDisabled[iCaller] || g_bOnCD)
return;
if (!(ZR_IsClientHuman(iActivator)))
return;
int iParent = -1;
iParent = GetEntPropEnt(iCaller, Prop_Data, "m_hMoveParent");
if (iParent != -1)
int iParent = INVALID_ENT_REFERENCE;
if ((iParent = GetEntPropEnt(iCaller, Prop_Data, "m_hMoveParent")) != INVALID_ENT_REFERENCE)
{
char sClassname[64];
GetEdictClassname(iParent, sClassname, sizeof(sClassname));
if ((StrContains(sClassname, "weapon", false) != -1))
if (strncmp(sClassname, "weapon_", 7, false) == 0)
return;
}
g_bDisabled[iCaller] = true;
@ -116,7 +107,6 @@ public void OnPressed(const char[] sOutput, int iCaller, int iActivator, float f
CreateTimer(g_cCD.FloatValue, ResetCD);
LogPlayerEvent(iActivator, "triggered", "trigger");
}
//----------------------------------------------------------------------------------------------------
@ -132,8 +122,8 @@ public Action ResetCD(Handle timer)
//----------------------------------------------------------------------------------------------------
public bool IsValidClient(int iClient)
{
if ( !( 1 <= iClient <= MaxClients ) || !IsClientInGame(iClient) || !IsPlayerAlive(iClient))
return false;
if ( !( 1 <= iClient <= MaxClients ) || !IsClientInGame(iClient) || !IsPlayerAlive(iClient))
return false;
return true;
return true;
}

View File

@ -9,11 +9,11 @@ ConVar g_cvFreeVIPDuration;
//----------------------------------------------------------------------------------------------------
public Plugin myinfo =
{
name = "Unloze_VIP_Test",
author = "Neon",
name = "Unloze_VIP_Test",
author = "Neon",
description = "",
version = "1.0",
url = "https://steamcommunity.com/id/n3ontm"
version = "1.0",
url = "https://steamcommunity.com/id/n3ontm"
}
//----------------------------------------------------------------------------------------------------
@ -127,7 +127,7 @@ bool CheckMYSQL(int client, bool add = false)
{
Format(sQuery, sizeof(sQuery), "INSERT INTO testvip_table (steam_auth, activated) VALUES ('%s', '%d')", sSID, iTimestamp);
SQL_FastQuery(db, sQuery);
ApplyGroupFlags(client);
PrintToChat(client, "[Unloze] Your TEST VIP will expire in %d minutes!", g_cvFreeVIPDuration.IntValue - (iTimestamp - iTimestampActivated) / 60);
PrintToChat(client, "[Unloze] You have now access to !zclass, !tag and !glow.");

View File

@ -2,119 +2,118 @@
#include <cstrike>
#include <zombiereloaded>
new bool:G_bIsHuman[66];
new bool:G_bIsZombie[66];
new bool:G_bIsHuman[MAXPLAYERS+1];
new bool:G_bIsZombie[MAXPLAYERS+1];
new Handle:G_hCvar_Difficulty_Humans;
new Handle:G_hCvar_Difficulty_Zombies;
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public Plugin:myinfo =
{
name = "HLstatsX CE Difficulty",
name = "HLstatsX CE Difficulty",
author = "zaCade + Neon",
description = "Grant points to the winning team. (zombies/humans)",
author = "zaCade + Neon",
version = "1.1",
url = ""
version = "1.1",
url = ""
};
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public OnPluginStart()
{
G_hCvar_Difficulty_Humans = CreateConVar("hlx_difficulty_humans", "0", "", 0, true, 0.0, true, 3.0);
G_hCvar_Difficulty_Zombies = CreateConVar("hlx_difficulty_zombies", "0", "", 0, true, 0.0, true, 3.0);
HookEvent("round_start", Event_RoundStart, EventHookMode:1);
HookEvent("round_end", Event_RoundEnd, EventHookMode:1);
HookEvent("round_start", Event_RoundStart);
HookEvent("round_end", Event_RoundEnd);
AutoExecConfig(true, "plugin.hlstatsx_difficulty");
}
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public ZR_OnClientInfected(client, attacker, bool:motherinfect, bool:respawnoverride, bool:respawn)
{
G_bIsHuman[client] = 0;
G_bIsZombie[client] = 1;
G_bIsHuman[client] = false;
G_bIsZombie[client] = true;
}
public void ZR_OnClientHumanPost(int client, bool respawn, bool protect)
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public ZR_OnClientHumanPost(client, bool:respawn, bool:protect)
{
G_bIsHuman[client] = 1;
G_bIsZombie[client] = 0;
G_bIsHuman[client] = true;
G_bIsZombie[client] = false;
}
public Action:Event_RoundStart(Handle:event, String:name[], bool:dontBroadcast)
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public Action:Event_RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
{
new client = 1;
while (client <= MaxClients)
for (new client = 1; client <= MaxClients; client++)
{
G_bIsHuman[client] = 1;
G_bIsZombie[client] = 0;
client++;
G_bIsHuman[client] = true;
G_bIsZombie[client] = false;
}
return Action:0;
}
public Action:Event_RoundEnd(Handle:event, String:name[], bool:dontBroadcast)
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public Action:Event_RoundEnd(Handle:event, const String:name[], bool:dontBroadcast)
{
switch (GetEventInt(event, "winner"))
switch(GetEventInt(event, "winner"))
{
case 2:
{
CreateTimer(0.2, OnZombiesWin, any:0, 2);
}
case 3:
{
CreateTimer(0.2, OnHumansWin, any:0, 2);
}
default:
{
}
case(CS_TEAM_CT): CreateTimer(0.2, OnHumansWin, INVALID_HANDLE, TIMER_FLAG_NO_MAPCHANGE);
case(CS_TEAM_T): CreateTimer(0.2, OnZombiesWin, INVALID_HANDLE, TIMER_FLAG_NO_MAPCHANGE);
}
return Action:0;
}
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public Action:OnHumansWin(Handle:timer)
{
new client = 1;
while (client <= MaxClients)
for (new client = 1; client <= MaxClients; client++)
{
new var1;
if (IsClientInGame(client) && IsPlayerAlive(client) && !IsClientObserver(client) && !IsFakeClient(client))
{
new var2;
if (G_bIsHuman[client] && !G_bIsZombie[client])
{
//CS_SetMVPCount(client, CS_GetMVPCount(client) + 1);
new String:sAuthID[64];
if (!GetClientAuthString(client, sAuthID, 64, true))
{
Format(sAuthID, 64, "UNKNOWN");
}
LogToGame("\"%N<%d><%s><%s>\" triggered \"human_win_%i\"", client, GetClientUserId(client), sAuthID, "CT", GetConVarInt(G_hCvar_Difficulty_Humans));
new String:sAuthid[64];
if (!GetClientAuthString(client, sAuthid, sizeof(sAuthid)))
Format(sAuthid, sizeof(sAuthid), "UNKNOWN");
LogToGame("\"%N<%d><%s><%s>\" triggered \"human_win_%i\"", client, GetClientUserId(client), sAuthid, "CT", GetConVarInt(G_hCvar_Difficulty_Humans));
}
}
client++;
}
return Action:0;
}
//----------------------------------------------------------------------------------------------------
// Purpose:
//----------------------------------------------------------------------------------------------------
public Action:OnZombiesWin(Handle:timer)
{
new client = 1;
while (client <= MaxClients)
for (new client = 1; client <= MaxClients; client++)
{
new var1;
if (IsClientInGame(client) && IsPlayerAlive(client) && !IsClientObserver(client) && !IsFakeClient(client))
{
new var2;
if (G_bIsZombie[client] && !G_bIsHuman[client])
{
new String:sAuthID[64];
if (!GetClientAuthString(client, sAuthID, 64, true))
{
Format(sAuthID, 64, "UNKNOWN");
}
LogToGame("\"%N<%d><%s><%s>\" triggered \"zombie_win_%i\"", client, GetClientUserId(client), sAuthID, "TERRORIST", GetConVarInt(G_hCvar_Difficulty_Zombies));
new String:sAuthid[64];
if (!GetClientAuthString(client, sAuthid, sizeof(sAuthid)))
Format(sAuthid, sizeof(sAuthid), "UNKNOWN");
LogToGame("\"%N<%d><%s><%s>\" triggered \"zombie_win_%i\"", client, GetClientUserId(client), sAuthid, "TERRORIST", GetConVarInt(G_hCvar_Difficulty_Zombies));
}
}
client++;
}
return Action:0;
}
}

View File

@ -57,11 +57,11 @@ stock void LogPlayerEvent(int client, const char[] verb, const char[] event, boo
{
float player_origin[3];
GetClientAbsOrigin(client, player_origin);
LogToGame("\"%N<%d><%s><%s>\" %s \"%s\"%s (position \"%d %d %d\")", client, GetClientUserId(client), player_authid, g_team_list[GetClientTeam(client)], verb, event, properties, RoundFloat(player_origin[0]), RoundFloat(player_origin[1]), RoundFloat(player_origin[2]));
LogToGame("\"%N<%d><%s><%s>\" %s \"%s\"%s (position \"%d %d %d\")", client, GetClientUserId(client), player_authid, g_team_list[GetClientTeam(client)], verb, event, properties, RoundFloat(player_origin[0]), RoundFloat(player_origin[1]), RoundFloat(player_origin[2]));
}
else
{
LogToGame("\"%N<%d><%s><%s>\" %s \"%s\"%s", client, GetClientUserId(client), player_authid, g_team_list[GetClientTeam(client)], verb, event, properties);
LogToGame("\"%N<%d><%s><%s>\" %s \"%s\"%s", client, GetClientUserId(client), player_authid, g_team_list[GetClientTeam(client)], verb, event, properties);
}
}
}
@ -80,20 +80,20 @@ stock void LogPlyrPlyrEvent(int client, int victim, const char[] verb, const cha
{
strcopy(victim_authid, sizeof(victim_authid), "UNKNOWN");
}
if (display_location)
{
float player_origin[3];
GetClientAbsOrigin(client, player_origin);
float victim_origin[3];
GetClientAbsOrigin(victim, victim_origin);
LogToGame("\"%N<%d><%s><%s>\" %s \"%s\" against \"%N<%d><%s><%s>\"%s (position \"%d %d %d\") (victim_position \"%d %d %d\")", client, GetClientUserId(client), player_authid, g_team_list[GetClientTeam(client)], verb, event, victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], properties, RoundFloat(player_origin[0]), RoundFloat(player_origin[1]), RoundFloat(player_origin[2]), RoundFloat(victim_origin[0]), RoundFloat(victim_origin[1]), RoundFloat(victim_origin[2]));
LogToGame("\"%N<%d><%s><%s>\" %s \"%s\" against \"%N<%d><%s><%s>\"%s (position \"%d %d %d\") (victim_position \"%d %d %d\")", client, GetClientUserId(client), player_authid, g_team_list[GetClientTeam(client)], verb, event, victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], properties, RoundFloat(player_origin[0]), RoundFloat(player_origin[1]), RoundFloat(player_origin[2]), RoundFloat(victim_origin[0]), RoundFloat(victim_origin[1]), RoundFloat(victim_origin[2]));
}
else
{
LogToGame("\"%N<%d><%s><%s>\" %s \"%s\" against \"%N<%d><%s><%s>\"%s", client, GetClientUserId(client), player_authid, g_team_list[GetClientTeam(client)], verb, event, victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], properties);
LogToGame("\"%N<%d><%s><%s>\" %s \"%s\" against \"%N<%d><%s><%s>\"%s", client, GetClientUserId(client), player_authid, g_team_list[GetClientTeam(client)], verb, event, victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], properties);
}
}
}
@ -112,19 +112,19 @@ stock void LogKill(int attacker, int victim, const char[] weapon, bool display_l
{
strcopy(victim_authid, sizeof(victim_authid), "UNKNOWN");
}
if (display_location)
{
float attacker_origin[3];
GetClientAbsOrigin(attacker, attacker_origin);
float victim_origin[3];
GetClientAbsOrigin(victim, victim_origin);
LogToGame("\"%N<%d><%s><%s>\" killed \"%N<%d><%s><%s>\" with \"%s\"%s (attacker_position \"%d %d %d\") (victim_position \"%d %d %d\")", attacker, GetClientUserId(attacker), attacker_authid, g_team_list[GetClientTeam(attacker)], victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], weapon, properties, RoundFloat(attacker_origin[0]), RoundFloat(attacker_origin[1]), RoundFloat(attacker_origin[2]), RoundFloat(victim_origin[0]), RoundFloat(victim_origin[1]), RoundFloat(victim_origin[2]));
LogToGame("\"%N<%d><%s><%s>\" killed \"%N<%d><%s><%s>\" with \"%s\"%s (attacker_position \"%d %d %d\") (victim_position \"%d %d %d\")", attacker, GetClientUserId(attacker), attacker_authid, g_team_list[GetClientTeam(attacker)], victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], weapon, properties, RoundFloat(attacker_origin[0]), RoundFloat(attacker_origin[1]), RoundFloat(attacker_origin[2]), RoundFloat(victim_origin[0]), RoundFloat(victim_origin[1]), RoundFloat(victim_origin[2]));
}
else
{
LogToGame("\"%N<%d><%s><%s>\" killed \"%N<%d><%s><%s>\" with \"%s\"%s", attacker, GetClientUserId(attacker), attacker_authid, g_team_list[GetClientTeam(attacker)], victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], weapon, properties);
LogToGame("\"%N<%d><%s><%s>\" killed \"%N<%d><%s><%s>\" with \"%s\"%s", attacker, GetClientUserId(attacker), attacker_authid, g_team_list[GetClientTeam(attacker)], victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], weapon, properties);
}
}
}
@ -138,17 +138,17 @@ stock void LogSuicide(int victim, const char[] weapon, bool display_location = f
{
strcopy(victim_authid, sizeof(victim_authid), "UNKNOWN");
}
if (display_location)
{
float victim_origin[3];
GetClientAbsOrigin(victim, victim_origin);
LogToGame("\"%N<%d><%s><%s>\" committed suicide with \"%s\"%s (victim_position \"%d %d %d\")", victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], weapon, properties, RoundFloat(victim_origin[0]), RoundFloat(victim_origin[1]), RoundFloat(victim_origin[2]));
LogToGame("\"%N<%d><%s><%s>\" committed suicide with \"%s\"%s (victim_position \"%d %d %d\")", victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], weapon, properties, RoundFloat(victim_origin[0]), RoundFloat(victim_origin[1]), RoundFloat(victim_origin[2]));
}
else
{
LogToGame("\"%N<%d><%s><%s>\" committed suicide with \"%s\"%s", victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], weapon, properties);
LogToGame("\"%N<%d><%s><%s>\" committed suicide with \"%s\"%s", victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], weapon, properties);
}
}
}
@ -168,12 +168,12 @@ stock void LogPSKillTraj(int attacker, int victim, const char[] weapon)
{
strcopy(victim_authid, sizeof(victim_authid), "UNKNOWN");
}
float attacker_origin[3];
GetClientAbsOrigin(attacker, attacker_origin);
float victim_origin[3];
GetClientAbsOrigin(victim, victim_origin);
LogToGame("[KTRAJ] \"%N<%d><%s><%s>\" killed \"%N<%d><%s><%s>\" with \"%s\" (attacker_position \"%d %d %d\") (victim_position \"%d %d %d\")", attacker, GetClientUserId(attacker), attacker_authid, g_team_list[GetClientTeam(attacker)], victim, GetClientUserId(victim), victim_authid, g_team_list[GetClientTeam(victim)], weapon, RoundFloat(attacker_origin[0]), RoundFloat(attacker_origin[1]), RoundFloat(attacker_origin[2]), RoundFloat(victim_origin[0]), RoundFloat(victim_origin[1]), RoundFloat(victim_origin[2]));
}
}
@ -195,7 +195,7 @@ stock void LogKillLoc(int attacker, int victim)
GetClientAbsOrigin(attacker, attacker_origin);
float victim_origin[3];
GetClientAbsOrigin(victim, victim_origin);
LogToGame("World triggered \"killlocation\" (attacker_position \"%d %d %d\") (victim_position \"%d %d %d\")", RoundFloat(attacker_origin[0]), RoundFloat(attacker_origin[1]), RoundFloat(attacker_origin[2]), RoundFloat(victim_origin[0]), RoundFloat(victim_origin[1]), RoundFloat(victim_origin[2]));
}
}
@ -209,7 +209,7 @@ stock void LogTeamChange(int client, int newteam, const char[] properties = "")
{
strcopy(player_authid, sizeof(player_authid), "UNKNOWN");
}
LogToGame("\"%N<%d><%s><%s>\" joined team \"%s\"%s", client, GetClientUserId(client), player_authid, g_team_list[GetClientTeam(client)], g_team_list[newteam], properties);
}
}
@ -223,7 +223,7 @@ stock void LogRoleChange(int client, const char[] role, const char[] properties
{
strcopy(player_authid, sizeof(player_authid), "UNKNOWN");
}
LogToGame("\"%N<%d><%s><%s>\" changed role to \"%s\"%s", client, GetClientUserId(client), player_authid, g_team_list[GetClientTeam(client)], role, properties);
}
}

View File

@ -22,17 +22,17 @@ Handle g_hCVar_EntityLimit = INVALID_HANDLE;
bool g_bEnabled = true;
float g_fPropOrigin[3];
public Plugin myinfo =
public Plugin myinfo =
{
name = "Unloze Season Event",
author = "Neon",
name = "Unloze Season Event",
author = "Neon",
description = "Unloze Season Event",
version = "1.1",
url = "https://steamcommunity.com/id/n3ontm"
version = "1.1",
url = "https://steamcommunity.com/id/n3ontm"
};
public void OnPluginStart()
{
{
g_hCVar_CollectablesEnabled = CreateConVar("sm_unloze_season_collectables_enabled", "1", "Spawn Collectables.", 0, true, 0.0, true, 1.0);
g_hCVar_RandomIntervalMin = CreateConVar("sm_unloze_season_random_interval_min", "60", "Minimum Interval between spawning Collectables.", 0, true, 0.0);
g_hCVar_RandomIntervalMax = CreateConVar("sm_unloze_season_random_interval_max", "120", "Maximum Interval between spawning Collectables.", 0, true, 0.0);
@ -43,39 +43,39 @@ public void OnPluginStart()
g_hCVar_HighscoreDisplay = CreateConVar("sm_unloze_season_highscore_display", "5", "Amount of Players to display via sm_highscore", 0, true, 0.0);
g_hCVar_PlayerRequirement = CreateConVar("sm_unloze_season_player_requirement", "10", "Amount of Players needed to spawn Collectables.", 0, true, 0.0);
g_hCVar_EntityLimit = CreateConVar("sm_unloze_season_entity_limit", "2000", "Entity Safety Limit.", 0, true, 0.0);
for(int client = 1; client <= MaxClients; client++)
{
if(IsClientInGame(client) && !IsFakeClient(client) && IsClientAuthorized(client))
OnClientPostAdminFilter(client);
}
HookEvent("round_start", OnRoundStart, EventHookMode_Post);
HookEvent("round_start", OnRoundStart, EventHookMode_Post);
RegConsoleCmd("sm_presents", Command_Collected, "Shows the total amount of presents you have collected so far");
RegConsoleCmd("sm_highscore", Command_HighScore, "Shows the HighScore");
RegAdminCmd("sm_reload_season", Command_ReloadFlags, ADMFLAG_ROOT);
}
public void OnMapStart()
{
{
AddFileToDownloadsTable("models/player/stenli/smite/fenrir.phy");
AddFileToDownloadsTable("models/player/stenli/smite/fenrir.sw.vtx");
AddFileToDownloadsTable("models/player/stenli/smite/fenrir.vvd");
AddFileToDownloadsTable("models/player/stenli/smite/fenrir.dx80.vtx");
AddFileToDownloadsTable("models/player/stenli/smite/fenrir.dx90.vtx");
AddFileToDownloadsTable("models/player/stenli/smite/fenrir.mdl");
AddFileToDownloadsTable("models/player/stenli/smite/fenrir.mdl");
AddFileToDownloadsTable("materials/models/player/stenli/smite/fenrir/body.vmt");
AddFileToDownloadsTable("materials/models/player/stenli/smite/fenrir/body.vtf");
AddFileToDownloadsTable("materials/models/player/stenli/smite/fenrir/body_n.vtf");
AddFileToDownloadsTable("materials/models/player/stenli/smite/fenrir/body_s.vtf");
AddFileToDownloadsTable("materials/models/player/stenli/smite/fenrir/lights.vmt");
PrecacheModel("models/player/stenli/smite/fenrir.mdl");
AddFileToDownloadsTable("models/player/vad36lollipop/lolli_new.vvd");
AddFileToDownloadsTable("models/player/vad36lollipop/lolli_new.dx80.vtx");
AddFileToDownloadsTable("models/player/vad36lollipop/lolli_new.dx90.vtx");
AddFileToDownloadsTable("models/player/vad36lollipop/lolli_new.mdl");
AddFileToDownloadsTable("models/player/vad36lollipop/lolli_new.phy");
AddFileToDownloadsTable("models/player/vad36lollipop/lolli_new.sw.vtx");
AddFileToDownloadsTable("models/player/vad36lollipop/lolli_new.sw.vtx");
AddFileToDownloadsTable("materials/models/player/vad36lollipop/tx_ch_main_juliet_skin_d_cos11.vtf");
AddFileToDownloadsTable("materials/models/player/vad36lollipop/tx_ch_main_juliet_skin_n_cos11.vtf");
AddFileToDownloadsTable("materials/models/player/vad36lollipop/hat.vmt");
@ -89,20 +89,20 @@ public void OnMapStart()
AddFileToDownloadsTable("materials/models/player/vad36lollipop/tx_ch_main_juliet_hair_n_cos11.vtf");
AddFileToDownloadsTable("materials/models/player/vad36lollipop/tx_ch_main_juliet_skin_d_cos11.vmt");
PrecacheModel("models/player/vad36lollipop/lolli_new.mdl");
AddFileToDownloadsTable("models/player/vad36santa/red.dx80.vtx");
AddFileToDownloadsTable("models/player/vad36santa/red.dx90.vtx");
AddFileToDownloadsTable("models/player/vad36santa/red.mdl");
AddFileToDownloadsTable("models/player/vad36santa/red.phy");
AddFileToDownloadsTable("models/player/vad36santa/red.sw.vtx");
AddFileToDownloadsTable("models/player/vad36santa/red.vvd");
AddFileToDownloadsTable("models/player/vad36santa/red.vvd");
AddFileToDownloadsTable("materials/models/player/vad36santa/Santa_N.vtf");
AddFileToDownloadsTable("materials/models/player/vad36santa/Santa_D.vmt");
AddFileToDownloadsTable("materials/models/player/vad36santa/Santa_D.vtf");
AddFileToDownloadsTable("materials/models/player/vad36santa/Santa_D_B.vmt");
AddFileToDownloadsTable("materials/models/player/vad36santa/Santa_D_B.vtf");
PrecacheModel("models/player/vad36santa/red.mdl");
AddFileToDownloadsTable("models/zombieden/xmas/giftbox.dx80.vtx");
AddFileToDownloadsTable("models/zombieden/xmas/giftbox.dx90.vtx");
AddFileToDownloadsTable("models/zombieden/xmas/giftbox.mdl");
@ -115,7 +115,7 @@ public void OnMapStart()
AddFileToDownloadsTable("materials/models/zombieden/xmas/gift_2.vtf");
AddFileToDownloadsTable("materials/models/zombieden/xmas/gift_lightwarp.vtf");
PrecacheModel("models/zombieden/xmas/giftbox.mdl");
AddFileToDownloadsTable("models/models_kit/xmas/xmastree_mini.dx80.vtx");
AddFileToDownloadsTable("models/models_kit/xmas/xmastree_mini.dx90.vtx");
AddFileToDownloadsTable("models/models_kit/xmas/xmastree_mini.mdl");
@ -132,7 +132,7 @@ public void OnMapStart()
AddFileToDownloadsTable("materials/models/models_kit/xmas/xmastree_miscb_skin2.vtf");
AddFileToDownloadsTable("materials/models/models_kit/xmas/xmastree_miscb_spec.vtf");
PrecacheModel("models/models_kit/xmas/xmastree_mini.mdl");
AddFileToDownloadsTable("models/models_kit/xmas/xmas_teddybear.dx80.vtx");
AddFileToDownloadsTable("models/models_kit/xmas/xmas_teddybear.dx90.vtx");
AddFileToDownloadsTable("models/models_kit/xmas/xmas_teddybear.mdl");
@ -157,9 +157,9 @@ public void OnMapStart()
AddFileToDownloadsTable("models/weapons/w_revenge_xmas_candy.sw.vtx");
AddFileToDownloadsTable("models/weapons/w_revenge_xmas_candy.vvd");
AddFileToDownloadsTable("materials/models/weapons/v_models/xmas_candy/cane.vmt");
AddFileToDownloadsTable("materials/models/weapons/v_models/xmas_candy/cane.vtf");
AddFileToDownloadsTable("materials/models/weapons/v_models/xmas_candy/cane.vtf");
PrecacheModel("models/weapons/w_revenge_xmas_candy.mdl");
AddFileToDownloadsTable("models/johny-srka/snowman.dx80.vtx");
AddFileToDownloadsTable("models/johny-srka/snowman.dx90.vtx");
AddFileToDownloadsTable("models/johny-srka/snowman.mdl");
@ -174,8 +174,8 @@ public void OnMapStart()
AddFileToDownloadsTable("materials/models/johny-srka/snowfloor002a.vtf");
AddFileToDownloadsTable("materials/models/johny-srka/wood_old.vmt");
AddFileToDownloadsTable("materials/models/johny-srka/wood_old.vtf");
PrecacheModel("models/johny-srka/snowman.mdl");
PrecacheModel("models/johny-srka/snowman.mdl");
AddFileToDownloadsTable("models/weapons/w_snowball_thrown.dx80.vtx");
AddFileToDownloadsTable("models/weapons/w_snowball_thrown.dx90.vtx");
AddFileToDownloadsTable("models/weapons/w_snowball_thrown.mdl");
@ -184,33 +184,33 @@ public void OnMapStart()
AddFileToDownloadsTable("models/weapons/w_snowball_thrown.vvd");
AddFileToDownloadsTable("materials/models/weapons/v_models/snooball/s.vmt");
AddFileToDownloadsTable("materials/models/weapons/v_models/snooball/s.vtf");
AddFileToDownloadsTable("materials/models/weapons/v_models/snooball/s_norm.vtf");
AddFileToDownloadsTable("materials/models/weapons/v_models/snooball/s_norm.vtf");
PrecacheModel("models/weapons/w_snowball_thrown.mdl");
AddFileToDownloadsTable("models/weapons/w_ornament_thrown.dx80.vtx");
AddFileToDownloadsTable("models/weapons/w_ornament_thrown.dx90.vtx");
AddFileToDownloadsTable("models/weapons/w_ornament_thrown.mdl");
AddFileToDownloadsTable("models/weapons/w_ornament_thrown.phy");
AddFileToDownloadsTable("models/weapons/w_ornament_thrown.sw.vtx");
AddFileToDownloadsTable("models/weapons/w_ornament_thrown.vvd");
AddFileToDownloadsTable("models/weapons/w_ornament_thrown.vvd");
AddFileToDownloadsTable("materials/models/weapons/v_models/ornament/ornament.vmt");
AddFileToDownloadsTable("materials/models/weapons/v_models/ornament/ornament.vtf");
AddFileToDownloadsTable("materials/models/weapons/v_models/ornament/reflect.vtf");
PrecacheModel("models/weapons/w_ornament_thrown.mdl");
PrecacheModel("models/weapons/w_ornament_thrown.mdl");
AddFileToDownloadsTable("models/weapons/w_santa_hat_thrown.dx80.vtx");
AddFileToDownloadsTable("models/weapons/w_santa_hat_thrown.dx90.vtx");
AddFileToDownloadsTable("models/weapons/w_santa_hat_thrown.mdl");
AddFileToDownloadsTable("models/weapons/w_santa_hat_thrown.phy");
AddFileToDownloadsTable("models/weapons/w_santa_hat_thrown.sw.vtx");
AddFileToDownloadsTable("models/weapons/w_santa_hat_thrown.vvd");
AddFileToDownloadsTable("models/weapons/w_santa_hat_thrown.vvd");
AddFileToDownloadsTable("materials/models/weapons/v_models/eq_fraggrenade/bonnet.vmt");
AddFileToDownloadsTable("materials/models/weapons/v_models/eq_fraggrenade/bonnet.vtf");
PrecacheModel("models/weapons/w_santa_hat_thrown.mdl");
PrecacheModel("models/weapons/w_santa_hat_thrown.mdl");
AddFileToDownloadsTable("sound/unl1/season/hohohoho.wav");
PrecacheSound("sound/unl1/season/hohohoho.wav");
PrecacheSound("sound/unl1/season/hohohoho.wav");
float fRandomInterval = GetRandomFloat(GetConVarFloat(g_hCVar_RandomIntervalMin), GetConVarFloat(g_hCVar_RandomIntervalMax));
CreateTimer(fRandomInterval, SpawnCollectable, INVALID_HANDLE, TIMER_FLAG_NO_MAPCHANGE);
}
@ -221,7 +221,7 @@ public void OnClientPostAdminFilter(int client)
}
public void OnRoundStart(Event hEvent, const char[] sEvent, bool bDontBroadcast)
{
{
CreateTimer(10.0, CheckPlayerCount, INVALID_HANDLE, TIMER_FLAG_NO_MAPCHANGE);
}
@ -236,7 +236,7 @@ public Action CheckPlayerCount(Handle timer)
}
public Action Command_ReloadFlags(int client, int args)
{
{
for(int i = 1; i <= MaxClients; i++)
{
if(IsClientInGame(i) && !IsFakeClient(i) && IsClientAuthorized(i))
@ -249,35 +249,35 @@ public Action Command_ReloadFlags(int client, int args)
public Action Command_HighScore(int client, int args)
{
char error[255];
Database db;
Database db;
if (SQL_CheckConfig("season"))
{
db = SQL_Connect("season", true, error, sizeof(error));
}
}
if (db == null)
{
LogError("Could not connect to database: %s", error);
delete db;
return Plugin_Handled;
}
char sName[MAX_NAME_LENGTH];
char sName[MAX_NAME_LENGTH];
char sQuery[255];
char sBuffer[2048] = "{green}[Unloze XMAS] {white}TOP COLLECTORS:\n";
char sTempBuffer[1024] = "";
int iCollected;
int iField;
Format(sQuery, sizeof(sQuery), "SELECT * from season_table order by collected desc limit %d", GetConVarInt(g_hCVar_HighscoreDisplay));
Format(sQuery, sizeof(sQuery), "SELECT * from season_table order by collected desc limit %d", GetConVarInt(g_hCVar_HighscoreDisplay));
DBResultSet rs;
if ((rs = SQL_Query(db, sQuery)) == null)
{
CPrintToChat(client, "{green}[Unloze XMAS] {white}Error! Could not connect to MYSQL-DB!");
CPrintToChat(client, "{green}[Unloze XMAS] {white}Error! Could not connect to MYSQL-DB!");
delete db;
delete rs;
return Plugin_Handled;
return Plugin_Handled;
}
for(int i = 1; i <= GetConVarInt(g_hCVar_HighscoreDisplay); i++)
{
rs.FetchRow();
@ -286,8 +286,8 @@ public Action Command_HighScore(int client, int args)
rs.FieldNameToNum("collected", iField);
iCollected = rs.FetchInt(iField);
Format(sTempBuffer, sizeof(sTempBuffer), "{green}%d: %s - {red}%d \n", i, sName, iCollected);
StrCat(sBuffer, sizeof(sBuffer), sTempBuffer);
}
StrCat(sBuffer, sizeof(sBuffer), sTempBuffer);
}
CPrintToChat(client, sBuffer);
delete db;
delete rs;
@ -298,9 +298,9 @@ public Action Command_Collected(int client, int args)
{
int iCollected = CheckMYSQL(client);
CPrintToChat(client, "{green}[Unloze XMAS] {white}You have collected {green}%d {white}presents so far.", iCollected);
if ((iCollected > GetConVarInt(g_hCVar_MilestoneInfection)) && (iCollected > GetConVarInt(g_hCVar_MilestoneSkin)))
CPrintToChat(client, "{green}[Unloze XMAS] {white}You have unlocked {red}all rewards{white} already.");
CPrintToChat(client, "{green}[Unloze XMAS] {white}You have unlocked {red}all rewards{white} already.");
if (iCollected < GetConVarInt(g_hCVar_MilestoneInfection))
CPrintToChat(client, "{green}[Unloze XMAS] {white}You need to collect {green}%d {white}more presents to unlock {red}INFECTION EFFECTS{white}.", GetConVarInt(g_hCVar_MilestoneInfection) - iCollected);
if (iCollected < GetConVarInt(g_hCVar_MilestoneGrenade))
@ -314,32 +314,32 @@ public Action Command_Collected(int client, int args)
public int CheckMYSQL(int client)
{
if (client == -1)
return -1;
return -1;
char error[255];
Database db;
Database db;
if (SQL_CheckConfig("season"))
{
db = SQL_Connect("season", true, error, sizeof(error));
}
}
if (db == null)
{
CPrintToChat(client, "{green}[Unloze XMAS] {white}Error! Could not connect to MYSQL-DB!");
CPrintToChat(client, "{green}[Unloze XMAS] {white}Error! Could not connect to MYSQL-DB!");
delete db;
return -1;
}
char sSID[64];
GetClientAuthId(client, AuthId_Steam2, sSID, sizeof(sSID));
char sQuery[255];
Format(sQuery, sizeof(sQuery), "SELECT collected FROM season_table WHERE steam_auth = '%s'", sSID);
Format(sQuery, sizeof(sQuery), "SELECT collected FROM season_table WHERE steam_auth = '%s'", sSID);
DBResultSet rs;
if ((rs = SQL_Query(db, sQuery)) == null)
{
delete db;
delete rs;
return -1;
}
int iCollected;
if (!(rs.RowCount > 0))
@ -356,7 +356,7 @@ public int CheckMYSQL(int client)
delete rs;
delete db;
CheckAndAddFlag(client, iCollected);
return iCollected;
return iCollected;
}
public Action SpawnCollectable(Handle timer)
@ -367,37 +367,37 @@ public Action SpawnCollectable(Handle timer)
if (!GetConVarBool(g_hCVar_CollectablesEnabled) || !(g_bEnabled))
return;
int target = GetTargetClient();
GetClientAbsOrigin(target, g_fPropOrigin);
int iRotating = SpawnRotating();
int iParticle = SpawnParticle();
int iProp = SpawnProp();
int iHitbox = SpawnHitbox(iRotating, iParticle);
int iTrigger = SpawnTrigger(iHitbox);
int iAmbient = SpawnAmbientHohohoho();
int iTrigger = SpawnTrigger(iHitbox);
int iAmbient = SpawnAmbientHohohoho();
SetVariantString("!activator");
AcceptEntityInput(iProp, "SetParent", iRotating);
AcceptEntityInput(iProp, "SetParent", iRotating);
SetVariantString("!activator");
AcceptEntityInput(iHitbox, "SetParent", iRotating);
SetVariantString("!activator");
AcceptEntityInput(iTrigger, "SetParent", iRotating);
AcceptEntityInput(iTrigger, "Enable");
int iEntityLimit = GetConVarInt(g_hCVar_EntityLimit);
if ((iRotating > iEntityLimit) || (iParticle > iEntityLimit) || (iProp > iEntityLimit) || (iHitbox > iEntityLimit) || (iTrigger > iEntityLimit) || (iAmbient > iEntityLimit))
{
AcceptEntityInput(iHitbox, "FireUser2");
CPrintToChatAll("{green}[Unloze XMAS] {white}Present removed due to {red}critical amount of entities{white}!");
}
}
}
public int GetTargetClient()
{
{
int[] iEligibleClients = new int[MaxClients];
int iClientCount = 0;
int iClientCount = 0;
for(int i = 1; i <= MaxClients; i++)
{
if(IsClientInGame(i) && IsPlayerAlive(i) && (ZR_IsClientHuman(i)))
@ -405,37 +405,37 @@ public int GetTargetClient()
iEligibleClients[iClientCount] = i;
iClientCount += 1;
}
}
}
if (iClientCount == 0)
return -1;
return -1;
int randomIndex = GetRandomInt(0, iClientCount - 1);
return iEligibleClients[randomIndex];
}
public void HookCallbackTrigger(const char[] output, int caller, int activator, float delay)
{
{
if (!ZR_IsClientHuman(activator))
{
UnhookSingleEntityOutput(caller, "OnStartTouch", HookCallbackTrigger);
AcceptEntityInput(caller, "FireUser1");
CPrintToChatAll("{green}[Unloze XMAS] {white}Zombies {red}destroyed{white} a present!");
}
}
public void HookCallback(const char[] output, int caller, int activator, float delay)
{
UpdateMYSQL();
{
UpdateMYSQL();
}
public bool UpdateMYSQL()
{
char error[255];
Database db;
Database db;
if (SQL_CheckConfig("season"))
{
db = SQL_Connect("season", true, error, sizeof(error));
}
}
if (db == null)
{
LogError("Could not connect to database: %s", error);
@ -450,23 +450,23 @@ public bool UpdateMYSQL()
char sName[MAX_NAME_LENGTH];
GetClientAuthId(client, AuthId_Steam2, sSID, sizeof(sSID));
GetClientName(client, sName, sizeof(sName));
char sQuery[255];
Format(sQuery, sizeof(sQuery), "SELECT collected FROM season_table WHERE steam_auth = '%s'", sSID);
Format(sQuery, sizeof(sQuery), "SELECT collected FROM season_table WHERE steam_auth = '%s'", sSID);
DBResultSet rs;
if ((rs = SQL_Query(db, sQuery)) == null)
{
delete db;
delete rs;
return false;
}
int iCollected;
if (!(rs.RowCount > 0))
{
iCollected = 0;
Format(sQuery, sizeof(sQuery), "INSERT INTO season_table (steam_auth, name, collected) VALUES ('%s', '%s', '%d')", sSID, sName, iCollected);
SQL_FastQuery(db, sQuery);
SQL_FastQuery(db, sQuery);
}
else
{
@ -483,13 +483,13 @@ public bool UpdateMYSQL()
CPrintToChat(client, "{green}[Unloze XMAS] {white}Your Team opened a present! You have collected {green}%d {white}presents so far.", iCollected);
if (iCollected == GetConVarInt(g_hCVar_MilestoneInfection))
CPrintToChat(client, "{green}[Unloze XMAS] {white}Congratulations! You have unlocked {red}INFECTION EFFECTS{white}!");
if (iCollected == GetConVarInt(g_hCVar_MilestoneGrenade))
CPrintToChat(client, "{green}[Unloze XMAS] {white}Congratulations! You have unlocked {red}GRENADE SKINS{white}!");
if (iCollected == GetConVarInt(g_hCVar_MilestoneSkin))
CPrintToChat(client, "{green}[Unloze XMAS] {white}Congratulations! You have unlocked {red}XMAS SKINS{white}!");
}
}
}
delete db;
return true;
@ -499,32 +499,32 @@ public void CheckAndAddFlag(int client, int iCollected)
{
if (iCollected >= GetConVarInt(g_hCVar_MilestoneSkin))
{
AddUserFlags(client, Admin_Custom4);
AddUserFlags(client, Admin_Custom4);
}
}
public int SpawnTrigger(int iHitbox)
{
char StrOutput1[128];
char StrOutput1[128];
Format(StrOutput1, sizeof(StrOutput1), "season_hitbox_%i,FireUser2,,0,1", iHitbox);
int Entity;
int Entity;
// Spawn dynamic prop entity
if ((Entity = CreateEntityByName("trigger_multiple")) == INVALID_ENT_REFERENCE)
return -1;
// Generate unique id for the entity
char StrEntityName[64];
char StrEntityName[64];
Format(StrEntityName, sizeof(StrEntityName), "trigger_multiple_%i", Entity);
// Setup entity
DispatchKeyValue(Entity, "targetname", StrEntityName);
DispatchKeyValue(Entity, "spawnflags", "1");
DispatchKeyValue(Entity, "startdisabled", "1");
DispatchKeyValueVector(Entity, "origin", g_fPropOrigin);
DispatchKeyValueVector(Entity, "origin", g_fPropOrigin);
DispatchKeyValue(Entity, "OnUser1", StrOutput1);
DispatchSpawn(Entity);
ActivateEntity(Entity);
ActivateEntity(Entity);
SetEntityModel(Entity, "models/zombieden/xmas/giftbox.mdl");
float fMinbounds[3] = {-16.0, -16.0, -1.0};
@ -541,23 +541,23 @@ public int SpawnTrigger(int iHitbox)
public int SpawnRotating()
{
int Entity;
int Entity;
// Spawn dynamic prop entity
if ((Entity = CreateEntityByName("func_rotating")) == INVALID_ENT_REFERENCE)
return -1;
// Generate unique id for the entity
char StrEntityName[64];
char StrEntityName[64];
Format(StrEntityName, sizeof(StrEntityName), "season_rotating_%i", Entity);
// Setup entity
DispatchKeyValue(Entity, "targetname", StrEntityName);
DispatchKeyValue(Entity, "maxspeed", "20");
DispatchKeyValue(Entity, "spawnflags", "65");
DispatchKeyValueVector(Entity, "origin", g_fPropOrigin);
DispatchKeyValueVector(Entity, "origin", g_fPropOrigin);
DispatchSpawn(Entity);
ActivateEntity(Entity);
ActivateEntity(Entity);
SetEntityModel(Entity, "models/zombieden/xmas/giftbox.mdl");
float fMinbounds[3] = {-1.00, -1.00, -1.00};
float fMaxbounds[3] = {1.00, 1.00, 1.00};
@ -576,7 +576,7 @@ public int SpawnProp()
// Spawn dynamic prop entity
if ((Entity = CreateEntityByName("prop_dynamic_override")) == INVALID_ENT_REFERENCE)
return -1;
// Setup entity
DispatchKeyValue(Entity, "targetname", "season_prop");
DispatchKeyValue(Entity, "model", "models/zombieden/xmas/giftbox.mdl");
@ -585,15 +585,15 @@ public int SpawnProp()
DispatchKeyValue(Entity, "disablereceiveshadows", "1");
DispatchKeyValue(Entity, "DisableBoneFollowers", "1");
DispatchKeyValueVector(Entity, "origin", g_fPropOrigin);
DispatchSpawn(Entity);
ActivateEntity(Entity);
int iRandomSkin = GetRandomInt(0, 1);
int iRandomSkin = GetRandomInt(0, 1);
if (iRandomSkin == 0)
{
SetVariantString("0");
}
}
else if (iRandomSkin == 1)
{
SetVariantString("1");
@ -608,49 +608,49 @@ public int SpawnParticle()
// Spawn dynamic prop entity
if ((Entity = CreateEntityByName("info_particle_system")) == INVALID_ENT_REFERENCE)
return -1;
// Generate unique id for the entity
char StrEntityName[64];
char StrEntityName[64];
Format(StrEntityName, sizeof(StrEntityName), "season_particle_%i", Entity);
// Setup entity
DispatchKeyValue(Entity, "targetname", StrEntityName);
DispatchKeyValue(Entity, "effect_name", "achieved");
DispatchKeyValueVector(Entity, "origin", g_fPropOrigin);
DispatchSpawn(Entity);
ActivateEntity(Entity);
ActivateEntity(Entity);
return Entity;
}
public int SpawnHitbox(int iRotatingParent, int iParticleParent)
{
char StrOutput1[128];
char StrOutput1[128];
Format(StrOutput1, sizeof(StrOutput1), "season_rotating_%i,KillHierarchy,,2.5,1", iRotatingParent);
char StrOutput2[128];
char StrOutput2[128];
Format(StrOutput2, sizeof(StrOutput2), "season_particle_%i,Start,,0,1", iParticleParent);
char StrOutput3[128];
char StrOutput3[128];
Format(StrOutput3, sizeof(StrOutput3), "season_rotating_%i,KillHierarchy,,59.0,1", iRotatingParent);
char StrOutput4[128];
char StrOutput4[128];
Format(StrOutput4, sizeof(StrOutput4), "season_sound_hohohoho,Kill,,59.0,1");
char StrOutput5[128];
char StrOutput5[128];
Format(StrOutput5, sizeof(StrOutput5), "season_rotating_%i,KillHierarchy,,0,1", iRotatingParent);
char StrOutput6[128];
char StrOutput6[128];
Format(StrOutput6, sizeof(StrOutput6), "season_sound_hohohoho,Kill,,0,1");
int Entity;
// Spawn dynamic prop entity
if ((Entity = CreateEntityByName("func_physbox_multiplayer")) == INVALID_ENT_REFERENCE)
return -1;
// Generate unique id for the entity
char StrEntityName[64];
char StrEntityName[64];
Format(StrEntityName, sizeof(StrEntityName), "season_hitbox_%i", Entity);
// Setup entity
DispatchKeyValue(Entity, "targetname", StrEntityName);
DispatchKeyValue(Entity, "model", "models/zombieden/xmas/giftbox.mdl");
@ -681,11 +681,11 @@ public int SpawnHitbox(int iRotatingParent, int iParticleParent)
public int SpawnAmbientHohohoho()
{
int Entity;
int Entity;
// Spawn dynamic prop entity
if ((Entity = CreateEntityByName("ambient_generic")) == INVALID_ENT_REFERENCE)
return -1;
// Setup entity
DispatchKeyValue(Entity, "targetname", "season_sound_hohohoho");
DispatchKeyValueVector(Entity, "origin", g_fPropOrigin);
@ -695,9 +695,9 @@ public int SpawnAmbientHohohoho()
DispatchKeyValue(Entity, "volume", "10");
DispatchKeyValue(Entity, "health", "10");
DispatchKeyValue(Entity, "pitch", "100");
DispatchKeyValue(Entity, "pitchstart", "100");
DispatchKeyValue(Entity, "pitchstart", "100");
DispatchSpawn(Entity);
ActivateEntity(Entity);
ActivateEntity(Entity);
return Entity;
}
@ -707,30 +707,30 @@ public void ZR_OnClientInfected(int client, int attacker, bool motherInfect, boo
{
float fInfectionOrigin[3];
GetClientAbsOrigin(client, fInfectionOrigin);
int EntityProp;
EntityProp = CreateEntityByName("prop_dynamic_override");
EntityProp = CreateEntityByName("prop_dynamic_override");
DispatchKeyValue(EntityProp, "targetname", "season_infection_prop");
int iRandomSkin = GetRandomInt(0, 4);
int iRandomSkin = GetRandomInt(0, 4);
if (iRandomSkin == 0)
{
DispatchKeyValue(EntityProp, "model", "models/models_kit/xmas/xmastree_mini.mdl");
DispatchKeyValue(EntityProp, "modelscale", "0.35");
DispatchKeyValue(EntityProp, "angles", "0 0 0");
}
}
else if (iRandomSkin == 1)
{
DispatchKeyValue(EntityProp, "model", "models/weapons/w_revenge_xmas_candy.mdl");
DispatchKeyValue(EntityProp, "modelscale", "1.2");
DispatchKeyValue(EntityProp, "angles", "-27 0 0");
}
}
else if (iRandomSkin == 2)
{
DispatchKeyValue(EntityProp, "model", "models/johny-srka/snowman.mdl");
DispatchKeyValue(EntityProp, "modelscale", "0.45");
DispatchKeyValue(EntityProp, "angles", "0 0 0");
}
}
else if (iRandomSkin == 3)
{
DispatchKeyValue(EntityProp, "model", "models/weapons/w_santa_hat_thrown.mdl");
@ -742,17 +742,17 @@ public void ZR_OnClientInfected(int client, int attacker, bool motherInfect, boo
{
DispatchKeyValue(EntityProp, "model", "models/models_kit/xmas/xmas_teddybear.mdl");
DispatchKeyValue(EntityProp, "modelscale", "0.7");
}
}
DispatchKeyValue(EntityProp, "disableshadows", "1");
DispatchKeyValue(EntityProp, "disablereceiveshadows", "1");
DispatchKeyValue(EntityProp, "DisableBoneFollowers", "1");
DispatchKeyValueVector(EntityProp, "origin", fInfectionOrigin);
DispatchSpawn(EntityProp);
ActivateEntity(EntityProp);
ActivateEntity(EntityProp);
int EntityRotating;
EntityRotating = CreateEntityByName("func_rotating");
EntityRotating = CreateEntityByName("func_rotating");
DispatchKeyValue(EntityRotating, "targetname", "season_infection_rotating");
DispatchKeyValue(EntityRotating, "maxspeed", "13");
DispatchKeyValue(EntityRotating, "spawnflags", "65");
@ -760,8 +760,8 @@ public void ZR_OnClientInfected(int client, int attacker, bool motherInfect, boo
DispatchKeyValue(EntityRotating, "OnUser1", "!self,KillHierarchy,,45,1");
DispatchKeyValue(EntityRotating, "OnUser2", "!self,KillHierarchy,,0,1");
DispatchSpawn(EntityRotating);
ActivateEntity(EntityRotating);
ActivateEntity(EntityRotating);
SetEntityModel(EntityRotating, "models/models_kit/xmas/xmastree_mini.mdl");
float fMinbounds[3] = {-1.00, -1.00, -1.00};
float fMaxbounds[3] = {1.00, 1.00, 1.00};
@ -771,17 +771,17 @@ public void ZR_OnClientInfected(int client, int attacker, bool motherInfect, boo
int enteffects = GetEntProp(EntityRotating, Prop_Send, "m_fEffects");
enteffects |= 32;
SetEntProp(EntityRotating, Prop_Send, "m_fEffects", enteffects);
SetVariantString("!activator");
AcceptEntityInput(EntityProp, "SetParent", EntityRotating);
AcceptEntityInput(EntityRotating, "FireUser1");
int iEntityLimit = GetConVarInt(g_hCVar_EntityLimit);
int iEntityLimit = GetConVarInt(g_hCVar_EntityLimit);
if ((EntityRotating > iEntityLimit) || (EntityProp > iEntityLimit))
{
AcceptEntityInput(EntityRotating, "FireUser2");
CPrintToChatAll("{green}[Unloze XMAS] {white}Infection Effect removed due to {red}critical amount of entities{white}!");
}
}
}
}
@ -794,33 +794,33 @@ public void OnEntityCreated(int entity, const char[] classname)
public void ProjectileSpawned(int Entity)
{
int iOwner = GetEntPropEnt(Entity, Prop_Data, "m_hOwnerEntity");
int iOwner = GetEntPropEnt(Entity, Prop_Data, "m_hOwnerEntity");
if(0 < iOwner <= MaxClients && IsClientInGame(iOwner))
{
if (CheckMYSQL(iOwner) >= GetConVarInt(g_hCVar_MilestoneGrenade))
{
int iRandomSkin = GetRandomInt(0, 3);
{
int iRandomSkin = GetRandomInt(0, 3);
if (iRandomSkin == 0)
{
SetEntityModel(Entity, "models/weapons/w_snowball_thrown.mdl");
SetVariantString("modelscale 3.0");
AcceptEntityInput(Entity, "AddOutput");
}
}
else if (iRandomSkin == 1)
{
SetEntityModel(Entity, "models/zombieden/xmas/giftbox.mdl");
SetVariantString("modelscale 0.6");
AcceptEntityInput(Entity, "AddOutput");
iRandomSkin = GetRandomInt(0, 1);
iRandomSkin = GetRandomInt(0, 1);
if (iRandomSkin == 0)
{
SetVariantString("0");
}
}
else if (iRandomSkin == 1)
{
SetVariantString("1");
}
AcceptEntityInput(Entity, "Skin");
AcceptEntityInput(Entity, "Skin");
}
else if (iRandomSkin == 2)
{
@ -835,7 +835,7 @@ public void ProjectileSpawned(int Entity)
AcceptEntityInput(Entity, "AddOutput");
}
}
}
}
}
int IsValidClient(int client, bool nobots = true)