2012-01-03 10 views
1

私はFlxGroupsから作られたいくつかのダイアログ画面を持っています。最初の画面LandingScreenには、2番目の画面であるCargoShopを開くボタンがあります。画面が追加されるたびにFlxStateでアクティブスクリーンになり、他の画面のボタンはactive = false;に設定されます。CargoShop画面を開くボタンをクリックすると、次の更新サイクルでactive = false;に設定されます。Flixel - FlxButtonが複数回クリックされたように動作しています

今、CargoShopの画面には、閉じるボタンがあり、LandingScreenが再びアクティブになります。なんらかの理由で、CargoShopの画面が閉じられるとすぐに、店のボタンが再びクリックされたように新しい画面が即座に開かれます。

これらのボタンは互いの上にはありません。 FlxButtonで欠けているトリックは、それがクリックされていないと思っていますか?私がマウスを使用した場合にのみ起こります。キーボードのコマンドでCargoScreenを閉じると、新しいキーボードは即座に作成されません。

+0

を参照してください、あなたはいくつかのコードを投稿することができますか? – NoobsArePeople2

答えて

0

基本的な真実私はちょうどFlxGroupについて学んだことがあります:グループをアクティブに設定する:false!=グループの各メンバーをアクティブに設定する:false。

FlxButtonの束でFlxGroupがあるとします。ボタンをクリックして、結果の1つがFlxGroupactive = falseに設定されると、ボタン自体はまだアクティブです。

ソリューション:

...

yourGroup.setAll("active", false); 
を呼び出すこれは active = falseFlxGroupの各メンバーを設定し、ボタンが、それはおそらくクリックすることはできません知っているだろう。

出典:funstorm - 溶液#2

0

アクティブでない画面にmouseEnable = mouseChildren = falseを設定して、マウス入力を受け取らないようにすることができます。あなたの問題は、最初の見解では論理的な問題であるように見えますが。

+0

確かに... Flixelにはこの問題の原因となっているバグがありますが、わかりません。 –

関連する問題