segunda-feira, 15 de agosto de 2011

AULA 5 - SCROLLING - "CÂMERA"

ao invés de fazer um scroling básico eu criei uma tread câmera que se posiciona dinamicamente entre o personagem principal e o mouse

void *CAM(void *id){
///////////not whiled///inicialise
int waim = (run[1]->w/2);
int haim = (run[1]->h/2);
int cposx=posx;
int cposy=posy;
int cbalacont;
int cbalaMost;
/// end inicialise
//////////whiled
while(CAMon){
    cout << "CAMon: ";
    cbalaMost =balaMost;
if(CAMnorm){
    cposx=posx;
    cposy=posy;

    clear(backbuffer);

    camx=(cposx*2+camx+mouse_x)/3-screen->w/2;
    camy=(cposy*2+camy+mouse_y)/3-screen->h/2;

    if(camx<0){
        camx=0;
    }


}
    draw_sprite(backbuffer,fundo,0/4,0);
    draw_sprite(backbuffer,frente,0-camx,0-camy);

    cbalacont=0;
    while(balaMost>=cbalacont){
     if (!tiroteio[cbalacont].hit){
          draw_sprite(backbuffer,run[3],tiroteio[cbalacont].px-camx-run[3]->w/2,tiroteio[cbalacont].py-camy-run[3]->h/2);
     }
     cbalacont++;
     }
    draw_sprite(backbuffer,run[1],mouse_x-waim,mouse_y-haim);
    if(  objpx > posx){
        dir=false;
    }else{
        dir=true;
    }
    if(dir == false)
        draw_sprite_h_flip(backbuffer,run[0],cposx-camx,cposy-camy);
    if(dir == true)
        draw_sprite(backbuffer,run[0],cposx-camx,cposy-camy);

    draw_sprite(screen,backbuffer,0,0);
    objpx= camx+mouse_x;
    objpy= camy+mouse_y;
}
cout << "CAMoff:";
 pthread_exit(NULL);
}

Nenhum comentário:

Postar um comentário