2012-01-07 5 views
0

ただの質問です。基本的に、私は殺人ミステリーのインタラクティブなウェブサイトに付随するシンプルなゲームを作っています。私はいくつかのアクションスクリプトの問題を抱えています。アイデアは、ユーザーが部屋の周りのオブジェクトをクリックし、手がかりを聞いたり、キーを見つけたりすることができるということです。問題の1つは、ユーザーがランプをクリックしたとき、夜間のように画面上にボックスを表示することですしかし、画面が通常に戻っても、他の要素、つまり本はクリック可能ではありません - これは私が見落としている単純な解決策であることを確信しています。ここでは完全なコードです。一度クリックすると、すべての変数がうまく機能しなくなる問題

import flash.events.Event; 
import flash.events.MouseEvent; 


book.addEventListener(MouseEvent.CLICK,getBook); 
key.addEventListener(MouseEvent.CLICK,getKey); 
door.addEventListener(MouseEvent.CLICK,gotoBedroom); 
//paper.addEventListener(MouseEvent.CLICK,getNote); 
Lamp.addEventListener(MouseEvent.CLICK,getDark); 


var gotBook:Boolean = false; 
var gotKey:Boolean = false; 


key.visible = false; 
NightTime.visible = false; 

//function getNote(evt:MouseEvent):void{ 

     //report.gotoAndPlay(1); 
    //} 





function getKey(evt:MouseEvent):void{ 
    if(gotBook==false){ 
     key.visible = false; 
    }else{ 
     key.visible = true; 
    } 
} 

function gotoBedroom(evt:MouseEvent):void{ 
    if(gotKey==true){ 
     gotoAndStop("Bedroom"); 
    }else 
    feedBackText.gotoAndPlay(1); 

} 

if(gotBook==true){ 
    book.visible = false; 
    key.visible = true; 
    } 


function getBook(evt:MouseEvent):void{ 
    book.visible = false; 
    key.visible = true; 

} 

function getDark(evt:MouseEvent):void{ 
    NightTime.gotoAndPlay(1); 
    NightTime.visible = true; 
} 





stop() 

すべての変数を同時にクリックできるようにするための助けがあれば幸いです。ありがとうございました!

答えて

0

getDark関数を呼び出すと、NightTimeボックス(またはそれが何であれ)が表示されます。私は呼び出している機能を見ることができません
NightTime.visible = false;
あなたはそれがすべての時間と重なって画面のそれを表示した後だと思います。

それが理由なら、

NightTime.mouseChildren = false; 
    NightTime.mouseEnabled = false; 

を追加することで問題を解決する必要があります。

+0

ありがとうございます!完璧に動作し、私に多くの時間を節約! – user1133181

関連する問題