online multiplayer chess game (note server currently down)
Diffstat (limited to 'ui/barbutton/confirmbutton.gd')
| -rw-r--r-- | ui/barbutton/confirmbutton.gd | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/ui/barbutton/confirmbutton.gd b/ui/barbutton/confirmbutton.gd new file mode 100644 index 0000000..d04e2ce --- /dev/null +++ b/ui/barbutton/confirmbutton.gd @@ -0,0 +1,38 @@ +extends BarTextureButton +class_name ConfirmButton + +const Confirm = preload("res://ui/confirm/Confirm.tscn") +var waiting_on_answer: Confirm = null +export(String) var confirm_text = "" + +export(NodePath) onready var status = get_node(status) as StatusLabel + + +func _ready() -> void: + PacketHandler.connect("game_over", self, "set_disabled", [true]) + if Globals.network: + Globals.network.connect("signal_recieved", self, "_signal_recieved") + + +func confirm() -> void: + var confirm = Confirm.instance() + add_child(confirm) + confirm.confirm(self, confirm_text, 20) + waiting_on_answer = confirm + + +func _signal_recieved(_signal: Dictionary) -> void: + pass + + +func _confirmed(what: bool) -> void: + if waiting_on_answer: + if !waiting_on_answer.is_queued_for_deletion(): + waiting_on_answer.queue_free() + waiting_on_answer = null + if what: + after_confirmed() + + +func after_confirmed() -> void: + pass |