Show
Ignore:
Timestamp:
12/18/09 20:41:38 (2 years ago)
Author:
Thibaut GIRKA <thib@…>
Branch:
default
Message:
Replaced SATURATE -> ADD, implemented objComposite, corrected minor things
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • scn2k/scn2k_grpimpl.cc

    r56 r60  
    157157 
    158158void Grp::impl_recCopy(Cmd& cmd) { 
     159        //TODO: Handle forms 0 and 1 
    159160        int sx = cmd.args[0].value; 
    160161        int sy = cmd.args[1].value; 
     
    174175                cmd.cmd_type = CMD_SAVECMDGRP; 
    175176        } 
    176  
    177177        else if (cmd.cmd4 == 3) { // alpha ぀きcopy 
    178178                unsigned char alpha; 
     
    193193 
    194194void Grp::impl_recAdd(Cmd& cmd) { 
    195         if (cmd.cmd4 == 3) { // saturate mode で alpha 付き copy 
     195        if (cmd.cmd4 == 3) { // add mode で alpha 付き copy 
    196196                int sx = cmd.args[0].value; 
    197197                int sy = cmd.args[1].value; 
     
    207207                else if (cmd.args[8].value > 255) alpha = 255; 
    208208                else alpha = cmd.args[8].value; 
    209                 eprintf("copy surface w/ saturate %d:(%d,%d) size(%d,%d) -> %d:(%d,%d)\n",src,sx,sy,w,h,dest,dx,dy); 
     209                eprintf("copy surface w/ add %d:(%d,%d) size(%d,%d) -> %d:(%d,%d)\n",src,sx,sy,w,h,dest,dx,dy); 
    210210                if (src == dest) { 
    211211                        DSurfaceMove(Ssurface(src), rect, Dsurface(WORKPDT), rect); 
     
    213213                } 
    214214                if (alpha != 0) { 
    215                         // saturate mode : screen (picture) を䞀時的に䜜成 
     215                        // add mode : screen (picture) を䞀時的に䜜成 
    216216                        PicBase* screen_tmp = parent.create_leaf(Rect(0, 0, parent.Width(), parent.Height()), 0); 
    217                         screen_tmp->SetSurface(Ssurface(src), 0, 0, PicBase::BLIT_SATURATE); 
     217                        screen_tmp->SetSurface(Ssurface(src), 0, 0, PicBase::BLIT_ADD); 
    218218                        screen_tmp->SetSurfaceRect(rect); 
    219219                        screen_tmp->Move(dx, dy); 
     
    351351 
    352352        if (cmd.cmd3 == 1000) { /* ファむル名蚭定 */ 
    353                 g->gtype = GrpObj::FILE; //FIXME: Strange thing in the main menu; that happens with objComposite 
     353                g->gtype = GrpObj::FILE; 
    354354                string name = cmd.Str(cmd.args[base_argc + 1]); 
    355355                if (name.find('?') != -1) {//TODO 
     
    519519        int base_arg = 0; 
    520520        GrpObj* g = GetGraphicObjVarMode(cmd, base_arg, (cmd.cmd2 == 0x51)); 
    521  
    522521        if (cmd.args[base_arg + 1].value == 1) { 
    523                 g->attr = GrpObj::Attribute(g->attr | GrpObj::SATURATE); 
     522                g->attr = GrpObj::Attribute(g->attr | GrpObj::BLIT_ADD); 
    524523                cmd.clear(); 
    525524        } else if (cmd.args[base_arg + 1].value == 0) { 
    526                 g->attr = GrpObj::Attribute(g->attr & (~GrpObj::SATURATE)); 
     525                g->attr = GrpObj::Attribute(g->attr & (~GrpObj::BLIT_ADD)); 
    527526                cmd.clear(); 
    528527        } 
     
    768767        } 
    769768} 
     769