This wiki was in read-only mode for many years, but can now be edited again. A lot of information will need to be updated.
Bz eCaptureEvent: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
m fixed time to eventTime |
||
| (5 intermediate revisions by 3 users not shown) | |||
| Line 6: | Line 6: | ||
==Data== | ==Data== | ||
'''bz_eCaptureEvent''' returns the ''' | '''bz_eCaptureEvent''' returns the '''bz_CTFCaptureEventData_V1''' data class. | ||
{| border="1" cellpadding="20" cellspacing="0" | {| border="1" cellpadding="20" cellspacing="0" | ||
| Line 37: | Line 37: | ||
|The rotational orientation of the capturing player | |The rotational orientation of the capturing player | ||
|- | |- | ||
| | |eventTime | ||
|double | |double | ||
|The time | |The server time at which the event occurred (in seconds). | ||
|} | |} | ||
==Uses== | ==Uses== | ||
This event is a notification only event, none of the data returned can be changed. | This event is a notification-only event, none of the data returned can be changed. | ||
==Example Code== | |||
void sampleDocPlugin::Event(bz_EventData* eventData) | |||
{ | |||
switch (eventData->eventType) | |||
{ | |||
case bz_eCaptureEvent: // A tank captures the flag | |||
{ | |||
// Get the data about what just happened and store it in the 'capData' variable | |||
bz_CTFCaptureEventData_V1* capData = (bz_CTFCaptureEventData_V1*)eventData; | |||
// Create a player record in order to access the player's callsign | |||
bz_BasePlayerRecord* myPlayerRecord = bz_getPlayerByIndex(capData->playerCapping); | |||
bz_sendTextMessagef(BZ_SERVER, BZ_ALLUSERS, "%s captured the flag!", myPlayerRecord->callsign.c_str()); // Announce who captured the flag | |||
bz_freePlayerRecord(myPlayerRecord); // Free the player record to avoid a memory leak | |||
} | |||
break; | |||
default: break; | |||
} | |||
} | |||
[[Category:BZFS_API_Docs]] | [[Category:BZFS_API_Docs]] | ||
[[Category:BZFS_API_Events]] | [[Category:BZFS_API_Events]] | ||
Latest revision as of 07:45, 1 May 2014
| BZFS API Documentation This page contains part of the BZFS API documentation for use by Plug-ins on the BZFS server. |
BZFS Event. This page documents a BZFS event that is called by the game server to notify plug-ins of various actions and state changes in the game world.
Overview
The bz_eCaptureEvent is an API event that is called each time a team's flag has been captured.
Data
bz_eCaptureEvent returns the bz_CTFCaptureEventData_V1 data class.
| name | type | value description |
|---|---|---|
| eventType | bz_eEventType | bz_eCaptureEvent |
| teamCapped | bz_eTeamType | The team whose flag was captured. |
| teamCapping | bz_eTeamType | The team who did the capturing. |
| playerCapping | int | The player who captured the flag. |
| pos | float[3] | The world position(X,Y,Z) where the flag has been captured |
| rot | float | The rotational orientation of the capturing player |
| eventTime | double | The server time at which the event occurred (in seconds). |
Uses
This event is a notification-only event, none of the data returned can be changed.
Example Code
void sampleDocPlugin::Event(bz_EventData* eventData)
{
switch (eventData->eventType)
{
case bz_eCaptureEvent: // A tank captures the flag
{
// Get the data about what just happened and store it in the 'capData' variable
bz_CTFCaptureEventData_V1* capData = (bz_CTFCaptureEventData_V1*)eventData;
// Create a player record in order to access the player's callsign
bz_BasePlayerRecord* myPlayerRecord = bz_getPlayerByIndex(capData->playerCapping);
bz_sendTextMessagef(BZ_SERVER, BZ_ALLUSERS, "%s captured the flag!", myPlayerRecord->callsign.c_str()); // Announce who captured the flag
bz_freePlayerRecord(myPlayerRecord); // Free the player record to avoid a memory leak
}
break;
default: break;
}
}