画像のスクロールと変更
Posted: 2012年1月04日(水) 19:51
アクションゲームとかでキャラクターに合わせて画面がスクロールさせる方法と例えば扉の前で上を押したりすると別の画面に切り替わるという方法がしりたいのですが教えてくれませんか。お願いします。
#define MAPTIP_SIZE 32
ViewX = PlayerX - 320;
ViewY = PlayerY - 240;
//※ViewXとViewYには下限と上限をつける必要があります
int sx = ViewX / MAPTIP_SIZE;
int sy = ViewY / MAPTIP_SIZE;
int amariX = ViewX % MAPTIP_SIZE; //移動量 = チップサイズとは限らないので
int amariY = ViewY % MAPTIP_SIZE; //チップサイズで割った余りを使う
int looptimeX = 20; //X方向に貼るチップの枚数
int looptimeY = 15; //Y方向に貼るチップの枚数
if( amariX == 0 ) looptimeX++; //表示位置がチップサイズで割り切れない場合は
if( amariY == 0 ) looptimeY++; //張らなければならないチップが1枚増える…?
for( int i = 0; i < looptimeX; i++ )
{
for( int j = 0; j < looptimeY; j++ )
{
//とりあえず描画にはDXライブラリを使用したり
DrawGraph( ( i * MAPTIP_SIZE ) - amariX,
( j * MAPTIP_SIZE ) - amariY,
graph[ map[i+sx][j+sy] ],
TRUE );
}
}