add limit to key requests
This commit is contained in:
parent
c058c274ac
commit
da1c491a09
@ -37,6 +37,7 @@ var prompt_pages_total: int = 0
|
||||
var _rot_sod: SecondOrderDynamics
|
||||
|
||||
var _requested_keys: Array[GameKey] = []
|
||||
var _requested_keys_limit: int = 0
|
||||
|
||||
@onready var _gap_to_size_ratio: float
|
||||
@onready var _pressing_lean_rad := Vector2(
|
||||
@ -116,17 +117,23 @@ func emit_key_press(game_key: GameKey, event: InputEventKey) -> void:
|
||||
key_press_changed.emit(game_key, event)
|
||||
|
||||
|
||||
func request_keys(filter_func: Callable) -> Array[GameKey]:
|
||||
func request_keys(filter_func: Callable, limit: int = 0) -> Array[GameKey]:
|
||||
_requested_keys = []
|
||||
_requested_keys_limit = limit
|
||||
|
||||
keys_requested.emit(filter_func)
|
||||
var requested_keys := _requested_keys
|
||||
|
||||
_requested_keys = []
|
||||
_requested_keys_limit = 0
|
||||
|
||||
requested_keys.sort_custom(GameKey.sort_func)
|
||||
return requested_keys
|
||||
|
||||
|
||||
func key_request_respond(game_key: GameKey) -> void:
|
||||
_requested_keys.append(game_key)
|
||||
if _requested_keys_limit == 0 or _requested_keys.size() < _requested_keys_limit:
|
||||
_requested_keys.append(game_key)
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
Loading…
Reference in New Issue
Block a user