$preloadコマンド

画像などを起動時に読み込み。
スクリプトよりも前のpreload state中に読み込む。
変更したい場合はプロジェクト側でstate/preload.coffeeを作って変更。
「スクリプト中に書いた$preloadは起動時に全部先読み」がデフォルト動作。
実行途中に読み込むサブコマンド($preload ???)は必要なら作るかもしれない。
```
$preload
  type: "image"
```
typeで画像・オーディオ・スプライトシートを指定。
省略形は+。+type名で書く。
書き方はPhaserのasset pack。
```yaml
+image
  id: "image1"
  url: "image1.png"

#audioはurls。
#-は配列の記号。urls: ["audio1.ogg", "audio1.m4a"]の書き方でもいい。
#好きなオーディオフォーマット使えるように拡張子まで含めて指定。
#対応してるのはブラウザで再生できるならなんでも。ただしブラウザ毎に対応ファイルが違うというひどい状態。
#ogg+m4aの2つ用意しておくのが現状では一番良さそう。
#mp3なら一つで大体対応してるけどライセンス的に問題あり。
+audio
  id: "auido1"
  urls:
    - "audio1.ogg"
    - "audio1.m4a"

#texture atlas
#Phaserではarrayとhashがあるけどhash形式を使う。ShoeBoxでSprite Sheet作った時のjsonファイルがhashになってるので。
+atlas
  id: "atlas1"
  url: "atlas1.png"
  json: "atlas1.json"

#PhaserでのSprite Sheet=同じサイズの画像を横に並べた画像。jsonはなしで画像一つ当たりのwidthとheightを指定する。
+spritesheet
  id: "sprite1"
  url: "sprite1.png"
  frameWidth: 80
  frameHeight: 80
```
書く場所はどこでもいいけど必要になるスクリプトファイルごとに分けるのが推奨。
分けておくと体験版みたいなものが作りやすい。
demo.txtに体験版用のスクリプトリストを書いてgulp demoでビルドすれば
必要なファイルのみがビルドされる。
ビルド先がwwwで同じなのが面倒になりそうだけどcordovaの仕様なのでwww固定。
いい方法があれば変更。

## あとで戻す
travisでだけtestが失敗してたけどionicが原因だったっぽい。
現時点のionic-angular.min.jsだと失敗。
ionic-angular.jsだとOK。
nightly版なのでこういうこともある。