スポンサードリンク
« »


ブロック崩し⑤ 【HSP3】

2009 年 3 月 8 日 日曜日  【 カテゴリー: HSP3 , ゲーム作成


前回はボールとバーの当たり判定についてみました。今回はブロックを表示させていきます。ブロックとボールの当たり判定は次回予定ですので今回のプログラムではボールは素通りします。説明の為のソースはブロックの表示部分のみです。

●使用関数・命令
screen  boxf repeat cls if await  gosub
●全ソース
bb_sample02.txt

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
;***********************************************
;                     定数設定
;***********************************************
#define WINDOW_TITLE "ブロック崩し" ;windowタイトル
#define WINDOW_X_SIZE 300    ;window横幅
#define WINDOW_Y_SIZE 400    ;window縦幅

#define BLOCK_X_NUM 5        ;ブロック横の数
#define BLOCK_Y_NUM 5        ;ブロック縦の数
#define BLOCK_PADDING 3      ;ブロック間隔
#define BLOCK_WIDTH 50      ;ブロック横幅
#define BLOCK_HEIGHT 10      ;ブロック縦幅
#define BLOCK_START_X 17    ;ブロック開始X座標
#define BLOCK_START_Y 20     ;ブロック開始Y座標
;***********************************************
;             変数設定(デフォルト設定)
;***********************************************
;■windowの設定
screen 0,WINDOW_X_SIZE,WINDOW_Y_SIZE
title  WINDOW_TITLE

;■メイン処理
*main
    repeat
        cls
        gosub *block_judgment
        await 50
    loop
    stop
;■ブロック表示
*block_judgment
     color 0,0,255
     blockY = BLOCK_START_Y
     ;縦ループ(Y座標)
     repeat BLOCK_Y_NUM
         blockX = BLOCK_START_X
         ;横ループ(X座標)
         repeat BLOCK_X_NUM
             boxf blockX,blockY, blockX+BLOCK_WIDTH , blockY+BLOCK_HEIGHT
             blockX + = BLOCK_WIDTH + BLOCK_PADDING
         loop
         blockY + = BLOCK_HEIGHT + BLOCK_PADDING
     loop
return

 

2重のループなどがあり複雑にみえますが、ただ矩形表示を繰り返しているだけです。37行目で矩形を表示しています。

矩形の左上の座標を(blockX,blockY)と変数にしています。この変数の値を変えることによりブロックの表示位置を変えてます。ブロックの大きさは一定なので横幅をBLOCK_WIDTH、縦幅をBLOCK_HEIGHTと定数にしました。ですのでブロックの右下の座標は(blockX+BLOCK_WIDTH ,blockY+BLOCK_HEIGHT)となります。

 

38行目は次の横ブロックのX座標を計算しています。ブロックとブロックには隙間がありますので、次のブロックのX座標までは「ブロックの横幅+ブロックの隙間」の間隔があります。40行目は次の縦ブロックのY座標を計算しています。X座標と同様、次のブロックまでの間隔は「ブロックの縦幅+ブロックの隙間」になります。34行目は縦座標が変わったらX座標の位置を左端のブロックにしています。
 


にほんブログ村 IT技術ブログ Webサイト構築へ
にほんブログ村
【WEBサイト構築・プログラムブログ】
ランキング参加中!よろしければ「クリック」お願いします。
にほんブログ村 IT技術ブログ プログラム・プログラマへ
にほんブログ村
2009 年 3 月 8 日 日曜日  【 カテゴリー: HSP3 , ゲーム作成

コメントをどうぞ

※管理者による確認後に表示されます。表示までしばらくお待ちください。





デジもの通販