Player spawn test

This commit is contained in:
2025-08-07 19:25:02 -05:00
parent 9970146660
commit 33fee89633
5 changed files with 18 additions and 1 deletions

View File

@@ -0,0 +1 @@
extends Node

View File

@@ -0,0 +1 @@
uid://dsl58fvqxa6ul

View File

@@ -1,5 +1,7 @@
extends Node
@onready var player_scene: PackedScene = preload("res://player/Player.tscn")
var is_owned: bool = false
var steam_app_id: int = 480
var steam_id: int = 0
@@ -230,6 +232,11 @@ func _on_lobby_chat_update(lobby_id_update: int, user_changed_id: int, user_maki
func _on_peer_connected(id: int) -> void:
print("[Multiplayer] ✅ Peer connected: %s" % id)
var new_player = player_scene.instantiate() as Player
new_player.set_multiplayer_authority(id)
$".".add_child(new_player)
new_player.position = Vector3(0,1,0)
# It's good practice to re-check lobby members when a peer connects successfully.
get_lobby_members()

View File

@@ -23,7 +23,7 @@ properties/1/spawn = true
properties/1/replication_mode = 2
properties/2/path = NodePath("Label3D:text")
properties/2/spawn = true
properties/2/replication_mode = 1
properties/2/replication_mode = 2
[node name="Player" type="CharacterBody3D"]
collision_layer = 2

View File

@@ -1,4 +1,5 @@
extends CharacterBody3D
class_name Player
@export var speed = 5.0
@export var jump_velocity = 4.5
@@ -8,12 +9,17 @@ var gravity = ProjectSettings.get_setting("physics/3d/default_gravity")
var camera_node: Camera3D
func _ready():
if !is_multiplayer_authority():
pass
Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)
camera_node = $Camera3D # Assuming Camera3D is a direct child
camera_node.current = true
$Label3D.text = SteamManager.steam_username
func _physics_process(delta):
if !is_multiplayer_authority():
pass
# Apply gravity
if not is_on_floor():
velocity.y -= gravity * delta
@@ -41,6 +47,8 @@ func _physics_process(delta):
move_and_slide()
func _input(event):
if !is_multiplayer_authority():
pass
if event is InputEventMouseMotion:
# Rotate the CharacterBody3D around the Y-axis for horizontal look
rotate_y(-event.relative.x * mouse_sensitivity)