Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 统一:敌人生成代码_C#_Android_Unity3d_Unity5 - Fatal编程技术网

C# 统一:敌人生成代码

C# 统一:敌人生成代码,c#,android,unity3d,unity5,C#,Android,Unity3d,Unity5,我几乎完成了比赛。然而,我想产生无限的敌人,就像在回避游戏中一样。然而,我尝试了研究,但没有成功。我该怎么做?这是我完成比赛唯一需要做的事情 BlockScript.cs代码(敌方代码)如下所示: using UnityEngine; using System.Collections; public class BlockScript : MonoBehaviour { private GameObject wayPoint; private Vector3 wayPoint

我几乎完成了比赛。然而,我想产生无限的敌人,就像在回避游戏中一样。然而,我尝试了研究,但没有成功。我该怎么做?这是我完成比赛唯一需要做的事情

BlockScript.cs代码(敌方代码)如下所示:

using UnityEngine;
using System.Collections;

public class BlockScript : MonoBehaviour {

    private GameObject wayPoint;
    private Vector3 wayPointPos;
    private Rigidbody2D rigidBody2D;
    public bool inGround = true;
    private float jumpForce = 400f;

    private float speed = 6.0f;
    void Start () {

        wayPoint = GameObject.Find("wayPoint");
    }

    private void awake()
    {
        rigidBody2D = GetComponent<Rigidbody2D>();
    }


    void Update () {

        if (inGround)
        {
            inGround = false;

            rigidBody2D.AddForce(new Vector2(0f, jumpForce));
        }

        wayPointPos = new Vector3(wayPoint.transform.position.x, transform.position.y,
            wayPoint.transform.position.z);

        transform.position = Vector3.MoveTowards(transform.position,
            wayPointPos, speed * Time.deltaTime);

        Vector2 min = Camera.main.ViewportToWorldPoint(new Vector2(0, 0));

        if(transform.position.y< min.y)
        {
            Destroy(gameObject);
        }

    }
}
使用UnityEngine;
使用系统集合;
公共类区块脚本:MonoBehavior{
私人游戏对象航路点;
专用矢量3航路点位置;
私有刚体2d刚体2d;
公共bool inGround=true;
专用浮子跳线力=400f;
私人浮动速度=6.0f;
无效开始(){
航路点=游戏对象。查找(“航路点”);
}
私人空间
{
rigidBody2D=GetComponent();
}
无效更新(){
如果(四轮)
{
inGround=假;
rigidBody2D.AddForce(新矢量2(0f,jumpForce));
}
wayPointPos=新矢量3(wayPoint.transform.position.x,transform.position.y,
航路点变换位置z);
transform.position=Vector3.向(transform.position,
航路点位置、速度*时间、时间);
vector2min=Camera.main.ViewportToWorldPoint(新的Vector2(0,0));
if(变换位置y
典型的解决方案是将您的敌人(游戏对象的完整层次结构)存储在中,以便可以从代码中重复使用和实例化。然后,创建对预置的引用,并在您认为合适的时候实例化它。例如:

public GameObject EnemyPrefab; // assign this in editor
(...)
Instantiate(EnemyPrefab, transform.position, transform.rotation); // creates a new enemy

您可能需要从单独的脚本控制此功能,而不是从敌人的脚本本身(例如,创建一个专门的
EnemySpawner
script)

欢迎使用堆栈溢出。你可以改进你的问题。请阅读。当你的代码毫不费力地显示出你的问题时,你就是在向那些自愿帮助你的人表示尊重。您可以通过格式化代码以提高可读性和消除滚动来改进您的问题。很高兴提供帮助!