Ticket #2690: flashlight_v2.diff

File flashlight_v2.diff, 1.0 KB (added by Kirben, 18 years ago)

Alternative patch

  • engines/scumm/intern.h

     
    5959public:
    6060        ScummEngine_v5(OSystem *syst, const DetectorResult &dr);
    6161
     62        void clearFlashlight();
    6263protected:
    6364        virtual void setupOpcodes();
    6465        virtual void executeOpcode(byte i);
  • engines/scumm/gfx.cpp

     
    789789                        val = +1;
    790790                        redrawBGStrip(0, 1);
    791791                } else if (_fullRedraw || diff != 0) {
     792                        if (_game.version <= 5) {
     793                                ((ScummEngine_v5 *)this)->clearFlashlight();
     794                        }
    792795                        _bgNeedsRedraw = false;
    793796                        redrawBGStrip(0, gdi._numStrips);
    794797                }
     
    10891092        }
    10901093}
    10911094
     1095void ScummEngine_v5::clearFlashlight() {
     1096        _flashlight.isDrawn = false;
     1097        _flashlight.buffer = NULL;
     1098}
     1099
    10921100void ScummEngine_v5::drawFlashlight() {
    10931101        int i, j, x, y;
    10941102        VirtScreen *vs = &virtscr[kMainVirtScreen];