diff --git a/id1/glquake/armor.ms2 b/id1/glquake/armor.ms2 deleted file mode 100644 index 8610113..0000000 Binary files a/id1/glquake/armor.ms2 and /dev/null differ diff --git a/id1/glquake/backpack.ms2 b/id1/glquake/backpack.ms2 deleted file mode 100644 index ad635e7..0000000 Binary files a/id1/glquake/backpack.ms2 and /dev/null differ diff --git a/id1/glquake/bolt.ms2 b/id1/glquake/bolt.ms2 deleted file mode 100644 index fc24033..0000000 Binary files a/id1/glquake/bolt.ms2 and /dev/null differ diff --git a/id1/glquake/bolt2.ms2 b/id1/glquake/bolt2.ms2 deleted file mode 100644 index 09b432d..0000000 Binary files a/id1/glquake/bolt2.ms2 and /dev/null differ diff --git a/id1/glquake/bolt3.ms2 b/id1/glquake/bolt3.ms2 deleted file mode 100644 index 09b432d..0000000 Binary files a/id1/glquake/bolt3.ms2 and /dev/null differ diff --git a/id1/glquake/demon.ms2 b/id1/glquake/demon.ms2 deleted file mode 100644 index 8c2fc95..0000000 Binary files a/id1/glquake/demon.ms2 and /dev/null differ diff --git a/id1/glquake/dog.ms2 b/id1/glquake/dog.ms2 deleted file mode 100644 index 1217575..0000000 Binary files a/id1/glquake/dog.ms2 and /dev/null differ diff --git a/id1/glquake/eyes.ms2 b/id1/glquake/eyes.ms2 deleted file mode 100644 index 46bebe0..0000000 Binary files a/id1/glquake/eyes.ms2 and /dev/null differ diff --git a/id1/glquake/flame.ms2 b/id1/glquake/flame.ms2 deleted file mode 100644 index 53ac0ea..0000000 Binary files a/id1/glquake/flame.ms2 and /dev/null differ diff --git a/id1/glquake/flame2.ms2 b/id1/glquake/flame2.ms2 deleted file mode 100644 index 70821fd..0000000 Binary files a/id1/glquake/flame2.ms2 and /dev/null differ diff --git a/id1/glquake/g_light.ms2 b/id1/glquake/g_light.ms2 deleted file mode 100644 index a8dbfa1..0000000 Binary files a/id1/glquake/g_light.ms2 and /dev/null differ diff --git a/id1/glquake/g_nail.ms2 b/id1/glquake/g_nail.ms2 deleted file mode 100644 index 183abbb..0000000 Binary files a/id1/glquake/g_nail.ms2 and /dev/null differ diff --git a/id1/glquake/g_nail2.ms2 b/id1/glquake/g_nail2.ms2 deleted file mode 100644 index 461e9e7..0000000 Binary files a/id1/glquake/g_nail2.ms2 and /dev/null differ diff --git a/id1/glquake/g_rock.ms2 b/id1/glquake/g_rock.ms2 deleted file mode 100644 index 52193c6..0000000 Binary files a/id1/glquake/g_rock.ms2 and /dev/null differ diff --git a/id1/glquake/g_rock2.ms2 b/id1/glquake/g_rock2.ms2 deleted file mode 100644 index 0e7655c..0000000 Binary files a/id1/glquake/g_rock2.ms2 and /dev/null differ diff --git a/id1/glquake/g_shot.ms2 b/id1/glquake/g_shot.ms2 deleted file mode 100644 index 7552234..0000000 Binary files a/id1/glquake/g_shot.ms2 and /dev/null differ diff --git a/id1/glquake/gib1.ms2 b/id1/glquake/gib1.ms2 deleted file mode 100644 index e6761c6..0000000 Binary files a/id1/glquake/gib1.ms2 and /dev/null differ diff --git a/id1/glquake/gib2.ms2 b/id1/glquake/gib2.ms2 deleted file mode 100644 index 57687bb..0000000 Binary files a/id1/glquake/gib2.ms2 and /dev/null differ diff --git a/id1/glquake/gib3.ms2 b/id1/glquake/gib3.ms2 deleted file mode 100644 index 30dc77d..0000000 Binary files a/id1/glquake/gib3.ms2 and /dev/null differ diff --git a/id1/glquake/grenade.ms2 b/id1/glquake/grenade.ms2 deleted file mode 100644 index 9e3f074..0000000 Binary files a/id1/glquake/grenade.ms2 and /dev/null differ diff --git a/id1/glquake/h_demon.ms2 b/id1/glquake/h_demon.ms2 deleted file mode 100644 index 00669e9..0000000 Binary files a/id1/glquake/h_demon.ms2 and /dev/null differ diff --git a/id1/glquake/h_dog.ms2 b/id1/glquake/h_dog.ms2 deleted file mode 100644 index 41fa9fe..0000000 Binary files a/id1/glquake/h_dog.ms2 and /dev/null differ diff --git a/id1/glquake/h_guard.ms2 b/id1/glquake/h_guard.ms2 deleted file mode 100644 index 4fe1677..0000000 Binary files a/id1/glquake/h_guard.ms2 and /dev/null differ diff --git a/id1/glquake/h_knight.ms2 b/id1/glquake/h_knight.ms2 deleted file mode 100644 index 9409a4d..0000000 Binary files a/id1/glquake/h_knight.ms2 and /dev/null differ diff --git a/id1/glquake/h_ogre.ms2 b/id1/glquake/h_ogre.ms2 deleted file mode 100644 index a69beb6..0000000 Binary files a/id1/glquake/h_ogre.ms2 and /dev/null differ diff --git a/id1/glquake/h_player.ms2 b/id1/glquake/h_player.ms2 deleted file mode 100644 index 6a83d4d..0000000 Binary files a/id1/glquake/h_player.ms2 and /dev/null differ diff --git a/id1/glquake/h_wizard.ms2 b/id1/glquake/h_wizard.ms2 deleted file mode 100644 index 6c54860..0000000 Binary files a/id1/glquake/h_wizard.ms2 and /dev/null differ diff --git a/id1/glquake/h_zombie.ms2 b/id1/glquake/h_zombie.ms2 deleted file mode 100644 index 2c87240..0000000 Binary files a/id1/glquake/h_zombie.ms2 and /dev/null differ diff --git a/id1/glquake/invisibl.ms2 b/id1/glquake/invisibl.ms2 deleted file mode 100644 index dd58d5e..0000000 Binary files a/id1/glquake/invisibl.ms2 and /dev/null differ diff --git a/id1/glquake/knight.ms2 b/id1/glquake/knight.ms2 deleted file mode 100644 index eaee504..0000000 Binary files a/id1/glquake/knight.ms2 and /dev/null differ diff --git a/id1/glquake/lavaball.ms2 b/id1/glquake/lavaball.ms2 deleted file mode 100644 index 8e88ecc..0000000 Binary files a/id1/glquake/lavaball.ms2 and /dev/null differ diff --git a/id1/glquake/missile.ms2 b/id1/glquake/missile.ms2 deleted file mode 100644 index 5cbb423..0000000 Binary files a/id1/glquake/missile.ms2 and /dev/null differ diff --git a/id1/glquake/ogre.ms2 b/id1/glquake/ogre.ms2 deleted file mode 100644 index cd0a083..0000000 Binary files a/id1/glquake/ogre.ms2 and /dev/null differ diff --git a/id1/glquake/player.ms2 b/id1/glquake/player.ms2 deleted file mode 100644 index fbe097d..0000000 Binary files a/id1/glquake/player.ms2 and /dev/null differ diff --git a/id1/glquake/quaddama.ms2 b/id1/glquake/quaddama.ms2 deleted file mode 100644 index 69cdf87..0000000 Binary files a/id1/glquake/quaddama.ms2 and /dev/null differ diff --git a/id1/glquake/s_spike.ms2 b/id1/glquake/s_spike.ms2 deleted file mode 100644 index fa2ed46..0000000 Binary files a/id1/glquake/s_spike.ms2 and /dev/null differ diff --git a/id1/glquake/soldier.ms2 b/id1/glquake/soldier.ms2 deleted file mode 100644 index 2bd1032..0000000 Binary files a/id1/glquake/soldier.ms2 and /dev/null differ diff --git a/id1/glquake/spike.ms2 b/id1/glquake/spike.ms2 deleted file mode 100644 index fa2ed46..0000000 Binary files a/id1/glquake/spike.ms2 and /dev/null differ diff --git a/id1/glquake/suit.ms2 b/id1/glquake/suit.ms2 deleted file mode 100644 index 74f3ec1..0000000 Binary files a/id1/glquake/suit.ms2 and /dev/null differ diff --git a/id1/glquake/v_axe.ms2 b/id1/glquake/v_axe.ms2 deleted file mode 100644 index 2309a3d..0000000 Binary files a/id1/glquake/v_axe.ms2 and /dev/null differ diff --git a/id1/glquake/v_light.ms2 b/id1/glquake/v_light.ms2 deleted file mode 100644 index d130885..0000000 Binary files a/id1/glquake/v_light.ms2 and /dev/null differ diff --git a/id1/glquake/v_nail.ms2 b/id1/glquake/v_nail.ms2 deleted file mode 100644 index 45e8747..0000000 Binary files a/id1/glquake/v_nail.ms2 and /dev/null differ diff --git a/id1/glquake/v_nail2.ms2 b/id1/glquake/v_nail2.ms2 deleted file mode 100644 index 75df88c..0000000 Binary files a/id1/glquake/v_nail2.ms2 and /dev/null differ diff --git a/id1/glquake/v_rock.ms2 b/id1/glquake/v_rock.ms2 deleted file mode 100644 index e7c9d26..0000000 Binary files a/id1/glquake/v_rock.ms2 and /dev/null differ diff --git a/id1/glquake/v_rock2.ms2 b/id1/glquake/v_rock2.ms2 deleted file mode 100644 index fb9cf69..0000000 Binary files a/id1/glquake/v_rock2.ms2 and /dev/null differ diff --git a/id1/glquake/v_shot.ms2 b/id1/glquake/v_shot.ms2 deleted file mode 100644 index 760f08c..0000000 Binary files a/id1/glquake/v_shot.ms2 and /dev/null differ diff --git a/id1/glquake/v_shot2.ms2 b/id1/glquake/v_shot2.ms2 deleted file mode 100644 index 4c821a7..0000000 Binary files a/id1/glquake/v_shot2.ms2 and /dev/null differ diff --git a/id1/glquake/w_g_key.ms2 b/id1/glquake/w_g_key.ms2 deleted file mode 100644 index 6aec3ef..0000000 Binary files a/id1/glquake/w_g_key.ms2 and /dev/null differ diff --git a/id1/glquake/w_s_key.ms2 b/id1/glquake/w_s_key.ms2 deleted file mode 100644 index 6aec3ef..0000000 Binary files a/id1/glquake/w_s_key.ms2 and /dev/null differ diff --git a/id1/glquake/w_spike.ms2 b/id1/glquake/w_spike.ms2 deleted file mode 100644 index 9c748d1..0000000 Binary files a/id1/glquake/w_spike.ms2 and /dev/null differ diff --git a/id1/glquake/wizard.ms2 b/id1/glquake/wizard.ms2 deleted file mode 100644 index 124bf2b..0000000 Binary files a/id1/glquake/wizard.ms2 and /dev/null differ diff --git a/id1/glquake/zom_gib.ms2 b/id1/glquake/zom_gib.ms2 deleted file mode 100644 index dad69cd..0000000 Binary files a/id1/glquake/zom_gib.ms2 and /dev/null differ diff --git a/id1/glquake/zombie.ms2 b/id1/glquake/zombie.ms2 deleted file mode 100644 index fb11b92..0000000 Binary files a/id1/glquake/zombie.ms2 and /dev/null differ diff --git a/src/gl.c b/src/gl.c index 8b2e567..ed51572 100644 --- a/src/gl.c +++ b/src/gl.c @@ -112,6 +112,19 @@ static void uninstall_grabs(void) mouse_active = false; } +static int MilskoToQuakeKey(int key){ + return key; +} + +static int MilskoToQuakeMouse(int btn){ + int b = 0; + if(btn == MwLLMouseLeft) b = 0; + if(btn == MwLLMouseMiddle) b = 2; + if(btn == MwLLMouseRight) b = 1; + + return K_MOUSE1 + b; +} + MwPoint mouse; void mousemove(MwWidget handle, void* user, void* call) { MwPoint* p = call; @@ -126,6 +139,26 @@ void mousemove(MwWidget handle, void* user, void* call) { mouse = *p; } +void key(MwWidget handle, void* user, void* call){ + int k = *(int*)call; + Key_Event(MilskoToQuakeKey(k), 1); +} + +void keyrelease(MwWidget handle, void* user, void* call){ + int k = *(int*)call; + Key_Event(MilskoToQuakeKey(k), 0); +} + +void mousedown(MwWidget handle, void* user, void* call){ + MwLLMouse* m = call; + Key_Event(MilskoToQuakeMouse(m->button), 1); +} + +void mouseup(MwWidget handle, void* user, void* call){ + MwLLMouse* m = call; + Key_Event(MilskoToQuakeMouse(m->button), 0); +} + static void HandleEvents(void) { int b; @@ -133,7 +166,7 @@ static void HandleEvents(void) int mwx = vid.width/2; int mwy = vid.height/2; - MwStep(win); + if(MwPending(win)) MwStep(win); if (dowarp) { /* move the mouse to the window center again */ @@ -428,6 +461,10 @@ void VID_Init(unsigned char *palette) MwOpenGLMakeCurrent(opengl); MwAddUserHandler(opengl, MwNmouseMoveHandler, mousemove, NULL); + MwAddUserHandler(opengl, MwNkeyHandler, key, NULL); + MwAddUserHandler(opengl, MwNkeyReleaseHandler, keyrelease, NULL); + MwAddUserHandler(opengl, MwNmouseDownHandler, mousedown, NULL); + MwAddUserHandler(opengl, MwNmouseUpHandler, mouseup, NULL); if(fullscreen){ /* todo */