メニュー
料理レシピ フリーソフト配布 野田工房ブログ 音楽♪ 特別研究 ゲームセンター 野田工房掲示板 野田工房とは? リンク HPの歴史 野田工房どっとねっと

HSP講座(7)

 

ボールの跳ね返り

 HSPでは、アクション系のプログラムも簡単に作成できます。
今回は、画面内でボールが跳ね返るプログラムを作成してみましょう。

※アクション系・・・シューティング、ブロック崩し・・など












*mainlp


















title "ボールの跳ね返り"

randomize ;乱数の初期化
bsize=15 ;ボールのサイズ
d=2 ;増分の絶対値
dx=d:dy=d

;乱数で初期位置を設定
rnd x,(winx-bsize):x=x+1
rnd y,(winy-bsize):y=y+1


redraw 0
;前に描画したボールを白色で消去
pos x,y:color 255,255,255:mes "●"

if x<0 :dx=d
if x>(winx-bsize):dx=-d

if y<0 :dy=d
if y>(winy-bsize):dy=-d

x=x+dx
y=y+dy

;新しい位置にボールを黒で描画
pos x,y:color 0,0,0:mes "●"
redraw 1
wait 1
goto *mainlp

ball_bound.as


ポイント

 「rnd」関数は、0〜オペランドまでの数を乱数で発生させるものです。
「randomize」を最初に書いておかないと、毎回同じ乱数しか発生しないので忘れないようにしましょう。

 「color」命令は、色をRGBで指定できます。RはRed、GはGreen、BはBlueで、0〜255で指定します。
例えば、(0,0,0)は黒、(255,255,255)は白、(255,0,0)は赤、(0,255,0)は緑、(0,0,255)は青、(255,0,255)は紫になります。

 「redraw」は、画面の描画を止めたり、反映させたりするのに使います。
今回は、余り効果がありませんが、たくさん描画しないといけないときはちらつきをぐっと抑えることができます。


 実行させると、画面内をボールが跳ね返ります。
d(増分の絶対値)やwait(awaitでもよい)の時間などを変更することによって、お好みのスピードで動かせます。
 ボールの大きさは「font」命令、色は「color」命令で変えることができます。


前に戻る 次へ進む