Skip to content

Commit

Permalink
STARTREK: VENG2
Browse files Browse the repository at this point in the history
  • Loading branch information
Stewmath authored and sev- committed Aug 9, 2018
1 parent d672fb6 commit a089dc2
Show file tree
Hide file tree
Showing 6 changed files with 1,310 additions and 6 deletions.
35 changes: 34 additions & 1 deletion engines/startrek/awaymission.h
Expand Up @@ -621,10 +621,11 @@ struct AwayMission {


struct { struct {
bool enteredRoom0FirstTime; // 0x2d bool enteredRoom0FirstTime; // 0x2d
int16 missionScore; // 0x2e
bool bridgeCrewmanDead; // 0x30 bool bridgeCrewmanDead; // 0x30
bool scannedCaptainsChair; // 0x31 bool scannedCaptainsChair; // 0x31
bool scannedComputerBank; // 0x32 bool scannedComputerBank; // 0x32
bool field34; // 0x34 bool impulseEnginesOn; // 0x34


// 0: beam still in place // 0: beam still in place
// 1: used saw on beam // 1: used saw on beam
Expand All @@ -637,8 +638,40 @@ struct AwayMission {
bool removedPanelDebris; // 0x39 bool removedPanelDebris; // 0x39
bool oilInHypo; // 0x3a bool oilInHypo; // 0x3a
bool loosenedDebrisWithOil; // 0x3b bool loosenedDebrisWithOil; // 0x3b

// 0: no power allocated
// 1: power to weapons
// 2: power to shields
// 3: power to transporter
byte poweredSystem; // 0x3c

// 0: no tricorders plugged in
// 1: med tricorder plugged in
// 2: sci tricorder plugged in
// 3: both plugged in
byte tricordersPluggedIntoComputer; // 0x3d

byte captainsLogIndex; // 0x3e
bool elasiShieldsDown; // 0x40
bool torpedoLoaded; // 0x41
bool firedTorpedo; // 0x42
bool elasiShipDecloaked; // 0x43
bool countdownStarted; // 0x44
bool toldElasiToBeamOver; // 0x45
bool scannedMainComputer; // 0x46
bool elasiHailedRepublic; // 0x47
bool tookRecordDeckFromAuxilaryControl; // 0x48
int16 field49; // 0x49
int16 field4b; // 0x4b
int16 field4d; // 0x4d
int16 field51; // 0x51
bool havePowerPack; // 0x5a
bool tookMolecularSaw; // 0x60 bool tookMolecularSaw; // 0x60
bool readEngineeringJournal; // 0x61
bool examinedTorpedoControl; // 0x66
bool field68; // 0x68 bool field68; // 0x68
bool field69; // 0x69
bool readAllLogs; // 0x6a
bool field6b; // 0x6b bool field6b; // 0x6b
bool field6c; // 0x6c bool field6c; // 0x6c
} veng; } veng;
Expand Down
68 changes: 68 additions & 0 deletions engines/startrek/room.h
Expand Up @@ -2524,9 +2524,74 @@ class Room {
void veng1ReachedDebrisToGet(); void veng1ReachedDebrisToGet();
void veng1TriedToGetDebris(); void veng1TriedToGetDebris();
void veng1UseMccoyOnDeadGuy(); void veng1UseMccoyOnDeadGuy();
// TODO: common code


// VENG2 // VENG2
void veng2Tick1(); void veng2Tick1();
void veng2Timer0Expired();
void veng2ElasiShipDecloaked();
void veng2Timer2Expired();
void veng2TouchedDoor();
void veng2LookAtViewscreen();
void veng2LookAtMiddleConsole();
void veng2LookAtDamageDisplay();
void veng2LookAtSTricorder();
void veng2LookAtMTricorder();
void veng2LookAtTorpedoButton();
void veng2LookAtTorpedoControl();
void veng2LookAtImpulseConsole();
void veng2LookAtMainComputer();
void veng2LookAtRecordDeck();
void veng2LookAtDeckIOConsole();
void veng2LookAtKirk();
void veng2LookAtSpock();
void veng2LookAtMccoy();
void veng2LookAtRedshirt();
void veng2LookAnywhere();
void veng2TalkToKirk();
void veng2TalkToSpock();
void veng2TalkToMccoy();
void veng2TalkToRedshirt();
void veng2UseTechJournalOnDeckIOConsole();
void veng2ReachedDeckIOWithTechJournal();
void veng2DoneReadingTechJournal();
void veng2UseLogOnDeckIOConsole();
void veng2ReachedDeckIOWithLog();
void veng2LoadedLog();
void veng2UseCommunicator();
void veng2UseKirkOnTorpedoButton();
void veng2UseKirkReachedTorpedoButton();
void veng2KirkFiredTorpedo();
void veng2TorpedoStruckElasiShip();
void veng2ElasiRetreated();
void veng2CrewmanInPositionToBeamOut();
void veng2UseSTricorderOnTorpedoButton();
void veng2UseSTricorderOnMiddleConsole();
void veng2UseSTricorderOnTorpedoControl();
void veng2UseImpulseConsole();
void veng2SpockReachedImpulseConsole();
void veng2SpockUsedImpulseConsole();
void veng2UseMainComputer();
void veng2UseSTricorderOnMainComputer();
void veng2SpockReachedMainComputerToPutTricorder();
void veng2AttachedSTricorderToComputer();
void veng2UseMTricorderOnMainComputer();
void veng2MccoyReachedMainComputerToPutTricorder();
void veng2AttachedMTricorderToComputer();
void veng2BothTricordersPluggedIn();
void veng2UseSTricorderOnDeckIOConsole();
void veng2UseSTricorderOnImpulseConsole();
void veng2UseFusionPackOnMainComputer();
void veng2GetLogDeck();
void veng2ReachedLogDeck();
void veng2PickedUpLogDeck();
void veng2GetSTricorder();
void veng2ReachedSTricorderToGet();
void veng2PickedUpSTricorder();
void veng2GetMTricorder();
void veng2ReachedMTricorderToGet();
void veng2PickedUpMTricorder();
// TODO: common code


// VENG3 // VENG3
void veng3Tick1(); void veng3Tick1();
Expand Down Expand Up @@ -2863,6 +2928,9 @@ class Room {
// veng1 // veng1
byte doorOpenCounter; // 0xca byte doorOpenCounter; // 0xca
bool walkingToDoor; // 0xcb bool walkingToDoor; // 0xcb

// veng2
byte numCrewmenReadyToBeamOut; // 0xca
} veng; } veng;


} _roomVar; } _roomVar;
Expand Down
2 changes: 1 addition & 1 deletion engines/startrek/rooms/veng0.cpp
Expand Up @@ -175,7 +175,7 @@ void Room::veng0UseSTricorderOnChair() {
} }


void Room::veng0UseSTricorderAnywhere() { void Room::veng0UseSTricorderAnywhere() {
if (!_awayMission->veng.field34) if (!_awayMission->veng.impulseEnginesOn)
spockScan(DIR_S, TX_VEN0_027); spockScan(DIR_S, TX_VEN0_027);
} }


Expand Down

0 comments on commit a089dc2

Please sign in to comment.