13 "In the distant future,\n"
14 "mankind is locked in a deadly war...";
18 "The SECRET MISSIONS files are not present on your WING COMMANDER game disk\n\n"
19 "If you have not obtained the SECRET MISSIONS disk package, purchase it from "
20 "ORIGIN for $19.95 (US dollars) by calling 1-800-999-4939, Mon-Fri 8am-5pm "
21 "central.\n(Price and availability subject to change).";
25 "Design\nby\nChris Roberts",
26 "Software Engineers\nChris Roberts\nKen Demarest III\nPaul C. Isaac\nSteve Muchow\nHerman Miller\nSteve Beeman\n",
27 "Dogfight Intelligence\nKen Demarest III\n\nDogfight Choreography\nSteve Beeman\nErin Roberts",
28 "3Space System\nby\nChris Roberts\n\nOriginFX Graphic System\nChris Roberts\nJohn Miles",
29 "OriginFX Sound System\nby\nHerman Miller",
30 "Artwork\nDenis Loubet\nGlen Johnson\nDaniel Bourbonnais\nKeith Berdak\nJohn Watson",
31 "Screenplay by Jeff George\n\nAdditional Writing\nSteve Cantrell\nPhilip Brogden",
32 "Soundtrack by\nGeorge A. Sanger and Dave Govett",
33 "Sound Effects by Marc Schaefgen",
34 "Produced by\nChris Roberts and Warren Spector",
35 "Directed by\nChris Roberts",
37 "Combat Programmers\n\nJeff Mangler Everett\nJeff jefftep Grills\nChuck Bishop Karpiak\nKris Goblin Pelley",
38 "Sound System\n\nRichard Cupcake Lyle",
39 "Soundtrack Rescored by\n\nI Need Names",
40 "Head Whiner\n\nAnthony Sommers",
41 "Whiners\n\nMonte Mathis\nHal Milton\nDieter Martin",
42 "Richard Zinser\nKanon Lillemon\n",
43 "Special Thanks To\n\nSocks\nand\nCaffeine",
49 { 1, 49, 48, 283, 99 },
50 { 1, 49, 91, 283, 149 },
51 { 1, 49, 134, 283, 149 },
52 { 1, 49, 177, 283, 209 },
85 scale = (short)(0x1000 / distance);
113 frame = region->
frame;
128 short menuOptions[4];
129 struct Shape *menuShape;
130 struct Shape *alternateMenuShape;
134 signed char selectedIndex;
159 for (missionShip = 32; missionShip < 46; missionShip++) {
172 for (frame = 0; frame < 25; frame++) {
202 }
while (frame < 110);
206 for (frame = 0; frame < 100; frame++) {
216 if (titleDistance > 16)
238 for (frame = 0; frame < 70; frame++) {
256 for (frame = 0; frame < 40; frame++) {
270 for (frame = 0; frame < 150; frame++) {
314 for (; optionCount < 4; optionCount++)
315 menuOptions[optionCount] = -1;
317 for (menuIndex = 0; menuIndex < 4; menuIndex++) {
318 if (menuOptions[menuIndex] != -1) {
320 if (menuOptions[menuIndex] < 3) {
325 menuShape, menuOptions[menuIndex]);
331 alternateMenuShape, 0);
339 for (menuIndex = 0; menuIndex < 4; menuIndex++) {
340 if (menuOptions[menuIndex] != -1) {
341 if (menuOptions[menuIndex] < 3) {
345 menuShape, menuOptions[menuIndex]);
350 alternateMenuShape, 0);
373 switch ((
short)event.
value) {
378 if ((
short)event.
value == 0x1f)
380 if ((
short)event.
value == 0x2e &&
381 menuOptions[2] != -1)
383 if ((
short)event.
value == 0x32 &&
384 menuOptions[2] != -1)
402 if (selectedIndex == -1) {
411 selection = selectedIndex;
417 state = (
signed char)(menuOptions[selection] + 1);
unsigned char bEscapePressedFlag
ObjectTypeData aObjectTypeData[OBJECT_TYPE_COUNT]
unsigned char cBlackColour
short anObjectRollRotationList[SPACE_OBJECT_COUNT]
short anObjectYawRotation[SPACE_OBJECT_COUNT]
short anObjPitchRot[SPACE_OBJECT_COUNT]
int bShowKilrathiSagaCredits
short asIntroCameraSequence[]
unsigned int bKeyEventQueueEnabled
MouseCursorState stHostMouseState
unsigned char bInputModeState
MouseCursorState stMouseCursorState
FixedVector aShipVelocity[SPACE_OBJECT_COUNT]
unsigned int bIntroSceneResourcesActive
int nSceneResourceBudgetValue
Viewport stSpaceBufferViewport
short nMenuInputRepeatDelay
MissionShipRecord aMissionShips[MISSION_SHIP_STORAGE_COUNT]
FixedVector aShipFwdVec[64]
short nCurrentViewCenterPosY
struct Shape * pTitleShape
struct Shape * pIntroFont
static int nIntroCreditCount
static char * pszIntroOpeningText
char szMissingSecretMissionsMessage[279]
static TitleMenuRegion aTitleMenuRegions[5]
static char * apszIntroCredits[20]
static int bTitleMenuSceneInitialized
static PacketResourceDescriptor aIntroResourceDescriptors[3]
Umbrella header for the game core.
unsigned short GetPaletteReadyUnused(void)
void LeaveAllocationScope(void)
short __stdcall IsPointInRect(short x, short y, const short *rect)
void PollJoystickButtonEvents(void)
unsigned int RenderSpaceViewFrame(void)
short GetTransformedShapeBounds(Viewport *viewport, short x, short y, struct Shape *shape, short frame, short angle, short scale, short flip, ShortRect *bounds)
void MoveMenuPointerFromKeyboard(InputEventState *event)
short __stdcall PollInputEvent(InputEventState *event, short filter)
int set_up_action_sphere(short navPoint)
unsigned int free_3Space(void)
unsigned int Draw_3Space_Frame(void)
void * FetchDiskPacketRetrying(short logicalFile, short section, short flags)
void intro_drawbackgroundships(void)
void CalibrateJoystickInteractive()
void SceneEnterHook(void)
void DrawSpriteScaled(Viewport *viewport, short x, short y, struct Shape *shape, short frame, short angle, short scale, short flip)
void ClearInputKeyStatePreservingModifiers(void)
unsigned int spacetrack(int track, int mode, short enabled)
int FindMenuRegionAtPoint(short x, short y, const TitleMenuRegion *regions)
void DrawSpriteDefault(Viewport *viewport, short x, short y, struct Shape *shape, short frame)
void RestoreGamePalette(void)
void StopMusicUnlessSuppressed(void)
void FlushInputEvents(void)
int LoadPacketResourceList(PacketResourceDescriptor *resources, short flags, int availableBytes)
unsigned int clear_view_buffer(void)
unsigned int PreloadMusicTrackHook(short track)
void __stdcall SetEventManagerPump(void(*pump)(void))
void initialize_scripted_view(const short *script)
void EnterAllocationScope(void)
unsigned int PumpWindowMessages(void)
unsigned int init_3Space_objects()
void ClearDebugPauseFlags(void)
void ResetSoundState(void)
void __stdcall FadeViewportPaletteToColour(Viewport *viewport, unsigned short colour, short enabled)
int print_subtitle(Viewport *viewport, short colour, const char *text)
void ScaleFixedVector(const FixedVector *vector, int scale, FixedVector *result)
void __stdcall WarpMouseTo(short x, short y)
unsigned int ReleaseMusicTrackHook(short track)
void start_hazard_field(short region)
void ClearViewport(Viewport *viewport, short colour)
void PollMenuInputDevices(void)
short __stdcall GetShapeFrameBounds(short *bounds, short x, short y, struct Shape *shape, short frame)
void DrawTitleLogo(short distance, short y)
unsigned int Update_3Space(void)
void ReleasePacketHandle(void *handle)
void __stdcall SetMouseCursorShape(struct Shape *shape, short frame)
void __stdcall EventManagerHook(void(*callback)(void))
int FreeShapeSet(PacketResourceDescriptor *resources, unsigned short releaseFlags)
void FreePacketAndClear(void *slot, unsigned short releaseFlags)
short AnySavedGames(void)
void remove_all_hazards(void)
void UpdateTitleMenuCursor(void)
unsigned int dump_buffer_to_screen(void)
@ OBJECT_TYPE_DEBRIS_METAL_SHEET
@ OBJECT_TYPE_DEBRIS_WING