[過去ログ] ●初心者歓迎 スレを立てる前にここで質問を (1001レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
976: 名前は開発中のものです。 [] 02/02/13 20:30 ID:fs2BrWUb(1/2) AAS
#include<stdio.h>
#include<gb.h>
void scroll(UBYTE);
void show();
char map[50][50]; /*マップ*/
UBYTE start_x=20,start_y=20; /*画面表示の開始点*/
void main()
{
UBYTE i,j;
for(i=0;i<50;i++){
for(j=0;j<50;j++){
map[i][j]='.'; /*マップを.で埋める*/
}
}
for(i=0;i<50;i+=10){
for(j=0;j<50;j+=10){
map[i][j]='#'; /*10マスごとに#*/
}
}
while(1){
show();
waitpad(0xff);
scroll(joypad());
}
}
977: 名前は開発中のものです。 [] 02/02/13 20:30 ID:fs2BrWUb(2/2) AAS
/*十字キーで画面表示の開始点を指定*/
void scroll(UBYTE key)
{
if(key&J_RIGHT){
if(start_x<=49-20){
start_x++; /*開始点を右移動*/
}
}
else if(key&J_LEFT){
if(start_x!=0){
start_x--; /*開始点を左移動*/
}
}
else if(key&J_DOWN){
if(start_y<=49-18){
start_y++; /*開始点を下移動*/
}
}
else if(key&J_UP){
if(start_y!=0){
start_y--; /*開始点を上移動*/
}
}
}
/*マップを画面に表示*/
void show()
{
UBYTE i,j;
printf(" ");
gotoxy(0,0); /*画面の左上から*/
for(i=0;i<18;i++){
for(j=0;j<20;j++){
printf("%c",map[start_y+i][start_x+j]);
} /*画面の範囲分表示*/
}
}
十字キーで画面がスクロールするはずなんだけど
どのキーを押しても画面が一瞬下にズレて元に戻るんよ
mainの中のscroll関数を抜いても動作は一緒なんよ
俺にはこれ以上どうにもできんで誰か教えて
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.029s