FS2_Open
Open source remastering of the Freespace 2 engine
beam.h File Reference
#include "globalincs/globals.h"
#include "model/model.h"

Go to the source code of this file.

Classes

struct  beam_info
 
struct  beam_fire_info
 
struct  fighter_beam_fire_info
 
struct  beam_collision
 
struct  beam
 

Macros

#define BEAM_TYPE_A   0
 
#define BEAM_TYPE_B   1
 
#define BEAM_TYPE_C   2
 
#define BEAM_TYPE_D   3
 
#define BEAM_TYPE_E   4
 
#define MAX_BEAM_SHOTS   5
 
#define MAX_BEAMS   500
 
#define BFIF_IS_FIGHTER_BEAM   (1<<0)
 
#define BFIF_FORCE_FIRING   (1<<1)
 
#define BFIF_TARGETING_COORDS   (1<<2)
 
#define BFIF_FLOATING_BEAM   (1<<3)
 
#define MAX_FRAME_COLLISIONS   10
 
#define BF_SAFETY   (1<<0)
 
#define BF_SHRINK   (1<<1)
 
#define BF_FORCE_FIRING   (1<<2)
 
#define BF_IS_FIGHTER_BEAM   (1<<3)
 
#define BF_TARGETING_COORDS   (1<<4)
 
#define BF_FLOATING_BEAM   (1<<5)
 

Typedefs

typedef struct beam_info beam_info
 
typedef struct beam_fire_info beam_fire_info
 
typedef struct fighter_beam_fire_info fighter_beam_fire_info
 
typedef struct beam_collision beam_collision
 
typedef struct beam beam
 

Functions

int beam_fire (beam_fire_info *fire_info)
 
int beam_fire_targeting (fighter_beam_fire_info *fire_info)
 
int beam_get_parent (object *bm)
 
int beam_get_weapon_info_index (object *bm)
 
int beam_get_num_collisions (int objnum)
 
int beam_get_collision (int objnum, int num, int *collision_objnum, mc_info **cinfo)
 
void beam_init ()
 
void beam_level_init ()
 
void beam_level_close ()
 
int beam_collide_ship (obj_pair *pair)
 
int beam_collide_asteroid (obj_pair *pair)
 
int beam_collide_missile (obj_pair *pair)
 
int beam_collide_debris (obj_pair *pair)
 
void beam_move_all_pre ()
 
void beam_move_all_post ()
 
void beam_render_all ()
 
int beam_collide_early_out (object *a, object *b)
 
void beam_pause_sounds ()
 
void beam_unpause_sounds ()
 
void beam_calc_facing_pts (vec3d *top, vec3d *bot, vec3d *fvec, vec3d *pos, float w, float z_add)
 
float beam_get_ship_damage (beam *b, object *objp)
 

Variables

beam Beams [MAX_BEAMS]
 
int Beam_count
 

Macro Definition Documentation

#define BEAM_TYPE_A   0

Definition at line 32 of file beam.h.

#define BEAM_TYPE_B   1

Definition at line 33 of file beam.h.

#define BEAM_TYPE_C   2

Definition at line 34 of file beam.h.

#define BEAM_TYPE_D   3

Definition at line 35 of file beam.h.

#define BEAM_TYPE_E   4

Definition at line 36 of file beam.h.

#define BF_FLOATING_BEAM   (1<<5)

Definition at line 111 of file beam.h.

#define BF_FORCE_FIRING   (1<<2)

Definition at line 108 of file beam.h.

#define BF_IS_FIGHTER_BEAM   (1<<3)

Definition at line 109 of file beam.h.

#define BF_SAFETY   (1<<0)

Definition at line 106 of file beam.h.

#define BF_SHRINK   (1<<1)

Definition at line 107 of file beam.h.

#define BF_TARGETING_COORDS   (1<<4)

Definition at line 110 of file beam.h.

#define BFIF_FLOATING_BEAM   (1<<3)

Definition at line 53 of file beam.h.

#define BFIF_FORCE_FIRING   (1<<1)

Definition at line 51 of file beam.h.

#define BFIF_IS_FIGHTER_BEAM   (1<<0)

Definition at line 50 of file beam.h.

#define BFIF_TARGETING_COORDS   (1<<2)

Definition at line 52 of file beam.h.

#define MAX_BEAM_SHOTS   5

Definition at line 39 of file beam.h.

#define MAX_BEAMS   500

Definition at line 40 of file beam.h.

#define MAX_FRAME_COLLISIONS   10

Definition at line 93 of file beam.h.

Typedef Documentation

typedef struct beam beam
typedef struct beam_info beam_info

Function Documentation

void beam_calc_facing_pts ( vec3d top,
vec3d bot,
vec3d fvec,
vec3d pos,
float  w,
float  z_add 
)

Definition at line 1603 of file beam.cpp.

int beam_collide_asteroid ( obj_pair pair)

Definition at line 2625 of file beam.cpp.

int beam_collide_debris ( obj_pair pair)

Definition at line 2814 of file beam.cpp.

int beam_collide_early_out ( object a,
object b 
)

Definition at line 2906 of file beam.cpp.

int beam_collide_missile ( obj_pair pair)

Definition at line 2721 of file beam.cpp.

int beam_collide_ship ( obj_pair pair)

Definition at line 2397 of file beam.cpp.

int beam_fire ( beam_fire_info fire_info)

Definition at line 281 of file beam.cpp.

int beam_fire_targeting ( fighter_beam_fire_info fire_info)

Definition at line 476 of file beam.cpp.

int beam_get_collision ( int  objnum,
int  num,
int collision_objnum,
mc_info **  cinfo 
)

Definition at line 655 of file beam.cpp.

int beam_get_num_collisions ( int  objnum)

Definition at line 629 of file beam.cpp.

int beam_get_parent ( object bm)

Definition at line 579 of file beam.cpp.

float beam_get_ship_damage ( beam b,
object objp 
)

Definition at line 3592 of file beam.cpp.

int beam_get_weapon_info_index ( object bm)

Definition at line 608 of file beam.cpp.

void beam_init ( )

Definition at line 247 of file beam.cpp.

void beam_level_close ( )

Definition at line 273 of file beam.cpp.

void beam_level_init ( )

Definition at line 253 of file beam.cpp.

void beam_move_all_post ( )

Definition at line 986 of file beam.cpp.

void beam_move_all_pre ( )

Definition at line 906 of file beam.cpp.

void beam_pause_sounds ( )

Definition at line 682 of file beam.cpp.

void beam_render_all ( )

Definition at line 1558 of file beam.cpp.

void beam_unpause_sounds ( )

Definition at line 703 of file beam.cpp.

Variable Documentation

int Beam_count

Definition at line 63 of file beam.cpp.

beam Beams[MAX_BEAMS]

Definition at line 60 of file beam.cpp.