phinaの基本テンプレート
// グローバルに展開
phina.globalize();
// メインシーン
phina.define("MainScene", {
// 継承
superClass: 'DisplayScene',
//初期化
init: function (option) {
//親クラス初期化
this.superInit(option);
//
},
//毎フレーム更新処理
update: function () {
//以下にコードを書いていく
},
});
//メイン処理
phina.main(function () {
// アプリケーションを生成
var app = GameApp({
// MainSceneから開始
startLabel: 'main',
});
//実行
app.run();
});
▷グローバル化
phina.globalize();
phina.○○.クラス名をクラス名だけで書けるようになる。
例) phina.game.GameApp を GameApp だけで書ける。
ただし、phina.globalizeで定義されている識別子(GameAppなどの短縮された名前)が他の変数名や関数名と衝突(かぶった時)に正しく動かない。
▷define
phina.define("MainScene", {
phina.defineはクラス(たこ焼きの型)を作る関数(MainSceneクラスを作る) phina.js仕様
▷継承
superClass: 'DisplayScene',
DisplaySceneのプロパティやメソッド(機能的なイメージ)を全て継承(MainSceneに持ってきてと指示するイメージ)
▷初期化
//初期化
init: function (option) {
//親クラス初期化
this.superInit(option);
},
initとはMainSceneのコンストラクタ
ここではoption(引数)を受け取ってthis.superInitに渡す
superInitは継承元のクラス(DispleyScene)のinit関数をコール(DispleySceneを初期化)
▷アプリケーションを生成
var app = GameApp({
GameAppクラス(たこやき型)からインスタンス(たこやき)を作って変数appに入れている(phina.js仕様)
▷startLabel
startLabel: 'main',
MainSceneから開始
ラベルでmainはMainSceneを指す(phina.js仕様)