diff options
author | Robert Clarke <clarke.john.robert@gmail.com> | 2023-02-12 09:49:23 +0100 |
---|---|---|
committer | Robert Clarke <clarke.john.robert@gmail.com> | 2023-02-12 09:49:23 +0100 |
commit | b9e452345899d0066fdae143ec21609fc1996831 (patch) | |
tree | 0de7878a04c0d46835208147c4ab4faba1d3ebee /game/src/SampleGame.gd | |
parent | d45323cadee9044d8536f7eb9827a43b36e4bdff (diff) |
Simple example of Godot querying and updating the state of a C++ object
Diffstat (limited to 'game/src/SampleGame.gd')
-rw-r--r-- | game/src/SampleGame.gd | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/game/src/SampleGame.gd b/game/src/SampleGame.gd new file mode 100644 index 0000000..0e3a61d --- /dev/null +++ b/game/src/SampleGame.gd @@ -0,0 +1,40 @@ +extends Control + +var selectedId = 0 + +# Called when the node enters the scene tree for the first time. +func _ready(): + updateVisibleInfo() + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta): +# pass + + +func updateVisibleInfo(): + $CenterContainer/VBoxContainer2/GridContainer/ProvinceNumDisplay.text = str(selectedId) + $CenterContainer/VBoxContainer2/GridContainer/ProvinceSizeDisplay.text = str(Simulation.queryProvinceSize(selectedId)) + + +func _on_pass_time_button_pressed(): + Simulation.conductSimulationStep() + updateVisibleInfo() + + +func _on_next_prov_button_pressed(): + selectedId = (selectedId + 1) % 10 + updateVisibleInfo() + + +func _on_prev_prov_button_pressed(): + if selectedId == 0: + selectedId = 9 + else: + selectedId -= 1 + updateVisibleInfo() + + +func _on_to_main_menu_pressed(): + get_tree().change_scene_to_file("res://src/MainMenu.tscn") |