-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathInput.h
More file actions
146 lines (101 loc) · 2.09 KB
/
Copy pathInput.h
File metadata and controls
146 lines (101 loc) · 2.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
#pragma once
#include "Headers.h"
#include <Xinput.h>
#pragma comment(lib, "xinput9_1_0.lib")
enum BUTTONS_REAL {
BUTTON_REAL_A, BUTTON_REAL_B, BUTTON_REAL_X, BUTTON_REAL_Y, BUTTON_REAL_LSHOULDER, BUTTON_REAL_RSHOULDER,
BUTTON_REAL_LTRIGGER, BUTTON_REAL_RTRIGGER, BUTTON_REAL_L3, BUTTON_REAL_R3, BUTTON_REAL_START, BUTTON_REAL_SELECT,
BUTTON_REAL_COUNT
};
enum BUTTONS_MAPPED {
BUTTON_MAPPED_START, BUTTON_MAPPED_SELECT, BUTTON_MAPPED_JUMP, BUTTON_MAPPED_ACTION1, BUTTON_MAPPED_ACTION2,
BUTTON_MAPPED_COUNT
};
#define INPUT_DEADZONE ( 0.24f * FLOAT(0x7FFF) );
struct ActionData {
float xDir1;
float yDir1;
float xDir2;
float yDir2;
bool jump;
bool attack;
bool action2;
bool b4;
bool b5;
bool b6;
bool b7;
bool b8;
bool start;
bool select;
};
enum bState {
down_, up_, released_, held_
};
struct MouseData {
float m_screenX;
float m_screenY;
int m_windowX;
int m_windowY;
int m_prevScreenX;
int m_prevScreenY;
int m_prevWindowX;
int m_prevWindowY;
bool m_buttonLeftPressed;
bool m_buttonMiddlePressed;
bool m_buttonRightPressed;
bool m_prevButtonLeftPressed;
bool m_prevButtonMiddlePressed;
bool m_prevButtonRightPressed;
};
struct ControllerButtons {
bool a;
bool b;
bool x;
bool y;
bool l3;
bool r3;
int leftStickIntX;
int leftStickIntY;
float leftStickFloatX;
float leftStickFloatY;
int rightStickIntX;
int rightStickIntY;
float rightStickFloatX;
float rightStickFloatY;
float leftTriggerFloat;
float rightTriggerFloat;
bool leftTrigger;
bool rightTrigger;
bool leftShoulder;
bool rightShoulder;
bool select;
bool start;
bool left;
bool up;
bool right;
bool down;
float leftX;
float leftY;
float rightX;
float rightY;
};
class Input {
public:
bool bm[BUTTON_MAPPED_COUNT];
Input();
void Map();
void Update();
//void FilterDeadZone();
void Reset();
ControllerButtons b;
ControllerButtons prev_b;
bool isConnected = 0;
XINPUT_STATE inputState;
UINT64 timeCheck;
bState bs_A = up_;
float LX = 0.0f;
float LY = 0.0f;
// Mouse Stuff
MouseData m_md;
ActionData ad;
};