game: add spawn rate to debug ui
This commit is contained in:
		| @@ -10,6 +10,8 @@ signal sig_debug_enemy_god_mode(value: bool) | |||||||
| signal sig_debug_stats_set(key: String, value: String) | signal sig_debug_stats_set(key: String, value: String) | ||||||
| @warning_ignore("unused_signal") | @warning_ignore("unused_signal") | ||||||
| signal sig_stop_spawning(value: bool) | signal sig_stop_spawning(value: bool) | ||||||
|  | @warning_ignore("unused_signal") | ||||||
|  | signal sig_set_spawn_rate(value: float) | ||||||
|  |  | ||||||
| const GROUP_ENEMY = "enemy" | const GROUP_ENEMY = "enemy" | ||||||
| const GROUP_DAMAGEABLE = "damagable" | const GROUP_DAMAGEABLE = "damagable" | ||||||
|   | |||||||
| @@ -14,7 +14,6 @@ func _process(delta: float) -> void: | |||||||
| 	elapsed_time += delta | 	elapsed_time += delta | ||||||
| 	main_ui.player_ui.set_elapsed_time(elapsed_time) | 	main_ui.player_ui.set_elapsed_time(elapsed_time) | ||||||
|  |  | ||||||
|  |  | ||||||
| func _unhandled_input(event: InputEvent) -> void: | func _unhandled_input(event: InputEvent) -> void: | ||||||
| 	if event.is_action_pressed("ui_cancel"): | 	if event.is_action_pressed("ui_cancel"): | ||||||
| 		main_ui.pause_ui.toggle_pause_ui() | 		main_ui.pause_ui.toggle_pause_ui() | ||||||
|   | |||||||
| @@ -11,9 +11,10 @@ const ENEMY_RAT = preload("res://scenes/enemies/enemy_rat.tscn") | |||||||
|  |  | ||||||
|  |  | ||||||
| func _ready() -> void: | func _ready() -> void: | ||||||
| 	timer.wait_time = spawn_rate / 1 | 	timer.wait_time = 1 / spawn_rate | ||||||
| 	timer.start() | 	timer.start() | ||||||
| 	GlobalConst.sig_stop_spawning.connect(_on_stop_spawning) | 	GlobalConst.sig_stop_spawning.connect(_on_stop_spawning) | ||||||
|  | 	GlobalConst.sig_set_spawn_rate.connect(_on_set_spawn_rate) | ||||||
|  |  | ||||||
|  |  | ||||||
| func _on_timer_timeout() -> void: | func _on_timer_timeout() -> void: | ||||||
| @@ -25,9 +26,11 @@ func _on_timer_timeout() -> void: | |||||||
| 		new_enemy.target = target | 		new_enemy.target = target | ||||||
| 		add_child(new_enemy) | 		add_child(new_enemy) | ||||||
|  |  | ||||||
|  |  | ||||||
| func _on_stop_spawning(val: bool): | func _on_stop_spawning(val: bool): | ||||||
| 	if val: | 	if val: | ||||||
| 		timer.stop() | 		timer.stop() | ||||||
| 	elif timer.is_stopped(): | 	elif timer.is_stopped(): | ||||||
| 		timer.start() | 		timer.start() | ||||||
|  |  | ||||||
|  | func _on_set_spawn_rate(val: float): | ||||||
|  | 	timer.wait_time = 1 / val | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ | |||||||
|  |  | ||||||
| [node name="EnemyManager" type="Node2D"] | [node name="EnemyManager" type="Node2D"] | ||||||
| script = ExtResource("1_tfsap") | script = ExtResource("1_tfsap") | ||||||
| max_enemies = 50 | max_enemies = 500 | ||||||
| spawn_rate = 1.0 | spawn_rate = 1.0 | ||||||
|  |  | ||||||
| [node name="Timer" type="Timer" parent="."] | [node name="Timer" type="Timer" parent="."] | ||||||
|   | |||||||
| @@ -75,3 +75,7 @@ func update_debug_stats() -> void: | |||||||
|  |  | ||||||
| func _on_time_scale_slider_value_changed(value: float) -> void: | func _on_time_scale_slider_value_changed(value: float) -> void: | ||||||
| 	Engine.time_scale = value | 	Engine.time_scale = value | ||||||
|  |  | ||||||
|  |  | ||||||
|  | func _on_spawn_rate_value_changed(value: float) -> void: | ||||||
|  | 	GlobalConst.sig_set_spawn_rate.emit(value) | ||||||
|   | |||||||
| @@ -154,6 +154,27 @@ max_value = 1.0 | |||||||
| step = 0.1 | step = 0.1 | ||||||
| value = 1.0 | value = 1.0 | ||||||
|  |  | ||||||
|  | [node name="MarginContainer2" type="MarginContainer" parent="CanvasLayer/DebugUI/PanelContainer/VBoxContainer"] | ||||||
|  | layout_mode = 2 | ||||||
|  | size_flags_horizontal = 3 | ||||||
|  | theme_override_constants/margin_left = 6 | ||||||
|  | theme_override_constants/margin_right = 6 | ||||||
|  |  | ||||||
|  | [node name="HBoxContainer" type="HBoxContainer" parent="CanvasLayer/DebugUI/PanelContainer/VBoxContainer/MarginContainer2"] | ||||||
|  | layout_mode = 2 | ||||||
|  |  | ||||||
|  | [node name="Label" type="Label" parent="CanvasLayer/DebugUI/PanelContainer/VBoxContainer/MarginContainer2/HBoxContainer"] | ||||||
|  | layout_mode = 2 | ||||||
|  | size_flags_horizontal = 3 | ||||||
|  | text = "Spawn rate" | ||||||
|  |  | ||||||
|  | [node name="SpawnRate" type="HSlider" parent="CanvasLayer/DebugUI/PanelContainer/VBoxContainer/MarginContainer2/HBoxContainer"] | ||||||
|  | layout_mode = 2 | ||||||
|  | size_flags_horizontal = 3 | ||||||
|  | max_value = 10.0 | ||||||
|  | step = 0.1 | ||||||
|  | value = 1.0 | ||||||
|  |  | ||||||
| [node name="StatsContainer" type="PanelContainer" parent="CanvasLayer/DebugUI"] | [node name="StatsContainer" type="PanelContainer" parent="CanvasLayer/DebugUI"] | ||||||
| layout_mode = 0 | layout_mode = 0 | ||||||
| offset_left = 938.0 | offset_left = 938.0 | ||||||
| @@ -176,3 +197,4 @@ layout_mode = 2 | |||||||
| [connection signal="toggled" from="CanvasLayer/DebugUI/PanelContainer/VBoxContainer/EnemyGodModeCheck" to="CanvasLayer/DebugUI" method="_on_enemy_god_mode_check_toggled"] | [connection signal="toggled" from="CanvasLayer/DebugUI/PanelContainer/VBoxContainer/EnemyGodModeCheck" to="CanvasLayer/DebugUI" method="_on_enemy_god_mode_check_toggled"] | ||||||
| [connection signal="toggled" from="CanvasLayer/DebugUI/PanelContainer/VBoxContainer/StatsCheck" to="CanvasLayer/DebugUI" method="_on_stats_check_toggled"] | [connection signal="toggled" from="CanvasLayer/DebugUI/PanelContainer/VBoxContainer/StatsCheck" to="CanvasLayer/DebugUI" method="_on_stats_check_toggled"] | ||||||
| [connection signal="value_changed" from="CanvasLayer/DebugUI/PanelContainer/VBoxContainer/MarginContainer/HBoxContainer/TimeScaleSlider" to="CanvasLayer/DebugUI" method="_on_time_scale_slider_value_changed"] | [connection signal="value_changed" from="CanvasLayer/DebugUI/PanelContainer/VBoxContainer/MarginContainer/HBoxContainer/TimeScaleSlider" to="CanvasLayer/DebugUI" method="_on_time_scale_slider_value_changed"] | ||||||
|  | [connection signal="value_changed" from="CanvasLayer/DebugUI/PanelContainer/VBoxContainer/MarginContainer2/HBoxContainer/SpawnRate" to="CanvasLayer/DebugUI" method="_on_spawn_rate_value_changed"] | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user