summaryrefslogtreecommitdiff
path: root/Plugins/MonoGame.Extended/source/MonoGame.Extended.Input/KeyboardExtended.cs
diff options
context:
space:
mode:
authorchai <215380520@qq.com>2024-06-03 10:15:45 +0800
committerchai <215380520@qq.com>2024-06-03 10:15:45 +0800
commitacea7b2e728787a0d83bbf83c8c1f042d2c32e7e (patch)
tree0bfec05c1ca2d71be2c337bcd110a0421f19318b /Plugins/MonoGame.Extended/source/MonoGame.Extended.Input/KeyboardExtended.cs
parent88febcb02bf127d961c6471d9e846c0e1315f5c3 (diff)
+ plugins project
Diffstat (limited to 'Plugins/MonoGame.Extended/source/MonoGame.Extended.Input/KeyboardExtended.cs')
-rw-r--r--Plugins/MonoGame.Extended/source/MonoGame.Extended.Input/KeyboardExtended.cs22
1 files changed, 22 insertions, 0 deletions
diff --git a/Plugins/MonoGame.Extended/source/MonoGame.Extended.Input/KeyboardExtended.cs b/Plugins/MonoGame.Extended/source/MonoGame.Extended.Input/KeyboardExtended.cs
new file mode 100644
index 0000000..0ed7c76
--- /dev/null
+++ b/Plugins/MonoGame.Extended/source/MonoGame.Extended.Input/KeyboardExtended.cs
@@ -0,0 +1,22 @@
+using Microsoft.Xna.Framework.Input;
+
+namespace MonoGame.Extended.Input
+{
+ public static class KeyboardExtended
+ {
+ // TODO: This global static state was a horrible idea.
+ private static KeyboardState _currentKeyboardState;
+ private static KeyboardState _previousKeyboardState;
+
+ public static KeyboardStateExtended GetState()
+ {
+ return new KeyboardStateExtended(_currentKeyboardState, _previousKeyboardState);
+ }
+
+ public static void Refresh()
+ {
+ _previousKeyboardState = _currentKeyboardState;
+ _currentKeyboardState = Keyboard.GetState();
+ }
+ }
+} \ No newline at end of file