26 #define MATCH_SPEED_THRESHOLD 0.1f // minimum speed target must be moving for match speed to apply
27 #define CARGO_RADIUS_DELTA 100 // distance added to radius required for cargo scanning
28 #define CAPITAL_CARGO_RADIUS_DELTA 250 // distance added to radius required for cargo scanning
29 #define CARGO_REVEAL_MIN_DIST 150 // minimum distance for reveal cargo (used if radius+CARGO_RADIUS_DELTA < CARGO_REVEAL_MIN_DIST)
30 #define CAP_CARGO_REVEAL_MIN_DIST 300 // minimum distance for reveal cargo (used if radius+CARGO_RADIUS_DELTA < CARGO_REVEAL_MIN_DIST)
31 #define CARGO_MIN_DOT_TO_REVEAL 0.95 // min dot to proceed to have cargo scanning take place
35 #define MAX_HOTKEY_TARGET_ITEMS 150 // maximum number of ships that can be targeted on *all* keys
36 #define SELECTION_SET 0x5000 // variable used for drawing brackets. The bracketing code uses
39 #define MESSAGE_SENDER 0x5001 // variable used for drawing brackets around a message sender.
43 #define HOTKEY_USER_ADDED 1
44 #define HOTKEY_MISSION_FILE_ADDED 2
47 #define NUM_HUD_SETTINGS 2
56 #define TOGGLE_TEXT_NEBULA_ALPHA 127
57 #define TOGGLE_TEXT_NORMAL_ALPHA 160
90 int hud_target_closest(
int team_mask = -1,
int attacked_objnum = -1,
int play_fail_sound =
TRUE,
int filter = 0,
int turret_attacking_target = 0);
99 void hud_target_next_list(
int hostile=1,
int next_flag=1,
int team_mask = -1,
int attacked_objnum = -1,
int play_fail_sound =
TRUE,
int filter = 0,
int turret_attacking_target = 0);
147 void hud_tri(
float x1,
float y1,
float x2,
float y2,
float x3,
float y3);
149 void hud_tri_empty(
float x1,
float y1,
float x2,
float y2,
float x3,
float y3);
160 #define TARGET_DISPLAY_DIST (1<<0)
161 #define TARGET_DISPLAY_DOTS (1<<1)
162 #define TARGET_DISPLAY_LEAD (1<<2)
163 #define TARGET_DISPLAY_SUBSYS (1<<3)
164 #define TARGET_DISPLAY_NAME (1<<4)
165 #define TARGET_DISPLAY_CLASS (1<<5)
201 void render(
float frametime);
224 void render(
float frametime);
240 void render(
float frametime);
254 void render(
float frametime);
285 void render(
float frametime);
345 void render(
float frametime);
373 void initBitmaps(
char *fname_first,
char *fname_entry,
char *fname_last);
386 virtual void render(
float frametime);
403 void render(
float frametime);
422 void render(
float frametime);
431 bool draw_secondary_models;
432 bool draw_primary_models;
442 void render(
float frametime);
449 int Warhead_name_offsets[2];
450 int Warhead_count_offsets[2];
451 int Warhead_count_size[2];
465 void render(
float frametime);
476 void render(
float frametime);
493 virtual void render(
float frametime);
494 void renderTriangle(
vec3d *hostile_pos,
int aspect_flag,
int show_interior,
int split_tri);
503 void render(
float frametime);
511 void render(
float frametime);
519 void render(
float frametime);
535 void render(
float frametime);
550 void render(
float frametime);
554 int pickFrame(
float prange,
float srange,
float dist_to_target);
566 void render(
float frametime);
void hud_show_targeting_gauges(float frametime)
void initPrimaryNameOffsetX(int x)
void initMaxTriSeperation(float length)
void initSecondaryHeights(int top_h, int text_h)
void initCountTextOffsets(int x, int y)
void initBgFirstOffsetX(int x)
int Weapon_sunlinked_offset_x
void hud_tri_empty(float x1, float y1, float x2, float y2, float x3, float y3)
hud_frames _background_last
GLfloat GLfloat GLfloat GLfloat h
void initAlwaysShowText(bool show_text)
void initBitmaps(char *fname)
void hud_target_last_transmit()
void hud_init_targeting()
void hud_target_targets_target()
void initOnColor(int r, int g, int b, int a)
int subsystem_in_sight(object *objp, ship_subsys *subsys, vec3d *eye, vec3d *subsystem)
void initPrimaryWeaponOffsets(int link_x, int name_x, int ammo_x)
void hud_tri(float x1, float y1, float x2, float y2, float x3, float y3)
void render(float frametime)
void initPrimaryAmmoOffsetX(int x)
void hud_show_selection_set()
int hud_communications_state(ship *sp)
void initStartNameOffsetsY(int p_y, int s_y)
struct esct esct
An abbreviation for "Evaluate Ship as Closest Target", defines a data structure used to hold the requ...
void hud_target_hotkey_select(int k)
void initSecondaryWeaponOffsets(int ammo_x, int name_x, int reload_x, int linked_x, int unlinked_x)
HudGaugeSecondaryWeapons()
void initRadius(int length)
void hud_target_closest_locked_missile(object *A)
void hud_init_targeting_colors()
void render(float frametime)
void hud_target_clear_display_list()
int hud_get_best_primary_bank(float *range)
int Speed_text_offsets[2]
void hud_target_in_reticle_new()
void initEntryStartY(int y)
void initBitmap(char *fname)
void initSecondaryAmmoOffsetX(int x)
void maybeFlashWeapon(int index)
void initSecondaryReloadOffsetX(int x)
void hud_target_newest_ship()
int hud_target_closest_repair_ship(int goal_objnum=-1)
void hud_target_prev(int team_mask=-1)
void calculatePosition(vertex *target_point, vec3d *tpos, vec2d *outcoords, int *dir, float *half_triangle_sep)
int Weapon_header_offsets[NUM_HUD_SETTINGS][2]
int Weapon_sreload_offset_x
void hud_calculate_lead_pos(vec3d *lead_target_pos, vec3d *target_pos, object *targetp, weapon_info *wip, float dist_to_target, vec3d *rel_pos=NULL)
void hud_target_auto_target_next()
hud_frames secondary_top[NUM_HUD_SETTINGS]
void initCountSizes(int w, int h)
void initOffColor(int r, int g, int b, int a)
void initTextOffsets(int x, int y)
void hud_process_remote_detonate_missile()
void initTriBase(float length)
void initDrawOptions(bool primary_models, bool secondary_models)
hud_frames secondary_middle[NUM_HUD_SETTINGS]
float Offscreen_tri_height
void initAutoTextOffsets(int x, int y)
void render(float frametime)
void initBitmapsPrimaryTop(char *fname, char *fname_ballistic)
float hud_find_target_distance(object *targetee, object *targeter)
int Wenergy_text_offsets[2]
void initTriHeight(float length)
int Weapon_pammo_offset_x
void hud_show_hostile_triangle()
float Target_triangle_height
hud_frames primary_middle[NUM_HUD_SETTINGS]
void initEnergyHeight(int h)
void initBgLastOffsetX(int x)
void render(float frametime)
void initEnergyHeight(int h)
GLdouble GLdouble GLdouble r
htarget_list htarget_free_list
void hud_target_last_transmit_level_init()
An abbreviation for "Evaluate Ship as Closest Target", defines a data structure used to hold the requ...
void initOnColor(int r, int g, int b, int a)
void initBitmaps(char *fname)
int hud_target_closest(int team_mask=-1, int attacked_objnum=-1, int play_fail_sound=TRUE, int filter=0, int turret_attacking_target=0)
Sets the Players[Player_num].current_target to the closest ship to the player that matches the team p...
shader Training_msg_glass
GLboolean GLboolean GLboolean GLboolean a
void render(float frametime)
int Weapon_slinked_offset_x
int Weapon_plink_offset_x
int Target_text_offsets[2]
void polish_predicted_target_pos(weapon_info *wip, object *targetp, vec3d *enemy_pos, vec3d *predicted_enemy_pos, float dist_to_enemy, vec3d *last_delta_vec, int num_polish_steps)
void initBitmapsPrimaryLast(char *fname, char *fname_ballistic)
void initBitmaps(char *fname)
int hud_target_invalid_awacs(object *objp)
void initAutoTextOffsets(int x, int y)
void hud_target_subsystem_in_reticle()
void hud_target_hotkey_clear(int k)
void hud_target_last_transmit_add(int ship_num)
void initHalfSize(float w, float h)
void initBitmaps(char *fname)
void initMoveText(bool move_text)
void initBitmaps(char *fname)
void initTopOffsetX(int x, int x_b)
void initSecondaryNameOffsetX(int x)
virtual void render(float frametime)
void maybeFlashWeapon(int index)
void hud_check_reticle_list()
void initPrimaryLinkOffsetX(int x)
void render(float frametime)
void hud_target_next_list(int hostile=1, int next_flag=1, int team_mask=-1, int attacked_objnum=-1, int play_fail_sound=TRUE, int filter=0, int turret_attacking_target=0)
void hud_start_flash_weapon(int index)
float Target_triangle_base
void hud_stuff_ship_name(char *ship_name_text, ship *shipp)
void initBgEntryOffsetX(int x)
void render(float frametime)
void renderLeadQuick(vec3d *target_pos, object *targetp)
void initMaxSymbols(int count)
int Cm_text_val_offsets[2]
GLint GLint GLint GLint GLint x
int top_offset_x[NUM_HUD_SETTINGS]
void initPrimaryHeights(int top_h, int text_h)
void initHeaderText(char *text)
HudGaugeWeaponList(int gauge_object)
hud_frames primary_top[NUM_HUD_SETTINGS]
void renderTriangle(vec3d *hostile_pos, int aspect_flag, int show_interior, int split_tri)
void render(float frametime)
hud_frames Lead_indicator_gauge
void renderTriangleMissileTail(float ang, float xpos, float ypos, float cur_dist, int draw_solid, int draw_inside)
void initBitmapsSecondaryBottom(char *fname, char *fname_ballistic)
void initShowBallistics(bool show_ballistics)
GLuint const GLchar * name
void renderSight(int indicator_frame, vec3d *target_pos, vec3d *lead_target_pos)
int Weapon_pname_offset_x
GLboolean GLboolean GLboolean b
void initRadius(int length)
struct target_display_info target_display_info
void initSpeedTextOffsets(int x, int y)
hud_frames secondary_bottom[NUM_HUD_SETTINGS]
void initBgFirstHeight(int h)
void hud_stuff_ship_callsign(char *ship_callsign_text, ship *shipp)
void renderLeadCurrentTarget()
hud_frames _background_entry
GLubyte GLubyte GLubyte GLubyte w
void initTextAlign(int align)
struct htarget_list * next
struct htarget_list * prev
char header_text[NAME_LENGTH]
void renderOrientation(object *from_objp, object *to_objp, matrix *from_orientp)
void initBitmapsSecondaryMiddle(char *fname, char *fname_ballistic)
void initAlignments(int text_align, int armed_align)
void initBitmaps(char *fname)
void initCountValueOffsets(int x, int y)
HudGaugeReticleTriangle()
void hud_target_in_reticle_old()
void initArmedOffsets(int x, int y, int h, bool show)
void hud_show_message_sender()
void initBgEntryHeight(int h)
void initSizes(int w, int h)
void initSecondaryLinkedOffsetX(int x)
void initFrameOffsetX(int x, int x_b)
void render(float frametime)
void hud_target_prev_subobject()
void initBgLastOffsetY(int x)
void hud_target_uninspected_object(int next_flag)
void initViewDir(int dir)
void initBitmapsSecondaryTop(char *fname, char *fname_ballistic)
void render(float frametime)
void initTriBase(float length)
void renderIndicator(int frame_offset, object *targetp, vec3d *lead_target_pos)
virtual void render(float frametime)
void initTargetTextOffsets(int x, int y)
void render(float frametime)
void render(float frametime)
HudGaugeHostileTriangle()
void hud_update_weapon_flash()
hud_frames Cmeasure_gauge
void initEntryHeight(int h)
GLenum GLuint GLenum GLsizei length
void render(float frametime)
int turret_attacking_target
void hud_stuff_ship_class(char *ship_class_text, ship *shipp)
void hud_target_missile(object *source_obj, int next_flag)
SCP_vector< target_display_info > target_display_list
bool evaluate_ship_as_closest_target(esct *esct)
evaluate a ship (and maybe turrets) as a potential target
int frame_offset_x[NUM_HUD_SETTINGS]
void hud_target_next(int team_mask=-1)
char * Strafe_submode_text[]
void hud_target_hotkey_add_remove(int k, object *objp, int how_to_add)
void initBitmapsPrimaryMiddle(char *fname, char *fname_ballistic)
int Weapon_sammo_offset_x
void hud_process_homing_missiles(void)
void hud_target_toggle_hidden_from_sensors()
void initBitmaps(char *fname_first, char *fname_entry, char *fname_last)
void hud_target_change_check()
void render(float frametime)
int Weapon_sname_offset_x
void hud_target_live_turret(int next_flag, int auto_advance=0, int turret_attacking_target=0)
void initMaxFrontSeperation(float length)
void initBitmaps(char *fname)
void initCountOffsets(int x, int y)
float Max_front_seperation
void hud_restore_subsystem_target(ship *shipp)
void initTriHeight(float h)
void hud_target_random_ship()
void initHeaderOffsets(int x, int y, int x_b, int y_b)
int pickFrame(float prange, float srange, float dist_to_target)
void renderOffscreenIndicator(vec2d *coords, int dir, float distance, float half_triangle_sep, bool draw_solid=true)
struct htarget_list htarget_list
void render(float frametime)
void hud_cease_targeting()
void hud_target_add_display_list(object *objp, vertex *target_point, vec3d *target_pos, int correction, color *bracket_clr, char *name, int flags)
void hud_target_next_subobject()
void hud_keyed_targets_clear()
hud_frames primary_last[NUM_HUD_SETTINGS]
int hud_sensors_ok(ship *sp, int show_msg=1)
Check if targeting is possible based on sensors strength.
void render(float frametime)
void initSecondaryUnlinkedOffsetX(int x)
void initLineWidth(float w)
void render(float frametime)
void hud_cease_subsystem_targeting(int print_message=1)
void initNameOffsets(int x, int y)
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter
vec3d * get_subsystem_world_pos(object *parent_obj, ship_subsys *subsys, vec3d *world_pos)
hud_frames _background_first
HudGaugeMissileTriangles()
void initMaxColumns(int count)
void initHeaderOffsets(int x, int y)
int Armed_name_offsets[2]
float Lead_indicator_half[2]
float Max_offscreen_tri_seperation
void initOffColor(int r, int g, int b, int a)