13 -1, -1, -1, -2, -2, -2, -2, -3,
14 -3, -3, -3, -3, -2, -2, -2, -2,
15 -1, -1, -1, -1, -1, 0, 0, 0
19 36, 32, 32, 32, 32, 32, 32, 32,
20 25, 25, 25, 25, 25, 25, 25, 25,
21 18, 18, 18, 18, 18, 18, 18, 18
25 { -2, 1 }, { -1, 1 }, { -1, 1 },
26 { -1, 0 }, { -1, 1 }, { -1, 0 },
27 { -1, 1 }, { -1, 0 }, { 0, 0 }
30 3, 3, 3, 2, 2, 2, 2, 2,
35 12, 11, 1, 90, 90, 0, 9, -90, 0, 0, 20, 3, 15, -1
61 scale = (short)(0x1a00L / distance);
86 short doorDistances[4];
87 signed char distanceStep;
91 doorDistances[0] = 50;
92 doorDistances[1] = 40;
93 doorDistances[2] = 30;
94 doorDistances[3] = 20;
106 for (frame = 0; frame < 25; frame++) {
112 doorDistances[door] =
113 (short)(doorDistances[door] - distanceStep);
149 struct Shape *carrierShape;
151 struct Shape *fighterShape;
152 short fighterScreenY;
154 short approachDistance;
155 short fighterScreenX;
156 short carrierScreenX;
157 struct Shape *actorShape;
162 carrierScreenX = 180;
197 approachDistance = 20;
214 fighterScreenY = (short)(fighterScreenY +
218 }
else if (frame < 48) {
219 fighterScreenY = (short)(fighterScreenY -
225 approachScale = (short)(
227 << 4) / approachDistance);
244 fighterScreenX = (short)(fighterScreenX + 2);
248 approachDistance = (short)(approachDistance + 2);
259 }
while (frame < 100);
272 approachDistance = 100;
301 approachScale = (short)(0x6000L / approachDistance);
303 launchY, fighterShape, 16, 0,
326 carrierScreenX = (short)(carrierScreenX + 4);
327 launchX = (short)(launchX - 2);
330 if (soundHandle != 0) {
332 soundHandle, 10, (short)(frame * 4), 0);
339 }
while (frame < 35);
359 launchY, fighterShape, 16, 0,
382 launchX = (short)(launchX +
384 launchY = (short)(launchY +
386 }
else if (frame < 23) {
389 launchY = (short)(launchY +
void(__cdecl *pIxFree)(void *)
unsigned char bEscapePressedFlag
short nCurrentExternalViewDistance
short asObjScreenScalesArray[SPACE_OBJECT_COUNT]
short nConstellationParticleTotal
short nRenderedSpaceFrame
struct Shape * pLaunchDoorShape
short asObjScreenAngles[SPACE_OBJECT_COUNT]
ObjectTypeData aObjectTypeData[OBJECT_TYPE_COUNT]
Viewport stConstellationViewport
const short * pCurrentViewScriptPtr
ConstellationParticle aConstellationParticlesList[16]
short nScrambleBackgroundRightCoordX
enum ObjectClass aeObjectClass[SPACE_OBJECT_COUNT]
short nViewConstellationStarCount
short asObjectScreenYArray[SPACE_OBJECT_COUNT]
FixedVector aShipVelocity[SPACE_OBJECT_COUNT]
unsigned int bIntroSceneResourcesActive
short asObjectCollisionRadius[64]
short nCurrentViewCenterPosX
short nScriptedViewObject
unsigned short asObjDistancesTable[SPACE_OBJECT_COUNT]
Viewport stSpaceBufferViewport
CampaignState stCampaignState
short asObjectScreenXList[SPACE_OBJECT_COUNT]
short nCurrentSpaceFrameValue
TextContext stHudMessageTextContext
short nScrambleBackdropPositionY
unsigned short awObjectScales[SPACE_OBJECT_COUNT]
struct Shape * apObjShapeArray[SPACE_OBJECT_COUNT]
short asObjectViewFrames[SPACE_OBJECT_COUNT]
short asObjectFlipArray[SPACE_OBJECT_COUNT]
ScreenViewportPacket * pCurrentScreenViewportPkt
Viewport * pConstellationViewportPtr
FixedVector aShipPositionsArray[SPACE_OBJECT_COUNT]
short nCurrentViewCenterPosY
static signed char acCarrierLaunchApproachFrames[24]
static ShortPoint aCarrierLaunchFighterPath[9]
static short asCarrierLaunchFighterDeltaY[14]
static short asCarrierLaunchApproachDeltaY[24]
static short asCarrierLaunchViewData[14]
enum ObjectType playerShipType
Umbrella header for the game core.
short GetTransformedShapeBounds(Viewport *viewport, short x, short y, struct Shape *shape, short frame, short angle, short scale, short flip, ShortRect *bounds)
void LaunchPlayerShip(void)
unsigned int force_view(int view, short obj)
void * FetchDiskPacketRetrying(short logicalFile, short section, short flags)
void AddFixedVectors(const FixedVector *left, const FixedVector *right, FixedVector *sum)
void DrawSpriteScaled(Viewport *viewport, short x, short y, struct Shape *shape, short frame, short angle, short scale, short flip)
unsigned int spacetrack(int track, int mode, short enabled)
unsigned int DrawScrambleActor(short actorIndex)
void DrawSpriteDefault(Viewport *viewport, short x, short y, struct Shape *shape, short frame)
void StopMusicUnlessSuppressed(void)
unsigned int house_keep_objects(void)
unsigned int clear_view_buffer(void)
unsigned int PreloadMusicTrackHook(short track)
unsigned int update_objects_in_space(void)
void initialize_scripted_view(const short *script)
unsigned int UpdateSpacePaletteFade(void)
unsigned int PumpWindowMessages(void)
void copy_frame(short source, short destination)
unsigned int ConfigureScrambleActor(short x, short y, short deltaX, short deltaY, struct Shape *shape, short scale, short angle, signed char flip, short actorIndex)
void update_cockpit(void)
void alter_yaw(short angle, short obj)
void remove_nav_point_objects(void)
void WaitForVerticalBlankThunk(void)
void ResetSoundState(void)
unsigned int ShowCarrierLaunchSequence(signed char sceneObject)
void draw_sorted_objects_to_buffer(void)
unsigned int ReleaseMusicTrackHook(short track)
unsigned int update_star_field(void)
void PaletteFadeHook(void)
void sort_object_depth(void)
unsigned int RefreshCockpitStatus(void)
void PlaySfxWaveFileByNumber()
void transform_objects_to_your_view(void)
void ReleasePacketHandle(void *handle)
unsigned int set_eye_direction_and_position(void)
void FlushSoundEffectsAndLog(int soundHandle, short fadeTicks)
int free_ship(short slot)
void DrawLaunchDoorFrame(short distance)
unsigned int dump_buffer_to_screen(void)