50 lines
843 B
C
50 lines
843 B
C
|
#include "keyboard.h"
|
||
|
#include "mario.h"
|
||
|
#include <gint/keyboard.h>
|
||
|
|
||
|
mkey_t keys[6]={0};
|
||
|
|
||
|
void update_keyboard()
|
||
|
{
|
||
|
key_event_t e;
|
||
|
e=pollevent();
|
||
|
while(e.type!=KEYEV_NONE)
|
||
|
{
|
||
|
mkey_t k = MK_NONE;
|
||
|
|
||
|
if(e.key==KEY_LEFT)
|
||
|
k=MK_LEFT;
|
||
|
if(e.key==KEY_RIGHT)
|
||
|
k=MK_RIGHT;
|
||
|
|
||
|
if(e.key==KEY_SHIFT)
|
||
|
k=MK_JUMP1;
|
||
|
if(e.key==KEY_UP)
|
||
|
k=MK_JUMP2;
|
||
|
|
||
|
if(e.key==KEY_DOWN)
|
||
|
k=MK_LITTLE;
|
||
|
|
||
|
if(e.key==KEY_ALPHA)
|
||
|
k=MK_RUN;
|
||
|
|
||
|
if(keydown(KEY_EXIT))
|
||
|
{
|
||
|
global_quit=1;
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
if (k!=MK_NONE)
|
||
|
{
|
||
|
if (e.type==KEYEV_DOWN)
|
||
|
{
|
||
|
keys[k]=1;
|
||
|
}
|
||
|
if (e.type==KEYEV_UP)
|
||
|
{
|
||
|
keys[k]=0;
|
||
|
}
|
||
|
}
|
||
|
e=pollevent();
|
||
|
}
|
||
|
}
|