fixed input with keyboard and controller at the same time
This commit is contained in:
parent
d8fa53801b
commit
eabeb55115
11 changed files with 95 additions and 68 deletions
|
@ -2,18 +2,16 @@
|
|||
#define MOVE_DOWN_COMMAND_H
|
||||
|
||||
#include "GameCommand.h"
|
||||
#include <SDL3/SDL.h>
|
||||
#include "../DataStructures/DirectionButtonStatus.h"
|
||||
|
||||
class MoveDownCommand : public GameCommand
|
||||
{
|
||||
public:
|
||||
MoveDownCommand(SDL_FPoint & directionInput, bool & buttonInput) : m_directionInput(&directionInput), m_buttonInput(&buttonInput) {};
|
||||
~MoveDownCommand() {};
|
||||
void Down() override { m_directionInput->y += 1; *m_buttonInput = true;}
|
||||
void Up() override { m_directionInput->y -= 1; *m_buttonInput = true;}
|
||||
MoveDownCommand(DirectionButtonStatus & buttonStatus) : m_ButtonStatus(&buttonStatus) {};
|
||||
void Down() override { m_ButtonStatus->DownPressed = true;}
|
||||
void Up() override { m_ButtonStatus->DownPressed = false;;}
|
||||
private:
|
||||
SDL_FPoint * m_directionInput;
|
||||
bool * m_buttonInput;
|
||||
DirectionButtonStatus * m_ButtonStatus;
|
||||
};
|
||||
|
||||
#endif
|
|
@ -2,21 +2,16 @@
|
|||
#define MOVE_LEFT_COMMAND_H
|
||||
|
||||
#include "GameCommand.h"
|
||||
#include <iostream>
|
||||
#include <memory>
|
||||
#include <SDL3/SDL.h>
|
||||
#include "../Components/MoveComponent.h"
|
||||
#include "../DataStructures/DirectionButtonStatus.h"
|
||||
|
||||
class MoveLeftCommand : public GameCommand
|
||||
{
|
||||
public:
|
||||
MoveLeftCommand(SDL_FPoint & directionInput, bool & buttonInput) : m_directionInput(&directionInput), m_buttonInput(&buttonInput) {};
|
||||
~MoveLeftCommand() {};
|
||||
void Down() override { m_directionInput->x -= 1; *m_buttonInput = true;}
|
||||
void Up() override { m_directionInput->x += 1; *m_buttonInput = true;}
|
||||
MoveLeftCommand(DirectionButtonStatus & buttonStatus) : m_ButtonStatus(&buttonStatus) {};
|
||||
void Down() override { m_ButtonStatus->LeftPressed = true;}
|
||||
void Up() override { m_ButtonStatus->LeftPressed = false;;}
|
||||
private:
|
||||
SDL_FPoint * m_directionInput;
|
||||
bool * m_buttonInput;
|
||||
DirectionButtonStatus * m_ButtonStatus;
|
||||
};
|
||||
|
||||
#endif
|
|
@ -2,21 +2,16 @@
|
|||
#define MOVE_RIGHT_COMMAND_H
|
||||
|
||||
#include "GameCommand.h"
|
||||
#include <iostream>
|
||||
#include <memory>
|
||||
#include <SDL3/SDL.h>
|
||||
#include "../Components/MoveComponent.h"
|
||||
#include "../DataStructures/DirectionButtonStatus.h"
|
||||
|
||||
class MoveRightCommand : public GameCommand
|
||||
{
|
||||
public:
|
||||
MoveRightCommand(SDL_FPoint & directionInput, bool & buttonInput) : m_directionInput(&directionInput), m_buttonInput(&buttonInput) {};
|
||||
~MoveRightCommand() {};
|
||||
void Down() override { m_directionInput->x += 1; *m_buttonInput = true;}
|
||||
void Up() override { m_directionInput->x -= 1; *m_buttonInput = true;}
|
||||
MoveRightCommand(DirectionButtonStatus & buttonStatus) : m_ButtonStatus(&buttonStatus) {};
|
||||
void Down() override { m_ButtonStatus->RightPressed = true;}
|
||||
void Up() override { m_ButtonStatus->RightPressed = false;;}
|
||||
private:
|
||||
SDL_FPoint * m_directionInput;
|
||||
bool * m_buttonInput;
|
||||
DirectionButtonStatus * m_ButtonStatus;
|
||||
};
|
||||
|
||||
#endif
|
|
@ -2,21 +2,16 @@
|
|||
#define MOVE_UP_COMMAND_H
|
||||
|
||||
#include "GameCommand.h"
|
||||
#include <iostream>
|
||||
#include <memory>
|
||||
#include <SDL3/SDL.h>
|
||||
#include "../Components/MoveComponent.h"
|
||||
#include "../DataStructures/DirectionButtonStatus.h"
|
||||
|
||||
class MoveUpCommand : public GameCommand
|
||||
{
|
||||
public:
|
||||
MoveUpCommand(SDL_FPoint & directionInput, bool & buttonInput) : m_directionInput(&directionInput), m_buttonInput(&buttonInput) {};
|
||||
~MoveUpCommand() {};
|
||||
void Down() override { m_directionInput->y -= 1; *m_buttonInput = true;}
|
||||
void Up() override { m_directionInput->y += 1; *m_buttonInput = true;}
|
||||
MoveUpCommand(DirectionButtonStatus & buttonStatus) : m_ButtonStatus(&buttonStatus) {};
|
||||
void Down() override { m_ButtonStatus->UpPressed = true;}
|
||||
void Up() override { m_ButtonStatus->UpPressed = false;;}
|
||||
private:
|
||||
SDL_FPoint * m_directionInput;
|
||||
bool * m_buttonInput;
|
||||
DirectionButtonStatus * m_ButtonStatus;
|
||||
};
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue