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)
|
||||
{
|
||||
int b;
|
||||
char *p;
|
||||
char buf[1024];
|
||||
|
||||
|
@ -2152,10 +2151,11 @@ static int game_input(int down, const char *key)
|
|||
return -1;
|
||||
}
|
||||
|
||||
b = instead_bretval(0);
|
||||
instead_clear();
|
||||
if (!b)
|
||||
p = instead_retval(0); instead_clear();
|
||||
if (!p)
|
||||
return -1;
|
||||
mouse_reset(0);
|
||||
game_cmd(p); free(p);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -2175,8 +2175,7 @@ int game_loop(void)
|
|||
break;
|
||||
} else if (curgame_dir && (ev.type == KEY_DOWN || ev.type == KEY_UP)
|
||||
&& !game_input((ev.type == KEY_DOWN), ev.sym)) {
|
||||
mouse_reset(0);
|
||||
game_cmd("look");
|
||||
; /* all is done in game_input */
|
||||
} else if (((ev.type == KEY_DOWN) || (ev.type == KEY_UP)) &&
|
||||
(!is_key(&ev, "left alt") || !is_key(&ev, "right alt"))) {
|
||||
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)
|
||||
{
|
||||
int b;
|
||||
char *p;
|
||||
if (game_paused())
|
||||
return;
|
||||
if (instead_eval("return stead.timer()")) {
|
||||
instead_clear();
|
||||
return;
|
||||
}
|
||||
b = instead_bretval(0);
|
||||
instead_clear();
|
||||
if (!b)
|
||||
p = instead_retval(0); instead_clear();
|
||||
if (!p)
|
||||
return;
|
||||
mouse_reset(0);
|
||||
game_cmd("look");
|
||||
game_cmd(p); free(p);
|
||||
}
|
||||
|
||||
static int instead_fn(int interval, void *p)
|
||||
|
|
Reference in a new issue