【发布时间】:2011-10-18 09:19:34
【问题描述】:
我使用 flash cs5 创建了一个多项选择类型的游戏。我创建的程序正在运行,但它没有显示我期望它发生的事情。
我遇到了一些错误(实际上并不是代码中的错误)。其中一些所谓的错误是:
-
1234563总共30个。我不知道应该在哪里或如何插入代码。
在游戏中,玩家必须正确回答问题,如果回答正确,则进入计分板。否则它应该显示下一个问题并计算错误答案。每个错误答案将扣除5%的总分。但问题是,无论显示正确还是错误的答案,它仍然没有进入记分牌
我还没有插入游戏必不可少/需要的计时器。我仍在试图找出如何做到这一点,因为计时器会显示扣分。这里的想法是:例如,在每次游戏遭遇(或战斗)中,都会给玩家一定的时间(比如说 20 秒),玩家必须在规定时间内正确回答问题。如果玩家回答正确应进入下一帧(显示分数)否则将扣除总分的5%
我想我可以处理计时器,但我真的需要你在前 2 个方面的帮助,我的搭档在 flash 方面还是很新。我们已经花了很多时间调试代码,但无法找到问题的解决方案。提前感谢那些愿意提供帮助的人。
这里是程序中的一些代码(其实是主代码)
函数 QuizItem(问题) { this.question=问题; this.answers=新数组(); this.numOfAnswers=0; this.correctAnswer=0; this.getQuestion=function() { 返回这个问题; } this.addAnswer=function(answer, isCorrectAnswer) { this.answers[this.numOfAnswers]=answer; 如果(是正确答案) this.correctAnswer=this.numOfAnswers; this.numOfAnswers++; }
this.getAnswer=function(answerNumberToGet)
{
return this.answers[answerNumberToGet];
}
this.getCorrectAnswerNumber=function()
{
return this.correctAnswer;
}
this.checkAnswerNumber=function(userAnswerNumber)
{
if (userAnswerNumber==this.getCorrectAnswerNumber())
gotoAndPlay("Correct");
else
gotoAndPlay("Wrong");
}
this.getNumOfAnswers=function()
{
return this.answers.length;
}
}
function onQuizData(success)
{
var quizNode=this.firstChild;
var quizTitleNode=quizNode.firstChild;
title=quizTitleNode.firstChild.nodeValue;
var i=0;
// <items> follows <title>
var itemsNode=quizNode.childNodes[1];
while (itemsNode.childNodes[i])
{
var itemNode=itemsNode.childNodes[i];
// <item> consists of <question> and one or more <answer>
// <question> always comes before <answer>s (node 0 of <item>)
var questionNode=itemNode.childNodes[0];
quizItems[i]=new QuizItem(questionNode.firstChild.nodeValue);
var a=1;
// <answer> follows <question>
var answerNode=itemNode.childNodes[a++];
while (answerNode)
{
var isCorrectAnswer=false;
if (answerNode.attributes.correct=="y")
isCorrectAnswer=true;
quizItems[i].addAnswer(answerNode.firstChild.nodeValue, isCorrectAnswer);
// goto the next <answer>
answerNode=itemNode.childNodes[a++];
}
i++;
}
gotoAndPlay("Start");
}
var quizItems=new Array();
var myData=new XML();
myData.ignoreWhite=true;
myData.onLoad=onQuizData;
myData.load("quiz1.xml");
stop();
【问题讨论】:
-
如果我错了请纠正我,但你的代码看起来像 actionscript 2
标签: xml actionscript-3 flash-cs5