コード例 #1
0
ファイル: MNPCManager.cs プロジェクト: TrollShin/MarTruck
 //신호위반 하는 친구는 이 함수에서 변하지않음
 private void ChangeAllAgentsAreaMask(EAreaMask _AreaMask)
 {
     for (int i = 0; i < MNPCWalkers.Length; i++)
     {
         MNPCWalkers[i].ChangeAreaMask(_AreaMask);
     }
 }
コード例 #2
0
    //AreaMask에 대한 정보는 EAreaMask에서
    public void ChangeAreaMask(EAreaMask _AreaMask)
    {
        if (IsJayWalker)
        {
            return;
        }

        OriginalyAreaMask = _AreaMask;
        Agent.areaMask    = (int)OriginalyAreaMask;

        Agent.SetDestination(Agent.destination);
    }
コード例 #3
0
    private void Start()
    {
        Agent    = GetComponent <NavMeshAgent>();
        StartPos = transform.position;

        OriginalyAreaMask = EAreaMask.Walkable;

        CheckDelayTime = new WaitForSeconds(2.5f);

        CheckCoroutine = StartCoroutine(CheckAgentArrive());

        AgentGFX      = transform.GetChild(0).GetComponent <MeshRenderer>();
        AgentCollider = GetComponent <Collider>();
    }
コード例 #4
0
    public void SetDestination(Transform _Transform, bool _IsJaywalker)
    {
        if (_IsJaywalker)
        {
            OriginalyAreaMask = EAreaMask.Walkable_CrossWalk;
            Agent.speed       = 5.5f;
        }
        else
        {
            OriginalyAreaMask = EAreaMask.Walkable;
            Agent.speed       = 3.5f;
        }

        IsJayWalker = _IsJaywalker;

        Agent.areaMask = (int)OriginalyAreaMask;

        if (Agent.enabled)
        {
            Agent.SetDestination(_Transform.position);
        }
    }