|
Wing Commander II
Reconstructed Win32 source (1996)
|
Fleet overview, target camera and turret guns. More...
#include "game.h"Go to the source code of this file.
Macros | |
| #define | TURRET_C |
Functions | |
| short | HandleFleetOverviewInput (void) |
| void | UpdateFleetOverviewCameraRotation (void) |
| void | FireTargetCameraGuns (void) |
| void | UpdateShipTurretGuns (short ship) |
| void | ResetTargetCameraView (void) |
| short | CountShipCockpitGunDisplays (short ship) |
| void | ToggleTargetCameraOverlay (void) |
| void | ClearTargetCameraView (void) |
| void | ToggleTargetCameraTracking (void) |
| void | UpdateTargetCameraObject (short obj) |
| void | UpdateTargetCameraTracking (void) |
| void | ClearSavedTorpedoTargetLock (void) |
| void | UpdateSavedTorpedoTargetLock (void) |
| void | SetTargetCameraEyePosition (short cameraMode) |
| void | DrawTargetCameraAttitudeIndicators (unsigned short colour) |
| void | RestoreTargetCameraAttitudeIndicators (void) |
| void | DetermineFleetOverviewPilotHand (void) |
| void | DrawUnreferencedPilotHandFrame (Viewport *viewport, unsigned char *shape, BarracksAnimationState *state) |
| void | UpdateTargetCameraCockpitHook (void) |
| void | FinalizeTargetCameraViewHook (void) |
Fleet overview, target camera and turret guns.
Definition in file turret.c.
Definition at line 924 of file turret.c.
References ClearSavedTorpedoTargetLock(), g_bSavedPlayerTarget, and g_bSavedTargetLockAcquired.
Referenced by ClearSavedTorpedoTargetLock(), DrawTextAt(), and UpdateSavedTorpedoTargetLock().
Definition at line 718 of file turret.c.
References ClearTargetCameraView(), FlushSoundEffectsAndLog(), g_acShipTarget, g_aShipVelocity, g_nFleetOverviewPitchVelocity, g_nFleetOverviewYawVelocity, g_nTargetCameraEffectObjectA, g_nTargetCameraEffectObjectB, g_nTargetCameraFrame, g_nTargetCameraObject, g_nTargetCameraSoundHandle, g_nTargetCameraZoom, remove_object(), and zero_vector().
Referenced by ClearTargetCameraView(), DrawTextAt(), HandleFleetOverviewInput(), HandleSpaceFlightControls(), new_view(), ToggleTargetCameraTracking(), UpdateTargetCameraObject(), and UpdateTargetCameraTracking().
| short CountShipCockpitGunDisplays | ( | short | ship | ) |
Definition at line 659 of file turret.c.
References CountShipCockpitGunDisplays(), and g_aShipWeapons.
Referenced by CountShipCockpitGunDisplays(), DrawTextAt(), InitializeCockpitResources(), new_view(), and UpdateShipTurretGuns().
Definition at line 1163 of file turret.c.
References DetermineFleetOverviewPilotHand(), g_14_cPilotHandFrameCode, g_nFleetOverviewPitchVelocity, g_nFleetOverviewYawVelocity, and MinShort().
Referenced by DetermineFleetOverviewPilotHand().
| void DrawTargetCameraAttitudeIndicators | ( | unsigned short | colour | ) |
Definition at line 995 of file turret.c.
References CockpitScannerGeometry::centerX, CockpitScannerGeometry::centerY, DrawTargetCameraAttitudeIndicators(), DrawViewportPixel(), g_101_stScrViewInfo, g_1_nTargetCameraYawIndicatorX, g_1_nTargetLensYawIndicatorYWord, g_4_nTargetCameraPitchPipX, g_8_nGunDisplaySlot, g_abGunDisplayConfiguration, g_asAimCameraYawIndicatorBackground, g_asTargetCameraPitchIndicatorBackgroundTable, g_nFleetOverviewPitch, g_nFleetOverviewYaw, g_nTargetLensPitchIndicatorY, and GetViewportPixel().
Referenced by draw_3d_scanner(), DrawTargetCameraAttitudeIndicators(), and DrawTextAt().
| void DrawUnreferencedPilotHandFrame | ( | Viewport * | viewport, |
| unsigned char * | shape, | ||
| BarracksAnimationState * | state ) |
Definition at line 1194 of file turret.c.
References CopyViewportContents(), DrawSpriteDefault(), DrawUnreferencedPilotHandFrame(), g_14_cPilotHandFrameCode, g_3_stDashViewport, g_asPilotHandOffsets, g_cLastPilotHandFrame, g_pPilotHandAnimationShapePtr, g_stPilotHandBackgroundViewportBlock, g_stPilotHandOrigin, g_stPilotHandViewportRecord, Viewport::left, Viewport::top, ShortPoint::x, and ShortPoint::y.
Referenced by DrawUnreferencedPilotHandFrame().
Definition at line 1228 of file turret.c.
References FinalizeTargetCameraViewHook().
Referenced by DrawTextAt(), FinalizeTargetCameraViewHook(), and initialize_cockpit().
Definition at line 327 of file turret.c.
References AddFixedVectors(), ObjectTypeData::animationDelay, copy_frame(), ObjectTypeData::damageCapacity, EYE_OBJECT, FireTargetCameraGuns(), g_1_nGunShowEnergyPercent, g_8_nGunDisplaySlot, g_abGunDisplayConfiguration, g_abProjectileCollisionBonus, g_acGunRefireDelay, g_acObjectType, g_aObjectTypeData, g_aShipForwardVector, g_aShipPosition, g_aShipRightVector, g_aShipUpVector, g_aShipVelocity, g_asObjectCounter, g_asObjectDamage, g_nTargetCameraGunCooldown, ObjectTypeData::lifetime, ObjectTypeData::maximumVelocity, new_object(), NormalizeFixedVector(), PlaySfxWaveFileByNumber(), point_at(), RecordCannedSceneObjectEvent(), ScaleFixedVector(), FixedVector::x, FixedVector::y, FixedVector::z, and zero_vector().
Referenced by close_behind(), FireTargetCameraGuns(), HandleFleetOverviewInput(), and HandleSpaceFlightControls().
| short HandleFleetOverviewInput | ( | void | ) |
Definition at line 33 of file turret.c.
References Viewport::bottom, InputDeviceSample::buttons, ClearTargetCameraView(), cycle_onscreen_targets(), FireTargetCameraGuns(), MouseCursorState::frame, g_10_stPrevFlightControls, g_12_wInputDeviceButtonStatus, g_19_bPolledFlightInputQueued, g_1_bDiscreteFlightInputWaiting, g_27_stViewScratchInfo, g_2_bFleetMouseMovePosted, g_37_stPersonnelMousePointerState, g_6_stHostMouseTextBlock, g_6_wQueuedButtonsState, g_asFleetMousePitchThresholds, g_asFleetMouseYawThresholds, g_bFleetButtonInputActive, g_bFleetPolledInputActive, g_bMapPrimaryInputQueued, g_bTargetLockMode, g_cCurrentKey, g_cPreviousKey, g_nAimCameraMode, g_nCockpitControlGoal, g_nCockpitControlState, g_nCurrentView, g_nFleetMousePitchVelocity, g_nFleetMouseYawVelocity, g_nFleetOverviewPitchVelocity, g_nFleetOverviewYawVelocity, g_nTargetCameraFrame, g_nTargetCameraGunCooldown, g_nTargetCameraZoom, g_stCurrentFlightInput, GetNextInputEvent(), HandleFleetOverviewInput(), IsInputEventQueued(), Viewport::left, PlaySfxWaveFileByNumber(), HostMouseMessage::primaryButton, Viewport::right, ServiceInputDevices(), SetPersonnelMousePosition(), ShowGamePausedBanner(), InputEventState::status, ToggleTargetCameraTracking(), Viewport::top, InputDeviceSample::x, InputEventState::x, MouseCursorState::x, InputDeviceSample::y, InputEventState::y, and MouseCursorState::y.
Referenced by close_behind(), HandleFleetOverviewInput(), and HandleSpaceFlightControls().
Definition at line 646 of file turret.c.
References g_nAimCameraMode, g_nFleetOverviewPitch, g_nFleetOverviewPitchVelocity, g_nFleetOverviewYaw, g_nFleetOverviewYawVelocity, ResetCockpitPaletteEntries(), ResetScannerContacts(), ResetTargetCameraView(), and ToggleTargetCameraOverlay().
Referenced by DrawTextAt(), initialize_cockpit(), and ResetTargetCameraView().
Definition at line 1087 of file turret.c.
References CockpitScannerGeometry::centerX, CockpitScannerGeometry::centerY, DrawViewportPixel(), g_101_stScrViewInfo, g_1_nTargetCameraYawIndicatorX, g_1_nTargetLensYawIndicatorYWord, g_4_nTargetCameraPitchPipX, g_8_nGunDisplaySlot, g_abGunDisplayConfiguration, g_asAimCameraYawIndicatorBackground, g_asTargetCameraPitchIndicatorBackgroundTable, g_nTargetLensPitchIndicatorY, and RestoreTargetCameraAttitudeIndicators().
Referenced by clear_head_up_display(), DrawTextAt(), and RestoreTargetCameraAttitudeIndicators().
| void SetTargetCameraEyePosition | ( | short | cameraMode | ) |
Definition at line 972 of file turret.c.
References EYE_OBJECT, g_aShipForwardVector, g_aShipPosition, g_aShipRightVector, g_aShipUpVector, g_aTargetCameraEyeOffsets, SetTargetCameraEyePosition(), FixedVector::x, ShortVector::x, FixedVector::y, ShortVector::y, FixedVector::z, and ShortVector::z.
Referenced by DrawTextAt(), set_eye_direction_and_position(), and SetTargetCameraEyePosition().
Definition at line 676 of file turret.c.
References DrawSpriteDefault(), g_101_stScrViewInfo, g_8_nGunDisplaySlot, g_abGunDisplayConfiguration, g_acShipTarget, g_apCockpitVduOverlayShapes, g_nAimCameraMode, g_nTargetCameraFrame, g_nTargetCameraZoom, and ToggleTargetCameraOverlay().
Referenced by DrawTextAt(), HandleSpaceFlightControls(), ResetTargetCameraView(), and ToggleTargetCameraOverlay().
Definition at line 740 of file turret.c.
References ClearTargetCameraView(), find_vacant_3d_object(), g_19_bStoredHighMemoryEnabled, g_acShipTarget, g_aObjectTypeData, g_aShipPosition, g_asObjectViewFrame, g_nObjectType62Index, g_nObjectType63Index, g_nSpaceFrame, g_nTargetCameraEffectObjectA, g_nTargetCameraEffectObjectB, g_nTargetCameraFrame, g_nTargetCameraObject, g_nTargetCameraZoom, PlaySfxWaveFileByNumber(), set_objects_data(), ToggleTargetCameraTracking(), and FixedVector::z.
Referenced by DrawTextAt(), HandleFleetOverviewInput(), and ToggleTargetCameraTracking().
Definition at line 270 of file turret.c.
References EYE_OBJECT, fix_objects_ijk(), g_aShipForwardVector, g_aShipRightVector, g_aShipUpVector, g_nFleetOverviewPitch, g_nFleetOverviewPitchVelocity, g_nFleetOverviewYaw, g_nFleetOverviewYawVelocity, rotate_about_i(), rotate_about_j(), and UpdateFleetOverviewCameraRotation().
Referenced by close_behind(), set_eye_direction_and_position(), and UpdateFleetOverviewCameraRotation().
Definition at line 931 of file turret.c.
References approach_zero_speed(), ClearSavedTorpedoTargetLock(), g_acPlayerComponentDamage, g_bSavedPlayerTarget, g_bSavedTargetLockAcquired, g_cYellowColour, g_nFacingToTarget, g_nSavedPlayerTarget, g_nSavedTargetLockCountdown, g_nTargetLockMusicCooldown, g_nTargetRange, get_facing_range_from_object(), handle_collisions(), point_ship_at_object(), SetHudMessageText(), unactive(), and UpdateSavedTorpedoTargetLock().
Referenced by DrawTextAt(), update_objects_in_space(), and UpdateSavedTorpedoTargetLock().
| void UpdateShipTurretGuns | ( | short | ship | ) |
Definition at line 440 of file turret.c.
References AddFixedVectors(), CountShipCockpitGunDisplays(), ObjectTypeData::damageCapacity, distance_from_point(), dot_product(), g_27_aasGunCooldown, g_2_vNormalizedToTgt, g_9_nTargetCameraOverlayMode, g_aaTurretProjectileOffsets, g_acObjectType, g_aeObjectClass, g_anShipCloakState, g_aObjectTypeData, g_aShipForwardVector, g_aShipPosition, g_aShipRightVector, g_aShipUpVector, g_aShipVelocity, g_asObjectCollisionRadius, g_asObjectCounter, g_asObjectDamage, g_asShipSide, g_aTargetCameraEyeOffsets, g_nCurrentView, g_nFacingToTarget, g_nTargetRange, g_vToTarget, ObjectTypeData::lifetime, ObjectTypeData::maximumVelocity, negate_vector(), new_object(), NormalizeFixedVector(), OBJECT_CLASS_SHIP, PlaySfxWaveFileByNumber(), point_at(), RandomInRange(), RecordCannedSceneObjectEvent(), ScaleFixedVector(), SIDE_IMPERIAL, SIDE_KILRATHI, UpdateShipTurretGuns(), FixedVector::x, ShortVector::x, FixedVector::y, ShortVector::y, FixedVector::z, ShortVector::z, and zero_vector().
Definition at line 1222 of file turret.c.
References UpdateTargetCameraCockpitHook().
Referenced by DrawTextAt(), update_cockpit(), and UpdateTargetCameraCockpitHook().
| void UpdateTargetCameraObject | ( | short | obj | ) |
Definition at line 789 of file turret.c.
References apply_force_to_objects_center(), ClearTargetCameraView(), distance_between_points(), ejection_sequence(), EYE_OBJECT, CampaignGlobals::field_0e, flag_reached(), FlushSoundEffectsAndLog(), g_6_bMissionWingmanState, g_6_vTargetCameraForce, g_aMissionObjectives, g_aMissionShips, g_aShipForwardVector, g_aShipPosition, g_aShipVelocity, g_asObjectType, g_asShipMissionIndex, g_bMissionDeathSequencePending, g_cMissionObjectiveCount, g_nSpaceFrame, g_nTargetCameraSoundHandle, g_pCampaignGlobals, g_stCurrentPilotProfile, LoadTemporaryCampaignGlobals(), negate_vector(), NormalizeAndScaleVector(), PilotProfile::playerShipType, PlaySfxWaveFileByNumber(), point_ship_at_object(), remove_object(), ScaleFixedVector(), MissionShipRecord::state, trim_goals(), UpdateTargetCameraObject(), Vector_magnitude(), FixedVector::x, FixedVector::y, FixedVector::z, and zero_vector().
Referenced by update_objects_in_space(), and UpdateTargetCameraObject().
Definition at line 849 of file turret.c.
References ClearTargetCameraView(), distance_from_object(), g_aShipVelocity, g_asObjectScreenX, g_asObjectScreenY, g_nFleetOverviewPitch, g_nFleetOverviewPitchVelocity, g_nFleetOverviewYaw, g_nFleetOverviewYawVelocity, g_nTargetCameraObject, g_nTargetCameraZoom, UpdateTargetCameraTracking(), and zero_vector().
Referenced by DrawTextAt(), update_cockpit(), and UpdateTargetCameraTracking().
| short g_12_nGunDisplayCount |
Definition at line 1286 of file turret.c.
Referenced by InitializeCockpitResources().
| short g_1_nGunShowEnergyPercent |
Definition at line 1278 of file turret.c.
Referenced by FireTargetCameraGuns(), InitializeCockpitResources(), replenish_weapon_energy_bank(), and update_cockpit().
| short g_1_nTargetCameraYawIndicatorX |
Definition at line 1275 of file turret.c.
Referenced by DrawTargetCameraAttitudeIndicators(), and RestoreTargetCameraAttitudeIndicators().
| short g_1_nTargetLensYawIndicatorYWord |
Definition at line 1276 of file turret.c.
Referenced by DrawTargetCameraAttitudeIndicators(), and RestoreTargetCameraAttitudeIndicators().
| short g_27_aasGunCooldown[10][3] |
Definition at line 1283 of file turret.c.
Referenced by house_keep_objects(), Set_up_ship_info(), update_status_text(), and UpdateShipTurretGuns().
|
extern |
Definition at line 2002 of file main.c.
Referenced by HandleFleetOverviewInput().
| short g_4_nTargetCameraPitchPipX |
Definition at line 1281 of file turret.c.
Referenced by DrawTargetCameraAttitudeIndicators(), and RestoreTargetCameraAttitudeIndicators().
| short g_6_bMissionWingmanState |
Definition at line 1287 of file turret.c.
Referenced by RunSpaceFlight(), StoreMissionResultsInCampaignGlobals(), and UpdateTargetCameraObject().
| FixedVector g_6_vTargetCameraForce |
Definition at line 1280 of file turret.c.
Referenced by UpdateTargetCameraObject().
| short g_8_nGunDisplaySlot |
Definition at line 1288 of file turret.c.
Referenced by draw_3d_scanner(), DrawTargetCameraAttitudeIndicators(), FireTargetCameraGuns(), initialize_cockpit(), RestoreTargetCameraAttitudeIndicators(), ToggleTargetCameraOverlay(), and vdu_polygon().
| int g_9_nTargetCameraOverlayMode |
Definition at line 1285 of file turret.c.
Referenced by initialize_cockpit(), set_eye_direction_and_position(), and UpdateShipTurretGuns().
|
static |
Definition at line 11 of file turret.c.
Referenced by UpdateShipTurretGuns().
| unsigned char g_abGunDisplayConfiguration[0xa4] = { 0 } |
Definition at line 1237 of file turret.c.
Referenced by draw_3d_scanner(), DrawTargetCameraAttitudeIndicators(), FireTargetCameraGuns(), InitializeCockpitResources(), RestoreTargetCameraAttitudeIndicators(), ToggleTargetCameraOverlay(), and vdu_polygon().
| short g_asAimCameraYawIndicatorBackground[3] |
Definition at line 1277 of file turret.c.
Referenced by DrawTargetCameraAttitudeIndicators(), and RestoreTargetCameraAttitudeIndicators().
|
static |
Definition at line 17 of file turret.c.
Referenced by HandleFleetOverviewInput().
|
static |
Definition at line 15 of file turret.c.
Referenced by HandleFleetOverviewInput().
| short g_asShipTurretFireEnabled[10] = { 0 } |
Definition at line 1269 of file turret.c.
Referenced by ApplyAlternateShipType(), set_objects_data(), and update_objects_in_space().
| short g_asTargetCameraPitchIndicatorBackgroundTable[3] |
Definition at line 1284 of file turret.c.
Referenced by DrawTargetCameraAttitudeIndicators(), and RestoreTargetCameraAttitudeIndicators().
|
static |
Definition at line 9 of file turret.c.
Referenced by SetTargetCameraEyePosition(), and UpdateShipTurretGuns().
|
static |
Definition at line 21 of file turret.c.
Referenced by HandleFleetOverviewInput().
|
static |
Definition at line 19 of file turret.c.
Referenced by HandleFleetOverviewInput().
|
extern |
Definition at line 1997 of file main.c.
Referenced by HandleFleetOverviewInput().
| short g_bSavedPlayerTarget = 0 |
Definition at line 1266 of file turret.c.
Referenced by ClearSavedTorpedoTargetLock(), new_view(), SaveTorpedoTargetLockForViewChange(), and UpdateSavedTorpedoTargetLock().
| short g_bSavedTargetLockAcquired = 0 |
Definition at line 1271 of file turret.c.
Referenced by ClearSavedTorpedoTargetLock(), and UpdateSavedTorpedoTargetLock().
| int g_nAimCameraMode |
Definition at line 1279 of file turret.c.
Referenced by build_your_target_list(), check_target(), HandleFleetOverviewInput(), overlay_head_up_display(), replenish_weapon_energy_bank(), ResetTargetCameraView(), ToggleTargetCameraOverlay(), update_cockpit(), and update_objects_in_space().
|
static |
Definition at line 25 of file turret.c.
Referenced by HandleFleetOverviewInput().
|
static |
Definition at line 23 of file turret.c.
Referenced by HandleFleetOverviewInput().
| short g_nFleetOverviewPitch = 0 |
Definition at line 1243 of file turret.c.
Referenced by DrawTargetCameraAttitudeIndicators(), ResetTargetCameraView(), set_eye_direction_and_position(), UpdateFleetOverviewCameraRotation(), and UpdateTargetCameraTracking().
| short g_nFleetOverviewPitchVelocity = 0 |
Definition at line 1241 of file turret.c.
Referenced by ClearTargetCameraView(), DetermineFleetOverviewPilotHand(), HandleFleetOverviewInput(), ResetTargetCameraView(), UpdateFleetOverviewCameraRotation(), and UpdateTargetCameraTracking().
| short g_nFleetOverviewYaw = 0 |
Definition at line 1242 of file turret.c.
Referenced by DrawTargetCameraAttitudeIndicators(), ResetTargetCameraView(), set_eye_direction_and_position(), UpdateFleetOverviewCameraRotation(), and UpdateTargetCameraTracking().
| short g_nFleetOverviewYawVelocity = 0 |
Definition at line 1240 of file turret.c.
Referenced by ClearTargetCameraView(), DetermineFleetOverviewPilotHand(), HandleFleetOverviewInput(), ResetTargetCameraView(), UpdateFleetOverviewCameraRotation(), and UpdateTargetCameraTracking().
| short g_nSavedPlayerTarget = -1 |
Definition at line 1265 of file turret.c.
Referenced by fire_weapon(), new_view(), SaveTorpedoTargetLockForViewChange(), and UpdateSavedTorpedoTargetLock().
| short g_nSavedTargetLockCountdown = 1000 |
Definition at line 1270 of file turret.c.
Referenced by new_view(), SaveTorpedoTargetLockForViewChange(), and UpdateSavedTorpedoTargetLock().
| short g_nTargetCameraEffectObjectA = -1 |
Definition at line 1267 of file turret.c.
Referenced by ClearTargetCameraView(), and ToggleTargetCameraTracking().
| short g_nTargetCameraEffectObjectB = -1 |
Definition at line 1268 of file turret.c.
Referenced by ClearTargetCameraView(), and ToggleTargetCameraTracking().
| short g_nTargetCameraFrame = 0 |
Definition at line 1239 of file turret.c.
Referenced by check_target(), ClearTargetCameraView(), HandleFleetOverviewInput(), HandleSpaceFlightControls(), new_view(), overlay_head_up_display(), ToggleTargetCameraOverlay(), ToggleTargetCameraTracking(), update_cockpit(), and update_objects_in_space().
|
static |
Definition at line 13 of file turret.c.
Referenced by FireTargetCameraGuns(), and HandleFleetOverviewInput().
| short g_nTargetCameraObject = -1 |
Definition at line 1235 of file turret.c.
Referenced by ClearTargetCameraView(), ToggleTargetCameraTracking(), update_objects_in_space(), and UpdateTargetCameraTracking().
| int g_nTargetCameraSoundHandle = 0 |
Definition at line 1244 of file turret.c.
Referenced by ClearTargetCameraView(), and UpdateTargetCameraObject().
| short g_nTargetCameraZoom = 0 |
Definition at line 1238 of file turret.c.
Referenced by build_your_target_list(), check_target(), ClearTargetCameraView(), HandleFleetOverviewInput(), overlay_head_up_display(), replenish_weapon_energy_bank(), ToggleTargetCameraOverlay(), ToggleTargetCameraTracking(), update_cockpit(), and UpdateTargetCameraTracking().
| short g_nTargetLensPitchIndicatorY |
Definition at line 1282 of file turret.c.
Referenced by DrawTargetCameraAttitudeIndicators(), and RestoreTargetCameraAttitudeIndicators().