34 lines
650 B
C
34 lines
650 B
C
#ifndef MULTIBUTTON_H
|
|
#define MULTIBUTTON_H
|
|
|
|
#include "gamepad.h"
|
|
|
|
enum {
|
|
Modifier_NONE,
|
|
Modifier_SHIFT,
|
|
};
|
|
|
|
struct Code {
|
|
int modifier;
|
|
int first;
|
|
int second;
|
|
};
|
|
|
|
struct MultiButton {
|
|
struct Button *buttons[8];
|
|
int size;
|
|
struct Button *list[8];
|
|
int available;
|
|
int sequenceSize;
|
|
struct Button *sequence[8];
|
|
int modifier;
|
|
struct Code code;
|
|
};
|
|
|
|
extern void MultiButton_initialize(struct MultiButton *this, struct Gamepad *gamepad);
|
|
extern void MultiButton_reset(struct MultiButton *this);
|
|
extern void MultiButton_update(struct MultiButton *this, struct js_event *event);
|
|
extern void MultiButton_generate(struct MultiButton *this);
|
|
|
|
#endif
|