flash AS6-如何在输入框中检查正确答案

时间:2016-05-01 18:13:50

标签: flash math input

嗨我对adobe flash很新,并且一直在为我的计算类做一个项目,我正在制作一个游戏,显示2个随机生成的数字,用户必须输入值,如果答案是正确的话,获得10分。然而,如果答案是正确的话,我很难让输入文本框能给我10分,因为现在我只获得积分,如果2个生成的数字的总和为0.真的很感激帮助,很多谢谢。我将把代码放在下面

public class Main extends MovieClip {
    var Num1:int ;
    var Num2:int ;
    var Answer:int ;
    var Score:int=0;
    var UserInput;



    public function Main() 
    {
        // constructor code
        gotoAndStop(1);
        Start.addEventListener(MouseEvent.CLICK, StartFunct);

    }

    function StartFunct(e:Event)
        {
            gotoAndStop(2);
            button.addEventListener(MouseEvent.CLICK,clickhandler);
            button.addEventListener(MouseEvent.CLICK,clickhandler2);
            button.addEventListener(MouseEvent.CLICK,checkFunction);
        }

    function checkFunction(event:MouseEvent):void
    {
         Answer= Num1*Num2;
         if(UserInput == Answer){
             Score=Score+10

         }
         else Score=Score

    }


    function clickhandler(event:MouseEvent):void
    {
        Num1  = Math.floor(Math.random()*10);
        Num2  = Math.floor(Math.random()*10);

        num1Box.text = String(Num1);
        num2Box.text = String(Num2);
        UserInput = "";

    }
    function clickhandler2(event:MouseEvent):void
    {
        Score = Score;

        ScoreBox.text = String(Score);

1 个答案:

答案 0 :(得分:2)

在我看来,这是一个订购问题。您有三个单独的点击事件同时触发。执行此操作的理想方法是创建单击处理函数,并将您的其他三个函数按照您想要的顺序封装到其中。

而不是function StartFunct(e:Event) { gotoAndStop(2); button.addEventListener(MouseEvent.CLICK,clickhandler); button.addEventListener(MouseEvent.CLICK,clickhandler2); button.addEventListener(MouseEvent.CLICK,checkFunction); }

尝试更喜欢这样做

     function StartFunct(e:Event)
        {
            gotoAndStop(2);
            button.addEventListener(MouseEvent.CLICK,clickHandler);
        }

function clickHandler(evnt:Event){
function1(); //generate the numbers
function2(); evaluate the numbers and adjust the score
function3(); //adjust score text box
}

` 请注意,执行此操作将要求您删除操作功能的参数。您也可以尝试重新排序声明初始onClick eventListeners

的方式