にしのクエスト2

情報処理技術者試験と資格学校講師の日常

20240615101703

Unityで学ぶプログラミング  テトリス的を作る(8)左右の移動

こんにちは!

今回からテトリス的なものを作っていきます。長い連載にな
りますので、気長にお付き合いください。

なお、プログラムの内容は難しいので、初心者には向きませ
ん。いきなり作るのは厳しいのでよろしくお願いします。
また、説明も大幅に省いていきます。

最後に注意事項
ご紹介するのはあくまで「テトリス的」です。そのものでは
ありませんし、非常にシンプルに遊べるだけのものです。

連載終了後に、より詳しい技術的な解説&追加機能を加えた
電子書籍を発行する予定ですので、よろしくお願いします。


今回は左右の移動をします

今回はちょっとだけです(笑

//時間の加算
delta += Time.deltaTime;
 
//時間経過後
if(delta>=span){
//自然移動下に行けるかチェックして
if(ChkBlk(x,y+1)==0){
//重なってないなら移動
MoveBlk(x,y+1);
delta=0;
}
//右を押した場合
if(Input.GetKey(KeyCode.RightArrow)&&ChkBlk(x-1,y)!=1){
//重なってないなら移動
MoveBlk(x-1,y);
}
//左を押した場合
if(Input.GetKey(KeyCode.LeftArrow)&&ChkBlk(x+1,y)!=1){
//重なってないなら移動
MoveBlk(x+1,y);
}
}

前回のIF分の後ろに追加していきます。
ボタンを押したのと、チェックをクリアしていれば
移動できるようになります。

壁にめり込むこともないはずです。

しかし、着地したらもう何も起こらない感じになります!

f:id:koharuwest:20210123113451p:plain


次回は、ブロックを次々と降らせる!

 

f:id:koharuwest:20210117110657p:plain


それではよきプログラミングライフを!
またね。