diff options
-rwxr-xr-x | devtools/tasmrecover/tasm-recover | 1 | ||||
-rw-r--r-- | engines/dreamweb/dreamgen.cpp | 26 | ||||
-rw-r--r-- | engines/dreamweb/dreamgen.h | 1 | ||||
-rw-r--r-- | engines/dreamweb/stubs.cpp | 21 | ||||
-rw-r--r-- | engines/dreamweb/stubs.h | 1 |
5 files changed, 23 insertions, 27 deletions
diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover index 3fb7dfaa7e..ae0d4015ad 100755 --- a/devtools/tasmrecover/tasm-recover +++ b/devtools/tasmrecover/tasm-recover @@ -286,6 +286,7 @@ generator = cpp(context, "DreamGen", blacklist = [ 'errormessage2', 'errormessage3', 'examicon', + 'examineinventory', 'examineob', 'examineobtext', 'facerightway', diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index aaa531ff8e..965306313d 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -2006,32 +2006,6 @@ pickupexob: workToScreenM(); } -void DreamGenContext::examineInventory() { - STACK_CHECK; - _cmp(data.byte(kCommandtype), 249); - if (flags.z()) - goto alreadyexinv; - data.byte(kCommandtype) = 249; - al = 32; - commandOnly(); -alreadyexinv: - ax = data.word(kMousebutton); - _and(ax, 1); - if (!flags.z()) - goto doexinv; - return; -doexinv: - createPanel(); - showPanel(); - showMan(); - showExit(); - examIcon(); - data.byte(kPickup) = 0; - data.byte(kInvopen) = 2; - openInv(); - workToScreenM(); -} - void DreamGenContext::reExFromInv() { STACK_CHECK; findInvPos(); diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h index ca9f56158c..fe922cd959 100644 --- a/engines/dreamweb/dreamgen.h +++ b/engines/dreamweb/dreamgen.h @@ -627,7 +627,6 @@ public: void showDiaryPage(); void transferToEx(); void reExFromInv(); - void examineInventory(); void businessMan(); void outOfInv(); void diaryKeyP(); diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp index e75c7cde4f..637df6019a 100644 --- a/engines/dreamweb/stubs.cpp +++ b/engines/dreamweb/stubs.cpp @@ -3872,4 +3872,25 @@ void DreamGenContext::selectLocation() { deallocateMem(data.word(kTraveltext)); } + +void DreamGenContext::examineInventory() { + if (data.byte(kCommandtype) != 249) { + data.byte(kCommandtype) = 249; + commandOnly(32); + } + + if (!(data.word(kMousebutton) & 1)) + return; + + createPanel(); + showPanel(); + showMan(); + showExit(); + examIcon(); + data.byte(kPickup) = 0; + data.byte(kInvopen) = 2; + openInv(); + workToScreenM(); +} + } // End of namespace DreamGen diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h index 2699605bd0..73fa7a62ef 100644 --- a/engines/dreamweb/stubs.h +++ b/engines/dreamweb/stubs.h @@ -583,5 +583,6 @@ void closeFile(); void getTime(); void set16ColPalette(); + void examineInventory(); #endif |