mirror of
https://github.com/GarrettGunnell/God-Machine.git
synced 2025-10-19 14:43:16 +00:00
Implement tutorial scene
This commit is contained in:
parent
764d0a6960
commit
0e99846f75
5 changed files with 53 additions and 5 deletions
|
@ -13,6 +13,10 @@ func _init() -> void:
|
|||
neighborhoods.append(Neighborhood.new())
|
||||
neighborhoods.append(Neighborhood.new())
|
||||
|
||||
neighborhoods[1].disable()
|
||||
neighborhoods[2].disable()
|
||||
neighborhoods[3].disable()
|
||||
|
||||
|
||||
func add_neighborhood(n : Neighborhood) -> void:
|
||||
neighborhoods.append(n.duplicate(true))
|
||||
|
|
|
@ -17,6 +17,9 @@ func _init() -> void:
|
|||
empty_byte_strings.resize(8)
|
||||
empty_byte_strings.fill(empty_byte_string)
|
||||
|
||||
spawn_range = Vector2(1, 1)
|
||||
stable_range = Vector2(0, 1)
|
||||
|
||||
set_quadrant_strings(Quadrant.UPPER_LEFT, empty_byte_strings)
|
||||
set_quadrant_strings(Quadrant.UPPER_RIGHT, empty_byte_strings)
|
||||
set_quadrant_strings(Quadrant.LOWER_LEFT, empty_byte_strings)
|
||||
|
|
|
@ -4,14 +4,20 @@ var slide_index = 0
|
|||
|
||||
var slides = []
|
||||
|
||||
var tutorial_automaton : Automaton
|
||||
|
||||
func _ready() -> void:
|
||||
GameMaster.tutorial_setup()
|
||||
slides = get_children()
|
||||
|
||||
slides[slide_index].show()
|
||||
|
||||
tutorial_automaton = Automaton.new()
|
||||
|
||||
|
||||
func previous_slide() -> void:
|
||||
if slide_index == 0: return
|
||||
GameMaster.loaded_preset.emit()
|
||||
|
||||
slides[slide_index].hide()
|
||||
|
||||
|
@ -19,12 +25,19 @@ func previous_slide() -> void:
|
|||
|
||||
slides[slide_index].show()
|
||||
|
||||
if slide_index == 0:
|
||||
GameMaster.load_automaton_from_preset()
|
||||
GameMaster.queue_reseed()
|
||||
|
||||
|
||||
func next_slide() -> void:
|
||||
if slide_index == (slides.size() - 1): return
|
||||
GameMaster.loaded_preset.emit()
|
||||
|
||||
slides[slide_index].hide()
|
||||
|
||||
slide_index += 1
|
||||
|
||||
slides[slide_index].show()
|
||||
|
||||
if slide_index == 1: GameMaster.set_active_automaton(tutorial_automaton)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[gd_scene load_steps=46 format=4 uid="uid://fcc8cpx5ri13"]
|
||||
[gd_scene load_steps=47 format=4 uid="uid://fcc8cpx5ri13"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://drfxlavovcgta" path="res://Assets/Scripts/automata_compositor_effect.gd" id="1_4ppop"]
|
||||
[ext_resource type="Script" uid="uid://bv7ngik6tjsjc" path="res://Assets/Scenes/slideshow.gd" id="2_1w871"]
|
||||
|
@ -34,6 +34,7 @@
|
|||
[ext_resource type="Texture2D" uid="uid://cwchwinllsefv" path="res://Assets/Textures/Tutorial Slides/slide 6.png" id="27_ehy4s"]
|
||||
[ext_resource type="Texture2D" uid="uid://dj8gys728ndb3" path="res://Assets/Textures/Tutorial Slides/slide 7.png" id="28_a21j5"]
|
||||
[ext_resource type="Texture2D" uid="uid://f144ca7ncoiu" path="res://Assets/Textures/Tutorial Slides/slide 8.png" id="29_ioof4"]
|
||||
[ext_resource type="Script" uid="uid://n1c7utg00au7" path="res://Assets/Scripts/UI/reseed_button.gd" id="31_n1iyd"]
|
||||
[ext_resource type="Texture2D" uid="uid://c4xfg8a07ddy4" path="res://Assets/Textures/UI/left slide button.png" id="32_xhr83"]
|
||||
[ext_resource type="Script" uid="uid://cglvstu26dupc" path="res://Assets/Scenes/previous_button.gd" id="34_ssaki"]
|
||||
[ext_resource type="Script" uid="uid://vqe37s4t7tyf" path="res://Assets/Scenes/next_button.gd" id="35_64lsc"]
|
||||
|
@ -949,6 +950,24 @@ offset_bottom = 456.0
|
|||
mouse_default_cursor_shape = 2
|
||||
script = ExtResource("24_2o5qy")
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Slides/TextureRect7"]
|
||||
offset_left = 1460.0
|
||||
offset_top = 768.0
|
||||
offset_right = 1546.0
|
||||
offset_bottom = 808.0
|
||||
scale = Vector2(2, 2)
|
||||
texture = ExtResource("6_4prdx")
|
||||
stretch_mode = 2
|
||||
|
||||
[node name="Reseed Button" type="Panel" parent="Slides/TextureRect7"]
|
||||
z_index = 1
|
||||
offset_left = 1459.0
|
||||
offset_top = 775.0
|
||||
offset_right = 1639.0
|
||||
offset_bottom = 837.0
|
||||
mouse_default_cursor_shape = 2
|
||||
script = ExtResource("31_n1iyd")
|
||||
|
||||
[node name="TextureRect8" type="TextureRect" parent="Slides"]
|
||||
visible = false
|
||||
texture_filter = 1
|
||||
|
@ -967,7 +986,7 @@ scale = Vector2(4, 4)
|
|||
texture = ExtResource("6_4prdx")
|
||||
stretch_mode = 2
|
||||
|
||||
[node name="Previous Button" type="Panel" parent="Slides/TextureRect8"]
|
||||
[node name="Play Game Button" type="Panel" parent="Slides/TextureRect8"]
|
||||
z_index = 1
|
||||
layout_mode = 0
|
||||
offset_left = 799.0
|
||||
|
@ -1143,9 +1162,12 @@ autoplay = true
|
|||
[connection signal="gui_input" from="Slides/TextureRect7/Neighborhood 1/Tool Bar/Stable Upper Button" to="Slides/TextureRect7/Neighborhood 1/Tool Bar/Stable Upper Button" method="_on_gui_input"]
|
||||
[connection signal="mouse_entered" from="Slides/TextureRect7/Neighborhood 1/Tool Bar/Stable Upper Button" to="Slides/TextureRect7/Neighborhood 1/Tool Bar/Stable Upper Button" method="_on_mouse_entered"]
|
||||
[connection signal="mouse_exited" from="Slides/TextureRect7/Neighborhood 1/Tool Bar/Stable Upper Button" to="Slides/TextureRect7/Neighborhood 1/Tool Bar/Stable Upper Button" method="_on_mouse_exited"]
|
||||
[connection signal="gui_input" from="Slides/TextureRect8/Previous Button" to="Slides/TextureRect8/Previous Button" method="_on_gui_input"]
|
||||
[connection signal="mouse_entered" from="Slides/TextureRect8/Previous Button" to="Slides/TextureRect8/Previous Button" method="_on_mouse_entered"]
|
||||
[connection signal="mouse_exited" from="Slides/TextureRect8/Previous Button" to="Slides/TextureRect8/Previous Button" method="_on_mouse_exited"]
|
||||
[connection signal="gui_input" from="Slides/TextureRect7/Reseed Button" to="Slides/TextureRect7/Reseed Button" method="_on_gui_input"]
|
||||
[connection signal="mouse_entered" from="Slides/TextureRect7/Reseed Button" to="Slides/TextureRect7/Reseed Button" method="_on_mouse_entered"]
|
||||
[connection signal="mouse_exited" from="Slides/TextureRect7/Reseed Button" to="Slides/TextureRect7/Reseed Button" method="_on_mouse_exited"]
|
||||
[connection signal="gui_input" from="Slides/TextureRect8/Play Game Button" to="Slides/TextureRect8/Play Game Button" method="_on_gui_input"]
|
||||
[connection signal="mouse_entered" from="Slides/TextureRect8/Play Game Button" to="Slides/TextureRect8/Play Game Button" method="_on_mouse_entered"]
|
||||
[connection signal="mouse_exited" from="Slides/TextureRect8/Play Game Button" to="Slides/TextureRect8/Play Game Button" method="_on_mouse_exited"]
|
||||
[connection signal="gui_input" from="Node2D/Previous Button" to="Node2D/Previous Button" method="_on_gui_input"]
|
||||
[connection signal="mouse_entered" from="Node2D/Previous Button" to="Node2D/Previous Button" method="_on_mouse_entered"]
|
||||
[connection signal="mouse_exited" from="Node2D/Previous Button" to="Node2D/Previous Button" method="_on_mouse_exited"]
|
||||
|
|
|
@ -90,6 +90,7 @@ func get_seed() -> int:
|
|||
|
||||
func set_active_automaton(robot : Automaton) -> void:
|
||||
active_automaton = robot.duplicate(true)
|
||||
loaded_preset.emit()
|
||||
|
||||
|
||||
func get_active_automaton() -> Automaton:
|
||||
|
@ -149,6 +150,11 @@ func start_game() -> void:
|
|||
get_tree().change_scene_to_file("res://Assets/Scenes/main.tscn")
|
||||
|
||||
|
||||
func tutorial_setup() -> void:
|
||||
current_seed = 213451
|
||||
|
||||
|
||||
|
||||
|
||||
func _input(event: InputEvent) -> void:
|
||||
if event is InputEventKey and event.pressed and not event.echo:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue