mirror of
https://github.com/Steffo99/hella-farm.git
synced 2024-11-22 08:04:23 +00:00
51 lines
1.3 KiB
GDScript
51 lines
1.3 KiB
GDScript
extends Node2D
|
|
class_name MainGame
|
|
|
|
|
|
@export var default_spawn_parent: Node2D
|
|
|
|
@onready var camera: GameCamera = $"GameCamera"
|
|
@onready var inventory: Inventory = %"Inventory"
|
|
@onready var cursor: Cursor = %"Cursor"
|
|
@onready var music: Music = %"Music"
|
|
|
|
var time_elapsed: float = 0.0
|
|
var recipe_timings := {}
|
|
|
|
|
|
static func get_via_group(node: Node) -> MainGame:
|
|
var result = node.get_tree().get_nodes_in_group("game")
|
|
if result.is_empty():
|
|
return null
|
|
return result[0]
|
|
|
|
|
|
func _ready():
|
|
# Set up the gold display
|
|
var gold_counter = inventory.get_counter(&"Gold")
|
|
gold_counter.changed.connect(cursor.gold_display.change)
|
|
cursor.gold_display.set_text(gold_counter.value)
|
|
|
|
func _physics_process(delta: float) -> void:
|
|
time_elapsed += delta
|
|
|
|
func _on_recipe_matched(_m: SummoningRecipe.Match, recipe: SummoningRecipe) -> void:
|
|
var timing = recipe_timings.get(recipe.name)
|
|
if timing == null:
|
|
recipe_timings[recipe.name] = time_elapsed
|
|
Log.p(self, "Recipe %s first completed in: %f s" % [recipe.name, time_elapsed])
|
|
# Quick hack for now
|
|
match recipe.name:
|
|
"FiveSheep":
|
|
music.enable_layer_1()
|
|
music.do_sync()
|
|
"FiveImps":
|
|
music.enable_layer_2()
|
|
"ASkull":
|
|
music.enable_layer_2()
|
|
"FiveChupacabra":
|
|
music.enable_layer_3()
|
|
"FiveTopHats":
|
|
music.enable_layer_3()
|
|
"FiveMonocles":
|
|
music.enable_layer_3()
|