diff --git a/project/main-scenes/island.tscn b/project/main-scenes/island.tscn index 5ce2c93..1bc397d 100644 --- a/project/main-scenes/island.tscn +++ b/project/main-scenes/island.tscn @@ -56,19 +56,21 @@ text = "INV" [node name="HealthBar" type="ProgressBar" parent="Camera2D/CanvasLayer/VBoxContainer"] modulate = Color(0.787561, 0.0888135, 0.00437393, 1) -custom_minimum_size = Vector2(150, 15) +custom_minimum_size = Vector2(150, 20) layout_mode = 2 +tooltip_text = " +" show_percentage = false [node name="FoodBar" type="ProgressBar" parent="Camera2D/CanvasLayer/VBoxContainer"] modulate = Color(0.166826, 0.552224, 0.153144, 1) -custom_minimum_size = Vector2(0, 15) +custom_minimum_size = Vector2(0, 20) layout_mode = 2 show_percentage = false [node name="TemperatureBar" type="ProgressBar" parent="Camera2D/CanvasLayer/VBoxContainer"] modulate = Color(0.0235294, 0.0392157, 1, 1) -custom_minimum_size = Vector2(0, 15) +custom_minimum_size = Vector2(0, 20) layout_mode = 2 max_value = 50.0 show_percentage = false @@ -78,6 +80,22 @@ layout_mode = 2 expand_mode = 5 stretch_mode = 5 +[node name="HealthLabel" type="Label" parent="Camera2D/CanvasLayer"] +offset_left = 1.0 +offset_top = 26.0 +offset_right = 151.0 +offset_bottom = 49.0 + +[node name="FoodLabel" type="Label" parent="Camera2D/CanvasLayer"] +offset_top = 50.0 +offset_right = 150.0 +offset_bottom = 73.0 + +[node name="TemperatureLabel" type="Label" parent="Camera2D/CanvasLayer"] +offset_top = 74.0 +offset_right = 150.0 +offset_bottom = 97.0 + [node name="Tileset" type="Node2D" parent="."] script = ExtResource("1_k0rw8") diff --git a/project/scripts/global/GameManager.gd b/project/scripts/global/GameManager.gd index ee54ead..adfb687 100644 --- a/project/scripts/global/GameManager.gd +++ b/project/scripts/global/GameManager.gd @@ -23,9 +23,6 @@ func _ready() -> void: world.camp_manager.game_manager = self world.step_visualizer.game_manager = self world.step_visualizer.world = world - health_bar.value = player.max_health - food_bar.value = player.max_food - temperature_bar.value = player.temperature_endure update_bars() $Camera2D/CanvasLayer/VBoxContainer/TextureRect.texture = world.tilemap_interactive.get_cell_texture(tilemap_types.OBJECT_I_BOAT_PART_CHEST) @@ -66,23 +63,27 @@ func _on_game_tick_timeout() -> void: func update_bars() -> void: - if health_bar != null: - health_bar.max_value = player.max_health - health_bar.value = clamp(player.health, 0, player.max_health) + if health_bar != null: + health_bar.max_value = player.max_health + health_bar.value = clamp(player.health, 0, player.max_health) + $Camera2D/CanvasLayer/HealthLabel.text = str(player.health) + "/" + str(player.max_health) + $Camera2D/CanvasLayer/HealthLabel.add_theme_color_override("font_color", Color(1, 1, 1)) - if food_bar != null: - food_bar.max_value = player.max_food - food_bar.value = clamp(player.food, 0, player.max_food) + if food_bar != null: + food_bar.max_value = player.max_food + food_bar.value = clamp(player.food, 0, player.max_food) + $Camera2D/CanvasLayer/FoodLabel.text = str(player.food) + "/" + str(player.max_food) - if temperature_bar != null: + if temperature_bar != null: var temperature_value: int = player.temperature_endure - player.temperature_timer - temperature_bar.max_value = player.temperature_endure - temperature_bar.value = clamp(temperature_value, 0, player.temperature_endure) + temperature_bar.max_value = player.temperature_endure + temperature_bar.value = clamp(temperature_value, 0, player.temperature_endure) + $Camera2D/CanvasLayer/TemperatureLabel.text = str(player.temperature_endure) + "/" + str(player.max_temperature) func toggle_temperature_layer() -> void: - if temperature_layer != null: - temperature_layer.visible = not temperature_layer.visible - print("TemperatureLayer visibility:", temperature_layer.visible) - else: - print("TemperatureLayer is null!") + if temperature_layer != null: + temperature_layer.visible = not temperature_layer.visible + print("TemperatureLayer visibility:", temperature_layer.visible) + else: + print("TemperatureLayer is null!")