Chelimbalo/scripts/player/player.gd
2025-11-27 11:02:42 +05:00

39 lines
665 B
GDScript

extends CharacterBody3D
class_name Player
@export var team: Session.TEAMS
const MAX_HP = 100
@export var hp: int = 100:
set(value):
if value < 0:
hp = 0
else:
hp = value
if hp == 0:
die()
get:
return hp
var TEMP_start_pos
func _enter_tree() -> void:
set_multiplayer_authority(str(name).to_int())
func _physics_process(_delta: float) -> void:
if not is_multiplayer_authority():
return
move_and_slide()
func die() -> void:
global_position = TEMP_start_pos
hp = MAX_HP
@rpc("any_peer","call_local","reliable")
func set_start_position(start_position: Vector3):
global_position = start_position
TEMP_start_pos = global_position