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);
}
}
}
}
}