summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorJan Tuomi <jan.tuomi@valuemotive.com>2020-08-01 17:37:30 +0300
committerJan Tuomi <jan.tuomi@valuemotive.com>2020-08-01 17:37:30 +0300
commit3bcbdb538b69135907caf9e0ecc224a95c133155 (patch)
treeb903785c3bcd3293ff41b3a4ceaa8c8a4d2b68df /scripts
parent7456670d9ae8793e2fcab57f4919402f410a0845 (diff)
Work on dialogue
Diffstat (limited to 'scripts')
-rw-r--r--scripts/GUI.gd2
-rw-r--r--scripts/Game.gd14
-rw-r--r--scripts/PlayerCharacter.gd10
3 files changed, 17 insertions, 9 deletions
diff --git a/scripts/GUI.gd b/scripts/GUI.gd
index 90a84bb..a4ec573 100644
--- a/scripts/GUI.gd
+++ b/scripts/GUI.gd
@@ -1,7 +1,7 @@
extends MarginContainer
class_name GUI
export (bool) var show_debug = true
-onready var debug_label = $VBoxContainer/DebugLabel
+onready var debug_label = $TopRow/DebugLabel
# Declare member variables here. Examples:
# var a = 2
diff --git a/scripts/Game.gd b/scripts/Game.gd
index e36fdfe..087b5e1 100644
--- a/scripts/Game.gd
+++ b/scripts/Game.gd
@@ -24,7 +24,7 @@ func _on_Level_ready():
update_debug_gui()
func change_level(num: int):
- var new_scene = "res://scenes/Level" + String(num) + ".tscn"
+ var new_scene = "res://scenes/Level%s.tscn" % num
var cur_level = $Level
self.remove_child(cur_level)
@@ -40,3 +40,15 @@ func change_level(num: int):
self.add_child(new_level)
new_level.set_name("Level")
+
+func run_dialogue(other: Node2D):
+ var dialogues: Array = other.get_dialogue()
+ $CanvasLayer/GUI/BottomRow/DialogueBox.set_visible(true)
+ for d in dialogues:
+ var name = d["name"]
+ var body = d["body"]
+ $CanvasLayer/GUI/BottomRow/DialogueBox/Name.set_text(name)
+ $CanvasLayer/GUI/BottomRow/DialogueBox/Text.set_text(body)
+ print("[%s] %s" % [name, body])
+ yield(get_tree().create_timer(1.0), "timeout")
+ $CanvasLayer/GUI/BottomRow/DialogueBox.set_visible(false)
diff --git a/scripts/PlayerCharacter.gd b/scripts/PlayerCharacter.gd
index 3cf4518..4e194d0 100644
--- a/scripts/PlayerCharacter.gd
+++ b/scripts/PlayerCharacter.gd
@@ -39,14 +39,10 @@ func _process(_delta):
$Sprite.set_scale(Vector2(look_dir, 1))
-func run_dialogue(other):
+func run_dialogue(other: Node2D):
dialogue_active_with = other
- var dialogues: Array = other.get_dialogue()
- for d in dialogues:
- var name = d["name"]
- var body = d["body"]
- print("[%s] %s" % [name, body])
-
+ var game: Game = get_tree().get_root().get_node("Game")
+ game.run_dialogue(other)
func _physics_process(_delta):
get_input()