public void HandleButtonPress(object sender, InputStateEventArgs e) { Console.WriteLine("Button {0} Pressed, at position {1}", Enum.GetName(typeof(AllButtons), e.Button), e.MousePos.ToString()); string explColor = "debug"; switch (e.Button) { case AllButtons.Q: explColor = "ExplosionThreeRedDown"; break; case AllButtons.W: explColor = "ExplosionThreeRedLeft"; break; case AllButtons.E: explColor = "ExplosionThreeRedRight"; break; case AllButtons.R: explColor = "ExplosionThreeRedUp"; break; case AllButtons.A: explColor = "ExplosionThreeBlueDown"; break; case AllButtons.S: explColor = "ExplosionThreeBlueLeft"; break; case AllButtons.D: explColor = "ExplosionThreeBlueRight"; break; case AllButtons.F: explColor = "ExplosionThreeBlueUp"; break; case AllButtons.Spacebar: if (e.Modifier.HasFlag(ModifierKeys.Alt)) { throw new Exception(); } explColor = "ExplosionThreeGreen"; break; default: return; } if (e.Button == AllButtons.Spacebar && e.Modifier.HasFlag(ModifierKeys.Alt)) { throw new Exception(); } Animation[] a = new Animation[1]; a[0] = new Animation(TexManager[explColor], 30); a[0].Begin(); SpawnedAnimations.Add(new AnimatedGameObject(a, e.MousePos.ToVector2())); }
public void HandleButtonHeld(object sender, InputStateEventArgs e) { //Console.WriteLine("Button {0} held at posoition {1}", Enum.GetName(typeof(AllButtons), e.Button), e.MousePos.ToString()); if (e.Button == AllButtons.MouseButtonLeft) MainEntityManager.AddProjectile(DebugTower.Fire(new GameObject(TexManager.BlankTexture[0], e.MousePos.ToVector2()))); if (e.Button == AllButtons.MouseButtonRight) SpawnedAnimations.Add(NewExplosion(e.MousePos.ToVector2(), "ExplosionThreeBlue")); //Sphere.Center = e.MousePos.ToVector3(); }
public InputStateEventArgs Copy() { var ret = new InputStateEventArgs(); ret.Button = this.Button; ret.Modifier = this.Modifier; ret.MousePos = this.MousePos; ret.MouseDelta = this.MouseDelta; return(ret); }
public void HandleButtonHeld(object sender, InputStateEventArgs e) { //Console.WriteLine("Button {0} held at posoition {1}", Enum.GetName(typeof(AllButtons), e.Button), e.MousePos.ToString()); if (e.Button == AllButtons.MouseButtonLeft) { MainEntityManager.AddProjectile(DebugTower.Fire(new GameObject(TexManager.BlankTexture[0], e.MousePos.ToVector2()))); } if (e.Button == AllButtons.MouseButtonRight) { SpawnedAnimations.Add(NewExplosion(e.MousePos.ToVector2(), "ExplosionThreeBlue")); } //Sphere.Center = e.MousePos.ToVector3(); }
public void HandleButtonPress(object sender, InputStateEventArgs e) { Console.WriteLine("Button {0} Pressed, at position {1}", Enum.GetName(typeof(AllButtons), e.Button), e.MousePos.ToString()); string explColor = "debug"; switch (e.Button) { case AllButtons.Q: explColor = "ExplosionThreeRedDown"; break; case AllButtons.W: explColor = "ExplosionThreeRedLeft"; break; case AllButtons.E: explColor = "ExplosionThreeRedRight"; break; case AllButtons.R: explColor = "ExplosionThreeRedUp"; break; case AllButtons.A: explColor = "ExplosionThreeBlueDown"; break; case AllButtons.S: explColor = "ExplosionThreeBlueLeft"; break; case AllButtons.D: explColor = "ExplosionThreeBlueRight"; break; case AllButtons.F: explColor = "ExplosionThreeBlueUp"; break; case AllButtons.Spacebar: if (e.Modifier.HasFlag(ModifierKeys.Alt)) throw new Exception(); explColor = "ExplosionThreeGreen"; break; default: return; } if (e.Button == AllButtons.Spacebar && e.Modifier.HasFlag(ModifierKeys.Alt)) throw new Exception(); Animation[] a = new Animation[1]; a[0] = new Animation(TexManager[explColor], 30); a[0].Begin(); SpawnedAnimations.Add(new AnimatedGameObject(a, e.MousePos.ToVector2())); }
public void HandleInput() { // Get the status of input devices for the current frame, and store the values from last frame KeyboardPrevious = KeyboardCurrent; MousePrevious = MouseCurrent; GamepadPrevious = GamepadCurrent; KeyboardCurrent = Keyboard.GetState(); MouseCurrent = Mouse.GetState(); GamepadCurrent = GamePad.GetState(PlayerIndex.One); PreviousKeyState = CurrentKeyState; CurrentKeyState = KeyboardCurrent.GetPressedKeys(); // All keys K are currently pressed in this frame // TODO make this actually send modifiers and keys at the same time InputStateEventArgs args = new InputStateEventArgs(); ModifierKeys ModKey = ModifierKeys.None; foreach (Keys K in CurrentKeyState) { ModifierKeys MK = mapKeytoModifier(K); if (MK != ModifierKeys.None) { ModKey |= MK; } } args.Modifier = ModKey; args.MousePos = MouseCurrent.Position; #region Mouse Movement Point mouseDiff = (MouseCurrent.Position - MousePrevious.Position); if (mouseDiff != new Point()) { args.MouseDelta = mouseDiff; if (MouseMovement != null) { MouseMovement(this, args); } } #endregion #region Keyboard inputs foreach (Keys K in CurrentKeyState) { args.Button = mapKeytoButton(K); if (KeyboardPrevious.IsKeyUp(K)) { if (ButtonPressed != null) { ButtonPressed(this, args); } } if (KeyboardPrevious.IsKeyDown(K)) { if (ButtonHeld != null) { ButtonHeld(this, args); } } } // This gets all the ButtonReleased events foreach (Keys K in PreviousKeyState) { if (KeyboardCurrent.IsKeyUp(K)) { args.Button = mapKeytoButton(K); if (ButtonReleased != null) { ButtonReleased(this, args); } } } #endregion #region Mouse inputs args.Button = AllButtons.MouseButtonLeft; if (MouseCurrent.LeftButton == ButtonState.Pressed && MousePrevious.LeftButton == ButtonState.Released) { if (ButtonPressed != null) { ButtonPressed(this, args); } } else if (MouseCurrent.LeftButton == ButtonState.Pressed) { if (ButtonHeld != null) { ButtonHeld(this, args); } } else if (MouseCurrent.LeftButton == ButtonState.Released && MousePrevious.LeftButton == ButtonState.Pressed) { if (ButtonReleased != null) { ButtonReleased(this, args); } } args.Button = AllButtons.MouseButtonMiddle; if (MouseCurrent.MiddleButton == ButtonState.Pressed && MousePrevious.MiddleButton == ButtonState.Released) { if (ButtonPressed != null) { ButtonPressed(this, args); } } else if (MouseCurrent.MiddleButton == ButtonState.Pressed) { if (ButtonHeld != null) { ButtonHeld(this, args); } } else if (MouseCurrent.MiddleButton == ButtonState.Released && MousePrevious.MiddleButton == ButtonState.Pressed) { if (ButtonReleased != null) { ButtonReleased(this, args); } } args.Button = AllButtons.MouseButtonRight; if (MouseCurrent.RightButton == ButtonState.Pressed && MousePrevious.RightButton == ButtonState.Released) { if (ButtonPressed != null) { ButtonPressed(this, args); } } else if (MouseCurrent.RightButton == ButtonState.Pressed) { if (ButtonHeld != null) { ButtonHeld(this, args); } } else if (MouseCurrent.RightButton == ButtonState.Released && MousePrevious.RightButton == ButtonState.Pressed) { if (ButtonReleased != null) { ButtonReleased(this, args); } } // I feel dirty #endregion }
public void GetMousePos(object sender, InputStateEventArgs e) { MousePos = e.MousePos.ToVector2(); MouseChanged = true; }
/// <summary> /// Handles the mouse movement. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="InputStateEventArgs"/> instance containing the event data.</param> public void HandleMouseMovement(object sender, InputStateEventArgs e) { //Console.WriteLine(e.MouseDelta.ToString()); //Sphere.Center = e.MousePos.ToVector3(); }
/// <summary> /// Handles the mouse movement. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="InputStateEventArgs"/> instance containing the event data.</param> public void HandleMouseMovement(object sender, InputStateEventArgs e) { //Console.WriteLine(e.MouseDelta.ToString()); //Sphere.Center = e.MousePos.ToVector3(); }
public InputStateEventArgs Copy() { var ret = new InputStateEventArgs(); ret.Button = this.Button; ret.Modifier = this.Modifier; ret.MousePos = this.MousePos; ret.MouseDelta = this.MouseDelta; return ret; }
public void HandleInput() { // Get the status of input devices for the current frame, and store the values from last frame KeyboardPrevious = KeyboardCurrent; MousePrevious = MouseCurrent; GamepadPrevious = GamepadCurrent; KeyboardCurrent = Keyboard.GetState(); MouseCurrent = Mouse.GetState(); GamepadCurrent = GamePad.GetState(PlayerIndex.One); PreviousKeyState = CurrentKeyState; CurrentKeyState = KeyboardCurrent.GetPressedKeys(); // All keys K are currently pressed in this frame // TODO make this actually send modifiers and keys at the same time InputStateEventArgs args = new InputStateEventArgs(); ModifierKeys ModKey = ModifierKeys.None; foreach (Keys K in CurrentKeyState) { ModifierKeys MK = mapKeytoModifier(K); if (MK != ModifierKeys.None) { ModKey |= MK; } } args.Modifier = ModKey; args.MousePos = MouseCurrent.Position; #region Mouse Movement Point mouseDiff = (MouseCurrent.Position - MousePrevious.Position); if (mouseDiff != new Point()) { args.MouseDelta = mouseDiff; if (MouseMovement != null) MouseMovement(this, args); } #endregion #region Keyboard inputs foreach (Keys K in CurrentKeyState) { args.Button = mapKeytoButton(K); if (KeyboardPrevious.IsKeyUp(K)) { if (ButtonPressed != null) { ButtonPressed(this, args); } } if (KeyboardPrevious.IsKeyDown(K)) { if (ButtonHeld != null) { ButtonHeld(this, args); } } } // This gets all the ButtonReleased events foreach (Keys K in PreviousKeyState) { if (KeyboardCurrent.IsKeyUp(K)) { args.Button = mapKeytoButton(K); if (ButtonReleased != null) { ButtonReleased(this, args); } } } #endregion #region Mouse inputs args.Button = AllButtons.MouseButtonLeft; if (MouseCurrent.LeftButton == ButtonState.Pressed && MousePrevious.LeftButton == ButtonState.Released) { if (ButtonPressed != null) ButtonPressed(this, args); } else if (MouseCurrent.LeftButton == ButtonState.Pressed) { if (ButtonHeld != null) ButtonHeld(this, args); } else if (MouseCurrent.LeftButton == ButtonState.Released && MousePrevious.LeftButton == ButtonState.Pressed) { if (ButtonReleased != null) ButtonReleased(this, args); } args.Button = AllButtons.MouseButtonMiddle; if (MouseCurrent.MiddleButton == ButtonState.Pressed && MousePrevious.MiddleButton == ButtonState.Released) { if (ButtonPressed != null) ButtonPressed(this, args); } else if (MouseCurrent.MiddleButton == ButtonState.Pressed) { if (ButtonHeld != null) ButtonHeld(this, args); } else if (MouseCurrent.MiddleButton == ButtonState.Released && MousePrevious.MiddleButton == ButtonState.Pressed) { if (ButtonReleased != null) ButtonReleased(this, args); } args.Button = AllButtons.MouseButtonRight; if (MouseCurrent.RightButton == ButtonState.Pressed && MousePrevious.RightButton == ButtonState.Released) { if (ButtonPressed != null) ButtonPressed(this, args); } else if (MouseCurrent.RightButton == ButtonState.Pressed) { if (ButtonHeld != null) ButtonHeld(this, args); } else if (MouseCurrent.RightButton == ButtonState.Released && MousePrevious.RightButton == ButtonState.Pressed) if (ButtonReleased != null) ButtonReleased(this, args); // I feel dirty #endregion }
public void GetMousePos(object sender, InputStateEventArgs e) { MousePos = e.MousePos.ToVector2(); MouseChanged = true; }