extends CanvasLayer onready var gold_counter = $GoldCounter onready var shard_counter = $ShardCounter onready var red_star = $RedStar onready var yellow_star = $YellowStar onready var green_star = $GreenStar onready var blue_star = $BlueStar onready var magenta_star = $MagentaStar onready var score_counter = $ScoreCounter onready var arrow_counter = $ArrowCounter onready var lives_counter = $LivesCounter onready var high_counter = $HighCounter onready var time_counter = $TimeCounter onready var oxygen = $Oxygen onready var oxygen_meter = $Oxygen/OxygenMeter onready var start_time = Time.get_ticks_msec() export var song_name = "♫Music" export (Color) var bonus_color func _ready(): #Change graphics depending on if lives are on if Game.use_lives: $LivesHead.visible = true else: $DeathsHead.visible = true #Change text to song name var music = $Music music.text = song_name yield(get_tree(), "idle_frame") var tween = create_tween() tween.tween_property(music, "rect_position:x", 254.0 - music.rect_size.x, 1.0) tween.tween_interval(3.0) tween.tween_property(music, "rect_position:x", 256.0, 1.0) #Fixes frame 1 2 deaths counter if Game.use_lives == false: lives_counter.text = str(Game.deaths) #Show oxygen meter when underwater # var player = get_tree().get_nodes_in_group("player").pop_back() # if player.underwater == true: oxygen.visible = true func shard_popup(shard_number): #Change text to song name var shard_title = $ShardTitle var level = LevelData.levels[Game.current_level] shard_title.text = "§" + str(level.shard_titles[shard_number]) yield(get_tree(), "idle_frame") var tween = create_tween() tween.tween_property(shard_title, "rect_position:x", 254.0 - shard_title.rect_size.x, 1.0) tween.tween_interval(3.0) tween.tween_property(shard_title, "rect_position:x", 256.0, 1.0) func _physics_process(delta): #Gold Counter gold_counter.text = "%02d" % Game.keys #Shard Counter shard_counter.text = str(Game.shards) #Star Counter red_star.visible = Game.stars_collected[0] yellow_star.visible = Game.stars_collected[1] green_star.visible = Game.stars_collected[2] blue_star.visible = Game.stars_collected[3] magenta_star.visible = Game.stars_collected[4] #Score Counter score_counter.text = "%05d" % Game.score #Arrow Counter arrow_counter.text = str(Game.arrows) ##TOUCH UP LATER #Lives counter if Game.use_lives: lives_counter.text = str(Game.lives) else: lives_counter.text = str(Game.deaths) #Life bonus color if Game.lives == 2: lives_counter.modulate = bonus_color else: lives_counter.modulate = Color.white ##Timer Game.time = Time.get_ticks_msec() - start_time time_counter.text = Game.timeify(Game.time) #Time bonus counter if (Game.has_collection_bonus() && Game.time <= Game.get_map().target_time_100) or (!Game.has_collection_bonus() && Game.time <= Game.get_map().target_time_any): time_counter.modulate = bonus_color else: time_counter.modulate = Color.white # #Oxygen meter # var player = get_tree().get_nodes_in_group("player").pop_back() # oxygen_meter.scale.x = player.oxygen_timer.time_left #if oxygen_meter.scale.x > 15: oxygen_meter.scale.x = 15