|
Wing Commander
Reconstructed Win32 source (1996)
|
Conversation animation, the briefing, debriefing and office scenes, and campaign mission packet decoding. More...
#include "wc1.h"Go to the source code of this file.
Data Structures | |
| struct | MissionNavPointDisk |
| struct | MissionObjectiveDisk |
| struct | MissionShipDisk |
Typedefs | |
| typedef struct MissionNavPointDisk | MissionNavPointDisk |
| typedef struct MissionObjectiveDisk | MissionObjectiveDisk |
| typedef struct MissionShipDisk | MissionShipDisk |
Functions | |
| unsigned int | ParseFaceAnimation (char *text, short *commands) |
| unsigned int | ParseMouthAnimation (char *text, short *commands) |
| char * | AddPCName (const char *text) |
| unsigned int | LoadFace (short face) |
| unsigned int | LongTalk (struct Shape *talker, char *text, short *mouthCommands, short *faceCommands, short duration) |
| unsigned int | CloseTalk (struct Shape *talker, short mouthFrame, short faceFrame) |
| unsigned int | Briefing (short series, short mission) |
| unsigned int | DeBriefing (short series, short mission) |
| unsigned int | Office (void) |
| unsigned int | LoadBriefingData (short series, short mission) |
| unsigned int | LoadMissionData (short series, short mission) |
| unsigned int | UpdateMap (char *text, short duration) |
| unsigned int | CloseLook (struct Shape *shape, short shot, short *animation, char *text, short duration, int unused) |
Variables | |
| static short | asMouthFramesByPhoneme [26] |
| signed char | cScrambleWalkerPair |
| struct Shape * | pScrambleCanopyShape |
| struct Shape * | pScrambleShipShape |
| short | nTalkingHeadFaceX |
| short | nTalkingHeadFaceCoordY |
| short | nTalkingHeadMouthY |
| short | nTalkingHeadMouthX |
Conversation animation, the briefing, debriefing and office scenes, and campaign mission packet decoding.
Address range 404cd0-40609f. The mouth-animation table follows eject.c's literals. The Mac cmpgn segment names corroborate LoadMissionData (4059b0).
Definition in file cmpgn.c.
| typedef struct MissionNavPointDisk MissionNavPointDisk |
| typedef struct MissionObjectiveDisk MissionObjectiveDisk |
| typedef struct MissionShipDisk MissionShipDisk |
| char * AddPCName | ( | const char * | text | ) |
Definition at line 102 of file cmpgn.c.
References abSeriesAuxData, AddPCName(), apszMedalNames, apszPilotRankNames, apWingmanPilotsList, PilotRecord::callsign, CampaignState::currentPilot, CampaignDate::day, DosStrcat(), DosStrchr(), DosStrlen(), PilotRecord::name, nCurrentConversationMedalIndex, nPlayerKillTotal, nWingmanKillCount, pCurrentCampaignDate, pElapsedCampaignDatePtr, PilotRecord::rank, stCampaignState, stSavedCampaignDate, szTxtWorkspaceBuffer, and CampaignDate::year.
Referenced by AddPCName(), CloseLook(), DebriefingEstablishingShot(), Dismissed(), DrawFuneralLongShot(), DrawMedalChest(), DrawMedalLongShot(), EstablishingShot(), funeral_wingman(), LongTalk(), MedalEstablish(), PinMedal(), PlaySceneAnimation(), ReturnToBriefingLongShot(), UpdateMap(), and ViewMedals().
| unsigned int Briefing | ( | short | series, |
| short | mission ) |
Definition at line 413 of file cmpgn.c.
References bEscapePressedFlag, Briefing(), Build_objective_list(), LoadBriefingData(), LoadBriefingRoom(), LoadMissionData(), pBriefingPacket, PreloadMusicTrackHook(), ReleaseMusicTrackHook(), and ReleasePacketHandle().
Referenced by Briefing(), GameFlow(), and RunAnimationDemoLoop().
| unsigned int CloseLook | ( | struct Shape * | shape, |
| short | shot, | ||
| short * | animation, | ||
| char * | text, | ||
| short | duration, | ||
| int | unused ) |
Definition at line 731 of file cmpgn.c.
References aBriefingCharacters, AddPCName(), cBlackColour, CheckEscaped(), ClearViewport(), CloseLook(), DIBslam(), DIBslamReal(), DrawBriefingCharacter(), DrawDebriefingLongShot(), DrawSpriteDefault(), FormatTextBufferFromStart(), IsFrameTickElapsed(), nConvTextColorValue, nDebriefingPodiumX, nFrameSkip, nFrameSkipCounter, pCurrentBriefingAnimShape, pCurrentConversationBackdropShapePtr, RefreshMemoryStatusOverlay(), SetFrameTimerPeriodDirect(), stCurrentConvTextViewport, stSceneBuffer, szTxtWorkspaceBuffer, and WaitForSceneAdvance().
Referenced by CloseLook(), and SceneDirector().
| unsigned int CloseTalk | ( | struct Shape * | talker, |
| short | mouthFrame, | ||
| short | faceFrame ) |
Definition at line 353 of file cmpgn.c.
References bConversationConstellation, bConversationOverlay, cBlackColour, ClearViewport(), CloseTalk(), cPrimaryViewBufferColour, DrawConstellationField(), DrawSpriteDefault(), MinShort(), nConversationBackdropFrame, nConversationCharacter, nTalkingHeadFace, nTalkingHeadFaceCoordY, nTalkingHeadFaceX, nTalkingHeadMouthX, nTalkingHeadMouthY, nTalkSceneType, pConvOverlayShapePtr, pCurrentConversationBackdropShapePtr, pCurrentConversationSpecialShape, RefreshMemoryStatusOverlay(), and stSceneBuffer.
Referenced by CloseTalk(), LoadFace(), and LongTalk().
| unsigned int DeBriefing | ( | short | series, |
| short | mission ) |
Definition at line 434 of file cmpgn.c.
References bEscapePressedFlag, cBlackColour, ClearViewport(), DeBriefing(), DIBslam(), DIBslamReal(), FetchDiskPacketRetrying(), FullMissionScore(), InitializeConversationText(), InitializeConversationViewport(), LoadBriefingData(), LoadMissionData(), pBriefingPacket, pCurrentConversationBackdropShapePtr, pDebriefingSceneDataPtr, pDebriefingTxtInfo, PlayersMissionScore(), PreloadMusicTrackHook(), ReleaseMusicTrackHook(), ReleasePacketHandle(), ReleaseTextFont(), ResetScreenClipToFullHeight(), SceneDirector(), SetTextContext(), spacetrack(), stCurrentConvTxtCtx, StopMusicUnlessSuppressed(), and TextContext::viewport.
Referenced by DeBriefing(), GameFlow(), and RunAnimationDemoLoop().
| unsigned int LoadBriefingData | ( | short | series, |
| short | mission ) |
Definition at line 513 of file cmpgn.c.
References apRecRoomSceneDataList, apRecRoomTxtDataArray, asCampaignBriefingFiles, BriefingPacketHeader::briefingScene, BriefingPacketHeader::briefingText, BriefingPacketHeader::debriefingScene, BriefingPacketHeader::debriefingText, FetchDiskPacketRetrying(), LoadBriefingData(), nCampaignDataSet, pBriefingPacket, pBriefingSceneInfo, pCurrentBriefingTextData, pDebriefingSceneDataPtr, pDebriefingTxtInfo, BriefingPacketHeader::recRoomScene0, BriefingPacketHeader::recRoomScene1, BriefingPacketHeader::recRoomScene2, BriefingPacketHeader::recRoomText0, BriefingPacketHeader::recRoomText1, and BriefingPacketHeader::recRoomText2.
Referenced by Briefing(), DeBriefing(), LoadBriefingData(), and RecRoom().
| unsigned int LoadFace | ( | short | face | ) |
Definition at line 190 of file cmpgn.c.
References aTalkingHeadOrigins, bConversationConstellation, Viewport::bottom, CloseTalk(), TalkingHeadOrigin::faceX, TalkingHeadOrigin::faceY, FetchDiskPacketRetrying(), FreePacketAndClear(), init_constellation(), InitializeConstellationField(), LoadFace(), TalkingHeadOrigin::mouthX, TalkingHeadOrigin::mouthY, nConversationBackdropFrame, nConversationCharacter, nTalkingHeadFace, nTalkingHeadFaceCoordY, nTalkingHeadFaceX, nTalkingHeadMouthX, nTalkingHeadMouthY, pConvOverlayShapePtr, pTalkHeadShape, stConstellationViewport, and stSceneBuffer.
Referenced by LoadFace(), and SceneDirector().
| unsigned int LoadMissionData | ( | short | series, |
| short | mission ) |
Definition at line 586 of file cmpgn.c.
References abMissionAuxData, abSeriesAuxData, ACTIVE_MISSION_NAV_POINT_COUNT, aMissionNavPoints, aMissionObjectiveSources, aMissionShips, asMissionDataFiles, MissionShipRecord::behaviour, MissionObjectiveDisk::description, MissionObjectiveSource::description, DosMemcpy(), MissionHeaderDisk::entryNavPoint, FetchDiskPacketRetrying(), MissionHeaderDisk::field_16, MissionShipDisk::field_2c, MissionShipRecord::field_2c, MissionShipDisk::field_2e, MissionShipRecord::field_2e, MissionShipDisk::field_5, MissionShipRecord::field_9, MissionShipDisk::formationIndex, MissionShipRecord::formationIndex, MissionShipDisk::formationSpot, MissionShipRecord::formationSpot, MissionHeaderDisk::homeMissionShip, MissionObjectiveDisk::index, MissionObjectiveSource::index, MissionHeaderDisk::initialMissionShips, MissionShipDisk::leader, MissionShipRecord::leader, MissionShipDisk::leaderMissionIndex, MissionShipRecord::leaderMissionIndex, LoadMissionData(), MISSION_OBJECTIVE_COUNT, MissionNavPoint::missionShips, MissionNavPointDisk::missionShips, MissionShipDisk::missionType, MissionShipRecord::missionType, MissionNavPoint::name, MissionNavPointDisk::name, MissionShipDisk::navPoint, MissionShipRecord::navPoint, nCampaignDataSet, MissionShipBehaviour::pilot, MissionShipDisk::pilot, MissionShipDisk::pitch, MissionShipRecord::pitch, MissionHeaderDisk::playerMissionShip, MissionNavPoint::position, MissionNavPointDisk::position, MissionShipDisk::position, MissionShipRecord::position, MissionNavPoint::preloadObjectTypes, MissionNavPointDisk::preloadObjectTypes, MissionNavPoint::proximityRadius, MissionNavPointDisk::proximityRadius, MissionShipDisk::rating, MissionShipRecord::rating, ReleasePacketHandle(), MissionShipDisk::side, MissionShipRecord::side, MissionShipDisk::speed, MissionShipRecord::speed, MissionShipDisk::state, MissionShipRecord::state, stCurrentMissionHeader, MissionShipDisk::targetMissionIndex, MissionShipRecord::targetMissionIndex, MissionNavPointDisk::triggers, MissionNavPoint::type, MissionNavPointDisk::type, MissionObjectiveDisk::type, MissionObjectiveSource::type, MissionShipDisk::type, and MissionShipRecord::type.
Referenced by BarracksScreen(), Briefing(), DeBriefing(), init_mission(), and LoadMissionData().
| unsigned int LongTalk | ( | struct Shape * | talker, |
| char * | text, | ||
| short * | mouthCommands, | ||
| short * | faceCommands, | ||
| short | duration ) |
Definition at line 260 of file cmpgn.c.
References AddPCName(), cBlackColour, CheckEscaped(), ClearViewport(), CloseTalk(), DIBslam(), DIBslamReal(), FormatTextBufferFromStart(), IsFrameTickElapsed(), LongTalk(), nConvTextColorValue, nFrameSkip, nFrameSkipCounter, SetFrameTimerPeriodDirect(), stCurrentConvTextViewport, szTxtWorkspaceBuffer, and WaitForSceneAdvance().
Referenced by LongTalk(), and SceneDirector().
| unsigned int Office | ( | void | ) |
Definition at line 478 of file cmpgn.c.
References asCampaignBriefingFiles, bEscapePressedFlag, BriefingPacketHeader::briefingScene, BriefingPacketHeader::briefingText, DIBslam(), DIBslamReal(), FetchDiskPacketRetrying(), InitializeConversationText(), InitializeConversationViewport(), nCampaignDataSet, Office(), pCurrentConversationBackdropShapePtr, PreloadMusicTrackHook(), ReleaseMusicTrackHook(), ReleasePacketHandle(), ReleaseTextFont(), ResetScreenClipToFullHeight(), SceneDirector(), spacetrack(), and StopMusicUnlessSuppressed().
Referenced by GameFlow(), Office(), and RunAnimationDemoLoop().
| unsigned int ParseFaceAnimation | ( | char * | text, |
| short * | commands ) |
Definition at line 27 of file cmpgn.c.
References ParseFaceAnimation().
Referenced by ParseFaceAnimation(), and SceneDirector().
| unsigned int ParseMouthAnimation | ( | char * | text, |
| short * | commands ) |
Definition at line 65 of file cmpgn.c.
References asMouthFramesByPhoneme, and ParseMouthAnimation().
Referenced by ParseMouthAnimation(), and SceneDirector().
| unsigned int UpdateMap | ( | char * | text, |
| short | duration ) |
Definition at line 703 of file cmpgn.c.
References AddPCName(), BriefingMap_DisplayMap(), cBlackColour, ClearViewport(), FormatTextBufferFromStart(), nConvTextColorValue, Viewport::pixels, SetTextContext(), stCurrentConvTextViewport, stCurrentConvTxtCtx, stSceneBuffer, stScreenView, szTxtWorkspaceBuffer, UpdateMap(), and WaitForSceneAdvance().
Referenced by SceneDirector(), and UpdateMap().
|
static |
Definition at line 12 of file cmpgn.c.
Referenced by ParseMouthAnimation().
| signed char cScrambleWalkerPair |
Definition at line 18 of file cmpgn.c.
Referenced by AnimateScrambleWalk(), and PlayScrambleHangarScene().
| short nTalkingHeadFaceCoordY |
Definition at line 22 of file cmpgn.c.
Referenced by CloseTalk(), and LoadFace().
| short nTalkingHeadFaceX |
Definition at line 21 of file cmpgn.c.
Referenced by CloseTalk(), and LoadFace().
| short nTalkingHeadMouthX |
Definition at line 24 of file cmpgn.c.
Referenced by CloseTalk(), and LoadFace().
| short nTalkingHeadMouthY |
Definition at line 23 of file cmpgn.c.
Referenced by CloseTalk(), and LoadFace().
| struct Shape* pScrambleCanopyShape |
Definition at line 19 of file cmpgn.c.
Referenced by DrawScrambleFrame(), landing(), and scramble().
| struct Shape* pScrambleShipShape |
Definition at line 20 of file cmpgn.c.
Referenced by DrawScrambleFrame(), landing(), and scramble().