private void ConstructInputWrapper(MetaFactoryPackage package) { UnityInputWrapper inputWrapper = new UnityInputWrapper(); UnityKeyboardWrapper keyboardWrapper = new UnityKeyboardWrapper(); package.MetaContext.Add <IInputWrapper>(inputWrapper); package.MetaContext.Add <IKeyboardWrapper>(keyboardWrapper); //_eventReceivers.Add(inputWrapper); }
public RtsInput(UnityInputWrapper unityInputWrapper, RectangleRenderer rectangleRenderer) { this.rectangleRenderer = rectangleRenderer; layerMaskUnit = 1 << LayerMask.NameToLayer("Unit"); layerMaskGround = 1 << LayerMask.NameToLayer("Ground"); unityInputWrapper.RightMouseButtonClicked += OnRightMouseButtonClicked; unityInputWrapper.LeftMouseButtonClicked += OnLeftMouseButtonClicked; unityInputWrapper.LeftMouseButtonDragBegin += OnLeftMouseButtonDragBegin; unityInputWrapper.LeftMouseButtonDragUpdate += OnLeftMouseButtonDragUpdate; unityInputWrapper.LeftMouseButtonDragStop += OnLeftMouseButtonDragStop; }
private void Awake() { unityInputWrapper = new UnityInputWrapper(playerInput); input = new RtsInput(unityInputWrapper, rectangleRenderer); selectionSystem = new SelectionSystem(input, playerFaction); commandExecutor = new CommandExecutor(); commandManager = new CommandManager( playerFaction, input, commandExecutor, selectionSystem); }