SUPERNOVA: Adds explicitly invalid state for Objects
This commit is contained in:
parent
b948a53f2f
commit
63c62d25e1
2 changed files with 5 additions and 3 deletions
|
@ -382,7 +382,8 @@ enum RoomID {
|
||||||
};
|
};
|
||||||
|
|
||||||
enum ObjectID {
|
enum ObjectID {
|
||||||
NULLOBJECT,
|
INVALIDOBJECT = -1,
|
||||||
|
NULLOBJECT = 0,
|
||||||
KEYCARD,KNIFE,WATCH,
|
KEYCARD,KNIFE,WATCH,
|
||||||
SOCKET,
|
SOCKET,
|
||||||
BUTTON,HATCH1,
|
BUTTON,HATCH1,
|
||||||
|
@ -463,7 +464,7 @@ struct Object {
|
||||||
Object()
|
Object()
|
||||||
: _name("")
|
: _name("")
|
||||||
, _description(Object::defaultDescription)
|
, _description(Object::defaultDescription)
|
||||||
, _id(NULLOBJECT)
|
, _id(INVALIDOBJECT)
|
||||||
, _type(NULLTYPE)
|
, _type(NULLTYPE)
|
||||||
, _click(0)
|
, _click(0)
|
||||||
, _click2(0)
|
, _click2(0)
|
||||||
|
|
|
@ -458,7 +458,8 @@ void GameManager::processInput() {
|
||||||
}
|
}
|
||||||
/* normal item */
|
/* normal item */
|
||||||
else {
|
else {
|
||||||
for (int i = 0; (_currentRoom->getObject(i)->_name.c_str()[0] != '\0') && (field == -1) && i < kMaxObject; i++) {
|
for (int i = 0; (_currentRoom->getObject(i)->_id != INVALIDOBJECT) &&
|
||||||
|
(field == -1) && i < kMaxObject; i++) {
|
||||||
click = _currentRoom->getObject(i)->_click;
|
click = _currentRoom->getObject(i)->_click;
|
||||||
if (click != 255) {
|
if (click != 255) {
|
||||||
MSNImageDecoder::ClickField *clickField = _vm->_currentImage->_clickField;
|
MSNImageDecoder::ClickField *clickField = _vm->_currentImage->_clickField;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue