|
UFO: Alien Invasion
|
Shared game type code. More...
#include "cl_game.h"#include "../client.h"#include "../cl_language.h"#include "cl_game_team.h"#include "../battlescape/cl_localentity.h"#include "../battlescape/cl_hud.h"#include "../battlescape/cl_parse.h"#include "../ui/ui_main.h"#include "../ui/ui_draw.h"#include "../ui/ui_nodes.h"#include "../ui/ui_popup.h"#include "../ui/ui_render.h"#include "../ui/ui_windows.h"#include "../ui/ui_sprite.h"#include "../ui/ui_font.h"#include "../ui/ui_tooltip.h"#include "../ui/node/ui_node_container.h"#include "../ui/node/ui_node_messagelist.h"#include "../ui/node/ui_node_model.h"#include "../cl_team.h"#include "../web/web_cgame.h"#include "../battlescape/events/e_main.h"#include "../cl_inventory.h"#include "../../shared/parse.h"#include "../../common/filesys.h"#include "../renderer/r_draw.h"#include "../renderer/r_framebuffer.h"#include "../renderer/r_geoscape.h"#include "cl_map_callbacks.h"#include <set>#include <string>
Go to the source code of this file.
Data Structures | |
| class | GAMECvarListener |
| class | GAMECmdListener |
Macros | |
| #define | MAX_CGAMETYPES 16 |
Functions | |
| static const cgame_export_t * | GAME_GetCurrentType (void) |
| static SharedPtr< GAMECvarListener > | cvarListener (new GAMECvarListener()) |
| static SharedPtr< GAMECmdListener > | cmdListener (new GAMECmdListener()) |
| character_t * | GAME_GetCharacter (int index) |
| Returns a character that can be used to store the game type specific character values. | |
| character_t * | GAME_GetCharacterByUCN (int ucn) |
| Returns a character that can be used to store the game type specific character values. | |
| size_t | GAME_GetCharacterArraySize (void) |
| const char * | GAME_GetCurrentName (void) |
| void | GAME_ResetCharacters (void) |
| Reset all characters in the static character array. | |
| void | GAME_AppendTeamMember (int memberIndex, const char *teamDefID, const equipDef_t *ed) |
| void | GAME_GenerateTeam (const char *teamDefID, const equipDef_t *ed, int teamMembers) |
| void | GAME_ReloadMode (void) |
| bool | GAME_IsMultiplayer (void) |
| void | GAME_EndBattlescape (void) |
| This is called when a client quits the battlescape. | |
| void | GAME_EndRoundAnnounce (int playerNum, int team) |
| Send end round announcements. | |
| void | GAME_DisplayItemInfo (uiNode_t *node, const char *string) |
Shows game type specific item information (if it's not resolvable via objDef_t). | |
| void | GAME_SetServerInfo (const char *server, const char *serverport) |
| static void | CL_QueryMasterServer (const char *action, http_callback_t callback) |
| bool | GAME_HandleServerCommand (const char *command, dbuffer *msg) |
| void | GAME_AddChatMessage (const char *format,...) |
| bool | GAME_IsTeamEmpty (void) |
| static void | GAME_NET_OOB_Printf (struct net_stream *s, const char *format,...) |
| static void | GAME_NET_OOB_Printf2 (const char *format,...) |
| static void | GAME_UI_Popup (const char *title, const char *format,...) |
| static char * | GAME_StrDup (const char *string) |
| static void | GAME_Free (void *ptr) |
| static memPool_t * | GAME_CreatePool (const char *name) |
| static void | GAME_FreePool (memPool_t *pool) |
| static char * | GAME_PoolStrDup (const char *in, memPool_t *pool, const int tagNum) |
| static void | GAME_DestroyInventory (Inventory *const inv) |
| static void | GAME_EquipActor (character_t *const chr, const equipDef_t *ed, const objDef_t *weapon, int maxWeight) |
| static bool | GAME_RemoveFromInventory (Inventory *const i, const invDef_t *container, Item *fItem) |
| static void | GAME_WebUpload (int category, const char *filename) |
| static void | GAME_WebDelete (int category, const char *filename) |
| static void | GAME_WebDownloadFromUser (int category, const char *filename, int userId) |
| static void | GAME_WebListForUser (int category, int userId) |
| static void | GAME_SetNextUniqueCharacterNumber (int ucn) |
| static int | GAME_GetNextUniqueCharacterNumber (void) |
| static void | GAME_CollectItems (void *data, int won, void(*collectItem)(void *, const objDef_t *, int), void(*collectAmmo)(void *, const Item *), void(*ownitems)(const Inventory *)) |
| static void | GAME_CollectAliens (void *data, void(*collect)(void *, const teamDef_t *, int, bool)) |
| Collecting stunned and dead alien bodies after the mission. | |
| static int | UI_DrawString_ (const char *fontID, align_t align, int x, int y, const char *c) |
| static void | UI_PushWindow_ (const char *name) |
| static void | UI_DrawNormImageByName_ (bool flip, float x, float y, float w, float h, float sh, float th, float sl, float tl, const char *name) |
| static void | R_UploadAlpha_ (const char *name, const byte *alphaData) |
| static void | R_DrawImageCentered (int x, int y, const char *name) |
| static const char * | Com_EParse_ (const char **text, const char *errhead, const char *errinfo) |
| static const cgame_import_t * | GAME_GetImportData (const cgameType_t *t) |
| static void | GAME_FreeInventory (void *data) |
| static void * | GAME_AllocInventoryMemory (size_t size) |
| static void | GAME_FreeAllInventory (void) |
| void | GAME_UnloadGame (void) |
| void | GAME_SwitchCurrentSelectedMap (int step) |
| const mapDef_t * | GAME_GetCurrentSelectedMap (void) |
| int | GAME_GetCurrentTeam (void) |
| void | GAME_DrawMap (geoscapeData_t *data) |
| void | GAME_DrawMapMarkers (uiNode_t *node) |
| void | GAME_MapClick (uiNode_t *node, int x, int y, const vec2_t pos) |
| void | GAME_SetMode (const cgame_export_t *gametype) |
| void | GAME_ParseModes (const char *name, const char **text) |
| static const cgame_export_t * | GAME_GetCGameAPI (const cgameType_t *t) |
| static const cgame_export_t * | GAME_GetCGameAPI_ (const cgameType_t *t) |
| static void | GAME_SetMode_f (void) |
| Decides which game mode should be set - takes the menu as reference. | |
| bool | GAME_ItemIsUseable (const objDef_t *od) |
| void | GAME_HandleResults (dbuffer *msg, int winner, int *numSpawned, int *numAlive, int numKilled[][MAX_TEAMS], int numStunned[][MAX_TEAMS], bool nextmap) |
| After a mission was finished this function is called. | |
| static void | GAME_NetSendItem (dbuffer *buf, const Item *item, containerIndex_t container, int x, int y) |
| static void | GAME_NetSendInventory (dbuffer *buf, const Inventory *inv) |
| static void | GAME_NetSendCharacter (dbuffer *buf, const character_t *chr) |
| Send the character information to the server that is needed to spawn the soldiers of the player. | |
| static void | GAME_SendCurrentTeamSpawningInfo (dbuffer *buf, linkedList_t *team) |
| Stores a team-list (chr-list) info to buffer (which might be a network buffer, too). | |
| const char * | GAME_GetTeamDef (void) |
| static bool | GAME_Spawn (linkedList_t **chrList) |
| void | GAME_StartBattlescape (bool isTeamPlay) |
Called when the server sends the EV_START event. | |
| void | GAME_InitMissionBriefing (const char *title) |
| static void | GAME_InitializeBattlescape (linkedList_t *team) |
| This is called if actors are spawned (or at least the spawning commands were send to the server). This callback can e.g. be used to set initial actor states. E.g. request crouch and so on. These events are executed without consuming time. | |
| void | GAME_SpawnSoldiers (void) |
| Called during startup of mission to send team info. | |
| void | GAME_StartMatch (void) |
| const char * | GAME_GetRelativeSavePath (char *buf, size_t bufSize) |
| const char * | GAME_GetAbsoluteSavePath (char *buf, size_t bufSize) |
| equipDef_t * | GAME_GetEquipmentDefinition (void) |
| void | GAME_NotifyEvent (event_t eventType) |
| bool | GAME_TeamIsKnown (const teamDef_t *teamDef) |
| void | GAME_CharacterCvars (const character_t *chr) |
| static void | GAME_Abort_f (void) |
| Let the aliens win the match. | |
| void | GAME_Drop (void) |
| static void | GAME_Exit_f (void) |
Quits the current running game by calling the shutdown callback. | |
| void | GAME_Frame (void) |
| Called every frame and allows us to hook into the current running game mode. | |
| void | GAME_DrawBaseLayout (int baseIdx, int x, int y, int totalMarge, int w, int h, int padding, const vec4_t bgcolor, const vec4_t color) |
| void | GAME_DrawBaseLayoutTooltip (int baseIdx, int x, int y) |
| Cgame callback to draw tooltip for baselayout UI node. | |
| const char * | GAME_GetModelForItem (const objDef_t *od, uiModel_t **uiModel) |
| Get a model for an item. | |
| character_t * | GAME_GetSelectedChr (void) |
| Returns the currently selected character. | |
| int | GAME_GetChrMaxLoad (const character_t *chr) |
| Returns the max weight the given character can carry. | |
| const equipDef_t * | GAME_ChangeEquip (const linkedList_t *equipmentList, changeEquipType_t changeType, const char *equipID) |
| Changed the given cvar to the next/prev equipment definition. | |
| void | GAME_InitUIData (void) |
| Fills the game mode list entries with the parsed values from the script. | |
| void | GAME_InitStartup (void) |
| void | GAME_Shutdown (void) |
Variables | |
| static cgameType_t | cgameTypes [MAX_CGAMETYPES] |
| static int | numCGameTypes |
| geoscapeData_t | geoscapeData |
| static equipDef_t | equipDefStandard |
| static character_t | characters [MAX_ACTIVETEAM] |
| static character array that can be used by a game mode to store the needed character values. | |
| static const int | TAG_INVENTORY = 17462 |
| static const inventoryImport_t | inventoryImport = { GAME_FreeInventory, GAME_FreeAllInventory, GAME_AllocInventoryMemory } |
| static const value_t | cgame_vals [] |
| Valid equipment definition values from script files. | |
Shared game type code.
Definition in file cl_game.cpp.
| #define MAX_CGAMETYPES 16 |
Definition at line 59 of file cl_game.cpp.
Referenced by GAME_ParseModes().
|
static |
Definition at line 356 of file cl_game.cpp.
References HTTP_GetURL(), masterserver_url, and va().
Referenced by GAME_GetImportData().
|
static |
Referenced by GAME_InitStartup(), GAME_SetMode(), and GAME_Shutdown().
|
static |
Definition at line 581 of file cl_game.cpp.
References Com_EParse().
Referenced by GAME_GetImportData().
|
static |
Referenced by GAME_InitStartup(), GAME_SetMode(), and GAME_Shutdown().
Let the aliens win the match.
Definition at line 1461 of file cl_game.cpp.
References Cbuf_AddText(), and TEAM_ALIEN.
Referenced by GAME_InitStartup().
| void GAME_AddChatMessage | ( | const char * | format, |
| ... ) |
Definition at line 370 of file cl_game.cpp.
References format(), GAME_GetCurrentType(), Q_vsnprintf(), S_StartLocalSample(), and SND_VOLUME_DEFAULT.
Referenced by CL_ParseServerMessage(), Irc_AppendToBuffer(), and Irc_Client_CmdPrivmsg().
|
static |
Definition at line 887 of file cl_game.cpp.
References cl_genericPool, Mem_PoolAlloc, and TAG_INVENTORY.
| void GAME_AppendTeamMember | ( | int | memberIndex, |
| const char * | teamDefID, | ||
| const equipDef_t * | ed ) |
Definition at line 252 of file cl_game.cpp.
References chrDisplayList, CL_GenerateCharacter(), cls, Com_Error(), Com_GetUGVByIDSilent(), ERR_DROP, GAME_GetCharacter(), GAME_GetChrMaxLoad(), character_t::head, character_t::headSkin, teamDef_t::id, INVSH_GetItemByID(), LIST_AddPointer(), character_t::name, teamDef_t::onlyWeapon, character_t::path, teamDef_t::robot, character_t::teamDef, UI_ExecuteConfunc(), and ugv_t::weapon.
Referenced by GAME_GenerateTeam(), and GAME_GetImportData().
| const equipDef_t * GAME_ChangeEquip | ( | const linkedList_t * | equipmentList, |
| changeEquipType_t | changeType, | ||
| const char * | equipID ) |
Changed the given cvar to the next/prev equipment definition.
Definition at line 1592 of file cl_game.cpp.
References BACKWARD, Com_Error(), csi, linkedList_t::data, ERR_DROP, FORWARD, index, INV_GetEquipmentDefinitionByID(), LIST_ContainsString(), LIST_Foreach, LIST_IsEmpty(), linkedList_t::next, and Q_streq.
Referenced by GAME_GetImportData().
| void GAME_CharacterCvars | ( | const character_t * | chr | ) |
Definition at line 1451 of file cl_game.cpp.
References GAME_GetCurrentType().
Referenced by CL_UpdateCharacterValues().
|
static |
Collecting stunned and dead alien bodies after the mission.
Definition at line 533 of file cl_game.cpp.
References data, LE_GetNextInUse(), LE_IsActor(), LE_IsAlien, LE_IsDead, LE_IsStunned, and le_t::teamDef.
Referenced by GAME_GetImportData().
|
static |
Definition at line 498 of file cl_game.cpp.
References cls, data, Item::def(), Inventory::getArmour(), le_t::getFloorContainer(), i, le_t::inv, LE_GetNextInUse(), LE_IsActor(), LE_IsDead, LE_IsItem, and le_t::team.
Referenced by GAME_GetImportData().
|
static |
Definition at line 438 of file cl_game.cpp.
References Mem_CreatePool, and name.
Referenced by GAME_GetImportData().
Shows game type specific item information (if it's not resolvable via objDef_t).
| [in] | node | The menu node to show the information in. |
| [in] | string | The id of the 'thing' to show information for. |
Definition at line 338 of file cl_game.cpp.
References GAME_GetCurrentType(), cgame_export_t::GetModelForItem(), and UI_DrawModelNode().
Referenced by uiItemNode::draw().
| void GAME_DrawBaseLayout | ( | int | baseIdx, |
| int | x, | ||
| int | y, | ||
| int | totalMarge, | ||
| int | w, | ||
| int | h, | ||
| int | padding, | ||
| const vec4_t | bgcolor, | ||
| const vec4_t | color ) |
Definition at line 1508 of file cl_game.cpp.
References GAME_GetCurrentType().
Referenced by uiBaseLayoutNode::draw().
Cgame callback to draw tooltip for baselayout UI node.
| [in] | baseIdx | Numeric index of the base |
| [in] | x | Horizontal screen position |
| [in] | y | Vertical screen position |
Definition at line 1521 of file cl_game.cpp.
References GAME_GetCurrentType().
Referenced by uiBaseLayoutNode::drawTooltip().
| void GAME_DrawMap | ( | geoscapeData_t * | data | ) |
Definition at line 931 of file cl_game.cpp.
References data, and GAME_GetCurrentType().
Referenced by uiGeoscapeNode::draw().
Definition at line 938 of file cl_game.cpp.
References GAME_GetCurrentType().
Referenced by uiGeoscapeNode::draw().
Definition at line 1467 of file cl_game.cpp.
References GAME_GetCurrentType(), GAME_SetMode(), GAME_UnloadGame(), SV_Shutdown(), and UI_InitStack().
Referenced by CL_Drop().
This is called when a client quits the battlescape.
Definition at line 314 of file cl_game.cpp.
References cls, Com_Printf(), and Cvar_Set().
Referenced by CL_Disconnect().
Send end round announcements.
| playerNum | The server player number of the player that has ended the round |
| team | The team the player is in |
Definition at line 325 of file cl_game.cpp.
References GAME_GetCurrentType().
Referenced by CL_EndRoundAnnounce().
|
static |
Quits the current running game by calling the shutdown callback.
Definition at line 1486 of file cl_game.cpp.
References GAME_SetMode(), and GAME_UnloadGame().
Referenced by GAME_InitStartup().
Called every frame and allows us to hook into the current running game mode.
Definition at line 1496 of file cl_game.cpp.
References cls, GAME_GetCurrentType(), and key_console.
Referenced by CL_Frame().
Definition at line 433 of file cl_game.cpp.
References Mem_Free.
Referenced by GAME_GetImportData().
Definition at line 893 of file cl_game.cpp.
References cl_genericPool, Mem_FreeTag, and TAG_INVENTORY.
Definition at line 882 of file cl_game.cpp.
Definition at line 443 of file cl_game.cpp.
References Mem_FreePool.
Referenced by GAME_GetImportData().
| void GAME_GenerateTeam | ( | const char * | teamDefID, |
| const equipDef_t * | ed, | ||
| int | teamMembers ) |
Definition at line 276 of file cl_game.cpp.
References Com_Error(), ERR_DROP, GAME_AppendTeamMember(), GAME_GetCharacterArraySize(), GAME_ResetCharacters(), and i.
Referenced by GAME_AutoTeam(), and GAME_Spawn().
| const char * GAME_GetAbsoluteSavePath | ( | char * | buf, |
| size_t | bufSize ) |
Definition at line 1417 of file cl_game.cpp.
References bufSize, Com_sprintf(), FS_Gamedir(), and GAME_GetCurrentName().
Referenced by GAME_GetImportData(), GAME_TeamDelete_f(), and GAME_TeamSlotComments_f().
|
static |
Definition at line 1025 of file cl_game.cpp.
References cls, Com_Error(), Com_LoadLibrary(), Com_Printf(), cgameType_t::equipmentList, ERR_FATAL, FS_NextPath(), GAME_GetImportData(), GAME_UnloadGame(), GetCGameAPI(), cgameType_t::id, INV_GetEquipmentDefinitionByID(), LIST_Foreach, LIST_IsEmpty(), name, PKGLIBDIR, and Sys_Error().
Referenced by GAME_GetCGameAPI_().
|
static |
Definition at line 1067 of file cl_game.cpp.
References GAME_GetCGameAPI(), and cgameType_t::window.
Referenced by GAME_InitUIData(), and GAME_SetMode_f().
| character_t * GAME_GetCharacter | ( | int | index | ) |
Returns a character that can be used to store the game type specific character values.
| index | The index of the character array. This value must be greater than 0 and not bigger than the value GAME_GetCharacterArraySize returned |
Definition at line 197 of file cl_game.cpp.
References characters, Com_Error(), ERR_DROP, index, and lengthof.
Referenced by GAME_AppendTeamMember(), and GAME_LoadTeamInfo().
| size_t GAME_GetCharacterArraySize | ( | void | ) |
Definition at line 227 of file cl_game.cpp.
References characters, and lengthof.
Referenced by GAME_AutoTeam_f(), GAME_GenerateTeam(), GAME_GetImportData(), GAME_LoadTeamInfo(), GAME_Spawn(), and cgame_import_t::size_t().
| character_t * GAME_GetCharacterByUCN | ( | int | ucn | ) |
Returns a character that can be used to store the game type specific character values.
| ucn | The unique character number |
null if no character with the specified ucn was found. Definition at line 211 of file cl_game.cpp.
References characters, i, lengthof, and character_t::ucn.
| int GAME_GetChrMaxLoad | ( | const character_t * | chr | ) |
Returns the max weight the given character can carry.
| [in] | chr | The character to find the max load for. |
NONE. Definition at line 1577 of file cl_game.cpp.
References ABILITY_POWER, GAME_GetCurrentType(), NONE, character_t::score, and chrScoreGlobal_t::skills.
Referenced by CL_ActorInvMove(), GAME_AppendTeamMember(), GAME_GetImportData(), GAME_LoadCharacter(), HUD_UpdateActorLoad_f(), cgame_import_t::int(), INV_MoveItem(), and INV_UpdateActorLoad_f().
| const char * GAME_GetCurrentName | ( | void | ) |
Definition at line 232 of file cl_game.cpp.
References GAME_GetCurrentType(), and cgame_export_t::menu.
Referenced by GAME_GetAbsoluteSavePath(), GAME_GetRelativeSavePath(), GAME_WebDelete(), GAME_WebDownloadFromUser(), GAME_WebListForUser(), GAME_WebUpload(), WEB_DeleteCGame_f(), WEB_DownloadCGame_f(), WEB_ListCGame_f(), and WEB_UploadCGame_f().
Definition at line 921 of file cl_game.cpp.
References cls, and Com_GetMapDefByIDX().
Referenced by GAME_GetImportData().
Definition at line 926 of file cl_game.cpp.
References cls.
Referenced by GAME_GetImportData(), and cgame_import_t::int().
|
inlinestatic |
Definition at line 63 of file cl_game.cpp.
References cls.
Referenced by GAME_AddChatMessage(), GAME_CharacterCvars(), GAME_DisplayItemInfo(), GAME_DrawBaseLayout(), GAME_DrawBaseLayoutTooltip(), GAME_DrawMap(), GAME_DrawMapMarkers(), GAME_Drop(), GAME_EndRoundAnnounce(), GAME_Frame(), GAME_GetChrMaxLoad(), GAME_GetCurrentName(), GAME_GetEquipmentDefinition(), GAME_GetModelForItem(), GAME_GetSelectedChr(), GAME_GetTeamDef(), GAME_HandleResults(), GAME_HandleServerCommand(), GAME_InitializeBattlescape(), GAME_InitMissionBriefing(), GAME_IsMultiplayer(), GAME_ItemIsUseable(), GAME_MapClick(), GAME_NotifyEvent(), GAME_ReloadMode(), GAME_SetMode(), GAME_Spawn(), GAME_SpawnSoldiers(), GAME_StartBattlescape(), GAME_TeamIsKnown(), GAMECmdListener::onAdd(), GAMECvarListener::onCreate(), GAMECmdListener::onGameModeChange(), and GAMECvarListener::onGameModeChange().
| equipDef_t * GAME_GetEquipmentDefinition | ( | void | ) |
Definition at line 1423 of file cl_game.cpp.
References equipDefStandard, GAME_GetCurrentType(), and cgame_export_t::GetEquipmentDefinition().
Referenced by CL_InvReload(), GAME_GetEquipment(), GAME_LoadTeam(), and GAME_SaveTeam().
|
static |
Definition at line 586 of file cl_game.cpp.
References _Mem_Alloc(), BEP_Evaluate(), Cbuf_AddText(), Cbuf_Execute(), cgi, CL_ActorGetSkillString(), CL_Disconnect(), CL_Drop(), CL_GenerateCharacter(), CL_GetClientState(), CL_GetPlayerNum(), CL_Milliseconds(), CL_OnBattlescape(), CL_PlayerGetName(), CL_QueryMasterServer(), CL_SetClientState(), CL_Translate(), CL_UpdateCharacterValues(), Cmd_AddCommand(), Cmd_AddParamCompleteFunction(), Cmd_Argc(), Cmd_Args(), Cmd_Argv(), Cmd_ExecuteString(), Cmd_GenericCompleteFunction(), Cmd_RemoveCommand(), Cmd_TableAddList(), Cmd_TableRemoveList(), Com_DPrintf(), Com_Drop(), Com_DropShipShortNameToID(), Com_DropShipTypeToShortName(), Com_EParse_(), Com_EParseValue(), Com_Error(), Com_GetConstInt(), Com_GetConstIntFromNamespace(), Com_GetConstVariable(), Com_GetDropShipIdsNum(), Com_GetHumanAircraftIdsNum(), Com_GetMapDefinitionByID(), Com_GetRandomMapAssemblyNameForCraft(), Com_GetRandomMapAssemblyNameForCrashedCraft(), Com_GetTeamDefinitionByID(), Com_GetUfoIdsNum(), Com_GetUGVByID(), Com_GetUGVByIDSilent(), Com_ParseBlock(), Com_ParseBlockToken(), Com_ParseBoolean(), Com_ParseList(), Com_Printf(), Com_RegisterConstInt(), Com_RegisterConstList(), Com_ServerState(), Com_SetGameType(), Com_UFOCrashedTypeToShortName(), Com_UFOShortNameToID(), Com_UFOTypeToShortName(), Com_UnregisterConstList(), Com_UnregisterConstVariable(), Com_ValueToStr(), csi, Cvar_Delete(), Cvar_ForceSet(), Cvar_Get(), Cvar_GetInteger(), Cvar_GetString(), Cvar_GetValue(), Cvar_Set(), Cvar_SetValue(), Cvar_VariableStringOld(), FS_BuildFileList(), FS_CheckFile(), FS_CloseFile(), FS_FreeFile(), FS_LoadFile(), FS_NextFileFromFileList(), FS_NextScriptHeader(), FS_OpenFile(), FS_Read(), FS_RemoveFile(), FS_WriteFile(), GAME_AppendTeamMember(), GAME_AutoTeam(), GAME_ChangeEquip(), GAME_CollectAliens(), GAME_CollectItems(), GAME_CreatePool(), GAME_DestroyInventory(), GAME_EquipActor(), GAME_Free(), GAME_FreePool(), GAME_GetAbsoluteSavePath(), GAME_GetCharacterArraySize(), GAME_GetChrMaxLoad(), GAME_GetCurrentSelectedMap(), GAME_GetCurrentTeam(), GAME_GetNextUniqueCharacterNumber(), GAME_GetRelativeSavePath(), GAME_IsTeamEmpty(), GAME_LoadCharacter(), GAME_LoadDefaultTeam(), GAME_NET_OOB_Printf(), GAME_NET_OOB_Printf2(), GAME_PoolStrDup(), GAME_ReloadMode(), GAME_RemoveFromInventory(), GAME_SaveCharacter(), GAME_SetNextUniqueCharacterNumber(), GAME_SetServerInfo(), GAME_StrDup(), GAME_SwitchCurrentSelectedMap(), GAME_UI_Popup(), GAME_WebDelete(), GAME_WebDownloadFromUser(), GAME_WebListForUser(), GAME_WebUpload(), geoscapeData, HUD_DisplayMessage(), HUD_InitUI(), INV_GetEquipmentDefinitionByID(), INV_GetFilterType(), INV_GetFilterTypeID(), INV_ItemDescription(), INV_ItemMatchesFilter(), LIST_Add(), LIST_AddPointer(), LIST_AddString(), LIST_AddStringSorted(), LIST_ContainsString(), LIST_CopyStructure(), LIST_Count(), LIST_Delete(), LIST_GetByIdx(), LIST_GetPointer(), LIST_GetRandom(), LIST_IsEmpty(), LIST_PrependString(), LIST_Remove(), LIST_RemoveEntry(), LIST_Sort(), NET_Connect(), NET_DatagramBroadcast(), NET_DatagramSocketClose(), NET_DatagramSocketNew(), NET_ReadByte(), NET_ReadLong(), NET_ReadMsg(), NET_ReadShort(), NET_ReadString(), NET_ReadStringLine(), NET_SockaddrToStrings(), NET_StreamFree(), NET_StreamGetData(), NET_StreamPeerToName(), NET_StreamSetCallback(), NET_StreamSetData(), NET_WriteByte(), NET_WriteShort(), R_Color(), R_Draw2DMapMarkers(), R_Draw3DMapMarkers(), R_DrawBloom(), R_DrawFill(), R_DrawImageCentered(), R_DrawLine(), R_DrawLineStrip(), R_DrawRect(), R_ImageExists(), R_LoadImage(), R_SoftenTexture(), R_UploadAlpha_(), S_SetSampleRepeatRate(), S_StartLocalSample(), SV_Shutdown(), SV_ShutdownWhenEmpty(), Sys_Error(), UI_AddOption(), UI_ContainerNodeUpdateEquipment(), UI_DisplayNotice(), UI_DrawFill(), UI_DrawNormImageByName_(), UI_DrawRect(), UI_DrawString_(), UI_DrawTooltip(), UI_ExecuteConfunc(), UI_GetActiveWindowName(), UI_GetFontFromNode(), UI_GetNodeAbsPos(), UI_GetNodeByPath(), UI_GetOption(), UI_GetSpriteByName(), UI_InitOptionIteratorAtIndex(), UI_InitStack(), ui_inventory, UI_MessageAddStack(), UI_MessageGetStack(), UI_MessageResetStack(), UI_OptionIteratorNextOption(), UI_PopupButton(), UI_PopupList(), UI_PopWindow(), UI_PushWindow_(), UI_RegisterLinkedListText(), UI_RegisterOption(), UI_RegisterText(), UI_ResetData(), UI_SortOptions(), UI_TextNodeSelectLine(), UI_TextScrollEnd(), UI_UpdateInvisOptions(), XML_AddBool(), XML_AddBoolValue(), XML_AddByte(), XML_AddByteValue(), XML_AddDate(), XML_AddDouble(), XML_AddDoubleValue(), XML_AddFloat(), XML_AddFloatValue(), XML_AddInt(), XML_AddIntValue(), XML_AddLong(), XML_AddLongValue(), XML_AddNode(), XML_AddPos2(), XML_AddPos3(), XML_AddShort(), XML_AddShortValue(), XML_AddString(), XML_AddStringValue(), XML_GetBool(), XML_GetDate(), XML_GetDouble(), XML_GetFloat(), XML_GetInt(), XML_GetLong(), XML_GetNextNode(), XML_GetNextPos2(), XML_GetNextPos3(), XML_GetNode(), XML_GetPos2(), XML_GetPos3(), XML_GetShort(), XML_GetString(), and XML_Parse().
Referenced by GAME_GetCGameAPI().
Get a model for an item.
| [in] | od | The object definition to get the model from. |
| [out] | uiModel | The menu model pointer. |
nullptr. Definition at line 1534 of file cl_game.cpp.
References GAME_GetCurrentType(), cgame_export_t::GetModelForItem(), objDef_t::id, objDef_t::model, and UI_GetUIModel().
Referenced by uiItemNode::draw(), and UI_DrawItem().
| const char * GAME_GetRelativeSavePath | ( | char * | buf, |
| size_t | bufSize ) |
Definition at line 1411 of file cl_game.cpp.
References bufSize, Com_sprintf(), and GAME_GetCurrentName().
Referenced by GAME_GetImportData(), GAME_GetTeamFileName(), GAME_TeamGetFreeFilename(), GAME_TeamSlotComments_f(), WEB_CGameDownloadFromUser(), and WEB_UploadCGame_f().
| character_t * GAME_GetSelectedChr | ( | void | ) |
Returns the currently selected character.
nullptr. Definition at line 1555 of file cl_game.cpp.
References chrDisplayList, Cvar_GetInteger(), GAME_GetCurrentType(), cgame_export_t::GetSelectedChr(), and LIST_Foreach.
Referenced by INV_MoveItem(), and INV_UpdateActorLoad_f().
| const char * GAME_GetTeamDef | ( | void | ) |
Definition at line 1251 of file cl_game.cpp.
References Cvar_GetString(), GAME_GetCurrentType(), and cgame_export_t::GetTeamDef().
Referenced by GAME_AutoTeam(), GAME_ItemIsUseable(), and GAME_Spawn().
| void GAME_HandleResults | ( | dbuffer * | msg, |
| int | winner, | ||
| int * | numSpawned, | ||
| int * | numAlive, | ||
| int | numKilled[][MAX_TEAMS], | ||
| int | numStunned[][MAX_TEAMS], | ||
| bool | nextmap ) |
After a mission was finished this function is called.
| msg | The network message buffer |
| winner | The winning team or -1 if it was a draw |
| numSpawned | The amounts of all spawned actors per team |
| numAlive | The amount of survivors per team |
| numKilled | The amount of killed actors for all teams. The first dimension contains the attacker team, the second the victim team |
| numStunned | The amount of stunned actors for all teams. The first dimension contains the attacker team, the second the victim team |
| nextmap | Indicates if there is another map to follow within the same msission |
Definition at line 1135 of file cl_game.cpp.
References CL_Drop(), GAME_GetCurrentType(), and MAX_TEAMS.
Referenced by CL_ParseResults().
| bool GAME_HandleServerCommand | ( | const char * | command, |
| dbuffer * | msg ) |
Definition at line 361 of file cl_game.cpp.
References GAME_GetCurrentType().
Referenced by CL_ConnectionlessPacket().
|
static |
This is called if actors are spawned (or at least the spawning commands were send to the server). This callback can e.g. be used to set initial actor states. E.g. request crouch and so on. These events are executed without consuming time.
Definition at line 1346 of file cl_game.cpp.
References ACTOR_HAND_NOT_SET, cl, clc_initactorstates, cls, GAME_GetCurrentType(), i, lengthof, LIST_Count(), LIST_Foreach, m, NET_WriteByte(), NET_WriteMsg(), NET_WriteShort(), NONE, STATE_REACTION, and UI_ExecuteConfunc().
Referenced by GAME_StartMatch().
| void GAME_InitMissionBriefing | ( | const char * | title | ) |
Definition at line 1311 of file cl_game.cpp.
References CL_GetConfigString(), CS_VICTORY_CONDITIONS, GAME_GetCurrentType(), LIST_AddString(), LIST_IsEmpty(), Q_strvalid, TEXT_MISSIONBRIEFING, TEXT_MISSIONBRIEFING_TITLE, TEXT_MISSIONBRIEFING_VICTORY_CONDITIONS, UI_PushWindow(), UI_RegisterLinkedListText(), and UI_RegisterText().
Referenced by CL_ConnectionlessPacket(), CL_ViewLoadMedia(), and GAME_StartBattlescape().
Definition at line 1669 of file cl_game.cpp.
References Cmd_AddCommand(), Cmd_RegisterCmdListener(), cmdListener(), Cvar_RegisterCvarListener(), cvarListener(), GAME_Abort_f(), GAME_ActorSelect_f(), GAME_AutoTeam_f(), GAME_Exit_f(), GAME_LoadTeam_f(), GAME_SaveTeam_f(), GAME_SaveTeamState_f(), GAME_SetMode_f(), GAME_TeamDelete_f(), GAME_TeamSlotComments_f(), GAME_ToggleActorForTeam_f(), GAME_UpdateTeamMenuParameters_f(), and MAP_InitCallbacks().
Referenced by CL_InitLocal(), and CampaignTest::SetUpTestCase().
Fills the game mode list entries with the parsed values from the script.
Definition at line 1649 of file cl_game.cpp.
References cgameTypes, Com_Printf(), GAME_GetCGameAPI_(), GAME_UnloadGame(), i, cgame_export_t::isMultiplayer, cgameType_t::name, numCGameTypes, UI_ExecuteConfunc(), and cgameType_t::window.
Referenced by CLMN_Init().
| bool GAME_IsMultiplayer | ( | void | ) |
Definition at line 299 of file cl_game.cpp.
References GAME_GetCurrentType(), and cgame_export_t::isMultiplayer.
Referenced by CL_FixActorSkinIDX(), CL_GenerateCharacter(), CL_SendCommand(), and SP_worldspawn().
| bool GAME_IsTeamEmpty | ( | void | ) |
Definition at line 388 of file cl_game.cpp.
References chrDisplayList, and LIST_IsEmpty().
Referenced by cgame_import_t::bool(), GAME_GetImportData(), GAME_LoadDefaultTeam(), and GAME_LoadTeam_f().
| bool GAME_ItemIsUseable | ( | const objDef_t * | od | ) |
Definition at line 1104 of file cl_game.cpp.
References CHRSH_IsArmourUseableForTeam(), Com_GetTeamDefinitionByID(), GAME_GetCurrentType(), GAME_GetTeamDef(), and objDef_t::isArmour().
Referenced by CL_ActorGetContainerForReload(), CL_ActorReload(), HUD_ShotReserve_f(), HUD_UpdateActorFireMode(), HUD_UpdateReactionFiremodes(), INV_DecreaseItem_f(), INV_IncreaseItem_f(), INV_ItemDescription(), UI_BaseInventoryNodeDrawItems(), UI_BaseInventoryNodeGetItem(), UI_ContainerItemIteratorNext(), UI_ContainerNodeUpdateEquipment(), and UI_GetItemTooltip().
Definition at line 945 of file cl_game.cpp.
References GAME_GetCurrentType().
Referenced by uiGeoscapeNode::onLeftClick().
|
static |
Definition at line 393 of file cl_game.cpp.
References format(), NET_OOB_Printf(), and Q_vsnprintf().
Referenced by GAME_GetImportData().
|
static |
Definition at line 405 of file cl_game.cpp.
References cls, format(), NET_OOB_Printf(), and Q_vsnprintf().
Referenced by GAME_GetImportData().
|
static |
Send the character information to the server that is needed to spawn the soldiers of the player.
| [out] | buf | The net channel buffer to write the character data into. |
| [in] | chr | The character to get the data from. |
Definition at line 1184 of file cl_game.cpp.
References ACTOR_SIZE_2x2, ACTOR_SIZE_NORMAL, chrScoreGlobal_t::assignedMissions, character_t::body, character_t::bodySkin, teamDef_t::bodyTemplate, Com_Error(), ERR_DROP, chrScoreGlobal_t::experience, character_t::fieldSize, character_t::gender, character_t::head, character_t::headSkin, character_t::HP, teamDef_t::idx, KILLED_NUM_TYPES, chrScoreGlobal_t::kills, character_t::maxHP, character_t::morale, character_t::name, NET_WriteByte(), NET_WriteLong(), NET_WriteShort(), NET_WriteString(), BodyData::numBodyParts(), character_t::path, character_t::score, SKILL_NUM_TYPES, chrScoreGlobal_t::skills, character_t::STUN, chrScoreGlobal_t::stuns, character_t::teamDef, woundInfo_t::treatmentLevel, character_t::ucn, and character_t::wounds.
Referenced by GAME_SendCurrentTeamSpawningInfo().
Definition at line 1163 of file cl_game.cpp.
References CID_MAX, Inventory::countItems(), GAME_NetSendItem(), Inventory::getContainer2(), Item::getNext(), Item::getX(), Item::getY(), INVDEF, and NET_WriteShort().
Referenced by GAME_SendCurrentTeamSpawningInfo().
|
static |
Definition at line 1150 of file cl_game.cpp.
References Item::ammoDef(), CL_GetEvent(), Com_DPrintf(), DEBUG_CLIENT, Item::def(), EV_INV_TRANSFER, eventRegister_t::formatString, Item::getAmmoLeft(), Item::getAmount(), objDef_t::id, objDef_t::idx, NET_WriteFormat(), NONE, and Item::rotated.
Referenced by GAME_NetSendInventory().
Definition at line 1432 of file cl_game.cpp.
References GAME_GetCurrentType().
Referenced by CL_ExecuteBattlescapeEvent(), and CL_ParseEvent().
| void GAME_ParseModes | ( | const char * | name, |
| const char ** | text ) |
Definition at line 999 of file cl_game.cpp.
References cgame_vals, cgameTypes, Com_ParseBlock(), Com_Printf(), i, cgameType_t::id, MAX_CGAMETYPES, name, numCGameTypes, OBJZERO, Q_streq, Q_strncpyz(), and Sys_Error().
Referenced by CL_ParseClientData().
Definition at line 448 of file cl_game.cpp.
References Mem_PoolStrDup.
Referenced by GAME_GetImportData().
Definition at line 290 of file cl_game.cpp.
References GAME_GetCurrentType(), and GAME_SetMode().
Referenced by GAME_GetImportData(), VID_Restart_f(), and cgame_import_t::void().
|
static |
Definition at line 463 of file cl_game.cpp.
Referenced by GAME_GetImportData().
Reset all characters in the static character array.
Definition at line 244 of file cl_game.cpp.
References characters, chrDisplayList, i, LIST_Delete(), MAX_ACTIVETEAM, and UI_ExecuteConfunc().
Referenced by GAME_GenerateTeam(), GAME_LoadTeamInfo(), and GAME_SetMode().
|
static |
Stores a team-list (chr-list) info to buffer (which might be a network buffer, too).
Definition at line 1232 of file cl_game.cpp.
References clc_teaminfo, GAME_NetSendCharacter(), GAME_NetSendInventory(), LIST_Count(), LIST_Foreach, NET_WriteByte(), and Inventory::resetTempContainers().
Referenced by GAME_SpawnSoldiers().
| void GAME_SetMode | ( | const cgame_export_t * | gametype | ) |
Definition at line 952 of file cl_game.cpp.
References cl, CL_Disconnect(), cls, cmdListener(), Com_Printf(), csi, Cvar_FullSet(), CVAR_NOSET, cvarListener(), GAME_GetCurrentType(), GAME_ResetCharacters(), inventoryImport, LIST_Delete(), cgame_export_t::menu, cgame_export_t::name, UI_InitStack(), and UI_IsWindowOnStack().
Referenced by CL_Shutdown(), GAME_Drop(), GAME_Exit_f(), GAME_ReloadMode(), GAME_SetMode_f(), and GAME_UnloadGame().
Decides which game mode should be set - takes the menu as reference.
Definition at line 1078 of file cl_game.cpp.
References cgameTypes, Cmd_Argc(), Cmd_Argv(), Com_Printf(), GAME_GetCGameAPI_(), GAME_SetMode(), GAME_UnloadGame(), i, numCGameTypes, Q_streq, UI_GetActiveWindowName(), and cgameType_t::window.
Referenced by GAME_InitStartup().
| void GAME_SetServerInfo | ( | const char * | server, |
| const char * | serverport ) |
Definition at line 347 of file cl_game.cpp.
References cls, and Q_strncpyz().
Referenced by GAME_GetImportData().
Definition at line 1690 of file cl_game.cpp.
References cgameTypes, characters, Cmd_UnRegisterCmdListener(), cmdListener(), Cvar_UnRegisterCvarListener(), cvarListener(), equipDefStandard, i, lengthof, MAP_ShutdownCallbacks(), numCGameTypes, and OBJZERO.
Referenced by CL_Shutdown().
|
static |
Definition at line 1264 of file cl_game.cpp.
References chrDisplayList, cls, count, csi, GAME_GenerateTeam(), GAME_GetCharacterArraySize(), GAME_GetCurrentType(), GAME_GetTeamDef(), INV_GetEquipmentDefinitionByID(), inventoryImport, LIST_AddPointer(), LIST_Foreach, and LIST_IsEmpty().
Referenced by GAME_SpawnSoldiers().
Called during startup of mission to send team info.
Definition at line 1378 of file cl_game.cpp.
References cl, cls, Com_Printf(), GAME_GetCurrentType(), GAME_SendCurrentTeamSpawningInfo(), GAME_Spawn(), LIST_IsEmpty(), and NET_WriteMsg().
Referenced by CL_SpawnSoldiers_f().
| void GAME_StartBattlescape | ( | bool | isTeamPlay | ) |
Called when the server sends the EV_START event.
| isTeamPlay | true if the game is a teamplay round. This can be interesting for multiplayer based game types |
Definition at line 1296 of file cl_game.cpp.
References _, cl, CL_GetConfigString(), CS_MAPTITLE, Cvar_Set(), GAME_GetCurrentType(), GAME_InitMissionBriefing(), and HUD_InitUI().
Referenced by CL_StartGame().
Definition at line 1399 of file cl_game.cpp.
References cl, clc_stringcmd, cls, GAME_InitializeBattlescape(), LIST_IsEmpty(), NET_STATE_STARTMATCH, NET_WriteByte(), NET_WriteMsg(), and NET_WriteString().
Referenced by CL_StartMatch_f().
|
static |
Definition at line 428 of file cl_game.cpp.
References cl_genericPool, and Mem_PoolStrDup.
Referenced by GAME_GetImportData().
Definition at line 912 of file cl_game.cpp.
Referenced by GAME_GetImportData(), and cgame_import_t::void().
| bool GAME_TeamIsKnown | ( | const teamDef_t * | teamDef | ) |
Definition at line 1439 of file cl_game.cpp.
References GAME_GetCurrentType().
Referenced by CL_ActorAppear(), and CL_AddTargetingBox().
|
static |
Definition at line 417 of file cl_game.cpp.
References format(), popupText, Q_vsnprintf(), and UI_Popup().
Referenced by GAME_GetImportData().
Definition at line 900 of file cl_game.cpp.
References cls, Com_Printf(), and GAME_SetMode().
Referenced by CL_Shutdown(), GAME_Drop(), GAME_Exit_f(), GAME_GetCGameAPI(), GAME_InitUIData(), and GAME_SetMode_f().
Definition at line 473 of file cl_game.cpp.
References GAME_GetCurrentName(), and WEB_CGameDelete().
Referenced by GAME_GetImportData().
Definition at line 478 of file cl_game.cpp.
References GAME_GetCurrentName(), and WEB_CGameDownloadFromUser().
Referenced by GAME_GetImportData().
Definition at line 483 of file cl_game.cpp.
References GAME_GetCurrentName(), and WEB_CGameListForUser().
Referenced by GAME_GetImportData().
Definition at line 468 of file cl_game.cpp.
References GAME_GetCurrentName(), and WEB_CGameUpload().
Referenced by GAME_GetImportData().
Definition at line 574 of file cl_game.cpp.
References image_t::height, it_pic, name, R_DrawImage(), R_FindImage(), and image_t::width.
Referenced by GAME_GetImportData().
Definition at line 564 of file cl_game.cpp.
References Com_Printf(), name, R_GetImage(), and R_UploadAlpha().
Referenced by GAME_GetImportData().
|
static |
Definition at line 559 of file cl_game.cpp.
References name, and UI_DrawNormImageByName().
Referenced by GAME_GetImportData().
Definition at line 549 of file cl_game.cpp.
References UI_DrawString().
Referenced by GAME_GetImportData().
|
static |
Definition at line 554 of file cl_game.cpp.
References name, and UI_PushWindow().
Referenced by GAME_GetImportData().
|
static |
Valid equipment definition values from script files.
Definition at line 991 of file cl_game.cpp.
Referenced by GAME_ParseModes().
|
static |
Definition at line 60 of file cl_game.cpp.
Referenced by GAME_InitUIData(), GAME_ParseModes(), GAME_SetMode_f(), and GAME_Shutdown().
|
static |
static character array that can be used by a game mode to store the needed character values.
Definition at line 186 of file cl_game.cpp.
Referenced by GAME_GetCharacter(), GAME_GetCharacterArraySize(), GAME_GetCharacterByUCN(), GAME_ResetCharacters(), and GAME_Shutdown().
|
static |
Definition at line 181 of file cl_game.cpp.
Referenced by GAME_GetEquipmentDefinition(), and GAME_Shutdown().
| geoscapeData_t geoscapeData |
Definition at line 147 of file cl_game.cpp.
Referenced by GAME_GetImportData(), and uiGeoscapeNode::onLoading().
|
static |
Definition at line 898 of file cl_game.cpp.
Referenced by G_Init(), GAME_SetMode(), GAME_Spawn(), ResetInventoryList(), and ResetInventoryList().
|
static |
Definition at line 61 of file cl_game.cpp.
Referenced by GAME_InitUIData(), GAME_ParseModes(), GAME_SetMode_f(), and GAME_Shutdown().
|
static |
Definition at line 880 of file cl_game.cpp.
Referenced by AllocInventoryMemory(), AllocInventoryMemory(), FreeAllInventory(), FreeAllInventory(), G_AllocInventoryMemory(), G_FreeAllInventory(), GAME_AllocInventoryMemory(), and GAME_FreeAllInventory().