FS2_Open
Open source remastering of the Freespace 2 engine
|
#include "asteroid/asteroid.h"
#include "bmpman/bmpman.h"
#include "cmdline/cmdline.h"
#include "debris/debris.h"
#include "debugconsole/console.h"
#include "fireball/fireballs.h"
#include "gamesequence/gamesequence.h"
#include "gamesnd/gamesnd.h"
#include "globalincs/linklist.h"
#include "hud/hudmessage.h"
#include "io/timer.h"
#include "lighting/lighting.h"
#include "math/fvi.h"
#include "model/model.h"
#include "network/multi.h"
#include "network/multimsgs.h"
#include "network/multiutil.h"
#include "object/object.h"
#include "object/objectdock.h"
#include "object/objectsnd.h"
#include "parse/parselo.h"
#include "parse/scripting.h"
#include "particle/particle.h"
#include "playerman/player.h"
#include "render/3d.h"
#include "ship/ship.h"
#include "ship/shipfx.h"
#include "ship/shiphit.h"
#include "weapon/muzzleflash.h"
#include "weapon/shockwave.h"
#include "weapon/weapon.h"
Go to the source code of this file.
Classes | |
struct | ship_flash |
struct | clip_ship |
struct | split_ship |
class | CombinedVariable |
Macros | |
#define | SHIP_CANNON_BITMAP "argh" |
#define | SHIPFX_WARP_DELAY (2.0f) |
#define | LARGEST_RAD 1390.0f |
#define | LARGEST_RAD_TIME 7.0f |
#define | SMALLEST_RAD 15.0f |
#define | SMALLEST_RAD_TIME 1.5f |
#define | w(p) (*((int *) (p))) |
#define | MAX_FLASHES 128 |
#define | FLASH_LIFE_PRIMARY 0.25f |
#define | FLASH_LIFE_SECONDARY 0.50f |
#define | DEBRIS_NONE 0 |
#define | DEBRIS_DRAW 1 |
#define | DEBRIS_FREE 2 |
#define | ENGINE_WASH_CHECK_INTERVAL 250 |
#define | WV_ANIMATION 0 |
#define | WV_RADIUS 1 |
#define | WV_SPEED 2 |
#define | WV_TIME 3 |
Typedefs | |
typedef struct ship_flash | ship_flash |
typedef struct clip_ship | clip_ship |
typedef struct split_ship | split_ship |
Variables | |
float | flFrametime |
int | Framecount |
int | Cmdline_tbp |
int | Ship_cannon_bitmap = -1 |
int | Player_engine_wash_loop = -1 |
float | splode_level |
int | Ship_flash_inited = 0 |
int | Ship_flash_highest = -1 |
ship_flash | Ship_flash [MAX_FLASHES] |
float | Particle_width = 1.2f |
dc_stuff_float & | value |
float | Particle_number = 1.2f |
float | Particle_life = 1.2f |
int | Bs_exp_fire_low = 1 |
float | Bs_exp_fire_time_mult = 1.0f |
const float | MAX_ARC_LENGTH_PERCENTAGE = 0.25f |
const float | MAX_EMP_ARC_TIMESTAMP = 150.0f |
int | l_cruiser_count = 1 |
int | l_big_count = 2 |
int | l_huge_count = 3 |
float | l_max_radius = 3000.0f |
int | Wash_on = 1 |
flag_def_list | Warp_variables [] |
#define DEBRIS_DRAW 1 |
Definition at line 1637 of file shipfx.cpp.
#define DEBRIS_FREE 2 |
Definition at line 1638 of file shipfx.cpp.
#define DEBRIS_NONE 0 |
Definition at line 1636 of file shipfx.cpp.
#define ENGINE_WASH_CHECK_INTERVAL 250 |
Definition at line 2866 of file shipfx.cpp.
#define FLASH_LIFE_PRIMARY 0.25f |
Definition at line 1197 of file shipfx.cpp.
#define FLASH_LIFE_SECONDARY 0.50f |
Definition at line 1198 of file shipfx.cpp.
#define LARGEST_RAD 1390.0f |
Definition at line 468 of file shipfx.cpp.
#define LARGEST_RAD_TIME 7.0f |
Definition at line 469 of file shipfx.cpp.
#define MAX_FLASHES 128 |
Definition at line 1196 of file shipfx.cpp.
#define SHIP_CANNON_BITMAP "argh" |
Definition at line 52 of file shipfx.cpp.
#define SHIPFX_WARP_DELAY (2.0f) |
Definition at line 460 of file shipfx.cpp.
#define SMALLEST_RAD 15.0f |
Definition at line 471 of file shipfx.cpp.
#define SMALLEST_RAD_TIME 1.5f |
Definition at line 472 of file shipfx.cpp.
#define WV_ANIMATION 0 |
Definition at line 3418 of file shipfx.cpp.
#define WV_RADIUS 1 |
Definition at line 3419 of file shipfx.cpp.
#define WV_SPEED 2 |
Definition at line 3420 of file shipfx.cpp.
#define WV_TIME 3 |
Definition at line 3421 of file shipfx.cpp.
typedef struct ship_flash ship_flash |
typedef struct split_ship split_ship |
Adds a flash for Big Ship explosions
flash | flash intensity. Range capped from 0 to 1. |
Definition at line 164 of file fredstubs.cpp.
CLAMP | ( | value | , |
0. | 0, | ||
5. | 0 | ||
) |
int compute_special_warpout_stuff | ( | object * | objp, |
float * | speed, | ||
float * | warp_time, | ||
vec3d * | warp_pos | ||
) |
Definition at line 626 of file shipfx.cpp.
Definition at line 709 of file shipfx.cpp.
dc_printf | ( | "Particle_width set to %f\n" | , |
Particle_width | |||
) |
DCF | ( | particle_num | , |
"Sets multiplier for the number of particles created" | |||
) |
Definition at line 1377 of file shipfx.cpp.
DCF | ( | particle_life | , |
"Multiplier for the lifetime of particles created" | |||
) |
Definition at line 1396 of file shipfx.cpp.
Definition at line 1619 of file shipfx.cpp.
Sound manager for big ship sub explosions sounds.
Forces playing of sub-explosion sounds. Keeps track of active sounds, plays them for >= 750 ms when sound has played >= 750, sound is stopped and new instance is started
Definition at line 2190 of file shipfx.cpp.
Do engine wash effect for ship
Assumes length of engine wash is greater than radius of engine wash hemisphere
Definition at line 2873 of file shipfx.cpp.
Definition at line 2148 of file shipfx.cpp.
Returns how long sound has been playing
Definition at line 2172 of file shipfx.cpp.
if | ( | dc_optional_string_either("status","--status")||dc_optional_string_either("?","--?") | ) |
Definition at line 1363 of file shipfx.cpp.
void model_get_rotating_submodel_axis | ( | vec3d * | model_axis, |
vec3d * | world_axis, | ||
int | model_instance_num, | ||
int | submodel_num, | ||
matrix * | objorient | ||
) |
Definition at line 3452 of file modelread.cpp.
Definition at line 5084 of file modelinterp.cpp.
void parse_combined_variable_list | ( | CombinedVariable * | dest, |
flag_def_list * | src, | ||
size_t | num | ||
) |
Definition at line 3356 of file shipfx.cpp.
Definition at line 215 of file shipfx.cpp.
Definition at line 526 of file shipfx.cpp.
Definition at line 619 of file shipfx.cpp.
void shipfx_blow_off_subsystem | ( | object * | ship_objp, |
ship * | ship_p, | ||
ship_subsys * | subsys, | ||
vec3d * | exp_center, | ||
bool | no_explosion | ||
) |
Definition at line 295 of file shipfx.cpp.
Definition at line 325 of file shipfx.cpp.
void shipfx_blow_up_model | ( | object * | obj, |
int | model, | ||
int | submodel, | ||
int | ndebris, | ||
vec3d * | exp_center | ||
) |
Creates "ndebris" pieces of debris on random verts of the the "submodel" in the ship's model.
Definition at line 374 of file shipfx.cpp.
Definition at line 510 of file shipfx.cpp.
Definition at line 474 of file shipfx.cpp.
Definition at line 2031 of file shipfx.cpp.
Definition at line 2417 of file shipfx.cpp.
Definition at line 2648 of file shipfx.cpp.
void shipfx_do_shockwave_stuff | ( | ship * | shipp, |
shockwave_create_info * | sci | ||
) |
Do all shockwaves for a ship blowing up
Definition at line 2776 of file shipfx.cpp.
Definition at line 1417 of file shipfx.cpp.
void shipfx_engine_wash_level_init | ( | ) |
Engine wash level init
Definition at line 3106 of file shipfx.cpp.
Given world point see if it is in a shadow.
Definition at line 977 of file shipfx.cpp.
void shipfx_flash_create | ( | object * | objp, |
int | model_num, | ||
vec3d * | gun_pos, | ||
vec3d * | gun_dir, | ||
int | is_primary, | ||
int | weapon_info_index | ||
) |
Given that a ship fired a weapon, light up the model accordingly.
Definition at line 1231 of file shipfx.cpp.
Does whatever processing needs to be done each frame.
Definition at line 1331 of file shipfx.cpp.
void shipfx_flash_init | ( | ) |
Resets the ship flash stuff. Call before each level.
Definition at line 1216 of file shipfx.cpp.
Sets the flash lights in the model used by this ship to the appropriate values.
There might not be any flashes linked to this ship in which case this function does nothing.
Definition at line 1314 of file shipfx.cpp.
bool shipfx_in_shadow | ( | object * | src_obj | ) |
Given an ship see if it is in a shadow.
Definition at line 926 of file shipfx.cpp.
Returns 1 when explosion is done
Definition at line 2325 of file shipfx.cpp.
Definition at line 2019 of file shipfx.cpp.
void shipfx_large_blowup_level_init | ( | ) |
Definition at line 2009 of file shipfx.cpp.
Definition at line 2393 of file shipfx.cpp.
Definition at line 2374 of file shipfx.cpp.
Create debris for ship submodel which has live debris (at ship death) when ship submodel has not already been blown off (and hence liberated live debris)
Definition at line 240 of file shipfx.cpp.
Given point p0, in object's frame of reference, find if it can see the sun.
Definition at line 874 of file shipfx.cpp.
void shipfx_queue_render_ship_halves_and_debris | ( | draw_list * | scene, |
clip_ship * | half_ship, | ||
ship * | shipp | ||
) |
Definition at line 1903 of file shipfx.cpp.
Definition at line 59 of file shipfx.cpp.
Definition at line 536 of file shipfx.cpp.
void shipfx_stop_engine_wash_sound | ( | ) |
Pause engine wash sounds
Definition at line 3114 of file shipfx.cpp.
void shipfx_subsystem_maybe_create_live_debris | ( | object * | ship_objp, |
ship * | ship_p, | ||
ship_subsys * | subsys, | ||
vec3d * | exp_center, | ||
float | exp_mag | ||
) |
Check if subsystem has live debris and create
DKA: 5/26/99 make velocity of debris scale according to size of debris subobject (at least for large subobjects)
Definition at line 82 of file shipfx.cpp.
Definition at line 605 of file shipfx.cpp.
Definition at line 565 of file shipfx.cpp.
Definition at line 848 of file shipfx.cpp.
Definition at line 794 of file shipfx.cpp.
int Bs_exp_fire_low = 1 |
Definition at line 1615 of file shipfx.cpp.
float Bs_exp_fire_time_mult = 1.0f |
Definition at line 1616 of file shipfx.cpp.
int Cmdline_tbp |
float flFrametime |
Definition at line 22 of file fredstubs.cpp.
int Framecount |
Definition at line 22 of file systemvars.cpp.
int l_big_count = 2 |
Definition at line 2645 of file shipfx.cpp.
int l_cruiser_count = 1 |
Definition at line 2644 of file shipfx.cpp.
int l_huge_count = 3 |
Definition at line 2646 of file shipfx.cpp.
float l_max_radius = 3000.0f |
Definition at line 2647 of file shipfx.cpp.
const float MAX_ARC_LENGTH_PERCENTAGE = 0.25f |
Definition at line 2413 of file shipfx.cpp.
const float MAX_EMP_ARC_TIMESTAMP = 150.0f |
Definition at line 2415 of file shipfx.cpp.
float Particle_life = 1.2f |
Definition at line 1395 of file shipfx.cpp.
float Particle_number = 1.2f |
Definition at line 1376 of file shipfx.cpp.
Particle_width = 1.2f |
Definition at line 1358 of file shipfx.cpp.
int Player_engine_wash_loop = -1 |
Definition at line 55 of file shipfx.cpp.
int Ship_cannon_bitmap = -1 |
Definition at line 53 of file shipfx.cpp.
ship_flash Ship_flash[MAX_FLASHES] |
Definition at line 1211 of file shipfx.cpp.
int Ship_flash_highest = -1 |
Definition at line 1210 of file shipfx.cpp.
int Ship_flash_inited = 0 |
Definition at line 1209 of file shipfx.cpp.
float splode_level |
Definition at line 473 of file modelinterp.cpp.
Definition at line 1368 of file shipfx.cpp.
flag_def_list Warp_variables[] |
Definition at line 3423 of file shipfx.cpp.
int Wash_on = 1 |
Definition at line 2864 of file shipfx.cpp.