fix in timer and input. todo: mouse?
This commit is contained in:
parent
38e536dab2
commit
dda0cebb15
|
@ -2134,7 +2134,6 @@ static int is_key(struct inp_event *ev, const char *name)
|
||||||
|
|
||||||
static int game_input(int down, const char *key)
|
static int game_input(int down, const char *key)
|
||||||
{
|
{
|
||||||
int b;
|
|
||||||
char *p;
|
char *p;
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
|
|
||||||
|
@ -2152,10 +2151,11 @@ static int game_input(int down, const char *key)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
b = instead_bretval(0);
|
p = instead_retval(0); instead_clear();
|
||||||
instead_clear();
|
if (!p)
|
||||||
if (!b)
|
|
||||||
return -1;
|
return -1;
|
||||||
|
mouse_reset(0);
|
||||||
|
game_cmd(p); free(p);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2175,8 +2175,7 @@ int game_loop(void)
|
||||||
break;
|
break;
|
||||||
} else if (curgame_dir && (ev.type == KEY_DOWN || ev.type == KEY_UP)
|
} else if (curgame_dir && (ev.type == KEY_DOWN || ev.type == KEY_UP)
|
||||||
&& !game_input((ev.type == KEY_DOWN), ev.sym)) {
|
&& !game_input((ev.type == KEY_DOWN), ev.sym)) {
|
||||||
mouse_reset(0);
|
; /* all is done in game_input */
|
||||||
game_cmd("look");
|
|
||||||
} else if (((ev.type == KEY_DOWN) || (ev.type == KEY_UP)) &&
|
} else if (((ev.type == KEY_DOWN) || (ev.type == KEY_UP)) &&
|
||||||
(!is_key(&ev, "left alt") || !is_key(&ev, "right alt"))) {
|
(!is_key(&ev, "left alt") || !is_key(&ev, "right alt"))) {
|
||||||
alt_pressed = (ev.type == KEY_DOWN) ? 1:0;
|
alt_pressed = (ev.type == KEY_DOWN) ? 1:0;
|
||||||
|
|
|
@ -350,19 +350,18 @@ extern void mouse_reset(int hl); /* too bad */
|
||||||
|
|
||||||
static void instead_timer_do(void *data)
|
static void instead_timer_do(void *data)
|
||||||
{
|
{
|
||||||
int b;
|
char *p;
|
||||||
if (game_paused())
|
if (game_paused())
|
||||||
return;
|
return;
|
||||||
if (instead_eval("return stead.timer()")) {
|
if (instead_eval("return stead.timer()")) {
|
||||||
instead_clear();
|
instead_clear();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
b = instead_bretval(0);
|
p = instead_retval(0); instead_clear();
|
||||||
instead_clear();
|
if (!p)
|
||||||
if (!b)
|
|
||||||
return;
|
return;
|
||||||
mouse_reset(0);
|
mouse_reset(0);
|
||||||
game_cmd("look");
|
game_cmd(p); free(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int instead_fn(int interval, void *p)
|
static int instead_fn(int interval, void *p)
|
||||||
|
|
Reference in a new issue