diff options
author | Bertrand Augereau | 2011-09-03 11:02:03 +0200 |
---|---|---|
committer | Bertrand Augereau | 2011-09-03 11:10:32 +0200 |
commit | 65e2494265f1252bcd1fa4a7f80402ab6bf8ae7b (patch) | |
tree | 3ed22393f41b4f3934b7a7874ee44059a114fab0 /engines/dreamweb/pathfind.cpp | |
parent | 35d88d498cbb4d5e94befc1d976539c1079dd5bf (diff) | |
download | scummvm-rg350-65e2494265f1252bcd1fa4a7f80402ab6bf8ae7b.tar.gz scummvm-rg350-65e2494265f1252bcd1fa4a7f80402ab6bf8ae7b.tar.bz2 scummvm-rg350-65e2494265f1252bcd1fa4a7f80402ab6bf8ae7b.zip |
DREAMWEB: 'turnpathon' et 'turnpathoff' ported to C++
Diffstat (limited to 'engines/dreamweb/pathfind.cpp')
-rw-r--r-- | engines/dreamweb/pathfind.cpp | 34 |
1 files changed, 20 insertions, 14 deletions
diff --git a/engines/dreamweb/pathfind.cpp b/engines/dreamweb/pathfind.cpp index 2579105c6f..4b1d590bec 100644 --- a/engines/dreamweb/pathfind.cpp +++ b/engines/dreamweb/pathfind.cpp @@ -27,22 +27,28 @@ namespace DreamGen { -void DreamGenContext::turnpathonCPP(uint8 param) { - al = param; - push(es); - push(bx); - turnpathon(); - bx = pop(); - es = pop(); +void DreamGenContext::turnpathon() { + turnpathon(al); } -void DreamGenContext::turnpathoffCPP(uint8 param) { - al = param; - push(es); - push(bx); - turnpathoff(); - bx = pop(); - es = pop(); +void DreamGenContext::turnpathon(uint8 param) { + findormake(param, 0xff, data.byte(kRoomnum) + 100); + uint8 *roomsPaths = getroomspathsCPP(); + if (param == 0xff) + return; + roomsPaths[8 * param + 6] = 0xff; +} + +void DreamGenContext::turnpathoff() { + turnpathoff(al); +} + +void DreamGenContext::turnpathoff(uint8 param) { + findormake(param, 0x00, data.byte(kRoomnum) + 100); + uint8 *roomsPaths = getroomspathsCPP(); + if (param == 0xff) + return; + roomsPaths[8 * param + 6] = 0x00; } void DreamGenContext::getroomspaths() { |