diff options
author | Paul Gilbert | 2012-03-05 21:43:22 +1100 |
---|---|---|
committer | Strangerke | 2012-04-06 08:22:43 +0200 |
commit | 83c32aeb2ab4b91a42d5be08dbbd48e78d69b148 (patch) | |
tree | c4f77b50467752f5007b4b708fc8eaa86bb61664 | |
parent | d5c02ab69c482523dbce82007385363cc8da142c (diff) | |
download | scummvm-rg350-83c32aeb2ab4b91a42d5be08dbbd48e78d69b148.tar.gz scummvm-rg350-83c32aeb2ab4b91a42d5be08dbbd48e78d69b148.tar.bz2 scummvm-rg350-83c32aeb2ab4b91a42d5be08dbbd48e78d69b148.zip |
MORTEVIELLE: Bugfixes for correctly displaying people present in a room
-rw-r--r-- | engines/mortevielle/actions.cpp | 4 | ||||
-rw-r--r-- | engines/mortevielle/mor.cpp | 42 | ||||
-rw-r--r-- | engines/mortevielle/mor.h | 2 | ||||
-rw-r--r-- | engines/mortevielle/mor2.cpp | 2 | ||||
-rw-r--r-- | engines/mortevielle/prog.cpp | 2 |
5 files changed, 26 insertions, 26 deletions
diff --git a/engines/mortevielle/actions.cpp b/engines/mortevielle/actions.cpp index 22c12d6a67..01dd5b4665 100644 --- a/engines/mortevielle/actions.cpp +++ b/engines/mortevielle/actions.cpp @@ -709,7 +709,7 @@ void fctPlace() { tinke(); drawClock(); if (g_ipers != 0) - affper(g_ipers); + showPeoplePresent(g_ipers); else person(); @@ -1523,7 +1523,7 @@ void fctDiscuss() { hirs(); dessine_rouleau(); showMouse(); - affper(g_ipers); + showPeoplePresent(g_ipers); tinke(); drawClock(); affrep(); diff --git a/engines/mortevielle/mor.cpp b/engines/mortevielle/mor.cpp index 82d0ef1979..e2a7facfcf 100644 --- a/engines/mortevielle/mor.cpp +++ b/engines/mortevielle/mor.cpp @@ -247,12 +247,7 @@ void clsf10() { g_vm->_screenSurface.putxy(co, 92); g_vm->_screenSurface.writeg(st, 4); - if (g_res == 1) - co = 620; - else - co = 584; - - g_vm->_screenSurface.fillRect(15, Common::Rect(560, 24, co, 86)); + g_vm->_screenSurface.fillRect(15, Common::Rect(560, 24, 610, 86)); /* rempli(69,12,32,5,255);*/ showMouse(); } @@ -412,49 +407,54 @@ void t5(int cx) { g_bh9 = false; } -void affper(int per) { +/** + * Engine function - Show the people present in the given room + * @remarks Originally called 'affper' + */ +void showPeoplePresent(int per) { int cx; + int xp = 580 - (g_vm->_screenSurface.getStringWidth("LEO") / 2); for (cx = 1; cx <= 8; ++cx) g_vm->_menu.disableMenuItem(g_vm->_menu._discussMenu[cx]); clsf10(); if ((per & 128) == 128) { - g_vm->_screenSurface.putxy(560, 24); + g_vm->_screenSurface.putxy(xp, 24); g_vm->_screenSurface.writeg("LEO", 4); g_vm->_menu.enableMenuItem(g_vm->_menu._discussMenu[1]); } if ((per & 64) == 64) { - g_vm->_screenSurface.putxy(560, 32); + g_vm->_screenSurface.putxy(xp, 32); g_vm->_screenSurface.writeg("PAT", 4); g_vm->_menu.enableMenuItem(g_vm->_menu._discussMenu[2]); } if ((per & 32) == 32) { - g_vm->_screenSurface.putxy(560, 40); + g_vm->_screenSurface.putxy(xp, 40); g_vm->_screenSurface.writeg("GUY", 4); g_vm->_menu.enableMenuItem(g_vm->_menu._discussMenu[3]); } if ((per & 16) == 16) { - g_vm->_screenSurface.putxy(560, 48); + g_vm->_screenSurface.putxy(xp, 48); g_vm->_screenSurface.writeg("EVA", 4); g_vm->_menu.enableMenuItem(g_vm->_menu._discussMenu[4]); } if ((per & 8) == 8) { - g_vm->_screenSurface.putxy(560, 56); + g_vm->_screenSurface.putxy(xp, 56); g_vm->_screenSurface.writeg("BOB", 4); g_vm->_menu.enableMenuItem(g_vm->_menu._discussMenu[5]); } if ((per & 4) == 4) { - g_vm->_screenSurface.putxy(560, 64); + g_vm->_screenSurface.putxy(xp, 64); g_vm->_screenSurface.writeg("LUC", 4); g_vm->_menu.enableMenuItem(g_vm->_menu._discussMenu[6]); } if ((per & 2) == 2) { - g_vm->_screenSurface.putxy(560, 72); + g_vm->_screenSurface.putxy(xp, 72); g_vm->_screenSurface.writeg("IDA", 4); g_vm->_menu.enableMenuItem(g_vm->_menu._discussMenu[7]); } if ((per & 1) == 1) { - g_vm->_screenSurface.putxy(560, 80); + g_vm->_screenSurface.putxy(xp, 80); g_vm->_screenSurface.writeg("MAX", 4); g_vm->_menu.enableMenuItem(g_vm->_menu._discussMenu[8]); } @@ -828,7 +828,7 @@ int setPresenceDiningRoom(int h) { } choix(min, max, retVal); } - affper(retVal); + showPeoplePresent(retVal); return retVal; } @@ -856,7 +856,7 @@ int setPresenceBureau(int h) { } choix(min, max, retVal); } - affper(retVal); + showPeoplePresent(retVal); return retVal; } @@ -867,7 +867,7 @@ int setPresenceBureau(int h) { */ int setPresenceKitchen() { int retVal = chlm(); - affper(retVal); + showPeoplePresent(retVal); return retVal; } @@ -893,7 +893,7 @@ int setPresenceLanding() { int retVal = 0; conv(rand, retVal); - affper(retVal); + showPeoplePresent(retVal); return retVal; } @@ -921,7 +921,7 @@ int setPresenceChapel(int h) { } choix(min, max, retVal); } - affper(retVal); + showPeoplePresent(retVal); return retVal; } @@ -965,7 +965,7 @@ void nouvp(int l, int &p) { p = 9; if (p != 9) - affper(p); + showPeoplePresent(p); } diff --git a/engines/mortevielle/mor.h b/engines/mortevielle/mor.h index 14172c74b8..514bd73d98 100644 --- a/engines/mortevielle/mor.h +++ b/engines/mortevielle/mor.h @@ -60,7 +60,7 @@ extern void conv(int x, int &y); extern void modobj(int m); extern void repon(int f, int m); extern void t5(int cx); -extern void affper(int per); +extern void showPeoplePresent(int per); extern void choix(int min, int max, int &per); extern void cpl1(int &p); extern void cpl2(int &p); diff --git a/engines/mortevielle/mor2.cpp b/engines/mortevielle/mor2.cpp index a35a4e9860..25793c817f 100644 --- a/engines/mortevielle/mor2.cpp +++ b/engines/mortevielle/mor2.cpp @@ -490,7 +490,7 @@ void t1sama() { //Entering manor st1sama(); } else if (!g_s._ipre) { //Is it your first time? g_ipers = 255; - affper(g_ipers); + showPeoplePresent(g_ipers); g_caff = 77; afdes(0); g_vm->_screenSurface.drawBox(223, 47, 155, 91, 15); diff --git a/engines/mortevielle/prog.cpp b/engines/mortevielle/prog.cpp index 078813b9a0..606b417cef 100644 --- a/engines/mortevielle/prog.cpp +++ b/engines/mortevielle/prog.cpp @@ -53,7 +53,7 @@ void changeGraphicalDevice(int newDevice) { tinke(); drawClock(); if (g_ipers != 0) - affper(g_ipers); + showPeoplePresent(g_ipers); else person(); clsf2(); |