Files
puzzle-quest/scenes/levels/warcraft/WarCraft.gd
T
darknight 0f2540613b feature/count-object-finding (#61)
Co-authored-by: Vaillant Jeremy <vaillant.jeremy@dev-crea.com>
Reviewed-on: Athena/game-source#61
Co-authored-by: darknight <vaillant.jeremy@dev-crea.com>
Co-committed-by: darknight <vaillant.jeremy@dev-crea.com>
2021-05-30 15:04:33 +02:00

56 lines
1.6 KiB
GDScript

extends "res://scenes/levels/levels.gd"
export (PackedScene) var object_first = load("res://scenes/UI/list_ho/ObjectListFirst.tscn")
export (PackedScene) var object_std = load("res://scenes/UI/list_ho/ObjectListStd.tscn")
export (PackedScene) var object_last = load("res://scenes/UI/list_ho/ObjectListLast.tscn")
onready var last_btn = null
func _ready():
_display_hud_menu()
_play_ambient_sound()
func _display_hud_menu():
var counter = 0
var scene = null
var label_counter = null
for key in meshes:
scene = meshes[key]
_create_button_info(scene, counter, label_counter)
label_counter = scene.label_counter()
counter = counter + 1
# Back to main scene
func _on_TextureButton_pressed():
Global.goto_scene("res://scenes/main.tscn")
func _create_button_info(scene, counter, label_counter):
var btn = null
if counter == 0:
btn = object_first.instance()
elif counter == meshes.size() - 1:
btn = object_last.instance()
else:
btn = object_std.instance()
if label_counter != null and label_counter == scene.label_counter():
last_btn.get_node("Label").set_text(last_btn.get_node("Label").text + " " + String(scene.counter()))
last_btn.set_meta("name", scene.label())
last_btn.set_meta("counter", scene.counter())
last_btn.set_meta("counted", 0)
else:
$ListObjects/ListContainer.add_child(btn)
btn.get_node("Label").set_text(scene.label())
btn.set_meta("name", scene.label())
btn.set_meta("counter", scene.counter())
btn.set_meta("counted", 0)
last_btn = btn
func _play_ambient_sound():
if Global.get_setting_ambient_sound():
$AmbientSound.play()
$AmbientSound.stream_paused = false