【GameMaker:Studio2】ミニゲームを作るチュートリアル (Part.1)

# はじめに
この記事は シンプルなミニゲームを作りながら、GameMaker:Studio2の基本的な使い方を習得することを目的としています。

## 作成するゲーム
![game.png](https://qiita-image-store.s3.amazonaws.com/0/43772/21a31857-a963-5704-622d-c52855407ee5.png)
作成するのは動き回るオブジェクトをクリックするだけのシンプルなミニゲームです。

## 素材の場所
使用する素材は以下のリンクからダウンロードできます。
http://syun777.sakura.ne.jp/tmp/gms2/gms2_minigame.zip

# 作成手順
## プロジェクトの作成
Getting Started から 「New」を選びます
![001.png](https://qiita-image-store.s3.amazonaws.com/0/43772/abc1ec0e-b5b4-a69b-edd8-12aa48635e76.png)

Create New Project の種類は「Drag and Drop」を選びます
![002.png](https://qiita-image-store.s3.amazonaws.com/0/43772/72a20fd0-e46a-f1eb-b52e-cf6319e15a7c.png)

プロジェクト名は何ですが、とりあえず「MiniGame」とします
![003.png](https://qiita-image-store.s3.amazonaws.com/0/43772/c821d744-c960-cac7-e154-c10c2263c6bf.png)

## たこ焼きオブジェクトの作成
新しいプロジェクトを作成したら、Workspace の何もないところを右クリックして、「Resources > Create Object」を選びます。
![004.png](https://qiita-image-store.s3.amazonaws.com/0/43772/42746a47-60a2-8461-9ec4-44263f3117a8.png)

Objectが作られるので、Nameのところを "objTako" に変更して、＋のアイコンがあるところ（New Sprite） をクリックします。
![005.png](https://qiita-image-store.s3.amazonaws.com/0/43772/ec7a0732-fe25-c250-198a-928a10aa85c1.png)

Objectに紐づけする Sprite が作られるので、名前を "objTako" に変更して、「Import」をクリックします。
![006.png](https://qiita-image-store.s3.amazonaws.com/0/43772/f70b21bb-04e7-0ba9-26a4-32827056cd30.png)

あらかじめダウンロードしておいた、gms2_minigameフォルダに含まれる "tako.png" を選んで、「開く」を選びます。
![007.png](https://qiita-image-store.s3.amazonaws.com/0/43772/0b963ee9-08f4-a833-ac1b-707ce4c5c744.png)

「Spriteに取り込む画像を選ぶ処理はやり直しできないよ」とのメッセージが表示されますが、特に問題ないのでそのまま「Yes」を選びます
( "Don't show this message again" にチェックを入れると今後表示されなくなるので、チェックを入れることをおススメします)
![059.png](https://qiita-image-store.s3.amazonaws.com/0/43772/b1d85ace-3400-5465-4671-8c53efb8394e.png)

取り込んだたこ焼き画像が表示されます。
![009.png](https://qiita-image-store.s3.amazonaws.com/0/43772/edf36cb8-b6ea-6d3e-3477-6c9f2ec96a1b.png)

これでSpriteの準備ができたので、「objTako」のウィンドウに戻ります。
戻る方法はいくつかあります。好きな方法で「objTako」のウィンドウを表示してください。

▼1. Workspaceを上方向にスクロールする
Workspaceの何もないところをクリックして、Spaceキーを押しながらドラッグするとスクロールができます。
何もないところをクリックして…
![011.png](https://qiita-image-store.s3.amazonaws.com/0/43772/57e035bb-d7ef-9cc6-8b44-05a8852c4b81.png)

Spaceキーを押しながら、下にドラッグします。
![012.png](https://qiita-image-store.s3.amazonaws.com/0/43772/d0d9040d-c677-3305-7eb7-23037a429858.png)

▼2. 右下の履歴 (Recent Windows) から、Object: objTako を選択する
![010.png](https://qiita-image-store.s3.amazonaws.com/0/43772/341499bd-e7b7-e73d-179d-7da90924f381.png)

▼3. 右側のリソース一覧 (Resources) から、Objectsを開いて objTako をダブルクリックする
![013.png](https://qiita-image-store.s3.amazonaws.com/0/43772/e0128370-b272-0719-16ac-55f9a74afa31.png)

▼4. Workspaceの何もないところを右クリックしてジャンプする
Windows > Object: objTako を選択する
![014.png](https://qiita-image-store.s3.amazonaws.com/0/43772/1a8f085d-6546-6ab0-57f2-b1ed3cad049b.png)

Go To... > objTako を選択する
![015.png](https://qiita-image-store.s3.amazonaws.com/0/43772/ba15b484-0e74-08d1-f8b0-26ee25273c9d.png)

対象のリソース (or ウィンドウ) がどこにあるか分からなくなった場合は、これらのいずれかの手順で探すことができます。

続いて、objTako の動きをつけます。
動きのルールは「Event」で定義します。
Events を選び、「Add Event」を押します。
![016.png](https://qiita-image-store.s3.amazonaws.com/0/43772/820fff69-2cba-2d15-b1a3-74656e4bc625.png)

Eventの種類は「Create」を選びます。
![018.png](https://qiita-image-store.s3.amazonaws.com/0/43772/947dd327-a48f-3d47-01e0-d40820c3ef6f.png)
これはObjectが作られたときに実行されるものとなります。

Eventを作成するウィンドウが表示されますが、かなり大きなディスプレイを使っていない限りウィンドウの表示が見切れてしまっているはずです。
その場合は、ウィンドウの上部のバーをダブルクリックするとウィンドウが収まるようにスクロールしてくれます。
![019.png](https://qiita-image-store.s3.amazonaws.com/0/43772/23730e86-abe9-ae0f-c125-0594c09c042a.png)

もしくは、Workspaceの何もないところをクリックして、Spaceを押しながらドラッグするとスクロールすることができます。

このウィンドウの簡単な説明としては、各種アイコンをEvent内に配置して動きのルールを作ることになります。

まずはこのたこ焼きを落下させるための重力を設定します。
Toolboxの下にある検索ウィンドウに "move" と入力します。
すると、Movementという移動に関するアイコンが表示されます。
![020.png](https://qiita-image-store.s3.amazonaws.com/0/43772/92a6009c-7d09-415d-29e1-7f7c452bbe1b.png)

なお、これらイベントに配置するアイコンを、アクションアイコンと呼びます。

ここから下向きの矢印がある「Set Gravity Force (重力を設定する)」アクションアイコンをウィンドウの真ん中にドラッグ＆ドロップします。
![021.png](https://qiita-image-store.s3.amazonaws.com/0/43772/bf26f974-2ef0-5941-9c2e-d908fc8a0fc3.png)

すると、「Set Gravity Force」アクションアイコンがイベントリストに表示されます。
![022.png](https://qiita-image-store.s3.amazonaws.com/0/43772/25224753-5112-4dfa-ebc1-b10b33097c43.png)

Forceの値は「1」となっており、これでたこ焼きは出現したときに「重力：１」が設定されるようになります。
なお「Relative」にチェックを入れると、重力値をさらに足しこんでどんどん重力が大きくなります。
（ただし、初期値はゼロなので、ここではチェックを入れても入れなくても結果は同じです）

## Roomの作成と実行
では、このたこ焼きをゲーム画面に配置します。
Objectの配置は、Roomというリソースで行います。

Roomは初期状態ですでに作られています。
右側の「Resources」のRooms を開いて、「room0」をダブルクリックします。
![030.png](https://qiita-image-store.s3.amazonaws.com/0/43772/643f84dd-6d99-798c-b876-22d8c6929377.png)

これもディスプレイが大きい環境を想定しているのか、はみ出してしまっているので縮小しておきます。
![025.png](https://qiita-image-store.s3.amazonaws.com/0/43772/cf8c84bb-146c-44fa-dc87-4a4fbd1b50df.png)
Zoom Outアイコンを 2～3回ほどクリックすると画面に入りきるサイズになると思います。

そうしたら、右側の「Resources」から Objects を開いて 「objTako」をRoom内にドラッグ＆ドロップします。
![026.png](https://qiita-image-store.s3.amazonaws.com/0/43772/d9777bdb-60c3-7c81-7ebc-5c29b07f8bf1.png)

とりあえず4つ配置してみました。場所はRoom内の枠に収まっていれば、どこにおいても問題ありません。
![027.png](https://qiita-image-store.s3.amazonaws.com/0/43772/05c6e02f-bf61-79f0-23ae-503b8588dc8d.png)

では、実行してみます。
F5を押すか、左上の三角アイコン（▷）をクリックして実行します。
![028.png](https://qiita-image-store.s3.amazonaws.com/0/43772/f30d95ff-76b1-f067-e83d-b91ff2ca6836.png)

ビルドが開始するのでしばらく待ちます。
初回のビルドは何か色々やっているらしく、結構待たされる場合があります。
右上の「Building...」の表示がグルグル回っていればハングアップではないので待ちましょう。
![029.png](https://qiita-image-store.s3.amazonaws.com/0/43772/f8c34a33-0bec-fe8b-9522-2e8bae01ff50.png)
PCのスペックにもよりますが、私の低スペックのPCだと2分半かかることもありました。

ビルドが終わって実行されるとたこ焼きが落下して画面外に消えていきます。

次回に続く
→[【GameMaker:Studio2】ミニゲームを作るチュートリアル (Part.2)](https://qiita.com/2dgames_jp/items/845ab51687de5345345a)