2016-04-29 4 views
0

ゲームを正しい場所、onDeviceReady内で実行するのに役立つ必要があります。ここで私のゲームのフォーマットはどうなっていますか?私はそれを変えなければゲームはうまくいくとは思わない。主に私はどのように変数をスコープして、変数を設定した後にそれらを設定するかについてはわかりません。どうもありがとうございます。Cocoonでdevicereadyの後で実行するために私のソースを再配線する方法は?

var cocoon_active = typeof(Cocoon) === 'object' 
var one, two, three; // ... 

document.addEventListener("deviceready", onDeviceReady, false); 

function onDeviceReady() { 
    if (cocoon_active) { 
    // ... 
    } 
    // FIXME CANVAS+ CODE RUNS HERE 
} 

window.onload = function() { 
    game = new Phaser.Game(game_width, game_height, Phaser.AUTO, ''); 
    game.state.add("play_game", play); 
    game.state.start("play_game"); 
} 

var play = function(game){} 
play.prototype = { 
    preload: function() {}, 
    create: function() {}, 
    update: function() {}, 
    render: function() {} 
} // end prototype 

function a() {} 

function b() {} 

function c() {} // ... 

答えて

0

あなたはゲームがうまく実行されないと思いますか、またはあなたが実際にエラーまたは黒い画面を得るのですか? CocoonJSランチャーアプリで試してみると、コンソールにエラーメッセージが表示されますか?

CocoonJSを起動する前にコードを追加した方法は、in my gameのようでした。私は別のスクリプトに以下のコードのようなものを追加し、そのメインのindex.htmlでソースとして含ま:

(function (cocoonjsphaser) { 

    cocoonjsphaser.utils = { 
     runthisfunction: function() { 
      // this code will execute when Cocoon starts 
     } 
    }; 
    // etc. 
}(window.cocoonjsphaser = window.cocoonjsphaser || {})); 

if (navigator.isCocoonJS) { 

    // run some code at startup 
    cocoonjsphaser.utils.runthisfunction(); 
} 

をそして私は、メインindex.html

<body> 
<script> 
(function() { 
    // initialize the framework 
    var game = new Phaser.Game(640, 960, Phaser.AUTO, ''); 
    // add game states 
    game.state.add("play_game", play); 
    // game.state.add("level_select", levelselect); 
    // game.state.add("main_menu", mainmenu); //etc. 
    // start a state 
    game.state.start("play_game"); 
})(); 
</script> 
</body> 
<body>内フェーザーのスタートアップコードを追加しました
関連する問題