[過去ログ] ●初心者歓迎 スレを立てる前にここで質問を (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