Skip to content

Commit a28b47c

Browse files
committed
wip: nearly all the rest of the types
Saving this Puzz parser for last - then we move on to ironing out these dictionaries.
1 parent 2cfc80d commit a28b47c

27 files changed

+382
-741
lines changed

project.godot

-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ Juice="*res://addons/bones/Juice.gd"
3636
[debug]
3737

3838
gdscript/warnings/untyped_declaration=1
39-
gdscript/warnings/inferred_declaration=1
4039
gdscript/warnings/unsafe_property_access=1
4140
gdscript/warnings/unsafe_method_access=1
4241
gdscript/warnings/unsafe_call_argument=1

src/credits/Credits.gd

+21-21
Original file line numberDiff line numberDiff line change
@@ -7,43 +7,43 @@ class_name Credits
77
@onready var credits_lines_container: VBoxContainer = $%CreditsLinesContainer
88
@onready var credits_scroll_container: ScrollContainer = $%CreditsScrollContainer
99

10-
var pause_scroll_delay = 2.0
11-
@onready var scroll_delay = pause_scroll_delay
12-
var scroll_delay_per_line = 0.05
13-
var since_last_scroll = 0
10+
var pause_scroll_delay := 2.0
11+
@onready var scroll_delay := pause_scroll_delay
12+
var scroll_delay_per_line := 0.05
13+
var since_last_scroll := 0.0
1414

15-
var added_lines = []
15+
var added_lines := []
1616

1717
## ready ############################################################
1818

19-
func _ready():
19+
func _ready() -> void:
2020
credits_scroll_container.scroll_vertical = 0
2121
scroll_delay = pause_scroll_delay
2222

2323
# clear lines
24-
for l in added_lines:
24+
for l: Node in added_lines:
2525
credits_lines_container.remove_child(l)
2626
l.queue_free()
2727

2828
added_lines = []
2929

30-
for lines in get_credit_lines():
31-
var header_lines = []
32-
var body_lines = []
33-
var first_line
34-
for l in lines:
30+
for lines: Array in get_credit_lines():
31+
# var header_lines: Array = []
32+
# var body_lines: Array = []
33+
var first_line := ""
34+
for l: String in lines:
3535
if l != "":
3636
first_line = l
3737
break
3838

39-
var line_label
39+
var line_label: Label
4040
if first_line.begins_with("# "):
4141
line_label = credit_header_scene.instantiate()
4242
else:
4343
line_label = credit_line_scene.instantiate()
4444

4545
line_label.text = "[center]\n"
46-
for line in lines:
46+
for line: String in lines:
4747
if line == first_line:
4848
line = line.trim_prefix("# ")
4949
line_label.text += line + "\n"
@@ -53,10 +53,10 @@ func _ready():
5353

5454
## input ############################################################
5555

56-
var scroll_direction = Vector2.ZERO
56+
var scroll_direction := Vector2.ZERO
5757

58-
func _unhandled_input(event):
59-
var move_vec = Trolls.move_vector()
58+
func _unhandled_input(event: InputEvent) -> void:
59+
var move_vec: Vector2 = Trolls.move_vector()
6060
if Trolls.is_move_up(event) or move_vec.y < -0.2 or Trolls.is_restart(event):
6161
scroll_direction = Vector2.UP
6262
elif Trolls.is_move_down(event) or move_vec.y > 0.2 or Trolls.is_close(event):
@@ -67,15 +67,15 @@ func _unhandled_input(event):
6767

6868
## process ############################################################
6969

70-
func _process(delta):
70+
func _process(delta: float) -> void:
7171
if scroll_direction != Vector2.ZERO:
7272
match scroll_direction:
7373
Vector2.UP: credits_scroll_container.scroll_vertical -= 30
7474
Vector2.DOWN: credits_scroll_container.scroll_vertical += 30
7575
return
7676

