我真的对闪光毫无希望,但我的课程决定引入它是个好主意,所以我在这里挣扎了好几天。任何人都可以告诉我,我做错了吗???
我试图制作一个计数游戏,其菜单有3个难点:简单中等和难度。为了方便起见,我必须生成5-10,中等10-15和硬15-20的随机硬币。
此外,我还要对硬币进行计数,如果生成了正确的数字,会弹出一条消息说“恭喜”
这就是我到目前为止......:
import fl.motion.MotionEvent;
import flash.events.MouseEvent;
var Count:Number = 0;
coinz.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_3);
function fl_MouseClickHandler_3(event:MouseEvent):void
{
trace("Mouse clicked");
}
var clickCount:int= 0;
btnnumb.addEventListener(MouseEvent.CLICK,addClick);
function addClick(evt:MouseEvent):void{
clickCount++;
}
textarea.text="SCORE:"+clickCount.toString();
var minLimit:uint = 5;
var maxLimit:uint = 10;
var range:uint = maxLimit - minLimit;
var myNum:Number = Math.ceil(Math.random()*range) + minLimit;
trace(myNum);
var low:Number = 1;
var high:Number = 5;
var result:Number = Math.floor(Math.random() * (1 + high - low)) + low
stop();
答案 0 :(得分:1)
你有点无组织
如果你想遵循最佳实践,那么你应该忘记时间线(使用类)
但是,你在时间轴上......这也是一个很好的做法,将所有变量和事件声明放在脚本的顶部,然后是你的函数; <登记/>
对于2个数字之间的随机数,您可以使用函数rand(min, max)
更好。
所以你可以这样做:
import fl.motion.MotionEvent;
import flash.events.MouseEvent;
stop();
//variables name should start with lower case letter by convention
var count : Number = 0;
var clickCount : int = 0;
var randNumber : int = 0; //define understandable variables name (not myNum)
//constant variables should be in upper case and words sparated by underline
var MIN_RAND_LIMIT : uint = 5;
var MAX_RAND_LIMIT : uint = 10;
coinz.addEventListener(MouseEvent.CLICK, onCoinzClick);
btnnumb.addEventListener(MouseEvent.CLICK, addClick); //again 'btnnumb' is bad name
function onCoinzClick(e:MouseEvent) : void {
trace("Mouse clicked");
}
function addClick(e:MouseEvent) : void {
clickCount++;
//don't need toString in concatenation
textarea.text="SCORE:" + clickCount;
}
function rand(min:Number, max:Number) : Number {
return (Math.floor(Math.random() * (max - min + 1)) + min);
}
//test
randNumber = rand(MIN_RAND_LIMIT, MAX_RAND_LIMIT);
trace(randNumber);
///
///the rest logic of your game...
///
尽可能多地组织起来,你会发现它更容易工作并且变得更好......
现在关于你的游戏,这里有一些提示:
希望它有所帮助。