summaryrefslogtreecommitdiff
path: root/Pad.cpp
blob: 6a003075127f7fa4df961d8e78faee11164ff3ea (plain) (blame)
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
/* *************************************
 *  Includes
 * *************************************/

#include "Pad.h"

/* *************************************
 *  Defines
 * *************************************/

/* *************************************
 *  Structs and enums
 * *************************************/

bool PadButtonReleased(PAD_BUTTONS btn)
{
    return gb.buttons.released(btn);
}

bool PadButtonPressed(PAD_BUTTONS btn)
{
    return PadButtonPressedFrames(btn, 0);
}

bool PadButtonPressedFrames(PAD_BUTTONS btn, uint8_t frames)
{
    return gb.buttons.timeHeld(btn) > frames;
}

bool PadDirectionKeyPressed(void)
{
    return (    PadButtonPressed(PAD_UP)
                        ||
                PadButtonPressed(PAD_DOWN)
                        ||
                PadButtonPressed(PAD_LEFT)
                        ||
                PadButtonPressed(PAD_RIGHT) );
}

bool PadAnyKeyPressed(void)
{
    return (    (PadDirectionKeyPressed() != false)
                        ||
                (PadButtonPressed(PAD_A) != false)
                        ||
                (PadButtonPressed(PAD_B) != false)  );
}