You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
759 B
25 lines
759 B
9 months ago
|
public partial class Player : CharacterBody3D
|
||
|
{
|
||
|
public MovementController Movement { get; private set; }
|
||
|
public CameraController Camera { get; private set; }
|
||
|
public AnimationController Animation { get; private set; }
|
||
|
public PickupController Pickup { get; private set; }
|
||
|
|
||
|
public override void _Ready()
|
||
|
{
|
||
|
Movement = GetNode<MovementController>("MovementController");
|
||
|
Camera = GetNode<CameraController>("CameraController");
|
||
|
Animation = GetNode<AnimationController>("AnimationController");
|
||
|
Pickup = GetNode<PickupController>("PickupController");
|
||
|
|
||
|
foreach (var child in GetChildren())
|
||
|
if (child is IInitalizable<Player> init)
|
||
|
init.Initialize(this);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public interface IInitalizable<T>
|
||
|
{
|
||
|
void Initialize(T param);
|
||
|
}
|