我有Enemy.cs随机实例化敌人。
然后我想要一个hero.cs来实例化英雄。
要求是实例化英雄跟随相应的敌人。
例如,在场景中找到enemy_01,然后实例化hero_01。
在场景中找到enemy_02,然后实例化hero_02。
如果没有enemy_03,就不应该实例化hero_03。
更难的是,我想选择哪个英雄被实例化。
例如,在场景中使用enemy_01,80 %的机会实例化hero_01,20 %的机会实例化hero_02。在场景中使用enemy_02时,实例化hero_02的几率为50 %,实例化hero_03的几率为50 %。
但是没有enemy_03,就不能实例化hero_03。
你能给我一个想法或想法吗?
我的Hero.cs
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class Hero_list : MonoBehaviour
{
[System.Serializable]
public class Hero
{
public GameObject Hero_prefab;
public GameObject Need_prefab;
}
public List <Hero> Heroes = new List <Hero> ();
public static Hero_list instance;
public void findEnemy()
{
GameObject[] respawns = GameObject.FindGameObjectsWithTag("Enemy");
foreach (GameObject respawn in respawns)
{
Debug.Log(respawn);
}
}
void Update ()
{
findEnemy();
}
}发布于 2015-11-12 11:10:22
一种可能是让敌人在它生成时调用Hero.cs的Hero.cs(),无论是在它的Start()方法中还是在OnAwake()方法中。然后生下英雄。
因为这些只是正常的函数,所以您可以在它们中执行任何您想要的逻辑,从而能够链接游戏对象的实例化。
https://stackoverflow.com/questions/33666699
复制相似问题