using System; using ECM2; using ECM2.Examples.FirstPerson; using Fantasy; using NBF.Fishing2; using UnityEngine; using UnityEngine.InputSystem; namespace NBF { public partial class FPlayer : MonoService { public Transform Root; public Transform Eye; public Transform FppLook; public Transform IK; public PlayerModelAsset ModelAsset; public CharacterMovement Character; public FirstPersonCharacter FirstPerson; public GameObject ModelGameObject { get; set; } public PlayerAnimator Animator; public FPlayerData Data { get; private set; } protected override void OnAwake() { Character = gameObject.GetComponent(); FirstPerson = gameObject.GetComponent(); Animator = gameObject.AddComponent(); Data = FPlayerData.Instance; transform.localPosition = new Vector3(484, 1, 422); } private void Start() { AddInputEvent(); CreatePlayerModel(); } private void Update() { UpdateMove(); } private void OnDestroy() { RemoveInputEvent(); } #region 角色模型 private void CreatePlayerModel() { var modelObject = PrefabsHelper.CreatePlayer(Root, "Human_Male"); modelObject.transform.localPosition = Vector3.zero; ModelGameObject = modelObject; ModelAsset = modelObject.GetComponent(); Animator.SetModelAsset(this); } #endregion } }