NotesWhat is notes.io?

Notes brand slogan

Notes - notes.io

/*================================================================================

---------------------------------------
-*- Zombie Plague 4.3 Includes File -*-
---------------------------------------

~~~~~~~~~~
- How To -
~~~~~~~~~~

To make use of the Zombie Plague API features in your plugin, just
add the following line at the beginning of your script:

#include <zombieplague>

~~~~~~~~~~~
- Natives -
~~~~~~~~~~~

These work just like any other functions: you may have to pass
parameters and they usually return values.

Example:

if ( is_user_alive( id ) && zp_get_user_zombie( id ) )
{
server_print( "Player %d is alive and a zombie", id )
}

~~~~~~~~~~~~
- Forwards -
~~~~~~~~~~~~

Forwards get called whenever an event happens during the game.
You need to make a public callback somewhere on your script,
and it will automatically be triggered when the event occurs.

Example:

public zp_user_infected_post( id, infector, nemesis )
{
if ( !infector || nemesis )
return;

server_print( "Player %d just got infected by %d!", id, infector )
}

Also, take note of cases when there's a suffix:

* _pre : means the forward will be called BEFORE the event happens
* _post : means it will be called AFTER the event takes place

=================================================================================*/

#if defined _zombieplague_included
#endinput
#endif
#define _zombieplague_included

/* Teams for zp_register_extra_item() */
#define ZP_TEAM_ZOMBIE (1<<0)
#define ZP_TEAM_HUMAN (1<<1)
#define ZP_TEAM_NEMESIS (1<<2)
#define ZP_TEAM_SURVIVOR (1<<3)

/* Game modes for zp_round_started() */
enum
{
MODE_INFECTION = 1,
MODE_NEMESIS,
MODE_SURVIVOR,
MODE_SWARM,
MODE_MULTI,
MODE_PLAGUE
}

/* Winner teams for zp_round_ended() */
enum
{
WIN_NO_ONE = 0,
WIN_ZOMBIES,
WIN_HUMANS
}

/* Custom forward return values */
#define ZP_PLUGIN_HANDLED 97

/**
* Returns whether a player is a zombie.
*
* @param id Player index.
* @return True if it is, false otherwise.
*/
native zp_get_user_zombie(id)

/**
* Returns whether a player is a nemesis.
*
* @param id Player index.
* @return True if it is, false otherwise.
*/
native zp_get_user_nemesis(id)

/**
* Returns whether a player is a survivor.
*
* @param id Player index.
* @return True if it is, false otherwise.
*/
native zp_get_user_survivor(id)

/**
* Returns whether a player is the first zombie.
*
* @param id Player index.
* @return True if it is, false otherwise.
*/
native zp_get_user_first_zombie(id)

/**
* Returns whether a player is the last zombie.
*
* @param id Player index.
* @return True if it is, false otherwise.
*/
native zp_get_user_last_zombie(id)

/**
* Returns whether a player is the last human.
*
* @param id Player index.
* @return True if it is, false otherwise.
*/
native zp_get_user_last_human(id)

/**
* Returns a player's current zombie class ID.
*
* @param id Player index.
* @return Internal zombie class ID, or -1 if not yet chosen.
*/
native zp_get_user_zombie_class(id)

/**
* Returns a player's next zombie class ID (for the next infection).
*
* @param id Player index.
* @return Internal zombie class ID, or -1 if not yet chosen.
*/
native zp_get_user_next_class(id)

/**
* Sets a player's next zombie class ID (for the next infection).
*
* @param id Player index.
* @param classid A valid zombie class ID.
* @return True on success, false otherwise.
*/
native zp_set_user_zombie_class(id, classid)

/**
* Returns a player's ammo pack count.
*
* @param id Player index.
* @return Number of ammo packs owned.
*/
native zp_get_user_ammo_packs(id)

/**
* Sets a player's ammo pack count.
*
* @param id Player index.
* @param amount New quantity of ammo packs owned.
*/
native zp_set_user_ammo_packs(id, amount)

/**
* Returns the default maximum health of a zombie.
*
* Note: Takes into account first zombie's HP multiplier.
*
* @param id Player index.
* @return Maximum amount of health points, or -1 if not a normal zombie.
*/
native zp_get_zombie_maxhealth(id)

/**
* Returns a player's custom flashlight batteries charge.
*
* @param id Player index.
* @return Charge percent (0 to 100).
*/
native zp_get_user_batteries(id)

/**
* Sets a player's custom flashlight batteries charge.
*
* @param id Player index.
* @param value New charge percent (0 to 100).
*/
native zp_set_user_batteries(id, charge)

/**
* Returns whether a player has night vision.
*
* @param id Player index.
* @return True if it has, false otherwise.
*/
native zp_get_user_nightvision(id)

