C/C++言語でRPGを作ってみるスレ3
■ このスレッドは過去ログ倉庫に格納されています
0795デフォルトの名無しさん
2006/06/21(水) 09:08:18マップの個々のセルを描画する段でキャラの移動を決めてたら、そりゃそうなるだろう。
普通はキャラの移動と描画を切り分けるか、最低でも移動後の位置に対して描画をかける。
VisiRPG.h の 74 行から、
int ii = i;
int jj = j;
で元の i と j を控えて、
移動のところで
if ( maptmp[i+1][j] == 0 ){
maptmp[i][j] = 0;
maptmp[i+1][j] = 52;
++ii;
}
みたいにしてやるx四方向分用意して、
if ( foot_step == TRUE )
BitBlt(BackHDC, jj * CHAR_SIZE - offset_x, ii * CHAR_SIZE - offset_y, CHAR_SIZE, CHAR_SIZE, hdc_mem, CHAR_SIZE * 4, 0, SRCCOPY);
else
BitBlt(BackHDC, jj * CHAR_SIZE - offset_x, ii * CHAR_SIZE - offset_y, CHAR_SIZE, CHAR_SIZE, hdc_mem, CHAR_SIZE * 5, 0, SRCCOPY);
これでOK。
■ このスレッドは過去ログ倉庫に格納されています