2011-12-31 9 views
0

実際には私はquiz.flaを持っています。ファイルでは、2つの空白の質問に記入し、他は
複数の質問です。StartDragとstopDragを使ってクイズを作成する

square1_mcは、2回では1回だけ実行する必要があります。ユーザーが正しく選択されていれば、再度実行しません。 しかし、mybadscoretextが1の場合、2,3,4が増えません。 :S どうすればいいですか?

stop(); 

var myScore:Number = 0; 
var myBadScore:Number=0; 

square1_mc.addEventListener(MouseEvent.MOUSE_DOWN, drag); 
stage.addEventListener(MouseEvent.MOUSE_UP, drop); 



function drag(e:MouseEvent):void 
{ 
e.target.startDrag(); 
} 

function drop(e:MouseEvent):void 
{ 

square1_mc.stopDrag(); 
if (square1_mc.hitTestObject(square2_mc)== true) 
{ 

square1_mc.x=129; 
square1_mc.y=133; 
this.graphics.clear(); 
this.graphics.lineStyle(2, 000000); 
this.graphics.moveTo(square1_mc.x, square1_mc.y); 
this.graphics.lineTo(square2_mc.x, square2_mc.y); 
this.graphics.endFill(); 


myScore += 1; 
score_txt.text=String(myScore); 
square1_mc.removeEventListener(MouseEvent.MOUSE_DOWN, drag); 



} 

else 
{ 

square1_mc.x=129; 
square1_mc.y=133; 
myBadScore += 1; 
mybadscore_txt.text=String(myBadScore); 


} 

} 

答えて

0

悪いスコアが追加されているかどうかを追跡するために変数を追加します。

ユーザーが答えを変更したい場合、私は、以前のスコアを設定するにはどうすればよい
var badMarked:Boolean = false; 

function drag(e:MouseEvent):void 
{ 
    e.target.startDrag(); 
    badMarked = false; 
} 

[...] 

function drop(e:MouseEvent):void 
{ 
    if (square1_mc.hitTestObject(square2_mc)== true) 
    { 
    [...] 
    } 
    else if (!badMarked ) 
    { 
     square1_mc.x=129; 
     square1_mc.y=133; 
     myBadScore += 1; 
     mybadscore_txt.text=String(myBadScore); 
     badMarked = true; 
    } 
} 
+0

? – OPETH

+0

次に、「正しい答え」セクションに減分を入れてください: 'if(badMarked){myBadScore - = 1; } ' – iND

+0

返信ありがとう、iND。しかし、私はクイズを持っています。フラ。このファイルには、空白とその他の複数の質問が記されています。 quiz.flaが正しく動作します。私は質問をstartdarg、合計3つの質問を追加します。どうすれば設定できますか? – OPETH

関連する問題