2012-04-02 7 views
2

一般的な質問:Haxeのif文の条件としてオブジェクトの存在を使用できますか?もしそうなら、どうですか?Haxeのif文にオブジェクトの存在を使用する

特定の質問:私はHaxeゲームの開発を学んでおり、HaxePunkゲームライブラリ/フレームワーク/エンジンを使用しています。それを使用することに関するチュートリアルはあまりありませんが、FlashPunk(それが基づいているActionScriptのゲームライブラリ/エンジン/フレームワーク)チュートリアルに従うだけで十分です。しかし、HaxePunkでの衝突検出の仕組みは、衝突があった場合、衝突したオブジェクトを返します。

var b : Bullet = collide("bullet", x, y); 
if (b) { 
    b.destroy(); 
} 

私はヌルタイプに対してそれをテストしてみたが、それは動作するようには思えません。それはいくつかの理由でif(b)構文を持っていないhaXeのために決定されました

var b : Bullet = collide("bullet", x, y); 
if (b != null) { 
    b.destroy(); 
} 

:コメントで言及kirilloid

+9

'if(b!= null)'が動作するはずです – kirilloid

+2

Herp、derp。大文字小文字は私の最後です。ありがとう! – mkosler

+2

@kirilloid:そのコメントは答えでなければなりません;) – back2dos

答えて

4

としては、bがnullでないかどうかをチェックしてみてください。トピックについては、Google Groups: Test if existsに関するディスカッションをご覧ください。

+2

落とし穴の警告:Haxeの柔軟性はnullに関していくつかの特殊な振る舞いにつながります。詳細はhttp://haxe.org/manual/basic_types#nullabilityをご覧ください。 – shiser

関連する問題