71 lines
1.6 KiB
GDScript3
71 lines
1.6 KiB
GDScript3
|
extends Popup
|
||
|
|
||
|
onready var game_time = get_node("/root/GameTimer")
|
||
|
|
||
|
var npc_name setget name_set
|
||
|
var dialogue setget dialogue_set
|
||
|
var answers setget answers_set
|
||
|
var npc
|
||
|
var answera setget answera_set
|
||
|
var answerb setget answerb_set
|
||
|
|
||
|
func name_set(new_value):
|
||
|
npc_name = new_value
|
||
|
$DialogBox/NameBox/NPCName.text = new_value
|
||
|
|
||
|
func dialogue_set(new_value):
|
||
|
dialogue = new_value
|
||
|
$DialogBox/Dialogue.text = new_value
|
||
|
|
||
|
func answers_set(new_value):
|
||
|
answers = new_value
|
||
|
$DialogBox/Answers.text = new_value
|
||
|
|
||
|
func answera_set(new_value):
|
||
|
answera = new_value
|
||
|
$DialogBox/ButtonA.text = new_value
|
||
|
|
||
|
func answerb_set(new_value):
|
||
|
answerb = new_value
|
||
|
$DialogBox/ButtonB.text = new_value
|
||
|
|
||
|
func open():
|
||
|
set_process_input(true)
|
||
|
game_time.paused = 1
|
||
|
popup()
|
||
|
$DialogBox/Tween.interpolate_property(
|
||
|
$DialogBox/Dialogue, "percent_visible", 0, 1, 1,
|
||
|
Tween.TRANS_LINEAR,Tween.EASE_IN_OUT
|
||
|
)
|
||
|
$DialogBox/Tween.start()
|
||
|
|
||
|
func close():
|
||
|
set_process_input(false)
|
||
|
hide()
|
||
|
game_time.paused = 0
|
||
|
|
||
|
func _ready():
|
||
|
set_process_input(false)
|
||
|
|
||
|
func _input(event):
|
||
|
if event is InputEventKey:
|
||
|
if event.scancode == KEY_A:
|
||
|
# if _on_ButtonA_pressed():
|
||
|
set_process_input(false)
|
||
|
npc.talk("A")
|
||
|
elif event.scancode == KEY_B:
|
||
|
set_process_input(false)
|
||
|
npc.talk("B")
|
||
|
|
||
|
func _on_ButtonA_pressed():
|
||
|
var a = InputEventKey.new()
|
||
|
a.scancode = KEY_A
|
||
|
a.pressed = true # change to false to simulate a key release
|
||
|
Input.parse_input_event(a)
|
||
|
|
||
|
func _on_ButtonB_pressed():
|
||
|
var a = InputEventKey.new()
|
||
|
a.scancode = KEY_B
|
||
|
a.pressed = true # change to false to simulate a key release
|
||
|
Input.parse_input_event(a)
|