///////////////////////////////////////////////////////////////////////////////// // Copyright (C) 2010-2011 Wolfgang Kowarschick // // Dieses Werk darf unter den Bedingungen der Creative Common Lizenz by-nc 3.0 de // (http://creativecommons.org/licenses/by-nc/3.0/de/) // vervielfaeltigt, verbreitet, publiziert und modifiziert werden. ///////////////////////////////////////////////////////////////////////////////// package as3.component.direction.control { import as3.assert.Assert; import as3.component.direction.EnumDirection; import as3.component.direction.EnumDirection4; import as3.component.direction.ExtentEnumDirection; import as3.component.direction.I_EnumDirection; import as3.component.direction.I_ExtentEnumDirection; import as3.component.direction.logic.I_LogicDirection; import flash.display.Stage; import flash.events.KeyboardEvent; /** * @autor Wolfgang Kowarschick * @category class * @langversion 3.0 */ public class ControlDirection2Key extends A_ControlDirectionKey { ///////////////////////////////////////////////////////////////////////////// // Constructor ///////////////////////////////////////////////////////////////////////////// public function ControlDirection2Key (p_current_direction: I_EnumDirection, p_logic: I_LogicDirection = null, p_stage: Stage = null ) { super(EnumDirection4, p_logic, p_stage); this.currentDirection = p_current_direction; } ///////////////////////////////////////////////////////////////////////////// // Attributes ///////////////////////////////////////////////////////////////////////////// private var v_current_direction: I_EnumDirection; public function set currentDirection(p_current_direction: I_EnumDirection): void { v_current_direction = p_current_direction; } ///////////////////////////////////////////////////////////////////////////// // Protected members (to be overridden) ///////////////////////////////////////////////////////////////////////////// override protected function keyClick(p_event: KeyboardEvent): void { var l_direction: I_EnumDirection = this.enumExtent.getKeyDirection(p_event.keyCode); if (l_direction == EnumDirection4.LEFT) { v_current_direction = v_current_direction.left90Degrees; this.logic.direction(v_current_direction); } else if (l_direction == EnumDirection4.RIGHT) { v_current_direction = v_current_direction.right90Degrees; this.logic.direction(v_current_direction); }; } ///////////////////////////////////////////////////////////////////////////// // End of class ///////////////////////////////////////////////////////////////////////////// } } ///////////////////////////////////////////////////////////////////////////////// // End of file /////////////////////////////////////////////////////////////////////////////////