GameMakerStudioを用いたゲーム制作講座その4 「原住民死亡」

前回の講座で原住民が画面内を動き回るようになった。今回はクリックで原住民を殺せるようにするやで。

クリックイベントを設定

まずobj_genjuuminでAdd Event→Mouse→Left pressedを選択するんや。そして前回・前々回やったようにcontrolタブからExecute Codeをドラッグ&ドロップする。そしてこのように記述するやで。

「instance_destroy()」は自身を消す関数や。それを「Mouse」の「Left pressed」イベントで呼び出したということは原住民を左クリックしたら消えるように設定したということや。試しに実行して、原住民をクリックしてみて欲しい。原住民が消えたら成功や。

血しぶきの設定

原住民が消えると同時に血しぶきが舞うようにするで。まず、血のオブジェクトを作る。この時血は赤い円で表現するんやけど、この程度ならSprite機能を使う必要がない。今からそのやり方を紹介するやで。

まず、「obj_blood」を作り、Createイベントにこのように

「direction」と「speed」の意味はすでに知っているはず。「gravity」は「重力」という意味で、この値が大きいほど強い重力がかかる。(通常この値は1未満で十分や)そしてDrawイベントにこのように記述する。

「draw_set_color(color)」はかっこ内の色に描画色を変更する関数で、「c_red」は赤を示している。その後の「draw_circle(x,y,r,outline)」はx,yを中心に、半径rの円を描画色(ここでは赤)で描く関数や。ちなみに「outline」は0のとき中身が塗りつぶされていて、1の時塗りつぶされていないといった具合やで。後、上の画像で使われている「;」の記号は(とりあえずここでは)特に意味のないものやから無視してええで。最後にOtherイベントのOutside Roomイベントにこう記述するんや。

Outside Roomイベントは画面外(厳密にはRoomとして設定した範囲の外)にオブジェクトが出ていった時に呼び出されるイベントで、ここでは血しぶきが画面外に出ていったら消えるように設定しているやで。

これで血しぶきの設定は完了や。

原住民死亡時に血しぶきを生成

今度は原住民に「Destroy」イベント(原住民が消えた時に呼び出されるイベント)を追加して、このように記述するんや。

「repeat(回数)」は指定した回数だけ直後の文を繰り返す文法や。そして「instance_create(x,y,object_index)」はかっこ内のx,yの位置にobject_indexで指定したオブジェクト(ここではobj_blood)を作る関数や。血しぶきは原住民の中心から吹き出てほしいからx+32,y+32という指定をしたやで。ここまで出来たら実行して見るんや。

こんな感じで血しぶきが出てきたら成功やで。

今回はここまで。質問等あったらコメントしてや。




  • コメント

    1. 匿名 より:

      原住民かわいそう