extends Object class_name NetworkMocks static var NOOP = func(): pass static func set_network_tick(p_tick: int) -> void: NetworkTime._tick = p_tick static func set_rollback_tick(p_tick: int) -> void: NetworkRollback._tick = p_tick static func set_tick(network_tick: int, rollback_tick: int) -> void: set_network_tick(network_tick) set_rollback_tick(rollback_tick) static func set_tickrate(tickrate: int) -> void: NetworkTime._tickrate = tickrate static func in_rollback(callback: Callable) -> void: NetworkRollback._is_rollback = true callback.call() NetworkRollback._is_rollback = false ## Runs [param]callback[/param] in the network tick loop static func in_network_tick_loop(callback: Callable) -> void: NetworkTime.before_tick_loop.emit() callback.call() NetworkTime.after_tick_loop.emit() ## Runs [param]callback[/param] as part of a network tick static func in_network_tick(callback: Callable) -> void: NetworkTime.before_tick.emit(NetworkTime.ticktime, NetworkTime.tick) NetworkTime.on_tick.emit(NetworkTime.ticktime, NetworkTime.tick) callback.call() NetworkTime.after_tick.emit(NetworkTime.ticktime, NetworkTime.tick) NetworkTime._tick += 1 ## Runs a single network tick static func run_network_tick() -> void: in_network_tick(NOOP) ## Runs a single-tick network tick loop static func run_network_tick_loop() -> void: in_network_tick_loop(NOOP)