Ticket #4769: cursor.diff

File cursor.diff, 1.2 KB (added by Kirben, 14 years ago)

Solution

  • engines/scumm/he/wiz_he.cpp

     
    358358
    359359void Wiz::writeColor(uint8 *dstPtr, int dstType, uint16 color) {
    360360        switch (dstType) {
     361        case kDstCursor:
    361362        case kDstScreen:
    362363                WRITE_UINT16(dstPtr, color);
    363364                break;
    364365        case kDstMemory:
    365366        case kDstResource:
    366                 WRITE_UINT16(dstPtr, color);
     367                WRITE_LE_UINT16(dstPtr, color);
    367368                break;
    368369        default:
    369370                error("writeColor: Unknown dstType %d", dstType);
     
    15191520                cw = width;
    15201521                ch = height;
    15211522                dstPitch = cw * _vm->_bytesPerPixel;
    1522                 dstType = kDstMemory;
     1523                dstType = (_cursorImage) ? kDstCursor : kDstMemory;
    15231524        } else {
    15241525                if (dstResNum) {
    15251526                        uint8 *dstPtr = _vm->getResourceAddress(rtImage, dstResNum);
  • engines/scumm/he/wiz_he.h

     
    145145enum DstSurface {
    146146        kDstScreen   = 0,
    147147        kDstMemory   = 1,
    148         kDstResource = 2
     148        kDstResource = 2,
     149        kDstCursor = 3
    149150};
    150151
    151152class ScummEngine_v71he;