我有一個項目在一個星期內到期,我已經差不多完成了。我還有一個問題需要解決,我很難過。在flash中設置一個定時器as3
我會粘貼我到目前爲止下面的代碼。
如果你還可以解釋代碼是幹什麼的,所以我知道它在做什麼,如果沒有太多的麻煩,代碼是從課堂活動中獲取的,我改變了標識符以匹配我的圖形。 我試圖在我的下落中實現一個計時器,並且每15秒鐘捕捉一次遊戲,它會增加墜落物體的速度。計時器將從60秒開始,當它達到0秒時,它應該進入單獨的頁面。
請問有人能解釋我該怎麼做?我不擅長理解Flash中的代碼,所以如果你能保持它儘可能簡單,我會非常感激。
我有的代碼如下。它完美的作品,我只需要改變部分定時器:
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.Timer;
import flash.utils.getDefinitionByName;
public class CatchingGame extends MovieClip {
var catcher:Catcher;
var nextObject:Timer;
var objects:Array = new Array();
var score:int = 0;
const speed:Number = 7.0;
public function CatchingGame() {
catcher = new Catcher();
catcher.y = 350;
addChild(catcher);
setNextObject();
addEventListener(Event.ENTER_FRAME, moveObjects);
}
public function setNextObject() {
nextObject = new Timer(1000+Math.random()*1000,1);
nextObject.addEventListener(TimerEvent.TIMER_COMPLETE,newObject);
nextObject.start();
}
public function newObject(e:Event) {
var goodObjects:Array = ["Circle1","Circle2"];
var badObjects:Array = ["Square1","Square2"];
if (Math.random() < .5) {
var r:int = Math.floor(Math.random()*goodObjects.length);
var classRef:Class = getDefinitionByName(goodObjects[r]) as Class;
var newObject:MovieClip = new classRef();
newObject.typestr = "good";
} else {
r = Math.floor(Math.random()*badObjects.length);
classRef = getDefinitionByName(badObjects[r]) as Class;
newObject = new classRef();
newObject.typestr = "bad";
}
newObject.x = Math.random()*500;
addChild(newObject);
objects.push(newObject);
setNextObject();
}
public function moveObjects(e:Event) {
for(var i:int=objects.length-1;i>=0;i--) {
objects[i].y += speed;
if (objects[i].y > 400) {
removeChild(objects[i]);
objects.splice(i,1);
}
if (objects[i].hitTestObject(catcher)) {
if (objects[i].typestr == "good") {
score += 5;
} else {
score -= 1;
}
if (score < 0) score = 0;
scoreDisplay.text = "Score: "+score;
removeChild(objects[i]);
objects.splice(i,1);
}
}
catcher.x = mouseX;
}
}
}
感謝您抽出時間來閱讀我的問題,並給出
如果你要增加'speed'變量某些部分,你對於初學者來說,會希望它是一個'var'而不是'const'。下面是在AS3的'timer'類的教程:http://www.republicofcode.com/tutorials/flash/as3timer/ – Ronnie 2013-03-27 19:14:06