package world.items.behaviors { import flash.geom.Point; import world.items.*; public class Behavior { private var _owner:Dweller; public function get owner():Dweller { return _owner; } public function set owner(o:Dweller):void { _owner = o; setDefaultAnimation(); } public function Behavior(owner:Dweller = null) { if (owner) { _owner = owner; } } /** * setDefaultAnimation * override to set default skeleton animation */ protected function setDefaultAnimation():void { if (_owner) { _owner.setSkeletonAnimation(Dweller.STAND_ANIM); } } /** * step * override and call incrementally to process behavior */ public function step():void {} /** * updateAnimation * override and call to set animation based on behavior */ public function updateAnimation():void {} } }