現在、アクションゲームを作成しているのですが、
どうしても解決できないので質問させて下さい。
LoadDivGraph関数で画像を分割して読み込みますよね?
例えば、Image[0]に1枚目の画像を。
Image[1]に2枚目の画像を読み込むとします。
このとき、画面にはImage[0]、つまり1枚目の画像が表示されています。
そして、CheckHitKey関数でzキーが押されたら、Image[1]、つまり2枚目の画像に更新したいのですが、
自分がプログラミングすると、
Image[0],Image[1]、この2枚の画像が重なって表示されてしまいます。
(どちらも透過処理をしている為、ひとつの範囲に二人のキャラ画像が重なって表示されて見えてしまいます)。
なんとか、Image[0]→Image[1]と移行するように画像を処理することはできませんでしょうか?
void Func( void )
{
LoadDivGraph("ファイル名.png", 16, 4, 4, 64, 64, Image );
DrawGraph( x, y, Image[0] , TRUE );
// 上下左右のキー入力に対応して x, y の座標値を更新する
if( CheckHitKey( KEY_INPUT_LEFT ) == 1 ) x -= 4 ;
if( CheckHitKey( KEY_INPUT_RIGHT ) == 1 ) x += 4 ;
if( CheckHitKey( KEY_INPUT_UP ) == 1 ) y -= 4 ;
if( CheckHitKey( KEY_INPUT_DOWN ) == 1 ) y += 4 ;
if( CheckHitKey( KEY_INPUT_Z ) == 1 )
DrawGraph( x, y, Image[1] , TRUE );
}
上記が問題の箇所のコードになります。