Flash AS3.0编程计算得分问题
从第二帧开始每一帧我都设了空白关键帧做选择题,两位玩家分别按大键盘和小键盘上的1234键抢答,每一帧我都用了functiona(e:KeyboardEvent):void...
从第二帧开始每一帧我都设了空白关键帧做选择题,两位玩家分别按大键盘和小键盘上的 1 2 3 4 键抢答,每一帧我都用了functiona(e:KeyboardEvent):void{if(e.keyCode==49)//1.....................这种来存储分数,但比如第一题选1第二题选2,当我选择第2题的时候,第一题也会按答案是2的方式来计算,我就想问一下怎么让每个帧的代码互不干涉。有的说侦听一次就可以了,关联判断当前是第几题,如果是这样关联的相关代码怎么写...
展开
2个回答
展开全部
从你问题描术可以看出这种构建思路将使用大量语句来做判断,要的是明确思路节省语句。
在止没有更好的建议,给个代码给你做为参考,希望对你有帮助。
import flash.events.KeyboardEvent;
var quseNum:int;//问题标签
var answer:String;//答案
var chooseNum:int;//选项
var score:int;//得分
stage.addEventListener(KeyboardEvent.KEY_DOWN ,keyPress_ing);
function keyPress_ing(e:KeyboardEvent):void
{
switch (e.keyCode )
{
case 49 :
chooseNum = 1;
break;
case 50 :
chooseNum = 2;
break;
case 51 :
chooseNum = 3;
break;
case 52 :
chooseNum = 4;
break;
case 97 :
chooseNum = 1;
break;
case 98 :
chooseNum = 2;
break;
case 99 :
chooseNum = 3;
break;
case 100 :
chooseNum = 4;
break;
}
questions();
trace(answer,score);//输出面版中查看操作时答案和得分。
//在止处将变量值赋给动态文本。
}
/*在止构造第几题的第几个答案是正确的这样的功能*/
function questions():void
{
switch (quseNum)
{
case 0 :
if (chooseNum==1)
{
answer = "right";
score++
//或在止处将变量值赋给动态文本。
}
else
{
answer = "wrong";
}
break;
case 1 :
if (chooseNum==2)
{
answer = "right";
score++
}
else
{
answer = "wrong";
}
break;
case 2 :
if (chooseNum==1)
{
answer = "right";
score++
}
else
{
answer = "wrong";
}
stage.removeEventListener(KeyboardEvent.KEY_DOWN ,keyPress_ing);
break;
}
quseNum++;
}
富港检测东莞有限公司
2024-12-25 广告
2024-12-25 广告
ISTA3L是一个基于研究、数据驱动的测试协议,它模拟了由零售公司完成的产品订单被直接运送给消费者时所经历的危险,它允许用户评估包装产品的能力,以承受运输和处理包装产品时所经历的供应链危险,从接收到任何电子商务零售商履行操作,直到最终消费者...
点击进入详情页
本回答由富港检测东莞有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询