我有问题,我需要创建计时器,但我想传递给它一个变量,如何做到这一点?在AS3中可能吗?计时器在行动脚本3
我想是这样的:
bonusPlayer1Timer = new Timer(5000);
bonusPlayer1Timer.addEventListener(TimerEvent.TIMER, bonusChanges(player1));
bonusPlayer1Timer.addEventListener(TimerEvent.TIMER_COMPLETE, bonusChangesRemove(player1));
bonusPlayer1Timer.start();
function bonusChanges(event:TimerEvent, playerBonus:Player):void {
switch (playerBonus.bonus) {
case 0 :
playerBonus.multipleShooting = false;
playerBonus.bonus = -1;
break;
...}}
但我有错误:
1067: Implicit coercion of a value of type Player to an unrelated type flash.events:TimerEvent.
1136: Incorrect number of arguments. Expected 2.
而这个错误在粗线。
我可以以这种方式使用它吗?或者我必须为每个玩家创建两个相同的函数,因为我不允许将任何不同的参数传递给定时器函数?
谢谢
非常好的队友刚刚为我解锁了一些知识。扩展你感兴趣的课程并允许它附加一个自定义课程。所以event.target引用刚刚触发事件的Timer对象,对吧? – Alex 2011-04-18 04:24:19
@AlexW你是 – 2011-04-18 04:27:36
是的谢谢!我会这样做!万分感谢! – canimbenim 2011-04-18 08:39:38