Add circle timer

This commit is contained in:
snider committed 2022-08-21 12:07:27 -07:00
1 parent 79f41e7a41
commit 8c45591df9
14 files changed
+122 -9

No files matched your search

+24
View File
@@ -0,0 +1,24 @@
extends Sprite3D
var timer: Timer
func _ready():
material_override
func set_timer(p_timer: Timer):
timer = p_timer
update()
func clear_timer():
timer = null
update()
func _process(delta):
update()
func update():
if timer != null:
visible = true
material_override.set_shader_param("percent", timer.time_left / timer.wait_time)
else:
visible = false
@@ -20,6 +20,7 @@ onready var gen_timer = $"%gen_timer"
onready var progress_text = $"%progress_text"
onready var item_dump = $"%item_dump"
onready var status_light = $"%status_light"
onready var circle_timer = $circle_timer
var item_slots = null
var state = null
@@ -17,9 +17,11 @@ func enter_from(state):
ctx.gen_timer.start()
ctx.status_light.activate()
ctx.progress_text.text = "Progress: 0%"
ctx.circle_timer.set_timer(ctx.gen_timer)
func exit_to(state):
ctx.gen_timer.stop()
ctx.circle_timer.clear_timer()
func update(delta):
var time_left : float = ctx.gen_timer.time_left
+2 -1
View File
@@ -16,9 +16,10 @@ func enter_from(state):
ctx.get_node("grow_timer").start()
ctx.status_light.activate()
ctx.item_dump.enabled = false
ctx.get_node("circle_timer").set_timer(ctx.get_node("grow_timer"))
func exit_to(state):
pass
ctx.get_node("circle_timer").clear_timer()
func on_coin_machine_coin_requirement_met(player):
assert(false, "coin machine should be disabled while growing")
+1
View File
@@ -20,6 +20,7 @@ onready var gen_timer = $"%gen_timer"
onready var item_dump = $"%item_dump"
onready var status_light = $"%status_light"
onready var progress_text = $"%progress_text"
onready var circle_timer = $circle_timer
var state = null
var item_slots
+2 -1
View File
@@ -17,9 +17,10 @@ func enter_from(state):
ctx.status_light.activate()
ctx.gen_timer.start()
ctx.emit_signal("gen_started")
ctx.circle_timer.set_timer(ctx.gen_timer)
func exit_to(state):
pass
ctx.circle_timer.clear_timer()
func update(delta):
var time_left : float = ctx.gen_timer.time_left
+2 -1
View File
@@ -17,9 +17,10 @@ func enter_from(state):
ctx.get_node("cook_timer").start()
ctx.get_node("status_light").activate()
ctx.get_node("circle_timer").set_timer(ctx.get_node("cook_timer"))
func exit_to(state):
pass
ctx.get_node("circle_timer").clear_timer()
func on_coin_machine_coin_requirement_met(player):
assert(false, "coin machine should be disabled while growing")