Changed ragdoll.inc to LF, removed anticamp.inc, and added copywrite notice to all files.

This commit is contained in:
Greyscale 2009-06-11 20:51:26 -07:00
parent 9e8120cc98
commit 9af3fec738
60 changed files with 1105 additions and 764 deletions

View File

@ -1,6 +1,6 @@
// ====================
// Zombie:Reloaded
// File: downloads.txt
// File: downloads.txt
// Author: Greyscale
// ====================
//

View File

@ -1,6 +1,6 @@
// ====================
// Zombie:Reloaded
// File: models.txt
// File: models.txt
// Author: Greyscale
// ====================
//

View File

@ -1,16 +1,3 @@
// /*
// * ============================================================================
// *
// * Zombie:Reloaded
// *
// * File: zombiereloaded.cfg
// * Type: Config
// * Description: Plugin cvar configuration.
// *
// * ============================================================================
// */
//
//
// Notes
// ---------------------------------------------------------------------------
// All notes are generalities, exceptions will be noted in appropriate place.

View File

@ -1,7 +1,7 @@
/**
* ====================
* Market
* File: market.inc
* File: market.inc
* Version: 1.2
* Author: Greyscale
* ====================

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: zombiereloaded.sp
* Type: Base
* Description: Plugin's base file.
* File: zombiereloaded.sp
* Type: Base
* Description: Plugin's base file.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: account.inc
* Type: Module
* Description: Handles client's accounts. (cash)
* File: account.inc
* Type: Module
* Description: Handles client's accounts. (cash)
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -1,448 +0,0 @@
/**
* ====================
* Zombie:Reloaded
* File: anticamp.inc
* Authors: Richard Helgeby
* ====================
*/
#define MAX_VOLUMES 32
enum volume
{
Float:x_min,
Float:x_max,
Float:y_min,
Float:y_max,
Float:z_min,
Float:z_max,
volume_damage,
Float:volume_interval,
Handle:volume_timer,
bool:volume_in_use
}
new volumes[MAX_VOLUMES][volume];
new volume_count;
new Float:player_loc[MAXPLAYERS + 1][3];
new Handle:hUpdateTimer;
Anticamp_Startup(bool:no_reset = false)
{
new Float:interval = GetConVarFloat(g_hCvarsList[CVAR_ANTICAMP_UPDATE_INTERVAL]);
// Create timer for updating player locations.
if (hUpdateTimer != INVALID_HANDLE)
{
KillTimer(hUpdateTimer);
hUpdateTimer = INVALID_HANDLE;
}
if (interval > 0.0)
{
hUpdateTimer = CreateTimer(interval, Event_UpdatePlayerLocations, 0, TIMER_REPEAT);
}
if (no_reset)
{
// Start existing hurt timers.
for (new vol_index = 0; vol_index < MAX_VOLUMES; vol_index++)
{
if (volumes[vol_index][volume_in_use])
{
if (volumes[vol_index][volume_timer] != INVALID_HANDLE)
{
KillTimer(volumes[vol_index][volume_timer]);
}
volumes[vol_index][volume_timer] = CreateTimer(volumes[vol_index][volume_interval], Event_HurtPlayers, vol_index, TIMER_REPEAT);
}
}
}
else
{
ResetVolumes();
}
}
Anticamp_Disable()
{
// Kill update timer.
if (hUpdateTimer != INVALID_HANDLE)
{
KillTimer(hUpdateTimer);
hUpdateTimer = INVALID_HANDLE;
}
// Kill hurt timers.
for (new vol = 0; vol < MAX_VOLUMES; vol++)
{
if (volumes[vol][volume_timer] != INVALID_HANDLE)
{
KillTimer(volumes[vol][volume_timer]);
volumes[vol][volume_timer] = INVALID_HANDLE;
}
}
}
public UpdateIntervalHook(Handle:convar, const String:oldValue[], const String:newValue[])
{
new Float:interval = StringToFloat(newValue);
if (hUpdateTimer != INVALID_HANDLE)
{
KillTimer(hUpdateTimer);
hUpdateTimer = INVALID_HANDLE;
}
if (interval > 0.0)
{
hUpdateTimer = CreateTimer(interval, Event_UpdatePlayerLocations, 0, TIMER_REPEAT);
}
}
public AnticampHook(Handle:convar, const String:oldValue[], const String:newValue[])
{
new anticamp_enabled = StringToInt(newValue);
if (anticamp_enabled)
{
Anticamp_Startup(true);
}
else
{
Anticamp_Disable();
}
}
public Action:Command_AnticampCreateVolume(client, argc)
{
// Get a unused volume index.
new vol_index = GetFreeVolumeIndex();
if (vol_index == -1)
{
ReplyToCommand(client, "Maximum volumes reached. Max: %d", MAX_VOLUMES);
return Plugin_Handled;
}
// Check arguments.
if (argc < 8)
{
ReplyToCommand(client, "Too few parameters specified. Usage: zr_anticamp_create_volume <damage> <interval> <x1> <y1> <z1> <x2> <y2> <z2>");
return Plugin_Handled;
}
decl String:arg_buffer[32];
new vol_damage;
new Float:vol_interval;
new Float:x1;
new Float:y1;
new Float:z1;
new Float:x2;
new Float:y2;
new Float:z2;
// Get arguments.
GetCmdArg(1, arg_buffer, sizeof(arg_buffer));
vol_damage = StringToInt(arg_buffer);
GetCmdArg(2, arg_buffer, sizeof(arg_buffer));
vol_interval = StringToFloat(arg_buffer);
GetCmdArg(3, arg_buffer, sizeof(arg_buffer));
x1 = StringToFloat(arg_buffer);
GetCmdArg(4, arg_buffer, sizeof(arg_buffer));
y1 = StringToFloat(arg_buffer);
GetCmdArg(5, arg_buffer, sizeof(arg_buffer));
z1 = StringToFloat(arg_buffer);
GetCmdArg(6, arg_buffer, sizeof(arg_buffer));
x2 = StringToFloat(arg_buffer);
GetCmdArg(7, arg_buffer, sizeof(arg_buffer));
y2 = StringToFloat(arg_buffer);
GetCmdArg(8, arg_buffer, sizeof(arg_buffer));
z2 = StringToFloat(arg_buffer);
// Check damage.
if (vol_damage == 0)
{
ReplyToCommand(client, "The damage specified is zero or invalid.");
return Plugin_Handled;
}
// Check interval.
if (vol_interval <= 0.0)
{
ReplyToCommand(client, "The interval specified is zero or invalid.");
return Plugin_Handled;
}
// Check if both locations are equal.
if (FloatCompare(x1, x2) == 0)
{
if (FloatCompare(y1, y2) == 0)
{
if (FloatCompare(z1, z2) == 0)
{
ReplyToCommand(client, "Cannot add hurt volume. Both locations are equal.");
return Plugin_Handled;
}
}
}
// Sort out max and min values.
if (FloatCompare(x1, x2) == 1)
{
volumes[vol_index][x_max] = x1;
volumes[vol_index][x_min] = x2;
}
else
{
volumes[vol_index][x_max] = x2;
volumes[vol_index][x_min] = x1;
}
if (FloatCompare(y1, y2) == 1)
{
volumes[vol_index][y_max] = y1;
volumes[vol_index][y_min] = y2;
}
else
{
volumes[vol_index][y_max] = y2;
volumes[vol_index][y_min] = y1;
}
if (FloatCompare(z1, z2) == 1)
{
volumes[vol_index][z_max] = z1;
volumes[vol_index][z_min] = z2;
}
else
{
volumes[vol_index][z_max] = z2;
volumes[vol_index][z_min] = z1;
}
volumes[vol_index][volume_damage] = vol_damage;
volumes[vol_index][volume_interval] = vol_interval;
volumes[vol_index][volume_timer] = CreateTimer(vol_interval, Event_HurtPlayers, vol_index, TIMER_REPEAT);
volumes[vol_index][volume_in_use] = true;
ReplyToCommand(client, "Volume created:\nid: %d\nx min:%f\ny min:%f\nz min:%f\nx max:%f\ny max:%f\nz max:%f",
vol_index,
volumes[vol_index][x_min],
volumes[vol_index][y_min],
volumes[vol_index][z_min],
volumes[vol_index][x_max],
volumes[vol_index][y_max],
volumes[vol_index][z_max]);
volume_count++;
return Plugin_Handled;
}
public Action:Command_AnticampRemoveVolume(client, argc)
{
new vol_index;
decl String:arg_buffer[32];
//decl String:client_name[192];
new Handle:vol_timer;
if (argc < 1)
{
ReplyToCommand(client, "Volume ID not specified. Usage: zr_anticamp_remove_volume <volume id>");
return Plugin_Handled;
}
GetCmdArg(1, arg_buffer, sizeof(arg_buffer));
vol_index = StringToInt(arg_buffer);
if (IsValidVolume(vol_index))
{
vol_timer = volumes[vol_index][volume_timer];
if (vol_timer != INVALID_HANDLE)
{
KillTimer(vol_timer);
volumes[vol_index][volume_timer] = INVALID_HANDLE;
}
volumes[vol_index][volume_in_use] = false;
ReplyToCommand(client, "Removed volume %d.", vol_index);
if (LogCheckFlag(LOG_GAME_EVENTS, LOG_MODULE_ANTICAMP))
{
LogMessageFormatted(client, "anticamp", "remove volume", "\"%L\" removed volume %d.", true, client, vol_index);
}
}
else
{
ReplyToCommand(client, "Invalid volume ID.");
return Plugin_Handled;
}
return Plugin_Handled;
}
public Action:Command_AnticampList(client, argc)
{
decl String:buffer[2048];
decl String:line[192];
buffer[0] = 0;
/*
id damage interval x_min y_min z_min x_max y_max z_max
0 5 1 73 -535 28 -251 -732 76
*/
StrCat(buffer, sizeof(buffer), "id damage interval x_min y_min z_min x_max y_max z_max\n");
for (new vol_index = 0; vol_index < MAX_VOLUMES; vol_index++)
{
if (volumes[vol_index][volume_in_use])
{
Format(line, sizeof(line), "%-3d %-7d %-11.1f %-7.1f %-7.1f %-7.1f %-7.1f %-7.1f %-7.1f\n",
vol_index,
volumes[vol_index][volume_damage],
volumes[vol_index][volume_interval],
volumes[vol_index][x_min],
volumes[vol_index][y_min],
volumes[vol_index][z_min],
volumes[vol_index][x_max],
volumes[vol_index][y_max],
volumes[vol_index][y_max]);
StrCat(buffer, sizeof(buffer), line);
}
}
ReplyToCommand(client, buffer);
return Plugin_Handled;
}
UpdatePlayerLocations()
{
// x = client index.
for (new x = 1; x <= MaxClients; x++)
{
// If client isn't in-game, then stop.
if (!IsClientInGame(x))
{
return;
}
GetClientAbsOrigin(x, player_loc[x]);
}
}
HurtPlayersInVolume(volume_index)
{
new client_health;
decl String:client_name[64];
decl String:buffer[192];
// x = client index.
for (new x = 1; x <= MaxClients; x++)
{
if (IsClientInGame(x) &&
IsPlayerAlive(x) &&
InfectIsClientHuman(x))
{
if (IsPlayerInVolume(x, volume_index))
{
TranslationPrintToChat(x, "Unfair camping");
client_health = GetClientHealth(x) - volumes[volume_index][volume_damage];
if (client_health > 0)
{
SetEntityHealth(x, client_health);
}
else
{
ForcePlayerSuicide(x);
GetClientName(x, client_name, sizeof(client_name));
SetGlobalTransTarget(x);
Format(buffer, sizeof(buffer), "%T", "Unfair camper slayed", LANG_SERVER, client_name, volume_index);
if (LogCheckFlag(LOG_GAME_EVENTS, LOG_MODULE_ANTICAMP))
{
LogMessageFormatted(x, "anticamp", "kill", "%s", true, buffer);
}
}
}
}
}
}
bool:IsPlayerInVolume(client, volume_index)
{
new Float:player_loc_x = player_loc[client][0];
new Float:player_loc_y = player_loc[client][1];
new Float:player_loc_z = player_loc[client][2];
new log;
log = LogCheckFlag(LOG_DEBUG_MAX_DETAIL, LOG_MODULE_ANTICAMP);
if ((player_loc_x >= volumes[volume_index][x_min]) && (player_loc_x <= volumes[volume_index][x_max]))
{
if (log) LogMessageFormatted(client, "anticamp", "IsPlayerInVolume", "Client %d matches X values.", true, client);
if ((player_loc_y >= volumes[volume_index][y_min]) && (player_loc_y <= volumes[volume_index][y_max]))
{
if (log) LogMessageFormatted(client, "anticamp", "IsPlayerInVolume", "Client %d matches Y values.", true, client);
if ((player_loc_z >= volumes[volume_index][z_min]) && (player_loc_z <= volumes[volume_index][z_max]))
{
if (log) LogMessageFormatted(client, "anticamp", "IsPlayerInVolume", "Client %d matches Z values.", true, client);
return true;
}
}
}
return false;
}
GetFreeVolumeIndex()
{
for(new vol_index = 0; vol_index < MAX_VOLUMES; vol_index++)
{
if (!volumes[vol_index][volume_in_use])
{
return vol_index;
}
}
return -1;
}
bool:IsValidVolume(vol_index)
{
if (vol_index >= 0 && vol_index < MAX_VOLUMES)
{
return true;
}
else
{
return false;
}
}
ResetVolumes()
{
for (new vol_index = 0; vol_index < MAX_VOLUMES; vol_index++)
{
volumes[vol_index][volume_in_use] = false;
if (volumes[vol_index][volume_timer] != INVALID_HANDLE)
{
KillTimer(volumes[vol_index][volume_timer]);
volumes[vol_index][volume_timer] = INVALID_HANDLE;
}
}
}
public Action:Event_UpdatePlayerLocations(Handle:Timer)
{
UpdatePlayerLocations();
}
public Action:Event_HurtPlayers(Handle:Timer, any:volume_index)
{
HurtPlayersInVolume(volume_index);
}

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: antistick.inc
* Type: Module
* Description: Antistick system.
* File: antistick.inc
* Type: Module
* Description: Antistick system.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: commands.inc
* Type: Core
* Description: Console command creation and hooking.
* File: commands.inc
* Type: Core
* Description: Console command creation and hooking.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: config.inc
* Type: Core
* Description: Config API and executing.
* File: config.inc
* Type: Core
* Description: Config API and executing.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: cvars.inc
* Type: Core
* Description: Config creation and cvar control.
* File: cvars.inc
* Type: Core
* Description: Config creation and cvar control.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/
@ -434,8 +449,8 @@ CvarsCreate()
// Jump Boost (module)
// ===========================
g_hCvarsList[CVAR_JUMPBOOST_BUNNYHOP_PROTECT] = CreateConVar("zr_jumpboost_bunnyhop_protect", "1", "Prevent players from using forward jump boost multipliers to bunny hop.");
g_hCvarsList[CVAR_JUMPBOOST_BUNNYHOP_MAX] = CreateConVar("zr_jumpboost_bunnyhop_max", "275", "The maximum horizontal velocity a player can have for any additional push to be applied, when bunny hop prevention is enabled.");
g_hCvarsList[CVAR_JUMPBOOST_BUNNYHOP_RESET] = CreateConVar("zr_jumpboost_bunnyhop_reset", "1", "Specifies whether the speed should be reset, or limited to maximum when the limit is reached.");
g_hCvarsList[CVAR_JUMPBOOST_BUNNYHOP_MAX] = CreateConVar("zr_jumpboost_bunnyhop_max", "275", "The maximum horizontal velocity a player can have for any additional push to be applied. [Dependency: zr_jumpboost_bunnyhop_protect]");
g_hCvarsList[CVAR_JUMPBOOST_BUNNYHOP_RESET] = CreateConVar("zr_jumpboost_bunnyhop_reset", "1", "Specifies whether the speed should be reset, or limited to maximum when the limit is reached. [Dependency: zr_jumpboost_bunnyhop_protect&zr_jumpboost_bunnyhop_max]");
// ===========================

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: damage.inc
* Type: Core
* Description: Modify damage stuff here.
* File: damage.inc
* Type: Core
* Description: Modify damage stuff here.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: downloads.inc
* Type: Core
* Description: Download validation.
* File: downloads.inc
* Type: Core
* Description: Download validation.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: event.inc
* Type: Core
* Description: Event hooking and forwarding.
* File: event.inc
* Type: Core
* Description: Event hooking and forwarding.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: global.inc
* Type: Core
* Description: External API.
* File: global.inc
* Type: Core
* Description: External API.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: hitgroup.inc
* Type: Core
* Description: API for loading hitgroup specific settings.
* File: hitgroup.inc
* Type: Core
* Description: API for loading hitgroup specific settings.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: infect.inc
* Type: Core
* Description: Client infection functions.
* File: infect.inc
* Type: Core
* Description: Client infection functions.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: jumpboost.inc
* Type: Module
* Description: Modified jump vector magnitudes.
* File: jumpboost.inc
* Type: Module
* Description: Modified jump vector magnitudes.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: knockback.inc
* Type: Module
* Description: Handles knockback on clients.
* File: knockback.inc
* Type: Module
* Description: Handles knockback on clients.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: log.h.inc
* Type: Core
* Description: Log header. Types and defines.
* File: log.h.inc
* Type: Core
* Description: Log header. Types and defines.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: log.inc
* Type: Core
* Description: Logging API.
* File: log.inc
* Type: Core
* Description: Logging API.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: menu.inc
* Type: Core
* Description: Base menu functions for the plugin.
* File: menu.inc
* Type: Core
* Description: Base menu functions for the plugin.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: models.inc
* Type: Core
* Description: Model validation.
* File: models.inc
* Type: Core
* Description: Model validation.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: napalm.inc
* Type: Module
* Description: Grenades burn zombies when damaged by them.
* File: napalm.inc
* Type: Module
* Description: Grenades burn zombies when damaged by them.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: overlays.inc
* Type: Core
* Description: Overlay system, separating different types into "overlay channels."
* File: overlays.inc
* Type: Core
* Description: Overlay system, separating different types into "overlay channels."
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: apply.inc
* Type: Core
* Description: Functions for applying attributes and effects on a client.
* File: apply.inc
* Type: Core
* Description: Functions for applying attributes and effects on a client.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: attributes.inc
* Type: Core
* Description: Retrieving class attributes from certain caches.
* File: attributes.inc
* Type: Core
* Description: Retrieving class attributes from certain caches.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,8 +3,24 @@
*
* Zombie:Reloaded
*
* File: classcommands.inc
* Description: Console commands for working with classes.
* File: classcommands.inc
* Type: Core
* Description: Console commands for working with classes.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,9 @@
*
* Zombie:Reloaded
*
* File: classevents.inc
* Type: Core
* Description: Functions for handling class related events.
* File: classevents.inc
* Type: Core
* Description: Functions for handling class related events.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: classmenus.inc
* Type: Core
* Description: Provides functions for managing class menus.
* File: classmenus.inc
* Type: Core
* Description: Provides functions for managing class menus.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: clientalpha.inc
* Type: Core
* Description: Handles transparency on clients.
* File: clientalpha.inc
* Type: Core
* Description: Handles transparency on clients.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: clientoverlays.inc
* Type: Core
* Description: Handles overlays on clients, as a part of class attributes.
* File: clientoverlays.inc
* Type: Core
* Description: Handles overlays on clients, as a part of class attributes.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: filtertools.inc
* Type: Core
* Description: Class system tools; validating, getting indexes or lists
* File: filtertools.inc
* Type: Core
* Description: Class system tools; validating, getting indexes or lists
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: healthregen.inc
* Type: Core
* Description: Functions for managing health regeneration on a client.
* File: healthregen.inc
* Type: Core
* Description: Functions for managing health regeneration on a client.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: playerclasses.inc
* Type: Core
* Description: Provides functions for managing classes.
* File: playerclasses.inc
* Type: Core
* Description: Provides functions for managing classes.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: respawn.inc
* Type: Module
* Description: Players come back to life
* File: respawn.inc
* Type: Module
* Description: Players come back to life
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: roundend.inc
* Type: Core
* Description: Handles round end actions.
* File: roundend.inc
* Type: Core
* Description: Handles round end actions.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: roundstart.inc
* Type: Core
* Description: Handles round start actions.
* File: roundstart.inc
* Type: Core
* Description: Handles round start actions.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: sayhooks.inc
* Type: Core
* Description: Hook plugin say commands and redirect to their handling module.
* File: sayhooks.inc
* Type: Core
* Description: Hook plugin say commands and redirect to their handling module.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: serial.inc
* Type: Core
* Description: Client serial number tracking API.
* File: serial.inc
* Type: Core
* Description: Client serial number tracking API.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: ambientsounds.inc
* Type: Core
* Description: Plays ambient sounds to clients.
* File: ambientsounds.inc
* Type: Core
* Description: Plays ambient sounds to clients.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: soundeffects.inc
* Type: Core
* Description: Basic sound-management API.
* File: soundeffects.inc
* Type: Core
* Description: Basic sound-management API.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: zombiesounds.inc
* Type: Core
* Description: Zombie sound effects.
* File: zombiesounds.inc
* Type: Core
* Description: Zombie sound effects.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: spawnprotect.inc
* Type: Module
* Description: Protects late-joining players from zombies for x seconds.
* File: spawnprotect.inc
* Type: Module
* Description: Protects late-joining players from zombies for x seconds.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: tools.inc
* Type: Core
* Description: Find offsets and signatures.
* File: tools.inc
* Type: Core
* Description: Find offsets and signatures.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: tools_functions.inc
* Type: Core
* Description: API for offsets/signatures exposed in tools.inc
* File: tools_functions.inc
* Type: Core
* Description: API for offsets/signatures exposed in tools.inc
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: translation.inc
* Type: Core
* Description: Translation parsing functions.
* File: translation.inc
* Type: Core
* Description: Translation parsing functions.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -1,138 +1,159 @@
/*
* ============================================================================
*
* Zombie:Reloaded
*
* File: ragdoll.inc
* Type: Module
* Description: Remove ragdolls with optional effects.
*
* ============================================================================
*/
#define VEFFECTS_RAGDOLL_DISSOLVE_EFFECTLESS -1
#define VEFFECTS_RAGDOLL_DISSOLVE_ENERGY 0
#define VEFFECTS_RAGDOLL_DISSOLVE_ELECTRICALH 1
#define VEFFECTS_RAGDOLL_DISSOLVE_ELECTRICALL 2
#define VEFFECTS_RAGDOLL_DISSOLVE_CORE 3
/**
* Variable to store ragdoll offset value.
*/
new g_iToolsRagdoll;
/**
* Find VAmbience-specific offsets here.
*/
RagdollOnOffsetsFound()
{
// If offset "m_iAccount" can't be found, then stop the plugin.
g_iToolsRagdoll = FindSendPropInfo("CCSPlayer", "m_hRagdoll");
if (g_iToolsRagdoll == -1)
{
LogEvent(false, LogType_Fatal, LOG_CORE_EVENTS, LogModule_VEffects, "Offsets", "Offset \"CCSPlayer::m_hRagdoll\" was not found.");
}
}
/**
* Client has been killed.
*
* @param client The client index.
*/
RagdollOnClientDeath(client)
{
new ragdoll = RagdollGetClientRagdoll(client);
// If the ragdoll is invalid, then stop.
if (ragdoll == -1)
{
return;
}
// Get the delay.
new Float:dissolvedelay = GetConVarFloat(g_hCvarsList[CVAR_VEFFECTS_RAGDOLL_DELAY]);
// If the delay is 0 or less, then remove right now.
if (dissolvedelay <= 0)
{
RagdollTimer(INVALID_HANDLE, ragdoll);
return;
}
// Create a timer to remove/dissolve ragdoll.
CreateTimer(dissolvedelay, RagdollTimer, ragdoll, TIMER_FLAG_NO_MAPCHANGE);
}
/**
* Removed a ragdoll from the game following plugin settings.
*
* @param ragdoll The ragdoll index.
*/
RagdollRemove(ragdoll)
{
// Get the dissolve type.
new dissolve = GetConVarInt(g_hCvarsList[CVAR_VEFFECTS_RAGDOLL_DISSOLVE]);
if (dissolve == VEFFECTS_RAGDOLL_DISSOLVE_EFFECTLESS)
{
// Remove entity from world.
RemoveEdict(ragdoll);
return;
}
// Prep the ragdoll for dissolving.
decl String:targetname[64];
Format(targetname, sizeof(targetname), "zr_dissolve_%d", ragdoll);
DispatchKeyValue(ragdoll, "targetname", targetname);
// Prep the dissolve entity.
new dissolver = CreateEntityByName("env_entity_dissolver");
// Set the target to the ragdoll.
DispatchKeyValue(dissolver, "target", targetname);
// Set the dissolve type.
decl String:dissolvetype[16];
Format(dissolvetype, sizeof(dissolvetype), "%d", dissolve);
DispatchKeyValue(dissolver, "dissolvetype", dissolvetype);
// Tell the entity to dissolve the ragdoll.
AcceptEntityInput(dissolver, "Dissolve");
// Remove the dissolver.
RemoveEdict(dissolver);
}
/**
* Timer callback. Removed a client's ragdoll.
*
* @param timer The timer handle.
* @param ragdoll The ragdoll index.
*/
public Action:RagdollTimer(Handle:timer, any:ragdoll)
{
// If ragdoll removal is disabled, then stop.
new bool:ragdollremove = GetConVarBool(g_hCvarsList[CVAR_VEFFECTS_RAGDOLL_REMOVE]);
if (!ragdollremove)
{
return;
}
// If the ragdoll is already gone, then stop.
if (!IsValidEdict(ragdoll))
{
return;
}
// Remove the ragdoll.
RagdollRemove(ragdoll);
}
/** Finds the ragdoll entity of a client.
* @param client The client index.
* @return The entity index of the client's ragdoll, -1 if none exists.
*/
RagdollGetClientRagdoll(client)
{
return GetEntDataEnt2(client, g_iToolsRagdoll);
/*
* ============================================================================
*
* Zombie:Reloaded
*
* File: ragdoll.inc
* Type: Module
* Description: Remove ragdolls with optional effects.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/
/**
* @section Different dissolve types.
*/
#define VEFFECTS_RAGDOLL_DISSOLVE_EFFECTLESS -1
#define VEFFECTS_RAGDOLL_DISSOLVE_ENERGY 0
#define VEFFECTS_RAGDOLL_DISSOLVE_ELECTRICALH 1
#define VEFFECTS_RAGDOLL_DISSOLVE_ELECTRICALL 2
#define VEFFECTS_RAGDOLL_DISSOLVE_CORE 3
/**
* @endsection
*/
/**
* Variable to store ragdoll offset value.
*/
new g_iToolsRagdoll;
/**
* Find VAmbience-specific offsets here.
*/
RagdollOnOffsetsFound()
{
// If offset "m_iAccount" can't be found, then stop the plugin.
g_iToolsRagdoll = FindSendPropInfo("CCSPlayer", "m_hRagdoll");
if (g_iToolsRagdoll == -1)
{
LogEvent(false, LogType_Fatal, LOG_CORE_EVENTS, LogModule_VEffects, "Offsets", "Offset \"CCSPlayer::m_hRagdoll\" was not found.");
}
}
/**
* Client has been killed.
*
* @param client The client index.
*/
RagdollOnClientDeath(client)
{
new ragdoll = RagdollGetClientRagdoll(client);
// If the ragdoll is invalid, then stop.
if (ragdoll == -1)
{
return;
}
// Get the delay.
new Float:dissolvedelay = GetConVarFloat(g_hCvarsList[CVAR_VEFFECTS_RAGDOLL_DELAY]);
// If the delay is 0 or less, then remove right now.
if (dissolvedelay <= 0)
{
RagdollTimer(INVALID_HANDLE, ragdoll);
return;
}
// Create a timer to remove/dissolve ragdoll.
CreateTimer(dissolvedelay, RagdollTimer, ragdoll, TIMER_FLAG_NO_MAPCHANGE);
}
/**
* Removed a ragdoll from the game following plugin settings.
*
* @param ragdoll The ragdoll index.
*/
RagdollRemove(ragdoll)
{
// Get the dissolve type.
new dissolve = GetConVarInt(g_hCvarsList[CVAR_VEFFECTS_RAGDOLL_DISSOLVE]);
if (dissolve == VEFFECTS_RAGDOLL_DISSOLVE_EFFECTLESS)
{
// Remove entity from world.
RemoveEdict(ragdoll);
return;
}
// Prep the ragdoll for dissolving.
decl String:targetname[64];
Format(targetname, sizeof(targetname), "zr_dissolve_%d", ragdoll);
DispatchKeyValue(ragdoll, "targetname", targetname);
// Prep the dissolve entity.
new dissolver = CreateEntityByName("env_entity_dissolver");
// Set the target to the ragdoll.
DispatchKeyValue(dissolver, "target", targetname);
// Set the dissolve type.
decl String:dissolvetype[16];
Format(dissolvetype, sizeof(dissolvetype), "%d", dissolve);
DispatchKeyValue(dissolver, "dissolvetype", dissolvetype);
// Tell the entity to dissolve the ragdoll.
AcceptEntityInput(dissolver, "Dissolve");
// Remove the dissolver.
RemoveEdict(dissolver);
}
/**
* Timer callback. Removed a client's ragdoll.
*
* @param timer The timer handle.
* @param ragdoll The ragdoll index.
*/
public Action:RagdollTimer(Handle:timer, any:ragdoll)
{
// If ragdoll removal is disabled, then stop.
new bool:ragdollremove = GetConVarBool(g_hCvarsList[CVAR_VEFFECTS_RAGDOLL_REMOVE]);
if (!ragdollremove)
{
return;
}
// If the ragdoll is already gone, then stop.
if (!IsValidEdict(ragdoll))
{
return;
}
// Remove the ragdoll.
RagdollRemove(ragdoll);
}
/** Finds the ragdoll entity of a client.
* @param client The client index.
* @return The entity index of the client's ragdoll, -1 if none exists.
*/
RagdollGetClientRagdoll(client)
{
return GetEntDataEnt2(client, g_iToolsRagdoll);
}

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: visualambience.inc
* Type: Module
* Description: Fog, light style, sky, sun rendering, etc
* File: visualambience.inc
* Type: Module
* Description: Fog, light style, sky, sun rendering, etc
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: visualeffects.inc
* Type: Module
* Description: Visual effects API.
* File: visualeffects.inc
* Type: Module
* Description: Visual effects API.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: restrict.inc
* Type: Core
* Description: Weapon restriction system.
* File: restrict.inc
* Type: Core
* Description: Weapon restriction system.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: weaponalpha.inc
* Type: Core
* Description: Weapon alpha functions, and alpha updating on drop/pickup.
* File: weaponalpha.inc
* Type: Core
* Description: Weapon alpha functions, and alpha updating on drop/pickup.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: weaponammo.inc
* Type: Core
* Description: API for all weaponammo-related functions.
* File: weaponammo.inc
* Type: Core
* Description: API for all weaponammo-related functions.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: weapons.inc
* Type: Core
* Description: API for all weapon-related functions.
* File: weapons.inc
* Type: Core
* Description: API for all weapon-related functions.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,9 @@
*
* Zombie:Reloaded
*
* File: zmarket.inc
* Type: Module
* Description: ZMarket module, provides menu of weapons to buy from.
* File: zmarket.inc
* Type: Module
* Description: ZMarket module, provides menu of weapons to buy from.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: zadmin.inc
* Type: Core
* Description: Handle admin functions and menus.
* File: zadmin.inc
* Type: Core
* Description: Handle admin functions and menus.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: zhp.inc
* Type: Module
* Description: Displays HP to zombies.
* File: zhp.inc
* Type: Module
* Description: Displays HP to zombies.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: zombiereloaded.inc
* Type: Core
* Description: General plugin functions and defines.
* File: zombiereloaded.inc
* Type: Core
* Description: General plugin functions and defines.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: zspawn.inc
* Type: Module
* Description: Handles zspawn command, spawns late-joining clients into the game.
* File: zspawn.inc
* Type: Module
* Description: Handles zspawn command, spawns late-joining clients into the game.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/

View File

@ -3,9 +3,24 @@
*
* Zombie:Reloaded
*
* File: ztele.inc
* Type: Module
* Description: ZTele handle functions.
* File: ztele.inc
* Type: Module
* Description: ZTele handle functions.
*
* Copyright (C) 2009 Greyscale, Richard Helgeby
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* ============================================================================
*/