UFO: Alien Invasion
|
#include "ui_node_radar.h"
#include "ui_node_abstractnode.h"
#include "../ui_render.h"
#include "../ui_main.h"
#include "../ui_behaviour.h"
#include "../ui_input.h"
#include "../../client.h"
#include "../../battlescape/cl_hud.h"
#include "../../renderer/r_draw.h"
#include "../../../shared/parse.h"
#include "../../../common/scripts_lua.h"
Go to the source code of this file.
Data Structures | |
struct | hudRadarImage_s |
Each maptile must have an entry in the images array. More... | |
struct | hudRadar_s |
Typedefs | |
typedef struct hudRadarImage_s | hudRadarImage_t |
Each maptile must have an entry in the images array. More... | |
typedef struct hudRadar_s | hudRadar_t |
Functions | |
static void | UI_FreeRadarImages (void) |
static void | UI_BuildRadarImageList (const char *tiles, const char *pos) |
Reads the tiles and position config strings and convert them into a linked list that holds the imagename (mapname), the x and the y position (screencoordinates) More... | |
static void | UI_GetRadarWidth (const uiNode_t *node, vec2_t gridSize) |
Get the width of radar. More... | |
static bool | UI_CheckRadarImage (const char *imageName, const int level) |
static void | UI_InitRadar (const uiNode_t *node) |
Calculate some radar values that won't change during a mission. More... | |
static void | UI_RadarNodeGetActorColor (const le_t *le, vec4_t color) |
static void | UI_RadarNodeDrawArrays (const vec4_t color, vec2_t coords[4], vec2_t vertices[4], const image_t *image) |
static void | UI_RadarNodeDrawItem (const le_t *le, const vec3_t pos) |
static void | UI_RadarNodeDrawActor (const le_t *le, const vec3_t pos) |
void | UI_RegisterRadarNode (uiBehaviour_t *behaviour) |
Variables | |
static hudRadar_t | radar |
static char const *const | imageExtensions [] |
typedef struct hudRadar_s hudRadar_t |
typedef struct hudRadarImage_s hudRadarImage_t |
Each maptile must have an entry in the images array.
|
static |
Reads the tiles and position config strings and convert them into a linked list that holds the imagename (mapname), the x and the y position (screencoordinates)
[in] | tiles | The configstring with the tiles (map tiles) |
[in] | pos | The position string, only used in case of random map assembly |
Definition at line 103 of file ui_node_radar.cpp.
References hudRadar_s::base, cl, Com_Error(), Com_Parse(), Com_Printf(), Com_sprintf(), ERR_DROP, AABB::getWidthX(), AABB::getWidthY(), hudRadar_s::gridMin, hudRadarImage_s::gridX, hudRadarImage_s::gridY, i, hudRadar_s::images, hudRadarImage_s::isTile, mapData_s::mapBox, clientBattleScape_s::mapData, hudRadarImage_s::mapX, hudRadarImage_s::mapY, MAX_VAR, Mem_StrDup, hudRadarImage_s::name, name, hudRadar_s::numImages, Q_strncpyz(), and UNIT_SIZE.
Referenced by UI_InitRadar().
|
static |
Definition at line 247 of file ui_node_radar.cpp.
References FS_CheckFile(), and imageExtensions.
Referenced by UI_InitRadar().
Definition at line 83 of file ui_node_radar.cpp.
References i, hudRadar_s::images, hudRadarImage_s::maxlevel, Mem_Free, hudRadarImage_s::name, hudRadar_s::numImages, OBJZERO, and hudRadarImage_s::path.
Referenced by UI_InitRadar().
Get the width of radar.
[in] | node | Node description of the radar |
[in] | gridSize | size of the radar picture, in grid units. |
< Contains the width of the first and the last tile of the first line (in screen unit)
< Contains the height of the first and the last tile of the first column (in screen unit)
< Contains the grid X position of 2nd tiles in first line
< Contains the grid Y position of 2nd tiles in first column
< ratio conversion between screen coordinates and grid coordinates
< Number of pixel to remove to avoid rounding errors (and lines between tiles) We remove pixel because this is much nicer if tiles overlap a little bit rather than if they are too distant one from the other
Definition at line 164 of file ui_node_radar.cpp.
References hudRadar_s::gridMax, hudRadar_s::gridMin, hudRadarImage_s::gridX, hudRadarImage_s::gridY, hudRadar_s::h, hudRadarImage_s::height, hudRadar_s::images, hudRadar_s::numImages, Vector2Set, hudRadar_s::w, and hudRadarImage_s::width.
Referenced by UI_InitRadar().
Calculate some radar values that won't change during a mission.
< Size of the whole grid (in tiles units)
Definition at line 265 of file ui_node_radar.cpp.
References hudRadar_s::a, hudRadar_s::b, uiNode_t::box, hudRadar_s::c, cl, CL_GetConfigString(), Com_Printf(), Com_sprintf(), CS_POSITIONS, CS_TILES, f, AABB::getMaxY(), AABB::getMinX(), AABB::getMinY(), AABB::getWidthX(), AABB::getWidthY(), hudRadarImage_s::gridHeight, hudRadar_s::gridHeight, hudRadar_s::gridMin, hudRadarImage_s::gridWidth, hudRadar_s::gridWidth, hudRadarImage_s::gridX, hudRadarImage_s::gridY, hudRadar_s::h, hudRadarImage_s::height, image_s::height, i, hudRadar_s::images, hudRadarImage_s::isTile, it_pic, MAP_SIZE_OFFSET, mapData_s::mapBox, clientBattleScape_s::mapData, hudRadarImage_s::mapHeight, hudRadarImage_s::mapWidth, hudRadarImage_s::mapX, hudRadarImage_s::mapY, MAX_QPATH, hudRadarImage_s::maxlevel, AABB::maxs, Mem_StrDup, AABB::mins, hudRadarImage_s::name, hudRadar_s::numImages, hudRadarImage_s::path, PATHFINDING_HEIGHT, R_FindImage(), uiBox_t::size, UI_BuildRadarImageList(), UI_CheckRadarImage(), UI_FreeRadarImages(), UI_GetNodeAbsPos(), UI_GetRadarWidth(), UNIT_SIZE, va(), Vector2Copy, Vector2Dist, VectorAdd, VectorSet, VectorSubtract, hudRadar_s::w, hudRadarImage_s::width, image_s::width, hudRadarImage_s::x, hudRadar_s::x, hudRadarImage_s::y, and hudRadar_s::y.
Referenced by uiRadarNode::draw().
Definition at line 421 of file ui_node_radar.cpp.
References le_s::angle, directionAngles, f, i, LE_IsDead, LE_IsSelected, M_PI, torad, UI_LoadImage(), UI_RadarNodeDrawArrays(), and UI_RadarNodeGetActorColor().
Referenced by uiRadarNode::draw().
|
static |
Definition at line 410 of file ui_node_radar.cpp.
References R_Color(), and R_DrawImageArray().
Referenced by UI_RadarNodeDrawActor().
Definition at line 417 of file ui_node_radar.cpp.
Referenced by uiRadarNode::draw().
Definition at line 385 of file ui_node_radar.cpp.
References cl_worldlevel, cls, cvar_s::integer, LE_IsCivilian, LE_IsDead, le_s::pos, client_static_s::team, le_s::team, and Vector4Set.
Referenced by UI_RadarNodeDrawActor().
void UI_RegisterRadarNode | ( | uiBehaviour_t * | behaviour | ) |
Definition at line 677 of file ui_node_radar.cpp.
References uiBehaviour_t::lua_SWIG_typeinfo, uiBehaviour_t::manager, uiBehaviour_t::name, and UI_SWIG_TypeQuery().
|
static |
Definition at line 243 of file ui_node_radar.cpp.
Referenced by UI_CheckRadarImage().
|
static |
Definition at line 81 of file ui_node_radar.cpp.
Referenced by RADAR_AddDetectedUFOToEveryRadar(), and RADAR_CheckRadarSensored().