实现无限创建敌人。(Unity)

首先我们创建一个空物体GameObject产怪点改名为Enemypoint,这个点是敌人出现的位置。我们首先在空物体里面的transform组件中重置这个点的位置为0,并且给这个点设置一个颜色,方便找到这个点。如果给这个点设置一个位置,修改它的transform的xyz位置,或者在场景里面拖到到对应的位置。

 然后把设置好的敌人设置成预制体,拖到预制体文件夹去。再创建一个空物体GameObject用来管理敌人改名为EnemyManager。创建脚本,挂载到EnemyManager上。去编译脚本实现产怪效果。

代码实现:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class EnemyManager : MonoBehaviour
{
    // Start is called before the first frame update

    //找到对象
    public GameObject enemy;
    //产怪的时间
    public float SpawnTime = 3f;
    //产怪点
    public Transform[] spawnPoint;
    //玩家HP
    public PlayerHP PlayerHP;
    void Start()
    {
        //等待3秒,再每隔3秒产怪
        InvokeRepeating("Spawn", SpawnTime, SpawnTime);
    }

    // Update is called once per frame
    void Spawn()
    {
        //玩家死亡停止产怪
        if (PlayerHP.currentHP <= 0)
        {
            return;
        }
        int index=Random.Range(0,spawnPoint.Length);
        Instantiate(enemy, spawnPoint[index].position, spawnPoint[index].rotation);
    }
}

 编译脚本返回Unity挂载Public公开的组件。

 图片实现:

上面代码顺序不一样,可能会导致运行出错,如需要得进行完整性使用,才能保证项目正常运行。如出错请认真检查并且通过调整看看是否能达到效果。如有更好的方法,请在下方留言!谢谢你的观看!!!


----------------------------------------------------------END-----------------------------------------------------------------

猜你喜欢

转载自blog.csdn.net/weixin_57813136/article/details/132132791