diff --git a/bin/spcomp b/bin/spcomp index f52b14d..904911d 100755 Binary files a/bin/spcomp and b/bin/spcomp differ diff --git a/src/include/clients.inc b/src/include/clients.inc index 98d5808..2065b74 100644 --- a/src/include/clients.inc +++ b/src/include/clients.inc @@ -63,6 +63,10 @@ public const MaxClients; /**< Maximum number of players the server supports (dyn * If you return false (or return nothing), the client will be rejected. If the client is * rejected by this forward or any other, OnClientDisconnect will not be called. * + * Note: Do not write to rejectmsg if you plan on returning true. If multiple plugins write + * to the string buffer, it is not defined which plugin's string will be shown to the client, + * but it is guaranteed one of them will. + * * @param client Client index. * @param rejectmsg Buffer to store the rejection message when the connection is refused. * @param maxlen Maximum number of characters for rejection buffer. diff --git a/src/include/console.inc b/src/include/console.inc index b3e3d42..019e664 100644 --- a/src/include/console.inc +++ b/src/include/console.inc @@ -817,9 +817,11 @@ native bool:FindNextConCommand(Handle:search, String:buffer[], max_size, &bool:i native bool:SendConVarValue(client, Handle:convar, const String:value[]); /** - * Appends a string to Valve's sv_tags convar and makes sure it remains after mapchanges. + * Adds an informational string to the server's public "tags". + * This string should be a short, unique identifier. * - * Note: Tags are automatically removed on plugin unload + * Note: Tags are automatically removed when a plugin unloads. + * Note: Currently, this function does nothing because of bugs in the Valve master. * * @param tag Tag string to append. * @noreturn @@ -827,9 +829,7 @@ native bool:SendConVarValue(client, Handle:convar, const String:value[]); native AddServerTag(const String:tag[]); /** - * Removes a string from valve's sv_tags convar. - * - * Note: You can only remove tags created by you. + * Removes a tag previously added by the calling plugin. * * @param tag Tag string to remove. * @noreturn diff --git a/src/include/menus.inc b/src/include/menus.inc index c7c81de..3ed4e9f 100644 --- a/src/include/menus.inc +++ b/src/include/menus.inc @@ -94,6 +94,8 @@ enum MenuAction #define VOTEINFO_ITEM_INDEX 0 /**< Item index */ #define VOTEINFO_ITEM_VOTES 1 /**< Number of votes for the item */ +#define VOTEFLAG_NO_REVOTES (1<<0) /**< Players cannot change their votes */ + /** * Reasons a menu can be cancelled (MenuAction_Cancel). */ @@ -469,22 +471,24 @@ native CancelVote(); * @param clients Array of clients to broadcast to. * @param numClients Number of clients in the array. * @param time Maximum time to leave menu on the screen. + * @param flags Optional voting flags. * @return True on success, false if this menu already has a vote session * in progress. * @error Invalid Handle, or a vote is already in progress. */ -native bool:VoteMenu(Handle:menu, clients[], numClients, time); +native bool:VoteMenu(Handle:menu, clients[], numClients, time, flags=0); /** * Sends a vote menu to all clients. See VoteMenu() for more information. * * @param menu Menu Handle. * @param time Maximum time to leave menu on the screen. + * @param flags Optional voting flags. * @return True on success, false if this menu already has a vote session * in progress. * @error Invalid Handle. */ -stock VoteMenuToAll(Handle:menu, time) +stock VoteMenuToAll(Handle:menu, time, flags=0) { new num = GetMaxClients(); new total; @@ -499,7 +503,7 @@ stock VoteMenuToAll(Handle:menu, time) players[total++] = i; } - return VoteMenu(menu, players, total, time); + return VoteMenu(menu, players, total, time, flags); } /** * Callback for when a vote has ended and results are available. @@ -543,7 +547,7 @@ native CheckVoteDelay(); /** * Returns whether a client is in the pool of clients allowed * to participate in the current vote. This is determined by - * the client list passed to StartVote(). + * the client list passed to VoteMenu(). * * @param client Client index. * @return True if client is allowed to vote, false otherwise. @@ -555,12 +559,13 @@ native bool:IsClientInVotePool(client); * Redraws the current vote menu to a client in the voting pool. * * @param client Client index. + * @param revotes True to allow revotes, false otherwise. * @return True on success, false if the client is in the vote pool * but cannot vote again. * @error No vote in progress, client is not in the voting pool, * or client index is invalid. */ -native bool:RedrawClientVoteMenu(client); +native bool:RedrawClientVoteMenu(client, bool:revotes=true); /** * Returns a style's global Handle. @@ -807,3 +812,4 @@ stock bool:IsNewVoteAllowed() return true; } + diff --git a/src/include/tf2.inc b/src/include/tf2.inc index e4e4640..34007a6 100644 --- a/src/include/tf2.inc +++ b/src/include/tf2.inc @@ -57,6 +57,14 @@ enum TFTeam TFTeam_Blue = 3 }; +/** + * Sets a client on fire for 10 seconds. + * + * @param client Player's index. + * @noreturn + * @error Invalid client index, client not in game, or no mod support. + */ +native TF2_IgnitePlayer(client, target); /** * Respawns a client diff --git a/src/include/version.inc b/src/include/version.inc index 856b3cf..762471d 100644 --- a/src/include/version.inc +++ b/src/include/version.inc @@ -37,6 +37,6 @@ #define SOURCEMOD_V_MAJOR 1 /**< SourceMod Major version */ #define SOURCEMOD_V_MINOR 2 /**< SourceMod Minor version */ -#define SOURCEMOD_V_RELEASE 0 /**< SourceMod Release version */ +#define SOURCEMOD_V_RELEASE 1 /**< SourceMod Release version */ -#define SOURCEMOD_VERSION "1.2.0" /**< SourceMod version string (major.minor.release.build) */ +#define SOURCEMOD_VERSION "1.2.1" /**< SourceMod version string (major.minor.release.build) */