Ticket #8175: cmi-verb-coin.diff

File cmi-verb-coin.diff, 2.0 KB (added by eriktorbjorn, 21 years ago)

Patch against a February 18 CVS snapshot

  • scummvm/scumm/actor.cpp

    diff -ur ScummVM-cvs20030218/scummvm/scumm/actor.cpp ScummVM-cvs20030218+hack/scummvm/scumm/actor.cpp
    old new  
    868868        // Make a list of all actors in this room
    869869        for (i = 1; i < NUM_ACTORS; i++) {
    870870                a = derefActor(i);
     871                if ((_features & GF_AFTER_V8) && a->layer < 0)
     872                        continue;
    871873                if (a->isInCurrentRoom())
    872874                        actors[numactors++] = a;
    873875        }
     
    903905        delete [] actors;
    904906}
    905907
     908// Used in Scumm v8, to allow the verb coin to be drawn over the inventory
     909// chest. I'm assuming that draw order won't matter here.
     910void Scumm::processUpperActors()
     911{
     912        Actor *a;
     913        int i;
     914
     915        for (i = 1; i < NUM_ACTORS; i++) {
     916                a = derefActor(i);
     917                if (a->isInCurrentRoom() && a->costume && a->layer < 0) {
     918                        CHECK_HEAP getMaskFromBox(a->walkbox);
     919                        a->drawActorCostume();
     920                        CHECK_HEAP a->animateCostume();
     921                }
     922        }
     923}
     924
    906925void Actor::drawActorCostume()
    907926{
    908927        if (!needRedraw)
  • scummvm/scumm/scumm.h

    diff -ur ScummVM-cvs20030218/scummvm/scumm/scumm.h ScummVM-cvs20030218+hack/scummvm/scumm/scumm.h
    old new  
    673673        void setActorRedrawFlags(bool fg, bool bg);
    674674        void resetActorBgs();
    675675        void processActors();
     676        void processUpperActors();
    676677        int getActorFromPos(int x, int y);
    677678        void actorFollowCamera(int act);
    678679       
  • scummvm/scumm/scummvm.cpp

    diff -ur ScummVM-cvs20030218/scummvm/scumm/scummvm.cpp ScummVM-cvs20030218+hack/scummvm/scumm/scummvm.cpp
    old new  
    562562                }
    563563
    564564                drawBlastObjects();
     565                if (_features & GF_AFTER_V8)
     566                        processUpperActors();
    565567                drawBlastTexts();
    566568                drawDirtyScreenParts();
    567569                removeBlastObjects();