Помощи в написании скрипта Unity

Я делаю игру в стиле Five Nights at Freddy's. У меня есть вот такой код:

using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;

public class FreddyController : MonoBehaviour
{
UnityEngine.AI.NavMeshAgent agent;
Animator animator;
public Transform checkpoint;
public Transform player;
bool imAttack = false;

    void Start() {
        player = GameObject.FindGameObjectWithTag("Player").transform;
        agent = GetComponent<UnityEngine.AI.NavMeshAgent>();
        animator = GetComponent<Animator>();
        agent.speed = 2f;
        animator.SetFloat("speed", 1.5f);
        Invoke("move", 200f);
    }

    void move()
    {
        CheckPoint point = checkpoint.GetComponent<CheckPoint>();
        if (point is ControlPoint)
        {
            RaycastHit hit;
            if(Physics.Raycast(transform.position + transform.up, player.position - (transform.position + transform.up), out hit))
            {
                if(hit.collider.tag == "Player")
                {
                    agent.destination = hit.collider.transform.position;
                    imAttack = true;
                }
            }
        }
        else
        {
        checkpoint = point.getNext();
        agent.destination = checkpoint.position;
        Invoke("move", 50f);
        }
        
    }

    void Update()
    {
        Debug.DrawRay(transform.position + transform.up, player.position - (transform.position + transform.up));

        if(!imAttack && Vector3.Distance(transform.position, player.position) < 1f)
        {
            player.gameObject.SendMessage("attack");
        }

        if (agent.velocity.magnitude > 1) animator.SetBool("walk", true);
        else animator.SetBool("walk", false);
    }
}

Противник ходит по определённым точкам и когда доходит до последней, стоит и через некоторое время нападает (просто идёт в направлении игрока). Когда враг соприкасается с игроком загружается сцена со скримером. И, собственно, что мне нужно. Как защитится от врага? Предположим, для каких-то врагов нужно спрятаться под стол, а для каких-то светить фонарём в лицо.

Стоит учитывать, что в этой теме (написание кода) я - новичок.


Ответы (0 шт):