-
Notifications
You must be signed in to change notification settings - Fork 4
API Changes SC 5.23
KernCore edited this page Dec 25, 2020
·
2 revisions
- Added
SetClassificationSpecial()to fix issue with AngelScript crashing the game due toSetClassification()'s default arguments not being handled when registered. - Class CString now has a
Tokenize()function to mirror the C++strtok()function:- Includes thread safety.
- This is designed to be used in a
whileloop. - Each call to
Tokenize()with your delimiter character/string will return the next token string. - If your delimiter isn't found the whole string is returned as the only token.
- Once the last token has been returned constant NO_MORE_TOKENS will be returned and resets the position of the last token to zero.
- Corrected method documentation for
GetWeaponsBlocked()inCBasePlayer, as it actually has a boolean return value. - Fixed a crash with
SetClassification(). - Fixed a regression for AS get/set methods due to a change in language behaviour.
- Fixed incorrect logic for the ShouldGibMonster() method when used with player in scripts.
- Function
IRelationship()now has a second parameterbool fIgnoreNoTarget, default false. This can allow a relationship check to ignore a non-targetable flag to fetch a relationship based on the original class, as non-targetable typically forces a neutral relationship. (Enabled internally for healing, repairing, reviving, score board rival info masking, etc.) - New CVAR "plugin_list_file_persistent" to let the server decide if it will reload or persist loaded plug-ins across maps. (Default on.)
- Player variable
m_flMaxSpeedhas been removed to remove conflicts with maps and game entities:- Direct speed set via
pev.maxspeedwill no longer work. - Function
SetMaxSpeed()andGetMaxSpeed()sets/gets a player's base maximum speed. - Function
SetMaxSpeedOverride()andGetMaxSpeedOverride()sets/gets a player's temporary maximum speed, with -1 removing this override (for set) or indicating no override is set (for get).
- Direct speed set via
- Server plug-ins can now be included/excluded on map by map basis by using keys in the plug-in list file for each plug-in:
- CVAR "plugin_list_file_persistent" must be switched off otherwise the "as_reloadplugins" command must be called by the server.
- Key "maps_included" to run a plug-in only on the maps specified.
- Key "maps_excluded" to run a plug-in on all maps apart from the maps specified.
- Multiple maps can be specified in either key by splitting them with a semi-colon ';' delimiter. (E.g. "svencoop1;osprey;stadium4".)
- Do not use both "maps_included" and "maps_excluded" keys! (This won't crash, it just won't work at all.)
- Updated AngelScript to 2.34.0.
- Voice banning is now bridged through the game library instead of going to the engine directly to remove competition between scripts and the game library.
