ページ 11

s2. サウンドノベル風文字列表示法1

Posted: 2009年8月08日(土) 02:05
by kamiya
ゲームプログラミングの館のs2. サウンドノベル風文字列表示法1の
for(j=0;j<256;j++){
    if(oldKey[j]==0 && Key[j]==1)
    Key[j]=2;
    oldKey[j]=Key[j];
                }

の部分の処理がよく分かりません。
このfor文は一体何のための処理なんでしょうか?
抽象的過ぎる質問だとは思うのですがさっぱりなので…

Re:s2. サウンドノベル風文字列表示法1

Posted: 2009年8月08日(土) 02:32
by sizuma
for(j=0;j<256;j++){
         if(oldKey[j]==0 && Key[j]==1)Key[j]=2;
         oldKey[j]=Key[j];
}

こうしないと確かにインデントが見にくいですね。
ソースのコメントにあるように

//前回押されてなくて、今回押されていたら
コレを判断します。

oldKeyは1フレーム前のキーの状態
Keyは現在のフレームのキーの状態です。
前回押されてなくて、今回押されてる時には値を2に変えています。
そして現在のフレームの状態を次のフレームで使うためにoldKeyに格納しています。

Re:s2. サウンドノベル風文字列表示法1

Posted: 2009年8月08日(土) 02:40
by kamiya
早速のご回答ありがとうございました。
とてもわかりやすかったです。