Add multiplayer fish showcases

This commit is contained in:
Alexander Sellite 2026-08-01 17:12:29 -04:00
parent 3f4392fdd3
commit 904a9c2d9e
23 changed files with 966 additions and 46 deletions

View file

@ -55,6 +55,9 @@ const NetworkShopServiceType = preload(
const NetworkItemUseServiceType = preload(
"res://network/network_item_use_service.gd"
)
const NetworkFishShowcaseServiceType = preload(
"res://network/network_fish_showcase_service.gd"
)
const NetworkChatServiceType = preload(
"res://network/network_chat_service.gd"
)
@ -124,6 +127,9 @@ const SHOP_PATTERN_SCALE: float = 1.75
@onready var _network_item_use: NetworkItemUseServiceType = (
%NetworkItemUseService
)
@onready var _network_fish_showcase: NetworkFishShowcaseServiceType = (
%NetworkFishShowcaseService
)
@onready var _network_chat: NetworkChatServiceType = %NetworkChatService
@onready var _network_mail: NetworkMailServiceType = %NetworkMailService
@onready var _network_player_list: NetworkPlayerListService = %NetworkPlayerListService
@ -295,7 +301,7 @@ func _initialize_after_data_root() -> void:
_asset_reservations
)
_player.bag.setup(item_catalog)
_player.hotbar.setup(_player.bag, item_catalog)
_player.hotbar.setup(_player.bag, item_catalog, _player.inventory)
_shop_interaction = _test_world.get_fishing_shop()
_shop_interaction.setup_local_player(_player)
_shop_interaction.local_player_range_changed.connect(
@ -338,6 +344,13 @@ func _initialize_after_data_root() -> void:
_save_manager,
_asset_reservations
)
_network_fish_showcase.setup(
_network_session,
_player_spawn_service,
fish_catalog,
_player.inventory,
_player.hotbar,
)
_network_chat.setup(_network_session)
_network_fishing.setup(
_network_session,
@ -521,6 +534,9 @@ func _initialize_after_data_root() -> void:
_fishing_spot.ready_for_equipment_refresh.connect(
_refresh_active_hotbar_item
)
_fishing_spot.fish_showcase_toggle_requested.connect(
_network_fish_showcase.toggle_selected_fish
)
_water_recovery.recovery_starting.connect(
_on_water_recovery_starting
)

View file

@ -44,6 +44,7 @@
[ext_resource type="Shader" uid="uid://byw3iub66qvog" path="res://ui/player_menu_pattern.gdshader" id="42_menu_pattern"]
[ext_resource type="Texture2D" uid="uid://b6xws1d2dnbnn" path="res://art/patterns/pattern_moneyfish.png" id="43_shop_pattern"]
[ext_resource type="PackedScene" uid="uid://w7n4gjqq1juc" path="res://art/exported/characters/base/netfishing_base_character.glb" id="44_4pcu1"]
[ext_resource type="Script" path="res://network/network_fish_showcase_service.gd" id="45_fish_showcase"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_title_water_native"]
shader = ExtResource("40_title_water")
@ -183,6 +184,10 @@ script = ExtResource("23_network_shop")
unique_name_in_owner = true
script = ExtResource("24_network_item")
[node name="NetworkFishShowcaseService" type="Node" parent="."]
unique_name_in_owner = true
script = ExtResource("45_fish_showcase")
[node name="NetworkChatService" type="Node" parent="." unique_id=1956959711]
unique_name_in_owner = true
script = ExtResource("25_network_chat")