Add players page and host moderation

This commit is contained in:
Alexander Sellite 2026-07-29 23:10:51 -04:00
parent fa996a6735
commit 141b54261d
23 changed files with 1166 additions and 31 deletions

View file

@ -104,6 +104,8 @@ const TITLE_MUSIC_SILENCE_DB: float = -80.0
@onready var _host_identity: HostIdentityStore = %HostIdentityStore
@onready var _known_players: KnownPlayerStore = %KnownPlayerStore
@onready var _server_trust: ServerTrustStore = %ServerTrustStore
@onready var _relationships: PlayerRelationshipStore = %PlayerRelationshipStore
@onready var _host_bans: HostBanStore = %HostBanStore
@onready var _saved_servers: SavedServerStoreType = %SavedServerStore
@onready var _player_spawn_service: PlayerSpawnServiceType = (
%PlayerSpawnService
@ -118,6 +120,7 @@ const TITLE_MUSIC_SILENCE_DB: float = -80.0
)
@onready var _network_chat: NetworkChatServiceType = %NetworkChatService
@onready var _network_mail: NetworkMailServiceType = %NetworkMailService
@onready var _network_player_list: NetworkPlayerListService = %NetworkPlayerListService
@onready var _asset_reservations: PlayerAssetReservationServiceType = (
%PlayerAssetReservationService
)
@ -157,6 +160,7 @@ func _ready() -> void:
_host_identity,
_known_players,
_server_trust,
_host_bans,
)
_network_profile_service.setup(
_network_session,
@ -164,6 +168,15 @@ func _ready() -> void:
_appearance_store,
_player_spawn_service,
)
_network_player_list.setup(
_network_session,
_relationships,
_host_bans,
_known_players,
_player_spawn_service,
_network_chat,
_network_mail,
)
_network_session.set_local_appearance_snapshot(
_appearance_store.get_snapshot()
)
@ -310,7 +323,8 @@ func _ready() -> void:
_player_spawn_service,
_network_mail,
_asset_reservations,
_network_profile_service
_network_profile_service,
_network_player_list,
)
_water_recovery.setup(
_player,

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=34 format=3]
[gd_scene load_steps=37 format=3]
[ext_resource type="PackedScene" path="res://world/test_world.tscn" id="1_world"]
[ext_resource type="PackedScene" path="res://player/player.tscn" id="2_player"]
@ -33,6 +33,9 @@
[ext_resource type="Script" path="res://network/host_identity_store.gd" id="31_host_identity"]
[ext_resource type="Script" path="res://network/known_player_store.gd" id="32_known_players"]
[ext_resource type="Script" path="res://network/server_trust_store.gd" id="33_server_trust"]
[ext_resource type="Script" path="res://network/player_relationship_store.gd" id="34_relationships"]
[ext_resource type="Script" path="res://network/host_ban_store.gd" id="35_bans"]
[ext_resource type="Script" path="res://network/network_player_list_service.gd" id="36_player_list"]
[node name="Main" type="Node3D"]
script = ExtResource("3_main")
@ -65,6 +68,14 @@ script = ExtResource("32_known_players")
unique_name_in_owner = true
script = ExtResource("33_server_trust")
[node name="PlayerRelationshipStore" type="Node" parent="."]
unique_name_in_owner = true
script = ExtResource("34_relationships")
[node name="HostBanStore" type="Node" parent="."]
unique_name_in_owner = true
script = ExtResource("35_bans")
[node name="PlayerAppearanceStore" type="Node" parent="."]
unique_name_in_owner = true
script = ExtResource("28_appearance")
@ -109,6 +120,10 @@ script = ExtResource("27_reservations")
unique_name_in_owner = true
script = ExtResource("26_network_mail")
[node name="NetworkPlayerListService" type="Node" parent="."]
unique_name_in_owner = true
script = ExtResource("36_player_list")
[node name="TestWorld" parent="." instance=ExtResource("1_world")]
[node name="Players" type="Node3D" parent="."]