コード例 #1
0
 private void Update()
 {
     if (Input.GetMouseButton(1))
     {
         attack.target = null;
         RaycastHit hit;
         if (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit))
         {
             character.Move(hit.point);
         }
     }
     if (Input.GetMouseButton(0))
     {
         RaycastHit hit;
         if (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit))
         {
             print(hit.transform.name);
             if (hit.transform.CompareTag("enum"))
             {
                 Enum @enum = hit.transform.GetComponent <Enum>();
                 if (@enum)
                 {
                     attack.target = @enum;
                 }
             }
         }
     }
 }
コード例 #2
0
ファイル: Attack.cs プロジェクト: twarec/solyargames
 private void Update()
 {
     if (target)
     {
         if (Vector3.Distance(transform.position, target.transform.position) > .15)
         {
             character.Move(target.transform.position);
         }
         else
         {
             character.ClearPath();
             character.LoockAt(target.transform);
             characterAnimation.AttackAnimation(true);
         }
     }
 }
コード例 #3
0
 private void Update()
 {
     if (detected.Target)
     {
         float      dist = Vector3.Distance(transform.position, detected.Target.transform.position);
         RaycastHit hit;
         Physics.Raycast(transform.position, detected.Target.transform.position - transform.position, out hit);
         if (dist < .25f && hit.transform.CompareTag("Player"))
         {
             character.LoockAt(detected.Target.transform);
             character.ClearPath();
             characterAnimation.AttackAnimation(true);
         }
         else
         {
             character.Move(detected.Target.transform.position);
         }
     }
 }
コード例 #4
0
 private void Update()
 {
     if (detected.Target)
     {
         float dist = Vector3.Distance(transform.position, detected.Target.transform.position);
         if ((dist > 0.15f && sost != SostEnum.Attack) ||
             (sost == SostEnum.Attack && dist > 0.2f))
         {
             character.Move(detected.Target.transform.position);
             sost = SostEnum.Run;
         }
         else
         {
             sost = SostEnum.Attack;
             character.LoockAt(detected.Target.transform);
             character.ClearPath();
             characterAnimation.AttackAnimation(true);
         }
     }
     else
     {
         sost = SostEnum.Idle;
     }
 }