【发布时间】:2014-01-12 22:22:14
【问题描述】:
我正在尝试创建一个类似于 Tap Tap 的游戏,但掉落的物体是随机的。我现在遇到的问题是如果随机对象再次被选中(在它完成移动之前),它的位置将被重置。(这也意味着两个相同的对象不会出现在我不想要的屏幕上)我想出了一个解决这个问题的方法,我应该能够创建一个选择的电影剪辑的副本,但我迷路了。帮助?
另外,我是 Flash 新手。如果您有任何建议/建议,请告诉我! 谢谢你,祝你有美好的一天。
var notes:Array = new Array(NGood1,NGood2,NGood3,NGood4,NGood5,NBad1,NBad2,NBad3,NBad4,NBad5);
var pos1:int;
var pos2:int;
var pos3:int;
pos1 = (stage.stageWidth / 3) -100;
pos2 = (stage.stageWidth / 2) -100;
pos3 = ((stage.stageWidth/3) *2) -100;
var timerN:Timer = new Timer(1000,120);
timerN.addEventListener(TimerEvent.TIMER, timerhandler);
timerN.start();
var secondsN:Number = 1;
function timerhandler(event:TimerEvent)
{
//trace("Seconds elapsed: " + seconds);
SpawnNote(null);
secondsN++;
}
function SpawnNote(event:Event):void
{
var spawn:int;
var rpos:int;
spawn = int(Math.random() * notes.length);
rpos = int(Math.random() * 3) + 1;
var note:MovieClip = new MovieClip();
note = notes[spawn];
addChild(note);
if (rpos ==1)
{
note.x = pos1;
}
else if (rpos==2)
{
note.x = pos2;
}
else if (rpos==3)
{
note.x = pos3;
}
note.y = -20;
note.addEventListener( Event.ENTER_FRAME, MoveNote );
function MoveNote(event:Event):void
{
note.y += 5;
if (note.y >= stage.stageHeight - 50)
{
note.addEventListener( Event.ENTER_FRAME, StopNote );
function StopNote(event:Event):void
{
note.removeEventListener( Event.ENTER_FRAME, MoveNote );
//do more
}
}
}
}
【问题讨论】:
标签: actionscript-3 flash