Fixes
This commit is contained in:
@ -46,7 +46,7 @@ namespace ia::iae
|
||||
case SDL_EVENT_KEY_DOWN:
|
||||
s_keys[event->key.scancode] = true;
|
||||
break;
|
||||
|
||||
|
||||
case SDL_EVENT_KEY_UP:
|
||||
s_keys[event->key.scancode] = false;
|
||||
break;
|
||||
@ -62,10 +62,8 @@ namespace ia::iae
|
||||
|
||||
Vec2 InputManager::GetAxis()
|
||||
{
|
||||
return Vec2{
|
||||
IsKeyDown(s_axisInputs[3]) + IsKeyDown(s_axisInputs[2]) * -1,
|
||||
IsKeyDown(s_axisInputs[1]) + IsKeyDown(s_axisInputs[0]) * -1
|
||||
};
|
||||
return Vec2{IsKeyDown(s_axisInputs[3]) + IsKeyDown(s_axisInputs[2]) * -1,
|
||||
IsKeyDown(s_axisInputs[1]) + IsKeyDown(s_axisInputs[0]) * -1};
|
||||
}
|
||||
|
||||
VOID InputManager::SwitchModeToText()
|
||||
@ -100,42 +98,42 @@ namespace ia::iae
|
||||
|
||||
BOOL InputManager::IsActionDown(IN Handle action)
|
||||
{
|
||||
const auto& t = s_actions[action];
|
||||
for(const auto& k : t)
|
||||
if(IsKeyDown(k))
|
||||
const auto &t = s_actions[action];
|
||||
for (const auto &k : t)
|
||||
if (IsKeyDown(k))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
BOOL InputManager::WasActionPressed(IN Handle action)
|
||||
{
|
||||
const auto& t = s_actions[action];
|
||||
for(const auto& k : t)
|
||||
if(WasKeyPressed(k))
|
||||
const auto &t = s_actions[action];
|
||||
for (const auto &k : t)
|
||||
if (WasKeyPressed(k))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
BOOL InputManager::WasActionReleased(IN Handle action)
|
||||
{
|
||||
const auto& t = s_actions[action];
|
||||
for(const auto& k : t)
|
||||
if(WasKeyReleased(k))
|
||||
const auto &t = s_actions[action];
|
||||
for (const auto &k : t)
|
||||
if (WasKeyReleased(k))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
BOOL InputManager::IsActionDown(IN CONST String& action)
|
||||
BOOL InputManager::IsActionDown(IN CONST String &action)
|
||||
{
|
||||
return IsActionDown(s_actionNames[action]);
|
||||
}
|
||||
|
||||
BOOL InputManager::WasActionPressed(IN CONST String& action)
|
||||
BOOL InputManager::WasActionPressed(IN CONST String &action)
|
||||
{
|
||||
return WasActionPressed(s_actionNames[action]);
|
||||
}
|
||||
|
||||
BOOL InputManager::WasActionReleased(IN CONST String& action)
|
||||
BOOL InputManager::WasActionReleased(IN CONST String &action)
|
||||
{
|
||||
return WasActionReleased(s_actionNames[action]);
|
||||
}
|
||||
@ -144,7 +142,7 @@ namespace ia::iae
|
||||
{
|
||||
s_actions.pushBack({key});
|
||||
const auto handle = s_actions.size() - 1;
|
||||
s_actionNames[name] = handle;
|
||||
s_actionNames[name] = handle;
|
||||
return handle;
|
||||
}
|
||||
|
||||
@ -155,6 +153,39 @@ namespace ia::iae
|
||||
s_axisInputs[2] = leftKey;
|
||||
s_axisInputs[3] = rightKey;
|
||||
}
|
||||
|
||||
VOID InputManager::SetKey(IN InputKey key, IN BOOL state)
|
||||
{
|
||||
s_keys[(UINT8) key] = state;
|
||||
}
|
||||
|
||||
VOID InputManager::SetAxis(IN BOOL up, IN BOOL down, IN BOOL left, IN BOOL right)
|
||||
{
|
||||
s_keys[(UINT8) s_axisInputs[0]] = up;
|
||||
s_keys[(UINT8) s_axisInputs[1]] = down;
|
||||
s_keys[(UINT8) s_axisInputs[2]] = left;
|
||||
s_keys[(UINT8) s_axisInputs[3]] = right;
|
||||
}
|
||||
|
||||
VOID InputManager::SetAxisUp(IN BOOL v)
|
||||
{
|
||||
s_keys[(UINT8) s_axisInputs[0]] = v;
|
||||
}
|
||||
|
||||
VOID InputManager::SetAxisDown(IN BOOL v)
|
||||
{
|
||||
s_keys[(UINT8) s_axisInputs[1]] = v;
|
||||
}
|
||||
|
||||
VOID InputManager::SetAxisLeft(IN BOOL v)
|
||||
{
|
||||
s_keys[(UINT8) s_axisInputs[2]] = v;
|
||||
}
|
||||
|
||||
VOID InputManager::SetAxisRight(IN BOOL v)
|
||||
{
|
||||
s_keys[(UINT8) s_axisInputs[3]] = v;
|
||||
}
|
||||
} // namespace ia::iae
|
||||
|
||||
namespace ia::iae
|
||||
@ -209,17 +240,17 @@ namespace ia::iae
|
||||
return InputManager::WasActionReleased(action);
|
||||
}
|
||||
|
||||
BOOL Engine::IsInputActionDown(IN CONST String& action)
|
||||
BOOL Engine::IsInputActionDown(IN CONST String &action)
|
||||
{
|
||||
return InputManager::IsActionDown(action);
|
||||
}
|
||||
|
||||
BOOL Engine::WasInputActionPressed(IN CONST String& action)
|
||||
BOOL Engine::WasInputActionPressed(IN CONST String &action)
|
||||
{
|
||||
return InputManager::WasActionPressed(action);
|
||||
}
|
||||
|
||||
BOOL Engine::WasInputActionReleased(IN CONST String& action)
|
||||
BOOL Engine::WasInputActionReleased(IN CONST String &action)
|
||||
{
|
||||
return InputManager::WasActionReleased(action);
|
||||
}
|
||||
@ -233,4 +264,34 @@ namespace ia::iae
|
||||
{
|
||||
InputManager::BindAxis(upKey, downKey, leftKey, rightKey);
|
||||
}
|
||||
|
||||
VOID Engine::SetKey(IN InputKey key, IN BOOL state)
|
||||
{
|
||||
InputManager::SetKey(key, state);
|
||||
}
|
||||
|
||||
VOID Engine::SetAxis(IN BOOL up, IN BOOL down, IN BOOL left, IN BOOL right)
|
||||
{
|
||||
InputManager::SetAxis(up, down, left, right);
|
||||
}
|
||||
|
||||
VOID Engine::SetAxisUp(IN BOOL v)
|
||||
{
|
||||
InputManager::SetAxisUp(v);
|
||||
}
|
||||
|
||||
VOID Engine::SetAxisDown(IN BOOL v)
|
||||
{
|
||||
InputManager::SetAxisDown(v);
|
||||
}
|
||||
|
||||
VOID Engine::SetAxisLeft(IN BOOL v)
|
||||
{
|
||||
InputManager::SetAxisLeft(v);
|
||||
}
|
||||
|
||||
VOID Engine::SetAxisRight(IN BOOL v)
|
||||
{
|
||||
InputManager::SetAxisRight(v);
|
||||
}
|
||||
} // namespace ia::iae
|
||||
Reference in New Issue
Block a user