25 #ifndef PEGASUS_NEIGHBORHOOD_NORAD_SUBCONTROLROOM_H 26 #define PEGASUS_NEIGHBORHOOD_NORAD_SUBCONTROLROOM_H 28 #include "pegasus/interaction.h" 29 #include "pegasus/notification.h" 33 static const uint32 kClawAtA = 0;
34 static const uint32 kClawAtB = 1;
35 static const uint32 kClawAtC = 2;
36 static const uint32 kClawAtD = 3;
38 static const int kNumClawButtons = 7;
47 void playAgainstRobot();
49 void setSoundFXLevel(
const uint16)
override;
51 bool canSolve()
override;
52 void doSolve()
override;
55 void openInteraction()
override;
56 void initInteraction()
override;
57 void closeInteraction()
override;
59 void activateHotspots()
override;
60 void clickInHotspot(
const Input &,
const Hotspot *)
override;
62 void receiveNotification(
Notification *,
const NotificationFlags)
override;
65 InputBits getInputFilter()
override;
67 int findActionIndex(HotSpotID);
68 void dispatchClawAction(
const int);
69 void performActionImmediately(
const int,
const uint32,
Neighborhood *);
71 void hideEverything();
75 void updateGreenBall();
76 void moveGreenBallToA();
77 void moveGreenBallToB();
78 void moveGreenBallToC();
79 void moveGreenBallToD();
81 void setControlMonitorToTime(
const TimeValue,
const int,
const bool);
82 void playControlMonitorSection(
const TimeValue,
const TimeValue,
const NotificationFlags,
83 const int,
const bool);
85 void updateClawMonitor();
86 void setClawMonitorToTime(
const TimeValue);
87 void playClawMonitorSection(
const TimeValue,
const TimeValue,
const NotificationFlags,
88 const int,
const bool);
90 Movie _subControlMovie;
91 TimeScale _subControlScale;
94 Movie _clawMonitorMovie;
97 uint32 _clawStartPosition;
99 uint32 _clawNextPosition;
100 const uint32 *_clawExtraIDs;
105 Sprite *_buttons[kNumClawButtons];
119 HotSpotID _outSpotID;
120 HotSpotID _prepSpotID;
121 HotSpotID _clawControlSpotID;
122 HotSpotID _clawButtonSpotIDs[kNumClawButtons];
126 bool _playingAgainstRobot;
Definition: neighborhood.h:111
Definition: elements.h:168
Definition: subcontrolroom.h:42
Definition: notification.h:53
Definition: interaction.h:37
Definition: notification.h:83
Definition: ai_action.h:33