feat(mvp): complete M13 clean-up milestone (real usernames, avatar studio redesign, pause menu, audio manager)
checkpoint / checkpoint (push) Successful in 6m22s
checkpoint / checkpoint (push) Successful in 6m22s
This commit is contained in:
@@ -101,6 +101,19 @@ func _on_connected() -> void:
|
||||
_server_root.add_child(_player_proxy)
|
||||
|
||||
connected_to_server.emit()
|
||||
if pending_loadout.is_empty():
|
||||
var api := _get_api_client()
|
||||
var cur_username: String = ""
|
||||
var cur_user_id: int = 0
|
||||
if api != null:
|
||||
cur_username = str(api.get("current_username"))
|
||||
cur_user_id = int(api.get("current_user_id"))
|
||||
if not cur_username.is_empty():
|
||||
var default_loadout: Dictionary = {"username": cur_username}
|
||||
if cur_user_id > 0:
|
||||
default_loadout["user_id"] = cur_user_id
|
||||
pending_loadout = default_loadout
|
||||
|
||||
if not pending_loadout.is_empty():
|
||||
_player_proxy.rpc_id(1, "rpc_set_loadout", pending_loadout)
|
||||
|
||||
@@ -266,7 +279,30 @@ func send_input(move_x: float, move_z: float, jump: bool, look_yaw: float) -> vo
|
||||
## Send the local player's avatar loadout to the server so it can be replicated
|
||||
## to other clients.
|
||||
func send_loadout(loadout_dict: Dictionary) -> void:
|
||||
pending_loadout = loadout_dict.duplicate(true)
|
||||
var copy: Dictionary = loadout_dict.duplicate(true)
|
||||
var api := _get_api_client()
|
||||
var cur_username: String = ""
|
||||
var cur_user_id: int = 0
|
||||
if api != null:
|
||||
cur_username = str(api.get("current_username"))
|
||||
cur_user_id = int(api.get("current_user_id"))
|
||||
|
||||
if not copy.has("username"):
|
||||
if not cur_username.is_empty():
|
||||
copy["username"] = cur_username
|
||||
else:
|
||||
copy["username"] = "Player_%d" % my_peer_id
|
||||
|
||||
if cur_user_id > 0 and not copy.has("user_id"):
|
||||
copy["user_id"] = cur_user_id
|
||||
|
||||
pending_loadout = copy
|
||||
if _player_proxy and is_instance_valid(_player_proxy):
|
||||
_player_proxy.rpc_id(1, "rpc_set_loadout", pending_loadout)
|
||||
|
||||
|
||||
func _get_api_client() -> Node:
|
||||
if has_node("/root/ApiClient"):
|
||||
return get_node("/root/ApiClient")
|
||||
return null
|
||||
|
||||
|
||||
Reference in New Issue
Block a user