コード例 #1
0
    private void OnCollisionEnter(Collision other)
    {
        if (other.gameObject.name == "Abyss")
        {
            Destroy(gameObject);
            return;
        }

        if (other.gameObject.name != "Ground")
        {
            if (transform.parent == null)
            {
                if (other.gameObject.transform.parent != null)
                {
                    Destroy(gameObject);
                }
                else if (transform.position.y > other.transform.position.y)
                {
                    Destroy(gameObject);
                }
            }
        }
        else
        {
            var new_tree = Instantiate(_treePrefab);
            new_tree.name = "Tree" + WorldController.GetIndexer();
            WorldController.IncreaseIndexer();
            WorldController.AddTree(new_tree);

            var pos = transform.position;
            new_tree.transform.position = new Vector3(pos.x, 0, pos.z);
            new_tree.GetComponent <TreeController>().SetGenes(_genes);
            Destroy(gameObject);
        }
    }