GUBKA, i have mapconfigs, what do i need to add in the file ze_.cfg for disabling nemesis in escape maps?
veli
11-27-2016 03:40
Re: [CS:GO] Release: Zombie Plague 6.5
Try My Server with this mod guys! It is supermod. I configured it very nice with new skins, store and other cool stuff.
Knockback is perfect now.
188.165.200.186:27015
veli
11-27-2016 04:32
Re: [CS:GO] Release: Zombie Plague 6.5
Can you make that zombies can buy jetpack too? Because humans can do that and zombies not. it is not fair for zombies.
Terix
11-27-2016 08:15
Re: [CS:GO] Release: Zombie Plague 6.5
Quote:
Originally Posted by Mikado
(Post 2472858)
it depend on the map not the mod, some maps like deko2 bots are stuck there when they are infected, but on other maps like foda, dust... they are like real players
thats it, thank you !
gubka
11-27-2016 10:48
Re: [CS:GO] Release: Zombie Plague 6.5
Quote:
Originally Posted by veli
(Post 2472877)
GUBKA, i have mapconfigs, what do i need to add in the file ze_.cfg for disabling nemesis in escape maps?
Create config ze_mapname.cfg and put it the cfg/sourcemod/zombieplague/..
Put into config zp_nemesis_mode_enabled "0" // Enable nemesis mode [0-no // 1-yes]
veli
11-27-2016 11:53
Re: [CS:GO] Release: Zombie Plague 6.5
Quote:
Originally Posted by gubka
(Post 2473028)
Create config ze_mapname.cfg and put it the cfg/sourcemod/zombieplague/..
Put into config zp_nemesis_mode_enabled "0" // Enable nemesis mode [0-no // 1-yes]
Thx done. Can you add option jetpack for zombies? it is needed xD.
Learn how to do it by your self, it really easy to convert any addon to any teams
Compile it and jetpack will be for everyone
Spoiler
PHP Code:
/**
* ============================================================================
*
* Zombie Plague Mod #3 Generation
*
*
* Copyright (C) 2015 Nikita Ushakov (Ireland, Dublin)
*
* 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/>.
*
* ============================================================================
**/
public Plugin JetPack =
{
name = "JetPack",
author = "FrozDark | qubka (Nikita Ushakov)",
description = "Addon of extra items",
version = "4.0",
url = "https://forums.alliedmods.net/showthread.php?t=290657"
};
/**
* @section Information about extra items.
**/
#define ZP_ITEM_NAME "@JetPack"
#define ZP_ITEM_COST 20
#define ZP_ITEM_LEVEL 0
#define ZP_ITEM_ONLINE 0
#define ZP_ITEM_LIMIT 0
/**
* @endsection
**/
/**
* List of cvars.
**/
enum ConVarList
{
ConVar:CVAR_JETPACK_FLY,
ConVar:CVAR_JETPACK_RELOAD,
ConVar:CVAR_JETPACK_BOOST
};
/**
* Array to store cvar data in.
**/
ConVar gCvarList[ConVarList];
// Player arrays
bool gJetPack[MAXPLAYERS+1];
int gJumps[MAXPLAYERS+1];
Handle Task_JetPackReload[MAXPLAYERS+1];
// Item index
int iItem;
#pragma unused iItem
/**
* Plugin is loading.
**/
public void OnPluginStart(/*void*/)
{
// Initilizate extra item
iItem = ZP_RegisterExtraItem(ZP_ITEM_NAME, ZP_ITEM_COST, ZP_TEAM_ALL, ZP_ITEM_LEVEL, ZP_ITEM_ONLINE, ZP_ITEM_LIMIT);
// Load cvars
gCvarList[CVAR_JETPACK_FLY] = CreateConVar("zp_jetpack_flytime", "10", "Time in seconds of flying, using JetPack");
gCvarList[CVAR_JETPACK_RELOAD] = CreateConVar("zp_jetpack_reloadtime", "60", "Time in seconds to reload JetPack");
gCvarList[CVAR_JETPACK_BOOST] = CreateConVar("zp_jetpack_boost", "450.0", "The amount of boost to apply to JetPack");
// Hook server events
HookEvent("player_death", EventPlayerDeath, EventHookMode_Post);
// Add translation for buying phrase
LoadTranslations("zombieplagueitems.pharses");
}
/**
* The map is starting.
**/
public void OnMapStart(/*void*/)
{
// Sounds
FakePrecacheSound("zbm3/jetpack/fly.mp3");
}
/**
* Called once a client successfully connects.
*
* @param clientIndex The client index.
**/
public void OnClientConnected(int clientIndex)
{
#pragma unused clientIndex
/**
* Called when a client is disconnecting from the server.
*
* @param clientIndex The client index.
**/
public void OnClientDisconnect(int clientIndex)
{
#pragma unused clientIndex
/**
* Event callback (player_death)
* The player is about to die.
*
* @param gEventHook The event handle.
* @param gEventName The name of the event.
* @param dontBroadcast If true, event is broadcasted to all clients, false if not.
**/
public Action EventPlayerDeath(Event gEventHook, const char[] gEventName, bool dontBroadcast)
{
// Get all required event info
int clientIndex = GetClientOfUserId(GetEventInt(gEventHook, "userid"));
// Validate client
if (!IsPlayerExist(clientIndex, false))
{
// If the client isn't a player, a player really didn't die now. Some
// other mods might sent this event with bad data.
return;
}
/**
* Called after select an extraitem in equipment menu.
*
* @param clientIndex The client index.
* @param extraitemIndex The index of extraitem from ZP_RegisterExtraItem() native.
*
* @return Plugin_Handled or Plugin_Stop to block purhase. Anything else
* (like Plugin_Continue) to allow purhase and taking ammopacks.
**/
public Action ZP_OnExtraBuyCommand(int clientIndex, int extraitemIndex)
{
#pragma unused clientIndex
// Check the item's index
if(extraitemIndex == iItem)
{
// If you don't allowed to buy, then return ammopacks
if(ZP_IsPlayerNemesis(clientIndex) || ZP_IsPlayerSurvivor(clientIndex) || gJetPack[clientIndex])
{
return Plugin_Handled;
}
// Set jetpack variables
gJetPack[clientIndex] = true;
gJumps[clientIndex] = 0;
// Set translation target
SetGlobalTransTarget(clientIndex);
// Show message
PrintHintText(clientIndex, "%t", "@JetPack Buy");
}
// Allow buying
return Plugin_Continue;
}
/**
* Called when a clients movement buttons are being processed.
*
* @param clientIndex The client index.
* @param bitFlags Copyback buffer containing the current commands (as bitflags - see entity_prop_stocks.inc).
* @param iImpulse Copyback buffer containing the current impulse command.
* @param flVelocity Players desired velocity.
* @param flAngles Players desired view angles.
* @param weaponIndex Entity index of the new weapon if player switches weapon, 0 otherwise.
* @param iSubType Weapon subtype when selected from a menu.
* @param iCmdNum Command number. Increments from the first command sent.
* @param iTickCount Tick count. A client's prediction based on the server's GetGameTickCount value.
* @param iSeed Random seed. Used to determine weapon recoil, spread, and other predicted elements.
* @param iMouse Mouse direction (x, y).
**/
public Action OnPlayerRunCmd(int clientIndex, int &bitFlags, int &iImpulse, float flVelocity[3], float flAngles[3], int &weaponIndex, int &iSubType, int &iCmdNum, int &iTickCount, int &iSeed, int iMouse[2])
{
#pragma unused clientIndex
// Spawn the entity into the world
DispatchSpawn(nEntity1);
// Teleport to the origin
TeleportEntity(nEntity1, flOrigin, flAngle, NULL_VECTOR);
// Turn off the entity
AcceptEntityInput(nEntity1, "TurnOn");
//*********************************************************************
//* FIRE *
//*********************************************************************
// Set name of the object
Format(sSteamName, sizeof(sSteamName), "fire2%i", clientIndex);
// Spawn the entity into the world
DispatchSpawn(nEntity2);
// Teleport to the origin
TeleportEntity(nEntity2, flOrigin, flAngle, NULL_VECTOR);
// Turn off the entity
AcceptEntityInput(nEntity2, "TurnOn");
//*********************************************************************
//* OTHER *
//*********************************************************************
// Send data to the timer
DataPack hPack = CreateDataPack();
WritePackCell(hPack, nEntity1);
WritePackCell(hPack, nEntity2);
// Create a timer for deleting effect
CreateTimer(0.5, JetPackKillEffect, hPack, TIMER_FLAG_NO_MAPCHANGE | TIMER_HNDL_CLOSE);
}
}
/**
* Timer for killing jetpack's effects.
*
* @param hTimer The timer handle.
* @param hPack The data pack.
**/
public Action JetPackKillEffect(Handle hTimer, any hPack)
{
// Resets the position in a data pack
ResetPack(hPack);
// Get values from datapack
int nEntity1 = ReadPackCell(hPack);
int nEntity2 = ReadPackCell(hPack);
// Scale vector for the boost
ScaleVector(flVector, GetConVarFloat(gCvarList[CVAR_JETPACK_BOOST]));
// Push the player
TeleportEntity(clientIndex, NULL_VECTOR, NULL_VECTOR, flVector);
// Create an effect
JetPackCreateEffect(clientIndex, flOrigin, flAngle);
// Emit flying sound
EmitSoundToAll("*/zbm3/jetpack/fly.mp3", clientIndex, SNDCHAN_STATIC, SNDLEVEL_LIBRARY);
}
else
{
// Jetpack need to be reload
if(gJumps[clientIndex] == jumpsMax)
{
// Create a reloading timer
EndTimer(Task_JetPackReload[clientIndex])
Task_JetPackReload[clientIndex] = CreateTimer(float(GetConVarInt(gCvarList[CVAR_JETPACK_RELOAD])), JetPackReload, clientIndex, TIMER_FLAG_NO_MAPCHANGE);
}
// If it in process of reloading, show the message
else
{
// Set translation target
SetGlobalTransTarget(clientIndex);
// Show message
PrintHintText(clientIndex, "%t", "@Jetpack Empty");
// Block usage
return;
}
}
// Update flight counter
gJumps[clientIndex]++;
}
/**
* Timer for reload jetpack.
*
* @param hTimer The timer handle.
* @param clientIndex The client index.
**/
public Action JetPackReload(Handle hTimer, any clientIndex)
{
// Clear timer
Task_JetPackReload[clientIndex] = INVALID_HANDLE;
/**
* Delay function.
*
* @param clientIndex The client index.
* @param flDelay The delay of updating.
**/
stock bool IsDelay(int clientIndex, float flDelay)
{
// Initialize time array
static float flTime[MAXPLAYERS+1];
// Returns the game time based on the game tick
float flCurrentTime = GetEngineTime();
// Cooldown don't over yet
if ((flCurrentTime - flTime[clientIndex]) < flDelay)
{
// Block usage
return true;
}
// Update countdown time
flTime[clientIndex] = flCurrentTime;
// Allow usage
return false;
}
Dacia_Logan
11-28-2016 09:14
Re: [CS:GO] Release: Zombie Plague 6.5
gubka create one topic .
"Zombie: Plague Addons" for next addons for you mod.
veli
11-28-2016 18:03
Re: [CS:GO] Release: Zombie Plague 6.5
Quote:
Originally Posted by gubka
(Post 2473127)
Learn how to do it by your self, it really easy to convert any addon to any teams
lol i had added zp_team_zombie and it was not working. I see it must zp_team_all :)) How can i know that? Thanks for the file :D.
again; great job. Did you have a look in my server?
EDIT; now human cant buy jetpack. Not visible in the buymenu.
Compile it and jetpack will be for everyone
Spoiler
PHP Code:
/** * ============================================================================ * * Zombie Plague Mod #3 Generation * * * Copyright (C) 2015 Nikita Ushakov (Ireland, Dublin) * * 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/>. * * ============================================================================ **/
public Plugin JetPack = { name = "JetPack", author = "FrozDark | qubka (Nikita Ushakov)", description = "Addon of extra items", version = "4.0", url = "https://forums.alliedmods.net/showthread.php?t=290657" };
/** * @section Information about extra items. **/ #define ZP_ITEM_NAME "@JetPack" #define ZP_ITEM_COST 20 #define ZP_ITEM_LEVEL 0 #define ZP_ITEM_ONLINE 0 #define ZP_ITEM_LIMIT 0 /** * @endsection **/
/** * List of cvars. **/ enum ConVarList { ConVar:CVAR_JETPACK_FLY, ConVar:CVAR_JETPACK_RELOAD, ConVar:CVAR_JETPACK_BOOST };
/** * Array to store cvar data in. **/ ConVar gCvarList[ConVarList];
// Player arrays bool gJetPack[MAXPLAYERS+1]; int gJumps[MAXPLAYERS+1];
Handle Task_JetPackReload[MAXPLAYERS+1];
// Item index int iItem; #pragma unused iItem
/** * Plugin is loading. **/ public void OnPluginStart(/*void*/) { // Initilizate extra item iItem = ZP_RegisterExtraItem(ZP_ITEM_NAME, ZP_ITEM_COST, ZP_TEAM_ALL, ZP_ITEM_LEVEL, ZP_ITEM_ONLINE, ZP_ITEM_LIMIT);
// Load cvars gCvarList[CVAR_JETPACK_FLY] = CreateConVar("zp_jetpack_flytime", "10", "Time in seconds of flying, using JetPack"); gCvarList[CVAR_JETPACK_RELOAD] = CreateConVar("zp_jetpack_reloadtime", "60", "Time in seconds to reload JetPack"); gCvarList[CVAR_JETPACK_BOOST] = CreateConVar("zp_jetpack_boost", "450.0", "The amount of boost to apply to JetPack");
// Hook server events HookEvent("player_death", EventPlayerDeath, EventHookMode_Post);
// Add translation for buying phrase LoadTranslations("zombieplagueitems.pharses"); }
/** * The map is starting. **/ public void OnMapStart(/*void*/) { // Sounds FakePrecacheSound("zbm3/jetpack/fly.mp3"); }
/** * Called once a client successfully connects. * * @param clientIndex The client index. **/ public void OnClientConnected(int clientIndex) { #pragma unused clientIndex
/** * Called when a client is disconnecting from the server. * * @param clientIndex The client index. **/ public void OnClientDisconnect(int clientIndex) { #pragma unused clientIndex
/** * Event callback (player_death) * The player is about to die. * * @param gEventHook The event handle. * @param gEventName The name of the event. * @param dontBroadcast If true, event is broadcasted to all clients, false if not. **/ public Action EventPlayerDeath(Event gEventHook, const char[] gEventName, bool dontBroadcast) { // Get all required event info int clientIndex = GetClientOfUserId(GetEventInt(gEventHook, "userid"));
// Validate client if (!IsPlayerExist(clientIndex, false)) { // If the client isn't a player, a player really didn't die now. Some // other mods might sent this event with bad data. return; }
/** * Called after select an extraitem in equipment menu. * * @param clientIndex The client index. * @param extraitemIndex The index of extraitem from ZP_RegisterExtraItem() native. * * @return Plugin_Handled or Plugin_Stop to block purhase. Anything else * (like Plugin_Continue) to allow purhase and taking ammopacks. **/ public Action ZP_OnExtraBuyCommand(int clientIndex, int extraitemIndex) { #pragma unused clientIndex
// Check the item's index if(extraitemIndex == iItem) { // If you don't allowed to buy, then return ammopacks if(ZP_IsPlayerNemesis(clientIndex) || ZP_IsPlayerSurvivor(clientIndex) || gJetPack[clientIndex]) { return Plugin_Handled; }
// Set jetpack variables gJetPack[clientIndex] = true; gJumps[clientIndex] = 0;
// Set translation target SetGlobalTransTarget(clientIndex);
// Show message PrintHintText(clientIndex, "%t", "@JetPack Buy"); }
// Allow buying return Plugin_Continue; }
/** * Called when a clients movement buttons are being processed. * * @param clientIndex The client index. * @param bitFlags Copyback buffer containing the current commands (as bitflags - see entity_prop_stocks.inc). * @param iImpulse Copyback buffer containing the current impulse command. * @param flVelocity Players desired velocity. * @param flAngles Players desired view angles. * @param weaponIndex Entity index of the new weapon if player switches weapon, 0 otherwise. * @param iSubType Weapon subtype when selected from a menu. * @param iCmdNum Command number. Increments from the first command sent. * @param iTickCount Tick count. A client's prediction based on the server's GetGameTickCount value. * @param iSeed Random seed. Used to determine weapon recoil, spread, and other predicted elements. * @param iMouse Mouse direction (x, y). **/ public Action OnPlayerRunCmd(int clientIndex, int &bitFlags, int &iImpulse, float flVelocity[3], float flAngles[3], int &weaponIndex, int &iSubType, int &iCmdNum, int &iTickCount, int &iSeed, int iMouse[2]) { #pragma unused clientIndex
// Spawn the entity into the world DispatchSpawn(nEntity1);
// Teleport to the origin TeleportEntity(nEntity1, flOrigin, flAngle, NULL_VECTOR);
// Turn off the entity AcceptEntityInput(nEntity1, "TurnOn");
//********************************************************************* //* FIRE * //*********************************************************************
// Set name of the object Format(sSteamName, sizeof(sSteamName), "fire2%i", clientIndex);
// Spawn the entity into the world DispatchSpawn(nEntity2);
// Teleport to the origin TeleportEntity(nEntity2, flOrigin, flAngle, NULL_VECTOR);
// Turn off the entity AcceptEntityInput(nEntity2, "TurnOn");
//********************************************************************* //* OTHER * //*********************************************************************
// Send data to the timer DataPack hPack = CreateDataPack(); WritePackCell(hPack, nEntity1); WritePackCell(hPack, nEntity2);
// Create a timer for deleting effect CreateTimer(0.5, JetPackKillEffect, hPack, TIMER_FLAG_NO_MAPCHANGE | TIMER_HNDL_CLOSE); } }
/** * Timer for killing jetpack's effects. * * @param hTimer The timer handle. * @param hPack The data pack. **/ public Action JetPackKillEffect(Handle hTimer, any hPack) { // Resets the position in a data pack ResetPack(hPack);
// Get values from datapack int nEntity1 = ReadPackCell(hPack); int nEntity2 = ReadPackCell(hPack);
// Scale vector for the boost ScaleVector(flVector, GetConVarFloat(gCvarList[CVAR_JETPACK_BOOST]));
// Push the player TeleportEntity(clientIndex, NULL_VECTOR, NULL_VECTOR, flVector);
// Create an effect JetPackCreateEffect(clientIndex, flOrigin, flAngle);
// Emit flying sound EmitSoundToAll("*/zbm3/jetpack/fly.mp3", clientIndex, SNDCHAN_STATIC, SNDLEVEL_LIBRARY); } else { // Jetpack need to be reload if(gJumps[clientIndex] == jumpsMax) { // Create a reloading timer EndTimer(Task_JetPackReload[clientIndex]) Task_JetPackReload[clientIndex] = CreateTimer(float(GetConVarInt(gCvarList[CVAR_JETPACK_RELOAD])), JetPackReload, clientIndex, TIMER_FLAG_NO_MAPCHANGE); } // If it in process of reloading, show the message else { // Set translation target SetGlobalTransTarget(clientIndex);
// Show message PrintHintText(clientIndex, "%t", "@Jetpack Empty");
// Block usage return; } }
// Update flight counter gJumps[clientIndex]++; }
/** * Timer for reload jetpack. * * @param hTimer The timer handle. * @param clientIndex The client index. **/ public Action JetPackReload(Handle hTimer, any clientIndex) { // Clear timer Task_JetPackReload[clientIndex] = INVALID_HANDLE;