PhysicsHandler クラスが原因で Luxe が予期せず終了するようですが、その理由がわかりません。
クラス変数を宣言するまではすべて正常に動作しますが、その時点でロード後数秒でクラッシュします。奇妙なのは、クラス変数を宣言して正常に動作する別のクラス (InputHandler) があることです。これが私のコード (どういうわけか...)、Luxe、または Flow の問題なのかわかりません。
メインクラス:
import luxe.Input;
import luxe.Parcel;
import luxe.ParcelProgress;
import InputHandler;
import PhysicsHandler;
import Player;
enum GAME_STATE
{
play;
pause;
}
class Main extends luxe.Game {
var INPUT_HANDLER: InputHandler;
override function ready() {
var assetsParcel = new Parcel
({
textures:
[
{ id:"assets/block.png" },
{ id:"assets/background.png" }
]
});
new ParcelProgress
({
parcel : assetsParcel,
oncomplete : onAssetsLoaded
});
assetsParcel.load();
INPUT_HANDLER = new InputHandler();
INPUT_HANDLER.GameState = GAME_STATE.play;
}
private function onAssetsLoaded(_)
{
var player = new Player();
INPUT_HANDLER.setPlayerEntity(player);
}
override function update(dt:Float) {
INPUT_HANDLER.update();
}
}
InputHandler クラス:
import luxe.Input;
import luxe.Entity;
import Main;
class InputHandler
{
public var GameState: EnumValue;
private var player: Entity;
// functions, etc. below here...
}
PhysicsHandler クラス (トラブルメーカー...):
import Main;
class PhysicsHandler
{
public var GameState: EnumValue;
}
ゲームを何らかの形でクラッシュさせるのに必要なのはこれだけです。ご覧のとおり、まだ PhysicsHandler クラスをインスタンス化しておらず、インポートしているだけです。