制作驱逐舰(UnityC#) [英] Making Destroyer (UnityC#)

查看:83
本文介绍了制作驱逐舰(UnityC#)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我制作了简单的亚军游戏.

I making simple runner game.

我想对哪个球员跳起来有所阻拦.

I want do have some block over which player which jump.

我做一个预制和四边形.

I make a prefab and quad.

附带的Spawn脚本:

Attached Spawn script:

using UnityEngine;
using System.Collections;

public class SpawnScript : MonoBehaviour {
    public GameObject[] obj;
    public float spawnMin = 1f;
    public float spawnMax = 1f;

    // Use this for initialization
    void Start () 
    {
        Spawn();
    }

    void Spawn()
    {
        Instantiate(obj[Random.Range(0, obj.GetLength(0))], transform.position, Quaternion.identity);
        Invoke("Spawn", Random.Range(spawnMin, spawnMax)); 
    }
}

我还附上了Destroyer脚本:

Also I attached Destroyer script:

using UnityEngine;
using System.Collections;

public class DestroyerScript : MonoBehaviour {

    void OnTriggerEnter2D(Collider2D other)
    {
        if (other.tag == "Player")
        {
            Application.LoadLevel(1);
            return;
        }

        if (other.gameObject.transform.parent)
        {
            Destroy(other.gameObject.transform.parent.gameObject);
        }

        else
        {
            Destroy(other.gameObject);
        }
    }
}

但是当玩家输入该对象时,什么也没有发生.

But when player enter this object nothing happens.

我的Quad屏幕:

我的错误在哪里?

推荐答案

您使用 OnTriggerEnter2D .如果对撞机未在isTrigger字段上打勾,则可以使用 OnCollisionEnter2D .

You use OnTriggerEnter2D. If your collider not ticked isTrigger field, you can use OnCollisionEnter2D.

如果对象具有普通(3D)碰撞器,则还需要使用3D版本的碰撞器.

And also if your object has Normal (3D) collider you need to use 3D versions of them.

OnTriggerEnter 此外,您还应该阅读.

更新

经过讨论并发现您的项目问题是您的角色没有撞到销毁对象的对撞机上.它随您的主相机一起移动. (驱逐舰对象是摄像机的子对象).因此,当您从相机的子对象中取出驱逐舰时,它就会起作用.

After discussion and looking your project problem is your character doesnt hit the destroyer object's collider. It moves with your main camera. (Destroyer object is child object of camera). Because of that when you take your destroyer from camera's child object it works.

这篇关于制作驱逐舰(UnityC#)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