7777
if scroll_delay <= 0:
78-
if since_last_scroll <= 0:
78+
if since_last_scroll <= 0.0:
7979
credits_scroll_container.scroll_vertical += 1
8080
since_last_scroll = scroll_delay_per_line
8181
else:
@@ -85,12 +85,12 @@ func _process(delta):
8585

8686
## credits ############################################################
8787

88-
var credits = [
88+
var credits := [
8989
["A game"],
9090
["Created for the some game jam"],
9191
["Made in Godot, Aseprite, and Emacs"],
9292
]
9393

9494
# overwrite in children
95-
func get_credit_lines():
95+
func get_credit_lines() -> Array:
9696
return credits

src/menus/Credits.gd

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
@tool
22
extends Credits
33

4-
var dothop_credits = [
4+
var dothop_credits := [
55
[
66
"",
77
"",
@@ -218,22 +218,22 @@ var dothop_credits = [
218218
],
219219
]
220220

221-
func get_credit_lines():
221+
func get_credit_lines() -> Array:
222222
return dothop_credits
223223

224224
## vars #################################################
225225

226-
@onready var main_menu_button = $%MainMenuButton
226+
@onready var main_menu_button: Button = $%MainMenuButton
227227

228228
## ready #################################################
229229

230-
func _ready():
230+
func _ready() -> void:
231231
if not Engine.is_editor_hint():
232232
SoundManager.play_music(Music.late_night_radio)
233233

234234
super._ready()
235-
main_menu_button.pressed.connect(func():
235+
main_menu_button.pressed.connect(func() -> void:
236236
Navi.nav_to_main_menu())
237237
main_menu_button.grab_focus.call_deferred()
238-
main_menu_button.visibility_changed.connect(func():
238+
main_menu_button.visibility_changed.connect(func() -> void:
239239
main_menu_button.grab_focus())

src/menus/MainMenu.gd

+17-17
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,33 @@
11
@tool
22
extends CanvasLayer
33

4-
@onready var start_button = $%StartButton
5-
@onready var options_button = $%OptionsButton
6-
@onready var credits_button = $%CreditsButton
7-
@onready var quit_button = $%QuitButton
8-
@onready var puzzle_stats_label = $%PuzzleStatsLabel
4+
@onready var start_button: Button = $%StartButton
5+
@onready var options_button: Button = $%OptionsButton
6+
@onready var credits_button: Button = $%CreditsButton
7+
@onready var quit_button: Button = $%QuitButton
8+
@onready var puzzle_stats_label: RichTextLabel = $%PuzzleStatsLabel
99

10-
@onready var world_map = preload("res://src/menus/worldmap/WorldMapMenu.tscn")
11-
@onready var options_menu = preload("res://src/menus/OptionsPanel.tscn")
12-
@onready var credits_menu = preload("res://src/menus/Credits.tscn")
10+
@onready var world_map: PackedScene = preload("res://src/menus/worldmap/WorldMapMenu.tscn")
11+
@onready var options_menu: PackedScene = preload("res://src/menus/OptionsPanel.tscn")
12+
@onready var credits_menu: PackedScene = preload("res://src/menus/Credits.tscn")
1313

14-
func _ready():
14+
func _ready() -> void:
1515
if not Engine.is_editor_hint():
1616
SoundManager.play_music(Music.late_night_radio)
17-
U.call_in(self, func(): GodotSteam.set_first_hop(), 0.8)
17+
U.call_in(self, func() -> void: GodotSteam.set_first_hop(), 0.8)
1818

1919
start_button.grab_focus.call_deferred()
20-
start_button.visibility_changed.connect(func(): start_button.grab_focus())
20+
start_button.visibility_changed.connect(func() -> void: start_button.grab_focus())
2121

22-
start_button.pressed.connect(func(): Navi.nav_to(world_map))
23-
options_button.pressed.connect(func(): Navi.nav_to(options_menu))
24-
credits_button.pressed.connect(func(): Navi.nav_to(credits_menu))
25-
quit_button.pressed.connect(func(): get_tree().quit())
22+
start_button.pressed.connect(func() -> void: Navi.nav_to(world_map))
23+
options_button.pressed.connect(func() -> void: Navi.nav_to(options_menu))
24+
credits_button.pressed.connect(func() -> void: Navi.nav_to(credits_menu))
25+
quit_button.pressed.connect(func() -> void: get_tree().quit())
2626

2727
render_puzzle_stats()
2828

29-
func render_puzzle_stats():
30-
var stats = DHData.calc_stats(Store.get_puzzle_sets())
29+
func render_puzzle_stats() -> void:
30+
var stats := DHData.calc_stats(Store.get_puzzle_sets())
3131

3232
Log.pr("Puzzle stats!", {
3333
events=len(Store.get_events()),

src/menus/MuteButtonList.gd

+20-20
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,39 @@
11
@tool
22
extends VBoxContainer
33

4-
@onready var mute_music_button = $%MuteMusicButton
5-
@onready var mute_sound_button = $%MuteSoundButton
6-
@onready var mute_all_button = $%MuteAllButton
7-
@onready var unmute_all_button = $%UnmuteAllButton
4+
@onready var mute_music_button: Button = $%MuteMusicButton
5+
@onready var mute_sound_button: Button = $%MuteSoundButton
6+
@onready var mute_all_button: Button = $%MuteAllButton
7+
@onready var unmute_all_button: Button = $%UnmuteAllButton
88

9-
@onready var music_volume_slider = $%MusicVolumeSlider
10-
@onready var sound_volume_slider = $%SoundVolumeSlider
9+
@onready var music_volume_slider: Slider = $%MusicVolumeSlider
10+
@onready var sound_volume_slider: Slider = $%SoundVolumeSlider
1111

12-
var old_music_volume
13-
var old_sound_volume
12+
var old_music_volume: float
13+
var old_sound_volume: float
1414

15-
func _ready():
15+
func _ready() -> void:
1616
if not Engine.is_editor_hint():
17-
var music_vol = SoundManager.get_music_volume()
17+
var music_vol := SoundManager.get_music_volume()
1818
music_volume_slider.set_value(music_vol)
1919

20-
var sound_vol = SoundManager.get_sound_volume()
20+
var sound_vol := SoundManager.get_sound_volume()
2121
sound_volume_slider.set_value(sound_vol)
2222

2323
render()
2424

25-
music_volume_slider.value_changed.connect(func(new_vol):
25+
music_volume_slider.value_changed.connect(func(new_vol: float) -> void:
2626
SoundManager.set_music_volume(new_vol))
2727

28-
sound_volume_slider.value_changed.connect(func(new_vol):
28+
sound_volume_slider.value_changed.connect(func(new_vol: float) -> void:
2929
SoundManager.set_sound_volume(new_vol))
3030

3131
mute_music_button.pressed.connect(mute_music)
3232
mute_sound_button.pressed.connect(mute_sound)
3333
mute_all_button.pressed.connect(mute_all)
3434
unmute_all_button.pressed.connect(unmute_all)
3535

36-
func render():
36+
func render() -> void:
3737
if DJ.muted_music:
3838
mute_music_button.text = "Unmute Music"
3939
else:
@@ -56,7 +56,7 @@ func render():
5656
unmute_all_button.hide()
5757
mute_all_button.grab_focus()
5858

59-
func update_music_volume():
59+
func update_music_volume() -> void:
6060
if DJ.muted_music:
6161
old_music_volume = SoundManager.get_music_volume()
6262
if old_music_volume < 1:
@@ -67,7 +67,7 @@ func update_music_volume():
6767
SoundManager.set_music_volume(old_music_volume)
6868
music_volume_slider.set_value(old_music_volume)
6969

70-
func update_sound_volume():
70+
func update_sound_volume() -> void:
7171
if DJ.muted_sound:
7272
old_sound_volume = SoundManager.get_sound_volume()
7373
if old_sound_volume < 1:
@@ -78,23 +78,23 @@ func update_sound_volume():
7878
SoundManager.set_sound_volume(old_sound_volume)
7979
sound_volume_slider.set_value(old_sound_volume)
8080

81-
func mute_music():
81+
func mute_music() -> void:
8282
DJ.toggle_mute_music()
8383
update_music_volume()
8484
render()
8585

86-
func mute_sound():
86+
func mute_sound() -> void:
8787
DJ.toggle_mute_sound()
8888
update_sound_volume()
8989
render()
9090

91-
func mute_all():
91+
func mute_all() -> void:
9292
DJ.mute_all(true)
9393
update_music_volume()
9494
update_sound_volume()
9595
render()
9696

97-
func unmute_all():
97+
func unmute_all() -> void:
9898
DJ.mute_all(false)
9999
update_music_volume()
100100
update_sound_volume()

src/menus/OptionsPanel.gd

+16-16
Original file line numberDiff line numberDiff line change
@@ -3,32 +3,32 @@ extends CanvasLayer
33

44
## vars ###############################################3
55

6-
@onready var main_menu_button = $%MainMenuButton
7-
@onready var reset_save_data_button = $%ResetSaveDataButton
8-
@onready var unlock_all_button = $%UnlockAllButton
9-
@onready var clear_achievements_button = $%ClearAchievementsButton
6+
@onready var main_menu_button: Button = $%MainMenuButton
7+
@onready var reset_save_data_button: Button = $%ResetSaveDataButton
8+
@onready var unlock_all_button: Button = $%UnlockAllButton
9+
@onready var clear_achievements_button: Button = $%ClearAchievementsButton
1010

11-
@onready var data_reset_conf = $%DataResetConfirmationDialog
12-
@onready var data_unlock_conf = $%DataUnlockConfirmationDialog
13-
@onready var clear_achievements_conf = $%ClearAchievementsConfirmationDialog
11+
@onready var data_reset_conf: ConfirmationDialog = $%DataResetConfirmationDialog
12+
@onready var data_unlock_conf: ConfirmationDialog = $%DataUnlockConfirmationDialog
13+
@onready var clear_achievements_conf: ConfirmationDialog = $%ClearAchievementsConfirmationDialog
1414

1515
## ready ###############################################3
1616

17-
func _ready():
18-
reset_save_data_button.pressed.connect(func(): data_reset_conf.show())
19-
unlock_all_button.pressed.connect(func(): data_unlock_conf.show())
20-
clear_achievements_button.pressed.connect(func(): clear_achievements_conf.show())
21-
data_reset_conf.confirmed.connect(func():
17+
func _ready() -> void:
18+
reset_save_data_button.pressed.connect(func() -> void: data_reset_conf.show())
19+
unlock_all_button.pressed.connect(func() -> void: data_unlock_conf.show())
20+
clear_achievements_button.pressed.connect(func() -> void: clear_achievements_conf.show())
21+
data_reset_conf.confirmed.connect(func() -> void:
2222
Store.reset_game_data()
2323
GodotSteam.set_from_the_top())
24-
data_unlock_conf.confirmed.connect(func():
24+
data_unlock_conf.confirmed.connect(func() -> void:
2525
Store.unlock_all_puzzle_sets()
2626
GodotSteam.set_cheater_cheater_pumpkin_eater())
27-
clear_achievements_conf.confirmed.connect(func():
27+
clear_achievements_conf.confirmed.connect(func() -> void:
2828
GodotSteam.clear_all_achievements())
2929

30-
main_menu_button.pressed.connect(func():
30+
main_menu_button.pressed.connect(func() -> void:
3131
Navi.nav_to_main_menu())
3232

3333
main_menu_button.grab_focus.call_deferred()
34-
main_menu_button.visibility_changed.connect(func(): main_menu_button.grab_focus())
34+
main_menu_button.visibility_changed.connect(func() -> void: main_menu_button.grab_focus())

0 commit comments

Comments
 (0)