FS2_Open
Open source remastering of the Freespace 2 engine
hudlock.cpp File Reference
#include "ai/ai.h"
#include "debugconsole/console.h"
#include "gamesnd/gamesnd.h"
#include "globalincs/linklist.h"
#include "hud/hudlock.h"
#include "iff_defs/iff_defs.h"
#include "io/timer.h"
#include "mission/missionparse.h"
#include "network/multi.h"
#include "object/object.h"
#include "playerman/player.h"
#include "render/3d.h"
#include "ship/ship.h"
#include "weapon/emp.h"
#include "weapon/weapon.h"

Go to the source code of this file.

Macros

#define VIRTUAL_FRAME_HALF_WIDTH   320.0f
 
#define VIRTUAL_FRAME_HALF_HEIGHT   240.0f
 
#define LOCK_GAUGE_BLINK_RATE   5
 
#define ROTATE_DELAY   40
 

Functions

void hud_lock_determine_lock_point (vec3d *lock_world_pos_out)
 
void hud_init_missile_lock ()
 
void hud_lock_reset (float lock_time_scale)
 
int hud_lock_has_homing_point ()
 
 DCF_BOOL (nebula_sec_range, Nebula_sec_range)
 
int hud_lock_world_pos_in_range (vec3d *target_world_pos, vec3d *vec_to_target)
 
int hud_lock_target_in_range ()
 
int hud_abort_lock ()
 
int hud_lock_on_subsys_ok ()
 
void hud_lock_check_if_target_in_lock_cone ()
 
int hud_lock_secondary_weapon_changed (ship_weapon *swp)
 
void hud_do_lock_indicator (float frametime)
 
void hud_calculate_lock_position (float frametime)
 
void hud_calculate_lock_start_pos ()
 
void hud_stop_looped_locking_sounds ()
 
void hud_lock_update_lock_pos (object *target_objp)
 
void hud_lock_get_new_lock_pos (object *target_objp)
 

Variables

vec3d lock_world_pos
 
int Missile_track_loop = -1
 
int Missile_lock_loop = -1
 
int Lock_target_box_width [GR_NUM_RESOLUTIONS]
 
int Lock_target_box_height [GR_NUM_RESOLUTIONS]
 
float Lock_triangle_base [GR_NUM_RESOLUTIONS]
 
float Lock_triangle_height [GR_NUM_RESOLUTIONS]
 
int Lock_gauge_half_w [NUM_HUD_RETICLE_STYLES][GR_NUM_RESOLUTIONS]
 
int Lock_gauge_half_h [GR_NUM_RESOLUTIONS]
 
int Lockspin_half_w [NUM_HUD_RETICLE_STYLES][GR_NUM_RESOLUTIONS]
 
int Lockspin_half_h [NUM_HUD_RETICLE_STYLES][GR_NUM_RESOLUTIONS]
 
char Lock_fname [NUM_HUD_RETICLE_STYLES][GR_NUM_RESOLUTIONS][MAX_FILENAME_LEN]
 
char Lockspin_fname [NUM_HUD_RETICLE_STYLES][GR_NUM_RESOLUTIONS][MAX_FILENAME_LEN]
 
int Nebula_sec_range = 0
 

Macro Definition Documentation

#define LOCK_GAUGE_BLINK_RATE   5

Definition at line 70 of file hudlock.cpp.

#define ROTATE_DELAY   40

Definition at line 634 of file hudlock.cpp.

#define VIRTUAL_FRAME_HALF_HEIGHT   240.0f

Definition at line 32 of file hudlock.cpp.

#define VIRTUAL_FRAME_HALF_WIDTH   320.0f

Definition at line 31 of file hudlock.cpp.

Function Documentation

DCF_BOOL ( nebula_sec_range  ,
Nebula_sec_range   
)
int hud_abort_lock ( )

Definition at line 374 of file hudlock.cpp.

void hud_calculate_lock_position ( float  frametime)

Definition at line 710 of file hudlock.cpp.

void hud_calculate_lock_start_pos ( )

Definition at line 942 of file hudlock.cpp.

void hud_do_lock_indicator ( float  frametime)

Definition at line 492 of file hudlock.cpp.

void hud_init_missile_lock ( )

Definition at line 97 of file hudlock.cpp.

void hud_lock_check_if_target_in_lock_cone ( )

Definition at line 439 of file hudlock.cpp.

void hud_lock_determine_lock_point ( vec3d lock_world_pos_out)

Definition at line 1083 of file hudlock.cpp.

void hud_lock_get_new_lock_pos ( object target_objp)

Definition at line 1006 of file hudlock.cpp.

int hud_lock_has_homing_point ( )

Definition at line 299 of file hudlock.cpp.

int hud_lock_on_subsys_ok ( )

Definition at line 411 of file hudlock.cpp.

void hud_lock_reset ( float  lock_time_scale)

Definition at line 271 of file hudlock.cpp.

int hud_lock_secondary_weapon_changed ( ship_weapon swp)

Definition at line 455 of file hudlock.cpp.

int hud_lock_target_in_range ( )

Definition at line 347 of file hudlock.cpp.

void hud_lock_update_lock_pos ( object target_objp)

Definition at line 987 of file hudlock.cpp.

int hud_lock_world_pos_in_range ( vec3d target_world_pos,
vec3d vec_to_target 
)

Definition at line 310 of file hudlock.cpp.

void hud_stop_looped_locking_sounds ( )

Definition at line 978 of file hudlock.cpp.

Variable Documentation

Initial value:
=
{
{ "lock1_fs1", "2_lock1_fs1" },
{ "lock1", "2_lock1" }
}

Definition at line 81 of file hudlock.cpp.

int Lock_gauge_half_h[GR_NUM_RESOLUTIONS]
Initial value:
= {
15,
25
}

Definition at line 65 of file hudlock.cpp.

Initial value:
= {
{ 15, 24 },
{ 17, 28 }
}

Definition at line 61 of file hudlock.cpp.

int Lock_target_box_height[GR_NUM_RESOLUTIONS]
Initial value:
= {
19,
30
}

Definition at line 46 of file hudlock.cpp.

int Lock_target_box_width[GR_NUM_RESOLUTIONS]
Initial value:
= {
19,
30
}

Definition at line 42 of file hudlock.cpp.

float Lock_triangle_base[GR_NUM_RESOLUTIONS]
Initial value:
= {
4.0f,
6.5f
}

Definition at line 52 of file hudlock.cpp.

float Lock_triangle_height[GR_NUM_RESOLUTIONS]
Initial value:
= {
4.0f,
6.5f
}

Definition at line 56 of file hudlock.cpp.

vec3d lock_world_pos

Definition at line 35 of file hudlock.cpp.

Initial value:
=
{
{ "lockspin_fs1", "2_lockspin_fs1" },
{ "lockspin", "2_lockspin" }
}

Definition at line 87 of file hudlock.cpp.

Initial value:
= {
{ 16, 26 },
{ 32, 52 }
}

Definition at line 76 of file hudlock.cpp.

Initial value:
= {
{ 16, 26 },
{ 31, 50 }
}

Definition at line 72 of file hudlock.cpp.

int Missile_lock_loop = -1

Definition at line 40 of file hudlock.cpp.

int Missile_track_loop = -1

Definition at line 39 of file hudlock.cpp.

int Nebula_sec_range = 0

Given a turret tp and its parent parent_objnum, fire from the turret at its enemy.

Definition at line 307 of file hudlock.cpp.