diff options
author | Bertrand Augereau | 2011-07-02 13:00:09 +0200 |
---|---|---|
committer | Bertrand Augereau | 2011-07-18 22:59:16 +0200 |
commit | 0eccad88f4038860e034654fd533ab1cc1df08a0 (patch) | |
tree | 17cd8c235820acb30da14f6999c5e4ae6c7edbeb /engines | |
parent | 0a6f83691d92754330a5f06b34aae5cde65d79df (diff) | |
download | scummvm-rg350-0eccad88f4038860e034654fd533ab1cc1df08a0.tar.gz scummvm-rg350-0eccad88f4038860e034654fd533ab1cc1df08a0.tar.bz2 scummvm-rg350-0eccad88f4038860e034654fd533ab1cc1df08a0.zip |
DREAMWEB: doorway and widedoor have signatures
Diffstat (limited to 'engines')
-rw-r--r-- | engines/dreamweb/stubs.cpp | 20 | ||||
-rw-r--r-- | engines/dreamweb/stubs.h | 2 |
2 files changed, 20 insertions, 2 deletions
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp index dc05e455ff..49b0012927 100644 --- a/engines/dreamweb/stubs.cpp +++ b/engines/dreamweb/stubs.cpp @@ -942,7 +942,7 @@ void DreamGenContext::backobject(Sprite* sprite) { sprite->delay = objData->delay; if (objData->type == 6) - widedoor(); + widedoor(sprite, objData); else if (objData->type == 5) random(sprite, objData); else if (objData->type == 4) @@ -950,7 +950,7 @@ void DreamGenContext::backobject(Sprite* sprite) { else if (objData->type == 3) liftsprite(sprite, objData); else if (objData->type == 2) - doorway(); + doorway(sprite, objData); else if (objData->type == 1) constant(sprite, objData); else @@ -976,6 +976,22 @@ void DreamGenContext::random(Sprite* sprite, ObjData* objData) { sprite->b15 = objData->b18[r&7]; } +void DreamGenContext::doorway(Sprite* sprite, ObjData* objData) { + data.byte(kDoorcheck1) = -24; + data.byte(kDoorcheck2) = 10; + data.byte(kDoorcheck3) = -30; + data.byte(kDoorcheck4) = 10; + dodoor(sprite, objData); +} + +void DreamGenContext::widedoor(Sprite* sprite, ObjData* objData) { + data.byte(kDoorcheck1) = -24; + data.byte(kDoorcheck2) = 24; + data.byte(kDoorcheck3) = -30; + data.byte(kDoorcheck4) = 24; + dodoor(sprite, objData); +} + void DreamGenContext::dodoor() { Sprite *sprite = (Sprite*)es.ptr(bx, sizeof(Sprite)); ObjData *objData = (ObjData*)ds.ptr(di, 0); diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h index 63a898acc9..4b7f956296 100644 --- a/engines/dreamweb/stubs.h +++ b/engines/dreamweb/stubs.h @@ -35,6 +35,8 @@ void random(Sprite* sprite, ObjData* objData); void dodoor(); void dodoor(Sprite* sprite, ObjData* objData); + void doorway(Sprite* sprite, ObjData* objData); + void widedoor(Sprite* sprite, ObjData* objData); void liftsprite(); void liftsprite(Sprite* sprite, ObjData* objData); void turnpathonCPP(uint8 param); |