од из Колина Мука, который я пытался скомпилировать, содержал не поддерживаемый уже класс счетчика, который я заменил на класс Timer. Счетчик создать удалось, проблема в том, как его остановить. Timer.stop() не работает. Без остановки всё нормально компилируется и запускается.

Код AS3:
package zoo {
import flash.utils.Timer;
import flash.events.TimerEvent;
internal class VirtualPet {
private static var maxNameLength = 20;
private static var maxCalories = 2000;
private static var caloriesPerSecond = 200;
private var petName;
private var currentCalories = VirtualPet.maxCalories/2;
private var creationTime;
public function VirtualPet (name) {
setName(name);
var digestIntervalID:Timer = new Timer(1000, 0);
digestIntervalID.addEventListener(TimerEvent.TIMER, digest);
digestIntervalID.start( );
}
// часть кода вырезана
public function getName ( ) {
return petName;
}
private function digest( ) {
if (currentCalories - VirtualPet.caloriesPerSecond <= 0) {
trace (getName( ) + " has died.");
digestIntervalID.stop( );
} else {
currentCalories -= VirtualPet.caloriesPerSecond;
trace(getName( ) + "digested some food. It now has " + currentCalories + "calories remaining.");
}
}
public function getAge ( ) {
var currentTime = new Date ( );
var age = currentTime.time - creationTime.time;
return age;
}
}
}