using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace WK
{
// 玩家角色数据结构
//
// PlayerController
// CharacterInfo
// CharacterStats
// CharacterBuffs
// CharacterPerks
// CharacterBehaviour
// CharacterAnimation
///
/// 玩家角色根节点
///
public sealed class PlayerController : INotification
{
///
/// 角色所有当前数值集合
///
private CharacterInfo m_CharacterInfo;
public CharacterInfo info { get { return m_CharacterInfo; } }
///
/// 角色行为逻辑
///
private CharacterBehaviour m_CharacterBehaviour;
public CharacterBehaviour behaviour { get { return m_CharacterBehaviour; } }
///
/// gameobject根节点
///
private GameObject m_GameObject;
public GameObject gameObject { get { return m_GameObject;} }
public void OnCreate()
{
}
public void SetGameObject(GameObject go)
{
m_GameObject = go;
}
public void SetBehaviour(CharacterBehaviour behaviour)
{
m_CharacterBehaviour = behaviour;
}
///
/// 逻辑更新
///
public void OnUpdate()
{
// preupdate
behaviour?.OnPreUpdate();
// update
info?.OnUpdate();
behaviour?.OnUpdate();
// post update
behaviour?.OnPostUpdate();
}
}
}