mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-16 01:08:56 +00:00
DIRECTOR: Add sprite controlling fields
This commit is contained in:
parent
aac3497b73
commit
445bf8f5da
@ -184,6 +184,15 @@ void Lingo::setTheSprite(int id, TheField field, Datum &d) {
|
||||
case kTheInk:
|
||||
sprite->_ink = static_cast<InkType>(d.u.i);
|
||||
break;
|
||||
case kTheLocH:
|
||||
sprite->_startPoint.x = d.u.i;
|
||||
break;
|
||||
case kTheLocV:
|
||||
sprite->_startPoint.y = d.u.i;
|
||||
break;
|
||||
case kTheConstraint:
|
||||
sprite->_constraint = d.u.i;
|
||||
break;
|
||||
|
||||
default:
|
||||
error("Unprocessed setting field %d of sprite", field);
|
||||
@ -229,6 +238,18 @@ Datum Lingo::getTheSprite(int id, TheField field) {
|
||||
case kTheInk:
|
||||
d.u.i = sprite->_ink;
|
||||
break;
|
||||
case kTheInk:
|
||||
sprite->_ink = static_cast<InkType>(d.u.i);
|
||||
break;
|
||||
case kTheLocH:
|
||||
d.u.i = sprite->_startPoint.x;
|
||||
break;
|
||||
case kTheLocV:
|
||||
d.u.i = sprite->_startPoint.y;
|
||||
break;
|
||||
case kTheConstraint:
|
||||
d.u.i = sprite->_constraint;
|
||||
break;
|
||||
default:
|
||||
error("Unprocessed getting field %d of sprite", field);
|
||||
}
|
||||
|
@ -1535,6 +1535,8 @@ Sprite::Sprite() {
|
||||
_flags = 0;
|
||||
_height = 0;
|
||||
_castId = 0;
|
||||
_constraint = 0;
|
||||
_moveable = 0;
|
||||
_castId = 0;
|
||||
}
|
||||
|
||||
|
@ -286,6 +286,10 @@ public:
|
||||
Common::Point _startPoint;
|
||||
uint16 _width;
|
||||
uint16 _height;
|
||||
//TODO: default constraint = 0, if turned on, sprite is constrainted to the bounding rect
|
||||
//As i know, constrainted != 0 only if sprite moveable
|
||||
byte _constraint;
|
||||
byte _moveable;
|
||||
};
|
||||
|
||||
class Frame {
|
||||
|
Loading…
x
Reference in New Issue
Block a user