/**
* Sets whether a player has night vision.
*
* @param id Player index.
* @param set True to give, false for removing it.
*/
native zp_set_user_nightvision(id, set)

/**
* Forces a player to become a zombie.
*
* Note: Unavailable for last human/survivor.
*
* @param id Player index to be infected.
* @param infector Player index who infected him (optional).
* @param silent If set, there will be no HUD messages or infection sounds.
* @param rewards Whether to show DeathMsg and reward frags, hp, and ammo packs to infector.
* @return True on success, false otherwise.
*/
native zp_infect_user(id, infector = 0, silent = 0, rewards = 0)

/**
* Forces a player to become a human.
*
* Note: Unavailable for last zombie/nemesis.
*
* @param id Player index to be cured.
* @param silent If set, there will be no HUD messages or antidote sounds.
* @return True on success, false otherwise.
*/
native zp_disinfect_user(id, silent = 0)

/**
* Forces a player to become a nemesis.
*
* Note: Unavailable for last human/survivor.
*
* @param id Player index to turn into nemesis.
* @return True on success, false otherwise.
*/
native zp_make_user_nemesis(id)

/**
* Forces a player to become a survivor.
*
* Note: Unavailable for last zombie/nemesis.
*
* @param id Player index to turn into survivor.
* @return True on success, false otherwise.
*/
native zp_make_user_survivor(id)

/**
* Respawns a player into a specific team.
*
* @param id Player index to be respawned.
* @param team Team to respawn the player into (ZP_TEAM_ZOMBIE or ZP_TEAM_HUMAN).
* @return True on success, false otherwise.
*/
native zp_respawn_user(id, team)

/**
* Forces a player to buy an extra item.
*
* @param id Player index.
* @param itemid A valid extra item ID.
* @param ignorecost If set, item's cost won't be deduced from player.
* @return True on success, false otherwise.
*/
native zp_force_buy_extra_item(id, itemid, ignorecost = 0)

/**
* Overrides ZP player model with a different custom model.
*
* Note: This will last until player's next infection/humanization/respawn.
*
* Note: Don't call more often than absolutely needed.
*
* @param id Player index.
* @param newmodel Model name.
* @param modelindex Modelindex (optional).
*/
native zp_override_user_model(id, const newmodel[], modelindex = 0)

/**
* Returns whether the ZP round has started, i.e. first zombie
* has been chosen or a game mode has begun.
*
* @return 0 - Round not started
* 1 - Round started
* 2 - Round starting
*/
native zp_has_round_started()

/**
* Returns whether the current round is a nemesis round.
*
* @return True if it is, false otherwise.
*/
native zp_is_nemesis_round()

/**
* Returns whether the current round is a survivor round.
*
* @return True if it is, false otherwise.
*/
native zp_is_survivor_round()

/**
* Returns whether the current round is a swarm round.
*
* @return True if it is, false otherwise.
*/
native zp_is_swarm_round()

/**
* Returns whether the current round is a plague round.
*
* @return True if it is, false otherwise.
*/
native zp_is_plague_round()

/**
* Returns number of alive zombies.
*
* @return Zombie count.
*/
native zp_get_zombie_count()

/**
* Returns number of alive humans.
*
* @return Human count.
*/
native zp_get_human_count()

/**
* Returns number of alive nemesis.
*
* @return Nemesis count.
*/
native zp_get_nemesis_count()

/**
* Returns number of alive survivors.
*
* @return Survivor count.
*/
native zp_get_survivor_count()

/**
* Registers a custom item which will be added to the extra items menu of ZP.
*
* Note: The returned extra item ID can be later used to catch item
* purchase events for the zp_extra_item_selected() forward.
*
* Note: ZP_TEAM_NEMESIS and ZP_TEAM_SURVIVOR can be used to make
* an item available to Nemesis and Survivors respectively.
*
* @param name Caption to display on the menu.
* @param cost Ammo packs to be deducted on purchase.
* @param teams Bitsum of teams it should be available for.
* @return An internal extra item ID, or -1 on failure.
*/
native zp_register_extra_item(const name[], cost, teams)

/**
* Registers a custom class which will be added to the zombie classes menu of ZP.
*
* Note: The returned zombie class ID can be later used to identify
* the class when calling the zp_get_user_zombie_class() natives.
*
* @param name Caption to display on the menu.
* @param info Brief description of the class.
* @param model Player model to be used.
* @param clawmodel Claws model to be used.
* @param hp Initial health points.
* @param speed Maximum speed.
* @param gravity Gravity multiplier.
* @param knockback Knockback multiplier.
* @return An internal zombie class ID, or -1 on failure.
*/
native zp_register_zombie_class(const name[], const info[], const model[], const clawmodel[], hp, speed, Float:gravity, Float:knockback)

/**
* Returns an extra item's ID.
*
* @param name Item name to look for.
* @return Internal extra item ID, or -1 if not found.
*/
native zp_get_extra_item_id(const name[])

/**
* Returns a zombie class' ID.
*
* @param name Class name to look for.
* @return Internal zombie class ID, or -1 if not found.
*/
native zp_get_zombie_class_id(const name[])

/**
* Returns a zombie class' description (passed by reference).
*
* @param classid Internal zombie class ID.
* @param info The buffer to store the string in.
* @param len Character size of the output buffer.
* @return True on success, false otherwise.
*/
native zp_get_zombie_class_info(classid, info[], len)

/**
* Called when the ZP round starts, i.e. first zombie
* is chosen or a game mode begins.
*
* @param gamemode Mode which has started.
* @param id Affected player's index (if applicable).
*/
forward zp_round_started(gamemode, id)

/**
* Called when the round ends.
*
* @param winteam Team which has won the round.
*/
forward zp_round_ended(winteam)

/**
* Called when a player gets infected.
*
* @param id Player index who was infected.
* @param infector Player index who infected him (if applicable).
* @param nemesis Whether the player was turned into a nemesis.
*/
forward zp_user_infected_pre(id, infector, nemesis)
forward zp_user_infected_post(id, infector, nemesis)

/**
* Called when a player turns back to human.
*
* @param id Player index who was cured.
* @param survivor Whether the player was turned into a survivor.
*/
forward zp_user_humanized_pre(id, survivor)
forward zp_user_humanized_post(id, survivor)

/**
* Called on a player infect/cure attempt. You can use this to block
* an infection/humanization by returning ZP_PLUGIN_HANDLED in your plugin.
*
* Note: Right now this is only available after the ZP round starts, since some
* situations (like blocking a first zombie's infection) are not yet handled.
*/
forward zp_user_infect_attempt(id, infector, nemesis)
forward zp_user_humanize_attempt(id, survivor)

/**
* Called when a player buys an extra item from the ZP menu.
*
* Note: You can now return ZP_PLUGIN_HANDLED in your plugin to block
* the purchase and the player will be automatically refunded.
*
* @param id Player index of purchaser.
* @param itemid Internal extra item ID.
*/
forward zp_extra_item_selected(id, itemid)

/**
* Called when a player gets unfrozen (frostnades).
*
* @param id Player index.
*/
forward zp_user_unfrozen(id)

/**
* Called when a player becomes the last zombie.
*
* Note: This is called for the first zombie too.
*
* @param id Player index.
*/
forward zp_user_last_zombie(id)

/**
* Called when a player becomes the last human.
*
* @param id Player index.
*/
forward zp_user_last_human(id)


/**
* @deprecated - Do not use!
* For backwards compatibility only.
*/
#define ZP_TEAM_ANY 0
#define ZP_TEAM_NO_ONE 0

/**
* Returns current human score.
*
* @return Human score.
*/
native zp_get_human_score()

/**
* Returns current zombie score.
*
* @return Zombie score.
*/
native zp_get_zombie_score()

/**
* Returns whether a player has a gas mask.
*
* @param id Player index.
* @return True if he has, false otherwise.
*/
native zp_user_has_gasmask(id)
     
 
what is notes.io
 

Notes is a web-based application for online taking notes. You can take your notes and share with others people. If you like taking long notes, notes.io is designed for you. To date, over 8,000,000,000+ notes created and continuing...

With notes.io;

  • * You can take a note from anywhere and any device with internet connection.
  • * You can share the notes in social platforms (YouTube, Facebook, Twitter, instagram etc.).
  • * You can quickly share your contents without website, blog and e-mail.
  • * You don't need to create any Account to share a note. As you wish you can use quick, easy and best shortened notes with sms, websites, e-mail, or messaging services (WhatsApp, iMessage, Telegram, Signal).
  • * Notes.io has fabulous infrastructure design for a short link and allows you to share the note as an easy and understandable link.

Fast: Notes.io is built for speed and performance. You can take a notes quickly and browse your archive.

Easy: Notes.io doesn’t require installation. Just write and share note!

Short: Notes.io’s url just 8 character. You’ll get shorten link of your note when you want to share. (Ex: notes.io/q )

Free: Notes.io works for 14 years and has been free since the day it was started.


You immediately create your first note and start sharing with the ones you wish. If you want to contact us, you can use the following communication channels;


Email: [email protected]

Twitter: http://twitter.com/notesio

Instagram: http://instagram.com/notes.io

Facebook: http://facebook.com/notesio



Regards;
Notes.io Team

     
 
Shortened Note Link
 
 
Looding Image
 
     
 
Long File
 
 

For written notes was greater than 18KB Unable to shorten.

To be smaller than 18KB, please organize your notes, or sign in.