OldBlueWater/BlueWater/Assets/02.Scripts/Tycoon/TycoonNpc.cs

47 lines
1.5 KiB
C#
Raw Normal View History

using System;
2024-01-02 08:17:10 +00:00
using Sirenix.OdinInspector;
using UnityEngine;
using UnityEngine.AI;
2024-01-02 08:17:10 +00:00
using UnityEngine.UI;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
{
public class TycoonNpc : MonoBehaviour
{
2024-01-02 08:17:10 +00:00
public NpcStateMachine StateMachine { get; set; }
public NavMeshAgent Agent { get; set; }
public Transform VisaualLook { get; set; }
public TycoonMapInfo MapInfo { get; set; }
[Title("FindTableState")]
public bool DoSeat { get; set; }
public Seat AssignedSeat { get; set; }
2024-01-02 08:17:10 +00:00
[Title("FoodOrderState")]
public Image BarkImg { get; set; }
public Image BarkFillImg { get; set; }
public Image FoodImg { get; set; }
public Transform EmojiTransform { get; set; }
private void Awake()
{
2024-01-02 08:17:10 +00:00
Agent = GetComponent<NavMeshAgent>();
Agent.updateRotation = false;
MapInfo = GameObject.Find("MapInfo").GetComponent<TycoonMapInfo>();
BarkImg = transform.Find("Canvas/BarkImg").GetComponent<Image>();
BarkFillImg = transform.Find("Canvas/BarkFillImg").GetComponent<Image>();
FoodImg = transform.Find("Canvas/FoodImg").GetComponent<Image>();
EmojiTransform = transform.Find("Emoji");
}
private void Start()
{
2024-01-02 08:17:10 +00:00
StateMachine = gameObject.AddComponent<NpcStateMachine>();
2024-01-02 08:17:10 +00:00
var findTableState = new FindTableState(this);
StateMachine.ChangeState(findTableState);
}
}
}