Lines Matching refs:fire_info

18271 	beam_fire_info fire_info;  in sexp_beam_fire()  local
18275 memset(&fire_info, 0, sizeof(beam_fire_info)); in sexp_beam_fire()
18276 fire_info.accuracy = 0.000001f; // this will guarantee a hit in sexp_beam_fire()
18277 fire_info.burst_index = 0; in sexp_beam_fire()
18285 fire_info.shooter = shooter->objp; in sexp_beam_fire()
18288 fire_info.turret = ship_get_subsys(shooter->shipp, CTEXT(n)); in sexp_beam_fire()
18289 if (fire_info.turret == nullptr) { in sexp_beam_fire()
18296 eval_vec3d(&fire_info.target_pos1, n, is_nan, is_nan_forever); in sexp_beam_fire()
18301 fire_info.bfi_flags |= BFIF_TARGETING_COORDS; in sexp_beam_fire()
18302 fire_info.target = nullptr; in sexp_beam_fire()
18303 fire_info.target_subsys = nullptr; in sexp_beam_fire()
18311 fire_info.target = target->objp; in sexp_beam_fire()
18314 fire_info.target_subsys = nullptr; in sexp_beam_fire()
18316 fire_info.target_subsys = ship_get_subsys(target->shipp, CTEXT(n)); in sexp_beam_fire()
18323 fire_info.bfi_flags |= BFIF_FORCE_FIRING; in sexp_beam_fire()
18329 int count = eval_vec3d(&fire_info.target_pos2, n, is_nan, is_nan_forever); in sexp_beam_fire()
18335 fire_info.target_pos2 = fire_info.target_pos1; in sexp_beam_fire()
18342 if (fire_info.turret->weapons.num_primary_banks <= 0) { in sexp_beam_fire()
18348 if (!(fire_info.bfi_flags & BFIF_FORCE_FIRING) && fire_info.turret->current_hits <= 0.0f) { in sexp_beam_fire()
18353 fire_info.beam_info_index = -1; in sexp_beam_fire()
18354 for (idx=0; idx<fire_info.turret->weapons.num_primary_banks; idx++) { in sexp_beam_fire()
18355 …Assertion(fire_info.turret->weapons.primary_bank_weapons[idx] >= 0 && fire_info.turret->weapons.pr… in sexp_beam_fire()
18356 …"sexp_beam_fire: found invalid weapon index (%i), get a coder\n!", fire_info.turret->weapons.prima… in sexp_beam_fire()
18358 …if (Weapon_info[fire_info.turret->weapons.primary_bank_weapons[idx]].wi_flags[Weapon::Info_Flags::… in sexp_beam_fire()
18359 fire_info.beam_info_index = fire_info.turret->weapons.primary_bank_weapons[idx]; in sexp_beam_fire()
18364 if (fire_info.beam_info_index != -1) { in sexp_beam_fire()
18365 fire_info.fire_method = BFM_TURRET_FORCE_FIRED; in sexp_beam_fire()
18367 beam_fire(&fire_info); in sexp_beam_fire()
18377 beam_fire_info fire_info; in sexp_beam_floating_fire() local
18378 memset(&fire_info, 0, sizeof(beam_fire_info)); in sexp_beam_floating_fire()
18379 fire_info.accuracy = 0.000001f; // this will guarantee a hit in sexp_beam_floating_fire()
18380 fire_info.bfi_flags |= BFIF_FLOATING_BEAM; in sexp_beam_floating_fire()
18381 fire_info.turret = nullptr; // A free-floating beam isn't fired from a subsystem. in sexp_beam_floating_fire()
18382 fire_info.burst_index = 0; in sexp_beam_floating_fire()
18384 fire_info.beam_info_index = weapon_info_lookup(CTEXT(n)); in sexp_beam_floating_fire()
18386 if (fire_info.beam_info_index < 0) in sexp_beam_floating_fire()
18391 if (!(Weapon_info[fire_info.beam_info_index].wi_flags[Weapon::Info_Flags::Beam])) in sexp_beam_floating_fire()
18397 fire_info.shooter = nullptr; in sexp_beam_floating_fire()
18404 fire_info.shooter = shooter->objp; in sexp_beam_floating_fire()
18408 fire_info.team = static_cast<char>(iff_lookup(CTEXT(n))); in sexp_beam_floating_fire()
18411 eval_vec3d(&fire_info.starting_pos, n, is_nan, is_nan_forever); in sexp_beam_floating_fire()
18415 fire_info.target = nullptr; in sexp_beam_floating_fire()
18416 fire_info.target_subsys = nullptr; in sexp_beam_floating_fire()
18425 fire_info.target = target->objp; in sexp_beam_floating_fire()
18428 fire_info.bfi_flags |= BFIF_TARGETING_COORDS; in sexp_beam_floating_fire()
18436 fire_info.target_subsys = ship_get_subsys(target->shipp, CTEXT(n)); in sexp_beam_floating_fire()
18443 eval_vec3d(&fire_info.target_pos1, n, is_nan, is_nan_forever); in sexp_beam_floating_fire()
18448 int count = eval_vec3d(&fire_info.target_pos2, n, is_nan, is_nan_forever); in sexp_beam_floating_fire()
18452 fire_info.target_pos2 = fire_info.target_pos1; in sexp_beam_floating_fire()
18454 fire_info.fire_method = BFM_SEXP_FLOATING_FIRED; in sexp_beam_floating_fire()
18456 beam_fire(&fire_info); in sexp_beam_floating_fire()