This wiki is archived and useful information is being migrated to the main bzflag.org website
Difference between revisions of "Functions (API)"
From BZFlagWiki
(→Team Information) |
(→Shot Type Control) |
||
Line 82: | Line 82: | ||
=== Shot Type Control === | === Shot Type Control === | ||
BZF_API bool [[bz_setPlayerShotType]]( int playerId, [[bz_eShotType]] shotType ); | BZF_API bool [[bz_setPlayerShotType]]( int playerId, [[bz_eShotType]] shotType ); | ||
+ | |||
+ | === World Weapon Management === | ||
+ | BZF_API bool [[bz_fireWorldWep]] ( const char* flagType, float lifetime, float *pos, float tilt, float direction, int shotID , float dt ); | ||
+ | BZF_API int [[bz_fireWorldGM]] ( int targetPlayerID, float lifetime, float *pos, float tilt, float direction, float dt); | ||
+ | |||
+ | === Server Time === | ||
+ | BZF_API double [[bz_getCurrentTime]] ( void ); | ||
+ | BZF_API float [[bz_getMaxWaitTime]] ( void ); | ||
+ | BZF_API void [[bz_setMaxWaitTime]] ( float maxTime ); | ||
+ | BZF_API void [[bz_getLocaltime]] ( [[bz_localTime]] *ts ); | ||
===Misc=== | ===Misc=== |
Revision as of 04:02, 14 August 2007
BZFS API Documentation This page contains part of the BZFS API documentation for use by Plug-ins on the BZFS server. |
Contents
- 1 Overview
- 2 Function Groups
- 2.1 Event Registration
- 2.2 Non-Player Connections
- 2.3 Player Information
- 2.4 Team Information
- 2.5 Score Management
- 2.6 Latency Information
- 2.7 Permission Group Management
- 2.8 Chat Messages
- 2.9 Server Management
- 2.10 Map Management
- 2.11 Flag Management
- 2.12 Shot Type Control
- 2.13 World Weapon Management
- 2.14 Server Time
- 2.15 Misc
- 3 See also
Overview
The BZFS API provides a number of functions to plug-ins for use in querying the current game state. Functions are used both to get information about the game, and to trigger in game actions, such as activating a world weapon.
Function Groups
Functions are broken into a series of groups based on the type of action or information they deal with.
Event Registration
BZF_API bool bz_registerEvent ( bz_eEventType eventType, bz_EventHandler* eventHandler ); BZF_API bool bz_removeEvent ( bz_eEventType eventType, bz_EventHandler* eventHandler );
Non-Player Connections
BZF_API bool bz_registerNonPlayerConnectionHandler ( int connectionID, bz_NonPlayerConnectionHandler* handler ); BZF_API bool bz_removeNonPlayerConnectionHandler ( int connectionID, bz_NonPlayerConnectionHandler* handler ); BZF_API bool bz_sendNonPlayerData ( int connectionID, const void *data, unsigned int size ); BZF_API bool bz_disconectNonPlayerConnection ( int connectionID );
Player Information
BZF_API bool [[bz_getPlayerIndexList ( bz_APIIntList *playerList ); BZF_API [[bz_APIIntList *bz_getPlayerIndexList ( void ); BZF_API [[bz_BasePlayerRecord *bz_getPlayerByIndex ( int index ); BZF_API bool bz_updatePlayerData ( bz_BasePlayerRecord *playerRecord ); BZF_API bool bz_hasPerm ( int playerID, const char* perm ); BZF_API bool [[bz_grantPerm ( int playerID, const char* perm ); BZF_API bool bz_revokePerm ( int playerID, const char* perm ); BZF_API bool bz_freePlayerRecord ( bz_BasePlayerRecord *playerRecord ); BZF_API const char* bz_getPlayerFlag]] ( int playerID ); BZF_API bool bz_getPlayerCurrentState ( int playerID, bz_PlayerUpdateState &state ); BZF_API bool bz_isPlayerPaused ( int playerID ); BZF_API bool bz_setPlayerOperator ( int playerId );
Team Information
BZF_API unsigned int bz_getTeamPlayerLimit ( bz_eTeamType team )
Score Management
BZF_API bool bz_setPlayerWins (int playerId, int wins); BZF_API bool bz_setPlayerLosses (int playerId, int losses); BZF_API bool bz_setPlayerTKs (int playerId, int tks); BZF_API bool bz_resetPlayerScore (int playerId);
Latency Information
BZF_API int bz_getPlayerLag ( int playerId ); BZF_API int bz_getPlayerJitter ( int playerId ); BZF_API float bz_getPlayerPacketloss ( int playerId );
Permission Group Management
BZF_API bz_APIStringList* bz_getGroupList ( void ); BZF_API bz_APIStringList* bz_getGroupPerms ( const char* group ); BZF_API bool bz_groupAllowPerm( const char* group, const char* perm );
Chat Messages
BZF_API bool bz_sendTextMessage (int from, int to, const char* message); BZF_API bool bz_sendTextMessage (int from, bz_eTeamType to, const char* message); BZF_API bool bz_sendTextMessagef (int from, int to, const char* fmt, ...); BZF_API bool bz_sendTextMessagef (int from, bz_eTeamType to, const char* fmt, ...); BZF_API bool bz_sentFetchResMessage ( int playerID, const char* URL );
Server Management
BZF_API bool bz_restart ( void );
Map Management
BZF_API void bz_setClientWorldDowloadURL( const char* URL ); BZF_API const bzApiString bz_getClientWorldDowloadURL ( void ); BZF_API bool bz_saveWorldCacheFile( const char* file );
Flag Management
BZF_API bool bz_givePlayerFlag ( int playerID, const char* flagType, bool force ); BZF_API bool bz_removePlayerFlag ( int playerID ); BZF_API void bz_resetFlags ( bool onlyUnused ); BZF_API unsigned int bz_getNumFlags ( void ); BZF_API const bz_ApiString bz_getName( int flag ); BZF_API bool bz_resetFlag ( int flag ); BZF_API int bz_flagPlayer ( int flag ); BZF_API bool bz_getFlagPosition ( int flag, float* pos ); BZF_API bool bz_moveFlag ( int flag, float pos[3], bool reset = true );
Shot Type Control
BZF_API bool bz_setPlayerShotType( int playerId, bz_eShotType shotType );
World Weapon Management
BZF_API bool bz_fireWorldWep ( const char* flagType, float lifetime, float *pos, float tilt, float direction, int shotID , float dt ); BZF_API int bz_fireWorldGM ( int targetPlayerID, float lifetime, float *pos, float tilt, float direction, float dt);
Server Time
BZF_API double bz_getCurrentTime ( void ); BZF_API float bz_getMaxWaitTime ( void ); BZF_API void bz_setMaxWaitTime ( float maxTime ); BZF_API void bz_getLocaltime ( bz_localTime *ts );