TSAGE: Implemented missing functionality for first game scene
This commit is contained in:
parent
233592d28a
commit
cee156d596
10 changed files with 165 additions and 44 deletions
|
@ -314,6 +314,38 @@ void NamedObject::synchronize(Serializer &s) {
|
|||
s.syncAsSint16LE(_useLineNum);
|
||||
}
|
||||
|
||||
void NamedObject::startAction(CursorType action) {
|
||||
bool handled = true;
|
||||
|
||||
switch (action) {
|
||||
case CURSOR_LOOK:
|
||||
if (_lookLineNum == -1)
|
||||
handled = false;
|
||||
else
|
||||
SceneItem::display2(_resNum, _lookLineNum);
|
||||
break;
|
||||
case CURSOR_USE:
|
||||
if (_useLineNum == -1)
|
||||
handled = false;
|
||||
else
|
||||
SceneItem::display2(_resNum, _useLineNum);
|
||||
break;
|
||||
case CURSOR_TALK:
|
||||
if (_talkLineNum == -1)
|
||||
handled = false;
|
||||
else
|
||||
SceneItem::display2(_resNum, _talkLineNum);
|
||||
break;
|
||||
default:
|
||||
handled = false;
|
||||
break;
|
||||
}
|
||||
/*
|
||||
if (!handled)
|
||||
((SceneExt *)BF_GLOBALS._sceneManager._scene)->display(action);
|
||||
*/
|
||||
}
|
||||
|
||||
void NamedObject::setup(int resNum, int lookLineNum, int talkLineNum, int useLineNum, int mode, SceneItem *item) {
|
||||
_resNum = resNum;
|
||||
_lookLineNum = lookLineNum;
|
||||
|
@ -336,6 +368,7 @@ void NamedObject::setup(int resNum, int lookLineNum, int talkLineNum, int useLin
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
CountdownObject::CountdownObject(): NamedObject() {
|
||||
|
@ -467,6 +500,21 @@ void SceneExt::loadScene(int sceneNum) {
|
|||
_v51C34.bottom = 300;
|
||||
}
|
||||
|
||||
void SceneExt::checkGun() {
|
||||
if (BF_GLOBALS.getFlag(fLoadedSpare) && (BF_GLOBALS._v4CEBA > 0)) {
|
||||
if (--BF_GLOBALS._v4CEBA == 0)
|
||||
BF_GLOBALS.clearFlag(fGunLoaded);
|
||||
} else {
|
||||
if (BF_GLOBALS._v4CEB8 > 0)
|
||||
--BF_GLOBALS._v4CEB8;
|
||||
|
||||
if (!BF_GLOBALS._v4CEB8)
|
||||
BF_GLOBALS.clearFlag(fGunLoaded);
|
||||
}
|
||||
|
||||
BF_GLOBALS._sound3.play(4);
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
GameScene::GameScene() {
|
||||
|
|
|
@ -106,6 +106,7 @@ public:
|
|||
virtual Common::String getClassName() { return "NamedObject"; }
|
||||
virtual void synchronize(Serializer &s);
|
||||
virtual void postInit(SceneObjectList *OwnerList = NULL);
|
||||
virtual void startAction(CursorType action);
|
||||
|
||||
void setup(int resNum, int lookLineNum, int talkLineNum, int useLineNum, int mode, SceneItem *item);
|
||||
};
|
||||
|
@ -151,7 +152,7 @@ public:
|
|||
virtual void process(Event &event);
|
||||
virtual void dispatch();
|
||||
virtual void loadScene(int sceneNum);
|
||||
virtual void proc13() { warning("TODO: SceneExt::proc13"); }
|
||||
virtual void checkGun();
|
||||
|
||||
void addTimer(Timer *timer) { _timerList.add(timer); }
|
||||
void removeTimer(Timer *timer) { _timerList.remove(timer); }
|
||||
|
|
|
@ -36,18 +36,18 @@ namespace BlueForce {
|
|||
*
|
||||
*--------------------------------------------------------------------------*/
|
||||
|
||||
void Scene300::Object::startMover(CursorType action) {
|
||||
void Scene300::Object::startAction(CursorType action) {
|
||||
if (action == CURSOR_TALK) {
|
||||
Scene300 *scene = (Scene300 *)BF_GLOBALS._sceneManager._scene;
|
||||
scene->_stripManager.start(_stripNumber, scene);
|
||||
} else {
|
||||
NamedObject::startMover(action);
|
||||
NamedObject::startAction(action);
|
||||
}
|
||||
}
|
||||
|
||||
void Scene300::Object17::startMover(CursorType action) {
|
||||
void Scene300::Object17::startAction(CursorType action) {
|
||||
if ((action != CURSOR_USE) || !BF_GLOBALS.getFlag(3)) {
|
||||
NamedObject::startMover(action);
|
||||
NamedObject::startAction(action);
|
||||
} else if ((BF_GLOBALS._dayNumber != 2) || (BF_GLOBALS._bookmark >= bEndDayOne)) {
|
||||
Scene300 *scene = (Scene300 *)BF_GLOBALS._sceneManager._scene;
|
||||
setAction(&scene->_action4);
|
||||
|
@ -56,32 +56,32 @@ void Scene300::Object17::startMover(CursorType action) {
|
|||
}
|
||||
}
|
||||
|
||||
void Scene300::Item1::startMover(CursorType action) {
|
||||
if (action == CURSOR_TALK) {
|
||||
void Scene300::Item1::startAction(CursorType action) {
|
||||
if (action == CURSOR_USE) {
|
||||
Scene300 *scene = (Scene300 *)BF_GLOBALS._sceneManager._scene;
|
||||
BF_GLOBALS._player.disableControl();
|
||||
scene->_sceneMode = 305;
|
||||
scene->setAction(&scene->_sequenceManager1, scene, 305, &BF_GLOBALS._player,
|
||||
&scene->_object8, NULL);
|
||||
} else {
|
||||
NamedHotspot::startMover(action);
|
||||
NamedHotspot::startAction(action);
|
||||
}
|
||||
}
|
||||
|
||||
void Scene300::Item2::startMover(CursorType action) {
|
||||
void Scene300::Item2::startAction(CursorType action) {
|
||||
if ((action == CURSOR_LOOK) || (action == CURSOR_USE)) {
|
||||
Scene300 *scene = (Scene300 *)BF_GLOBALS._sceneManager._scene;
|
||||
scene->setAction(&scene->_sequenceManager1, scene, 304, &scene->_object11, NULL);
|
||||
} else {
|
||||
NamedHotspot::startMover(action);
|
||||
NamedHotspot::startAction(action);
|
||||
}
|
||||
}
|
||||
|
||||
void Scene300::Item14::startMover(CursorType action) {
|
||||
void Scene300::Item14::startAction(CursorType action) {
|
||||
ADD_PLAYER_MOVER_NULL(BF_GLOBALS._player, 151, 54);
|
||||
}
|
||||
|
||||
void Scene300::Item15::startMover(CursorType action) {
|
||||
void Scene300::Item15::startAction(CursorType action) {
|
||||
ADD_PLAYER_MOVER_NULL(BF_GLOBALS._player, 316, 90);
|
||||
}
|
||||
|
||||
|
@ -94,10 +94,10 @@ void Scene300::Action1::signal() {
|
|||
setDelay(1);
|
||||
break;
|
||||
case 1:
|
||||
if (BF_GLOBALS.getFlag(7))
|
||||
SceneItem::display2(300, 0);
|
||||
else
|
||||
if (BF_GLOBALS.getFlag(fWithLyle))
|
||||
SceneItem::display2(666, 27);
|
||||
else
|
||||
SceneItem::display2(300, 0);
|
||||
setDelay(1);
|
||||
break;
|
||||
case 2: {
|
||||
|
@ -222,6 +222,8 @@ void Scene300::Action5::signal() {
|
|||
Scene300::Scene300(): SceneExt(), _object13(3000), _object14(3001), _object15(3002),
|
||||
_object16(3003) {
|
||||
_field2760 = _field2762 = 0;
|
||||
|
||||
_cursorVisage.setVisage(1, 8);
|
||||
}
|
||||
|
||||
void Scene300::postInit(SceneObjectList *OwnerList) {
|
||||
|
@ -341,6 +343,20 @@ BF_GLOBALS._player.setStrip(1);
|
|||
setAction(&_sequenceManager1, this, 306, &BF_GLOBALS._player, &_object8, NULL);
|
||||
break;
|
||||
}
|
||||
|
||||
_item10.setup(4, 300, 7, 13, 16, 1);
|
||||
_item11.setup(2, 300, 9, 13, 18, 1);
|
||||
_item12.setup(5, 300, 10, 13, 19, 1);
|
||||
_item13.setup(3, 300, 25, 26, 27, 1);
|
||||
_item2.setup(Rect(266, 54, 272, 59), 300, -1, -1, -1, 1, NULL);
|
||||
_item1.setup(Rect(262, 47, 299, 76), 300, 1, 13, -1, 1, NULL);
|
||||
_item4.setup(Rect(0, 85, SCREEN_WIDTH - 1, BF_INTERFACE_Y - 1), 300, 6, 13, 15, 1, NULL);
|
||||
_item7.setup(Rect(219, 46, 251, 74), 300, 22, 23, 24, 1, NULL);
|
||||
_item8.setup(Rect(301, 53, 319, 78), 300, 22, 23, 24, 1, NULL);
|
||||
_item5.setup(Rect(179, 44, 200, 55), 300, 8, 13, 17, 1, NULL);
|
||||
_item6.setup(Rect(210, 46, 231, 55), 300, 8, 13, 17, 1, NULL);
|
||||
_item3.setup(Rect(160, 0, SCREEN_WIDTH - 1, 75), 300, 4, 13, 14, 1, NULL);
|
||||
_item9.setup(Rect(0, 0, SCREEN_WIDTH, BF_INTERFACE_Y), 300, 29, 30, 31, 1, NULL);
|
||||
}
|
||||
|
||||
void Scene300::signal() {
|
||||
|
@ -509,19 +525,16 @@ void Scene300::signal() {
|
|||
void Scene300::process(Event &event) {
|
||||
SceneExt::process(event);
|
||||
|
||||
if ((BF_GLOBALS._player._field8E != 0) && !_eventHandler && (event.mousePos.y < (BF_INTERFACE_Y - 1))) {
|
||||
Visage visage;
|
||||
|
||||
if (BF_GLOBALS._player._enabled && !_eventHandler && (event.mousePos.y < (BF_INTERFACE_Y - 1))) {
|
||||
if (_item14.contains(event.mousePos)) {
|
||||
visage.setVisage(1, 8);
|
||||
GfxSurface surface = visage.getFrame(2);
|
||||
GfxSurface surface = _cursorVisage.getFrame(2);
|
||||
BF_GLOBALS._events.setCursor(surface);
|
||||
} else if (_item15.contains(event.mousePos)) {
|
||||
visage.setVisage(1, 8);
|
||||
GfxSurface surface = visage.getFrame(3);
|
||||
GfxSurface surface = _cursorVisage.getFrame(3);
|
||||
BF_GLOBALS._events.setCursor(surface);
|
||||
} else {
|
||||
CursorType cursorId = BF_GLOBALS._events.hideCursor();
|
||||
// In case an exit cursor was being shown, restore the previously selected cursor
|
||||
CursorType cursorId = BF_GLOBALS._events.getCursor();
|
||||
BF_GLOBALS._events.setCursor(cursorId);
|
||||
}
|
||||
}
|
||||
|
@ -530,7 +543,7 @@ void Scene300::process(Event &event) {
|
|||
void Scene300::dispatch() {
|
||||
SceneExt::dispatch();
|
||||
|
||||
if (_action) {
|
||||
if (!_action) {
|
||||
int regionIndex = BF_GLOBALS._player.getRegionIndex();
|
||||
if ((regionIndex == 1) && (_field2762 == 1)) {
|
||||
BF_GLOBALS._player.disableControl();
|
||||
|
@ -546,6 +559,19 @@ void Scene300::dispatch() {
|
|||
ADD_MOVER(BF_GLOBALS._player, BF_GLOBALS._player._position.x + 20,
|
||||
BF_GLOBALS._player._position.y - 5);
|
||||
}
|
||||
|
||||
if (BF_GLOBALS._player._position.x <= 5)
|
||||
setAction(&_action2);
|
||||
|
||||
if (BF_GLOBALS._player._position.x >= 315) {
|
||||
if (BF_GLOBALS.getFlag(onDuty) || (BF_GLOBALS._bookmark == bNone) || !BF_GLOBALS.getFlag(fWithLyle)) {
|
||||
setAction(&_action1);
|
||||
} else {
|
||||
BF_GLOBALS._player.disableControl();
|
||||
_sceneMode = 317;
|
||||
setAction(&_sequenceManager1, this, 1301, &BF_GLOBALS._player, NULL);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -46,29 +46,29 @@ class Scene300: public SceneExt {
|
|||
public:
|
||||
Object(int stripNumber) { _stripNumber = stripNumber; }
|
||||
|
||||
virtual void startMover(CursorType action);
|
||||
virtual void startAction(CursorType action);
|
||||
};
|
||||
class Object17: public NamedObject {
|
||||
public:
|
||||
virtual void startMover(CursorType action);
|
||||
virtual void startAction(CursorType action);
|
||||
};
|
||||
|
||||
/* Items */
|
||||
class Item1: public NamedHotspot {
|
||||
public:
|
||||
virtual void startMover(CursorType action);
|
||||
virtual void startAction(CursorType action);
|
||||
};
|
||||
class Item2: public NamedHotspot {
|
||||
public:
|
||||
virtual void startMover(CursorType action);
|
||||
virtual void startAction(CursorType action);
|
||||
};
|
||||
class Item14: public NamedHotspot {
|
||||
public:
|
||||
virtual void startMover(CursorType action);
|
||||
virtual void startAction(CursorType action);
|
||||
};
|
||||
class Item15: public NamedHotspot {
|
||||
public:
|
||||
virtual void startMover(CursorType action);
|
||||
virtual void startAction(CursorType action);
|
||||
};
|
||||
|
||||
/* Actions */
|
||||
|
@ -97,6 +97,7 @@ private:
|
|||
public:
|
||||
SequenceManager _sequenceManager1, _sequenceManager2;
|
||||
SequenceManager _sequenceManager3, _sequenceManager4;
|
||||
Visage _cursorVisage;
|
||||
NamedObject _object1;
|
||||
FollowerObject _object2, _object3, _object4, _object5, _object6, _object7;
|
||||
SceneObject _object8, _object9, _object10;
|
||||
|
|
|
@ -201,7 +201,7 @@ void UICollection::draw() {
|
|||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
void UIElements::process(Event &event) {
|
||||
if (_clearScreen && BF_GLOBALS._player._field8E && (BF_GLOBALS._sceneManager._sceneNumber != 50)) {
|
||||
if (_clearScreen && BF_GLOBALS._player._enabled && (BF_GLOBALS._sceneManager._sceneNumber != 50)) {
|
||||
if (_bounds.contains(event.mousePos)) {
|
||||
|
||||
} else if (_field4E) {
|
||||
|
|
|
@ -1463,7 +1463,11 @@ bool SceneItem::contains(const Common::Point &pt) {
|
|||
}
|
||||
|
||||
void SceneItem::display(int resNum, int lineNum, ...) {
|
||||
Common::String msg = !resNum ? Common::String() : _resourceManager->getMessage(resNum, lineNum);
|
||||
Common::String msg = (!resNum || (resNum == -1)) ? Common::String() :
|
||||
_resourceManager->getMessage(resNum, lineNum);
|
||||
|
||||
if ((_vm->getGameID() == GType_BlueForce) && BF_GLOBALS._uiElements._active)
|
||||
BF_GLOBALS._uiElements.hide();
|
||||
|
||||
if (_globals->_sceneObjects->contains(&_globals->_sceneText)) {
|
||||
_globals->_sceneText.remove();
|
||||
|
@ -1475,12 +1479,15 @@ void SceneItem::display(int resNum, int lineNum, ...) {
|
|||
Rect textRect;
|
||||
int maxWidth = 120;
|
||||
bool keepOnscreen = false;
|
||||
bool centerText = true;
|
||||
bool centerText = _vm->getGameID() == GType_Ringworld;
|
||||
|
||||
if (resNum) {
|
||||
if (resNum != 0) {
|
||||
va_list va;
|
||||
va_start(va, lineNum);
|
||||
|
||||
if (resNum == -1)
|
||||
msg = Common::String(va_arg(va, const char *));
|
||||
|
||||
int mode;
|
||||
do {
|
||||
// Get next instruction
|
||||
|
@ -1590,6 +1597,9 @@ void SceneItem::display(int resNum, int lineNum, ...) {
|
|||
|
||||
_globals->_sceneText.remove();
|
||||
}
|
||||
|
||||
if ((_vm->getGameID() == GType_BlueForce) && BF_GLOBALS._uiElements._active)
|
||||
BF_GLOBALS._uiElements.show();
|
||||
}
|
||||
|
||||
void SceneItem::display2(int resNum, int lineNum) {
|
||||
|
@ -1603,23 +1613,46 @@ void SceneItem::display2(int resNum, int lineNum) {
|
|||
display(resNum, lineNum, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
}
|
||||
|
||||
void SceneItem::display(const Common::String &msg) {
|
||||
assert(_vm->getGameID() == GType_BlueForce);
|
||||
|
||||
display(-1, -1, msg.c_str(),
|
||||
SET_WIDTH, 312,
|
||||
SET_X, 4 + GLOBALS._sceneManager._scene->_sceneBounds.left,
|
||||
SET_Y, GLOBALS._sceneManager._scene->_sceneBounds.top + BF_INTERFACE_Y + 2,
|
||||
SET_FONT, 4, SET_BG_COLOR, 1, SET_FG_COLOR, 19, SET_EXT_BGCOLOR, 9,
|
||||
SET_EXT_FGCOLOR, 13, LIST_END);
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
void SceneHotspot::doAction(int action) {
|
||||
switch ((int)action) {
|
||||
case CURSOR_LOOK:
|
||||
display(1, 0, SET_Y, 20, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
if (_vm->getGameID() == GType_BlueForce)
|
||||
SceneItem::display(LOOK_SCENE_HOTSPOT);
|
||||
else
|
||||
display(1, 0, SET_Y, 20, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
break;
|
||||
case CURSOR_USE:
|
||||
display(1, 5, SET_Y, 20, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
if (_vm->getGameID() == GType_BlueForce)
|
||||
SceneItem::display(USE_SCENE_HOTSPOT);
|
||||
else
|
||||
display(1, 5, SET_Y, 20, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
break;
|
||||
case CURSOR_TALK:
|
||||
display(1, 15, SET_Y, 20, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
if (_vm->getGameID() == GType_BlueForce)
|
||||
SceneItem::display(TALK_SCENE_HOTSPOT);
|
||||
else
|
||||
display(1, 15, SET_Y, 20, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
break;
|
||||
case CURSOR_WALK:
|
||||
break;
|
||||
default:
|
||||
display(2, action, SET_Y, 20, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
if (_vm->getGameID() == GType_BlueForce)
|
||||
SceneItem::display(DEFAULT_SCENE_HOTSPOT);
|
||||
else
|
||||
display(2, action, SET_Y, 20, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -1639,18 +1672,24 @@ void NamedHotspot::doAction(int action) {
|
|||
case CURSOR_LOOK:
|
||||
if (_lookLineNum == -1)
|
||||
SceneHotspot::doAction(action);
|
||||
else if (_vm->getGameID() == GType_BlueForce)
|
||||
SceneItem::display2(_resNum, _lookLineNum);
|
||||
else
|
||||
SceneItem::display(_resNum, _lookLineNum, SET_Y, 20, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
break;
|
||||
case CURSOR_USE:
|
||||
if (_useLineNum == -1)
|
||||
SceneHotspot::doAction(action);
|
||||
else if (_vm->getGameID() == GType_BlueForce)
|
||||
SceneItem::display2(_resNum, _useLineNum);
|
||||
else
|
||||
SceneItem::display(_resNum, _useLineNum, SET_Y, 20, SET_WIDTH, 200, SET_EXT_BGCOLOR, 7, LIST_END);
|
||||
break;
|
||||
case CURSOR_TALK:
|
||||
if (_talkLineNum == -1)
|
||||
SceneHotspot::doAction(action);
|
||||
else if (_vm->getGameID() == GType_BlueForce)
|
||||
SceneItem::display2(_resNum, _talkLineNum);
|
||||
else
|
||||
SceneItem::display2(_resNum, _talkLineNum);
|
||||
break;
|
||||
|
@ -2814,7 +2853,7 @@ void Player::disableControl() {
|
|||
_canWalk = false;
|
||||
_uiEnabled = false;
|
||||
_globals->_events.setCursor(CURSOR_NONE);
|
||||
_field8E = 0;
|
||||
_enabled = false;
|
||||
|
||||
if ((_vm->getGameID() == GType_BlueForce) && BF_GLOBALS._uiElements._active)
|
||||
BF_GLOBALS._uiElements.hide();
|
||||
|
@ -2823,6 +2862,7 @@ void Player::disableControl() {
|
|||
void Player::enableControl() {
|
||||
_canWalk = true;
|
||||
_uiEnabled = true;
|
||||
_enabled = true;
|
||||
_globals->_events.setCursor(CURSOR_WALK);
|
||||
|
||||
switch (_globals->_events.getCursor()) {
|
||||
|
@ -2863,7 +2903,7 @@ void Player::synchronize(Serializer &s) {
|
|||
s.syncAsSint16LE(_field8C);
|
||||
|
||||
if (_vm->getGameID() == GType_BlueForce)
|
||||
s.syncAsSint16LE(_field8E);
|
||||
s.syncAsByte(_enabled);
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
@ -3662,7 +3702,7 @@ void SceneHandler::process(Event &event) {
|
|||
|
||||
if (i != _globals->_sceneItems.end()) {
|
||||
// Pass the action to the item
|
||||
(*i)->doAction(_globals->_events.getCursor());
|
||||
(*i)->startAction(_globals->_events.getCursor());
|
||||
event.handled = _globals->_events.getCursor() != CURSOR_WALK;
|
||||
|
||||
if (_globals->_player._uiEnabled && _globals->_player._canWalk &&
|
||||
|
|
|
@ -412,7 +412,7 @@ public:
|
|||
virtual Common::String getClassName() { return "SceneItem"; }
|
||||
virtual void remove();
|
||||
virtual void destroy() {}
|
||||
virtual void startMover(CursorType action) { doAction(action); }
|
||||
virtual void startAction(CursorType action) { doAction(action); }
|
||||
virtual void doAction(int action);
|
||||
|
||||
bool contains(const Common::Point &pt);
|
||||
|
@ -420,6 +420,7 @@ public:
|
|||
void setBounds(const int ys, const int xe, const int ye, const int xs) { _bounds = Rect(MIN(xs, xe), MIN(ys, ye), MAX(xs, xe), MAX(ys, ye)); }
|
||||
static void display(int resNum, int lineNum, ...);
|
||||
static void display2(int resNum, int lineNum);
|
||||
static void display(const Common::String &msg);
|
||||
};
|
||||
|
||||
class SceneItemExt : public SceneItem {
|
||||
|
@ -617,7 +618,7 @@ public:
|
|||
bool _canWalk;
|
||||
bool _uiEnabled;
|
||||
int _field8C;
|
||||
int _field8E;
|
||||
bool _enabled;
|
||||
public:
|
||||
Player();
|
||||
|
||||
|
|
|
@ -293,7 +293,7 @@ void EventsClass::setCursor(GfxSurface &cursor) {
|
|||
CursorMan.replaceCursor(cursorData, cursor.getBounds().width(), cursor.getBounds().height(),
|
||||
cursor._centroid.x, cursor._centroid.y, cursor._transColor);
|
||||
|
||||
_currentCursor = CURSOR_NONE;
|
||||
_lastCursor = CURSOR_NONE;
|
||||
}
|
||||
|
||||
void EventsClass::setCursorFromFlag() {
|
||||
|
|
|
@ -189,6 +189,8 @@ BlueForceGlobals::BlueForceGlobals(): Globals() {
|
|||
_dayNumber = 1;
|
||||
_v4CEA4 = 0;
|
||||
_v4CEA8 = 0;
|
||||
_v4CEB8 = 0;
|
||||
_v4CEBA = 0;
|
||||
_driveFromScene = 0;
|
||||
_driveToScene = 0;
|
||||
_v4CF9E = 0;
|
||||
|
|
|
@ -169,6 +169,8 @@ public:
|
|||
int _dayNumber;
|
||||
int _v4CEA4;
|
||||
int _v4CEA8;
|
||||
int _v4CEB8;
|
||||
int _v4CEBA;
|
||||
int _driveFromScene;
|
||||
int _driveToScene;
|
||||
int _v4CF9E;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue