У меня проблема с тем, что мне нужно создать таймер, но я хочу передать ему переменную, как это сделать? Возможно ли это в AS3?
Я пытался так:
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.
И эта ошибка выделена жирной линией.
Могу ли я использовать это таким образом? Или я должен создать две одинаковые функции для каждого из моих игроков, потому что мне не разрешено передавать какие-либо другие аргументы функции таймера?
Спасибо,