-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathheroi.cpp
35 lines (31 loc) · 1.1 KB
/
heroi.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include "heroi.h"
CHeroi::CHeroi()
{
direcao = DIRECAO_BAIXO;
for (int direcao = 0; direcao < NUM_DIRECOES; direcao++)
for (int posicao = 0; posicao < FRAMES_POR_DIRECAO; posicao++)
imagem[direcao][posicao] = create_bitmap(FRAME_WIDTH, FRAME_HEIGHT);
}
CHeroi::~CHeroi()
{
for (int direcao = 0; direcao < NUM_DIRECOES; direcao++)
for (int posicao = 0; posicao < FRAMES_POR_DIRECAO; posicao++)
destroy_bitmap(imagem[direcao][posicao]);
}
void CHeroi::CarregarBitmaps(char *arquivoImagem)
{
BITMAP *charset = load_bitmap(arquivoImagem, NULL);
for (int direcao = 0; direcao < NUM_DIRECOES; direcao++)
for (int posicao = 0; posicao < FRAMES_POR_DIRECAO; posicao++)
blit(charset, imagem[direcao][posicao], posicao * FRAME_WIDTH, direcao * FRAME_HEIGHT, 0, 0, FRAME_WIDTH, FRAME_HEIGHT);
}
BITMAP* CHeroi::getImagem()
{
int posicaoAtual = (*hClock / 15) % 2;
/*
int posicaoAtual = (*hClock / 15) % 4;
if (posicaoAtual == 3)
posicaoAtual = 1;
*/
return imagem[direcao][posicaoAtual];
}