return false;
}
case "key_pressed":
+ case "key_released":
{
- if((minigame.minigame_flags & TTT_TURN_TEAM) == minigame_self.team)
+ bool event_blocked = ((event == "key_released")
+ || ((minigame.minigame_flags & TTT_TURN_TEAM) != minigame_self.team));
+ if (!(minigame.minigame_flags & TTT_TURN_WIN) && !(minigame.minigame_flags & TTT_TURN_DRAW))
{
switch ( ...(0,int) )
{
case K_RIGHTARROW:
case K_KP_RIGHTARROW:
+ if (event_blocked)
+ return true;
if ( ! ttt_curr_pos )
ttt_set_curr_pos("a3");
else
return true;
case K_LEFTARROW:
case K_KP_LEFTARROW:
+ if (event_blocked)
+ return true;
if ( ! ttt_curr_pos )
ttt_set_curr_pos("c3");
else
return true;
case K_UPARROW:
case K_KP_UPARROW:
+ if (event_blocked)
+ return true;
if ( ! ttt_curr_pos )
ttt_set_curr_pos("a1");
else
return true;
case K_DOWNARROW:
case K_KP_DOWNARROW:
+ if (event_blocked)
+ return true;
if ( ! ttt_curr_pos )
ttt_set_curr_pos("a3");
else
case K_ENTER:
case K_KP_ENTER:
case K_SPACE:
+ if (event_blocked)
+ return true;
ttt_make_move(minigame);
return true;
}
{
if(...(0,int) == K_MOUSE1)
{
+ ttt_client_event(minigame, "mouse_moved");
ttt_make_move(minigame);
return true;
}