#Double cube spawning

1 messages · Page 1 of 1 (latest)

chrome moon
#

how could i have the result cube only spawn once rather then twice since its on both cubes

using UnityEngine;

public class ICube : MonoBehaviour
{
    [SerializeField] private ItemSO item;
    [SerializeField] private Cube cube;


    public virtual void PickupCube() {
        Destroy(gameObject);
    }

    public virtual void Interact() {

    }

    public ItemSO GetItem() { return item; }
    public Cube GetCube() { return cube; }

    private void OnCollisionEnter(Collision collision) {
        if (collision.gameObject.GetComponent<ICube>() != null) {
            GameObject hitObject = collision.gameObject;
            ICube hitCube = hitObject.GetComponent<ICube>();
            Cube result = CubeCombinationSystem.getResultFrom(cube, hitCube.GetCube());
            if (result != null) {
                GameObject resultCube = result.getCubePrefab();
                if (resultCube != null) {
                    Vector3 resultPos = Vector3.Lerp(transform.position, hitObject.transform.position,0.5f);
                    Destroy(hitObject);
                    Destroy(gameObject);
                    Instantiate(resultCube,resultPos, Quaternion.identity);
                }
            }
        }
    }
}