diff options
author | Filippos Karapetis | 2011-12-09 01:23:38 +0200 |
---|---|---|
committer | Filippos Karapetis | 2011-12-09 01:24:25 +0200 |
commit | baf2cc8b8eaa6a4d56c0764eb7a1e1a6c8b9758e (patch) | |
tree | d3b1e25148fa81bdab9f8beecfc06cea1b53f50d /engines/dreamweb/use.cpp | |
parent | a2da8e6b397a76e2efef41b4d07b1baef78a6abc (diff) | |
download | scummvm-rg350-baf2cc8b8eaa6a4d56c0764eb7a1e1a6c8b9758e.tar.gz scummvm-rg350-baf2cc8b8eaa6a4d56c0764eb7a1e1a6c8b9758e.tar.bz2 scummvm-rg350-baf2cc8b8eaa6a4d56c0764eb7a1e1a6c8b9758e.zip |
DREAMWEB: Port 'usediary' to C++ and remove diarylist from the blob
Diffstat (limited to 'engines/dreamweb/use.cpp')
-rw-r--r-- | engines/dreamweb/use.cpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/engines/dreamweb/use.cpp b/engines/dreamweb/use.cpp index f06a30d81e..be4906c8b2 100644 --- a/engines/dreamweb/use.cpp +++ b/engines/dreamweb/use.cpp @@ -1158,5 +1158,49 @@ void DreamBase::removeFreeObject(uint8 index) { getFreeAd(index)->mapad[0] = 0xFF; } +void DreamGenContext::useDiary() { + getRidOfReels(); + loadIntoTemp((const char *)data.ptr(kDiarygraphic, 0)); + loadTempText((const char *)data.ptr(kDiarytext, 0)); + loadTempCharset((const char *)data.ptr(kCharacterset3, 0)); + createPanel(); + showIcon(); + showDiary(); + underTextLine(); + showDiaryPage(); + readMouse(); + showPointer(); + workToScreen(); + delPointer(); + data.byte(kGetback) = 0; + + RectWithCallback diaryList[] = { + { kDiaryx+94,kDiaryx+110,kDiaryy+97,kDiaryy+113,&DreamGenContext::diaryKeyN }, + { kDiaryx+151,kDiaryx+167,kDiaryy+71,kDiaryy+87,&DreamGenContext::diaryKeyP }, + { kDiaryx+176,kDiaryx+192,kDiaryy+108,kDiaryy+124,&DreamGenContext::quitKey }, + { 0,320,0,200,&DreamGenContext::blank }, + { 0xFFFF,0,0,0,0 } + }; + + do { + delPointer(); + readMouse(); + showDiaryKeys(); + showPointer(); + vSync(); + dumpPointer(); + dumpDiaryKeys(); + dumpTextLine(); + checkCoords(diaryList); + } while (!data.byte(kGetback)); + + getRidOfTemp(); + getRidOfTempText(); + getRidOfTempCharset(); + restoreReels(); + data.byte(kManisoffscreen) = 0; + redrawMainScrn(); + workToScreenM(); +} } // End of namespace DreamGen |