21 lines
395 B
GDScript3
21 lines
395 B
GDScript3
|
extends Node
|
||
|
|
||
|
var states: Array[int] = []
|
||
|
var curr_state := false
|
||
|
var last_change: int = 0
|
||
|
var start_time := 0
|
||
|
|
||
|
func reset() -> void:
|
||
|
last_change = Time.get_ticks_msec()
|
||
|
start_time = last_change
|
||
|
states = []
|
||
|
|
||
|
func set_state(state: bool) -> void:
|
||
|
if state == curr_state:
|
||
|
return
|
||
|
curr_state = state
|
||
|
|
||
|
var now := Time.get_ticks_msec()
|
||
|
states.push_front(now - last_change)
|
||
|
last_change = now
|