Defoldの使い方（インストール＆チュートリアル）

## まえがき。

インストールとチュートリアルの途中までの解説。
※随時アップデートします。なんか文句あれば書けば直すよ。

## インストール

http://www.defold.com/

### ココに行く。

### これをクリック。
画面が小さい![Screen Shot 2016-03-18 at 4.46.50 PM.png](https://qiita-image-store.s3.amazonaws.com/0/11951/685f24d8-9c2e-23d9-e79e-7b47a4983f7d.png)

### 下のGoogleアカウントでログイン。

### 右上から下から選ぶ。
<img width="1203" alt="Screen Shot 2016-03-18 at 4.52.27 PM.png" src="https://qiita-image-store.s3.amazonaws.com/0/11951/f10f8d46-410a-22f6-7400-67efd51533ee.png">

## まずここで、画面の見方見るのがいい。
http://qiita.com/miyatama/items/aa74b3f1d08e30af606a


# プラットフォームゲームの作り方の公式チュートリアル

http://dashboard.defold.com/projects/11408/tutorial/0

プラットフォームってマリオ的だが、ウィンドランナー的なやつ。

## 知っておく概念

## Emptyという名前でプロジェクトを作った場合こうなってた。

ちなみにプロジェクトのトップはこんな感じにDefoldの配置先の配下に追加されていくよだ。

`/Applications/Defold-macosx.cocoa.x86_64/branches/11408/7609/Empty`


## collectionという単位にいろんなcollectionをペタペタ載せる感じ？

## go（GameObject）を載せる

ショートカットは「I」
<img width="280" alt="Screen Shot 2016-03-25 at 8.34.30 AM.png" src="https://qiita-image-store.s3.amazonaws.com/0/11951/a6bed508-4e50-66bb-b8bf-32ec1a6c7d5f.png">


### Spriteの追加
"Add Component"という項目がある。

###  命名の仕方
idが相当
<img width="275" alt="Screen Shot 2016-03-21 at 4.16.29 PM.png" src="https://qiita-image-store.s3.amazonaws.com/0/11951/9361ff26-b584-1668-9946-b2285ecad740.png">


## 注意すること

### Atlasはすぐ保存

Default Animationの項目に何も出ないとハマる。

command + Sですぐ保存しないとダメ。

### "Add Component From File"という項目もあることに注意する。
ショートカットはShift+I

### "Add Collection From File"もある。
ショートカットはShift+O

ドキュメントは特にカッコ書きをしてないので、"Add Component"をしてからファイルから選択するのかと勘違いしそう。

### platform.scriptを忘れず

platform.scriptを作ったあとに`platform.go`に載せる説明がない。

### Colliderをつけること

説明もなくカエルの「hero」にColliderをつけている

platform.goやplatform_long.goにBox Shapeをつけている。

### コピペの注意

```lua:ground.script
function on_message(self, message_id, message, sender)
    if message_id == hash("set_speed") then 1
        self.speed = message.speed 2
    end
end
```

## メモ
<img width="1108" alt="Screen Shot 2016-03-21 at 4.16.55 PM.png" src="https://qiita-image-store.s3.amazonaws.com/0/11951/4cfac9fe-21ee-1e1b-f2f0-237857d7bb71.png">

GameObjectの追加も「I」
<img width="338" alt="Screen Shot 2016-03-21 at 4.16.22 PM.png" src="https://qiita-image-store.s3.amazonaws.com/0/11951/44b7d87e-dcc4-ec47-d78a-ba53bc0d61e1.png">

## 「STEP 5 - Refactoring the level」が意味がわからない

### Now, create a new folder alongside "main" and move all level assets to it.

おそらく、今までmainフォルダ内に作ってたものを"main"フォルダと同じく"level"フォルダを作成し、level系のアセットを持って行けと言っている？
<img width="261" alt="Screen Shot 2016-03-27 at 4.35.07 PM.png" src="https://qiita-image-store.s3.amazonaws.com/0/11951/023b0646-16c6-4407-56bc-2d900a1d8583.png">

おそらく"main.collection"以外全部かも？
後々のスクリーンショットではimagesやground.scriptも「level」フォルダに移動している。

### STEP 5のこのスクショで暗黙の了解でいつのまにオブジェクト置いてる

![script_property.png](https://qiita-image-store.s3.amazonaws.com/0/11951/0ada4db9-07b6-c759-c29d-93afc1977989.png)

heroはx:100 y:100くらいがいい。

### Open "main.collection" and replace "ground.collection" with "level.collection".

これは、"main.collection"でしれっと置いてた"ground.collection"のこと。

"level.collection"に置き換えろと。
<img width="276" alt="Screen Shot 2016-03-27 at 6.54.08 PM.png" src="https://qiita-image-store.s3.amazonaws.com/0/11951/0728620a-b87f-3a2b-b439-c1fadbec16e3.png">

やり方：ground.collectionを右クリックでDeleteして、Shift＋Oを押下する。

## 10の説明
Copy "platform.go" to a new file (right-click the file in the Project Explorer and select Copy, then right-click again and select Paste) and call the new file "platform_long.go".

一旦作った"platform.go"をコピペで"platform_long.go"と名付ける。

## factoryのプロパティは必須

`platform_factory`には`platform.go`
`platform_long_factory`には`platform_long.go`を設定。
書いてなくてビルド不可。
<img width="290" alt="Screen Shot 2016-03-27 at 6.28.17 PM.png" src="https://qiita-image-store.s3.amazonaws.com/0/11951/b9848be2-a71a-2b26-0d37-1dc91033d9a7.png">

## `play_animation()`メソッドについて

```
Open the "hero.script" file and add the following functions:
```
とあるが、一番下に追加してはならない。
`update()`メソッドの上に書かないと定義したとみなしてくれない。

## `update_animation()`メソッドについて

`update()`の中に書きます。
しかも忘れるとアニメーションが切り替わらないので忘れないようにしましょう。
`play_animation`の下で、`update`メソッドの上になります。

## いつの間にか生成されているフォルダ

最後の章「STEP 9 - COINS TO COLLECT」にて、いつの間にか`level`フォルダの中に`objects`フォルダが入っている。
その中にcoing.go等色々入ってるのでスクリーンショットで確認すること。

## ショートカット
Project ▸ Build and Launch

command + B