mirror of
https://github.com/JohnBreaux/Boat-Battle.git
synced 2024-11-14 21:15:58 +00:00
Working debug menu! No text output yet.
This commit is contained in:
parent
e894ddcce9
commit
82501d09b1
@ -22,7 +22,7 @@ transform = Transform2D( 1, 0, 0, 1, 0, -360 )
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="debug_canvas"]
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
margin_bottom = -180.0
|
||||
margin_bottom = -190.0
|
||||
custom_constants/separation = 2
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
@ -31,13 +31,20 @@ __meta__ = {
|
||||
[node name="TextEdit" type="TextEdit" parent="debug_canvas/VBoxContainer"]
|
||||
margin_right = 640.0
|
||||
margin_bottom = 144.0
|
||||
grow_vertical = 0
|
||||
rect_min_size = Vector2( 0, 144 )
|
||||
text = "Turn 0
|
||||
Player 1: 0 ships, 0 hits, 0 misses"
|
||||
readonly = true
|
||||
syntax_highlighting = true
|
||||
fold_gutter = true
|
||||
wrap_enabled = true
|
||||
minimap_draw = true
|
||||
|
||||
[node name="LineEdit" type="LineEdit" parent="debug_canvas/VBoxContainer"]
|
||||
margin_top = 146.0
|
||||
margin_right = 640.0
|
||||
margin_bottom = 170.0
|
||||
text = ">"
|
||||
max_length = 256
|
||||
placeholder_text = "By your command."
|
||||
caret_blink = true
|
||||
|
||||
[connection signal="text_entered" from="debug_canvas/VBoxContainer/LineEdit" to="." method="_on_LineEdit_text_entered"]
|
||||
|
@ -1,6 +1,9 @@
|
||||
extends Control
|
||||
|
||||
# Declare member variables here.
|
||||
var debug_output
|
||||
var debug_line = 0
|
||||
|
||||
var debug_canvas
|
||||
var debug_transform
|
||||
|
||||
@ -9,13 +12,15 @@ var menu_position = 0.0
|
||||
var menu_velocity = 4
|
||||
|
||||
# positions when the menu is hidden/active
|
||||
var menu_hidden = Transform2D(Vector2(1,0), Vector2(0,1), Vector2(0,-180))
|
||||
var menu_hidden = Transform2D(Vector2(1,0), Vector2(0,1), Vector2(0,-170))
|
||||
var menu_active = Transform2D(Vector2(1,0), Vector2(0,1), Vector2(0, 0))
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
|
||||
debug_canvas = get_node("debug_canvas")
|
||||
debug_transform = debug_canvas.get_transform()
|
||||
debug_output = get_node("debug_canvas/VBoxContainer/TextEdit")
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
@ -33,8 +38,26 @@ func _unhandled_input(event):
|
||||
# open debug menu
|
||||
debug_active = !debug_active;
|
||||
|
||||
func _on_LineEdit_text_entered(line):
|
||||
var command = line.split(' ', true, 1)
|
||||
if command.size() > 0:
|
||||
print("match ", command)
|
||||
match command[0]:
|
||||
"open":
|
||||
if command.size() > 1:
|
||||
MessageBus.emit_signal("change_scene", command[1])
|
||||
else:
|
||||
debug_print_line("Usage: open scene")
|
||||
"kill":
|
||||
if command.size() > 1:
|
||||
MessageBus.emit_signal("kill_scene", command[1])
|
||||
else:
|
||||
debug_print_line("Usage: kill scene")
|
||||
"restart":
|
||||
MessageBus.emit_signal("return_to_title")
|
||||
else:
|
||||
pass
|
||||
|
||||
|
||||
func _on_LineEdit_text_entered(new_text):
|
||||
|
||||
pass # Replace with function body.
|
||||
func debug_print_line(string):
|
||||
debug_output.set_line(debug_line, string)
|
||||
debug_line += 1
|
||||
|
@ -11,7 +11,8 @@ var debug_enabled = true
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
# Connect to signals
|
||||
MessageBus.connect("change_scene", self, "_on_change_scene")
|
||||
MessageBus.connect("change_scene", self, "_on_scene_start")
|
||||
MessageBus.connect("kill_scene", self, "_on_scene_kill")
|
||||
MessageBus.connect("quit", self, "_on_quit_request")
|
||||
MessageBus.connect("return_to_title", self, "_on_title_request")
|
||||
# Create the scenes
|
||||
@ -21,21 +22,33 @@ func _ready():
|
||||
debug_menu = preload("res://scenes/Debug Menu.tscn")
|
||||
if debug_enabled:
|
||||
add_child(debug_menu.instance())
|
||||
_on_change_scene("Title")
|
||||
_on_scene_start("Title")
|
||||
|
||||
func _on_change_scene(scene):
|
||||
# Creates a new instance of each menu scene
|
||||
func _on_scene_start(scene):
|
||||
print ("_on_scene_start(",scene,")")
|
||||
match scene:
|
||||
"Singleplayer":
|
||||
add_child(gameplay.instance())
|
||||
"Multiplayer":
|
||||
add_child(gameplay.instance())
|
||||
"Options":
|
||||
add_child(options.instance())
|
||||
"Title":
|
||||
add_child(title_screen.instance())
|
||||
"Singleplayer": add_child (gameplay.instance())
|
||||
"Multiplayer":
|
||||
add_child (gameplay.instance())
|
||||
# add_child (multiplayercontroller.instance())
|
||||
"Options": add_child (options.instance())
|
||||
"Title": add_child (title_screen.instance())
|
||||
|
||||
# Kills all child nodes with name matching `scene`
|
||||
func _on_scene_kill(scene):
|
||||
print ("_on_scene_kill(",scene,")")
|
||||
var c = get_children()
|
||||
for i in range (c.size()):
|
||||
if c[i].name == scene:
|
||||
c[i].queue_free()
|
||||
|
||||
# Quits
|
||||
func _on_quit_request():
|
||||
print ("_on_quit_request()")
|
||||
get_tree().quit()
|
||||
|
||||
|
||||
# Kills the current tree and replaces it with a new one
|
||||
func _on_title_request():
|
||||
get_tree().change_scene("res://scenes/Main.tscn")
|
||||
print ("_on_title_request()")
|
||||
return get_tree().change_scene("res://scenes/Main.tscn")
|
||||
|
@ -3,7 +3,11 @@ extends Node
|
||||
# Ask for a scene change
|
||||
signal change_scene(scene_name)
|
||||
# Ask to kill scene
|
||||
signal kill_scene(scene_name)
|
||||
# Ask to quit the game
|
||||
signal quit
|
||||
# Ask to return to title screen
|
||||
signal return_to_title
|
||||
|
||||
# Ask to print a string to debug console
|
||||
signal print_console(string)
|
||||
|
Loading…
Reference in New Issue
Block a user