Difference between revisions of "Functions (API)"

From BZFlagWiki
Jump to: navigation, search
(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.


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 );

Misc

See also

BZFS API

plug-ins