Мой сборный дом состоит из 3 частей. Начало матча, Куб, Конец матча:
Что я сделал, если щелкнуть мышью по началу матча или концу матча, он будет создан другой сборный клон. Теперь я хочу, чтобы новый клонированный префаб соединялся с начала или с конца (и начало, и конец - красная верхняя и нижняя части в матче) с другим вращением.
Например, что-то например:
Может быть -90 для Z нового матча или 90 для Z или 45, но не таким же поворотом, как в последнем матче с вы не увидите, что это будет как один на другом.
А затем те же логики c при нажатии на новое совпадение в конце поз создайте новое совпадение и т. д.
Проблема с моим скриптом теперь в том, что он создает новое совпадение в другом месте:
Это скрипт, который я использую:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Test : MonoBehaviour
{
public GameObject matchPrefab;
private Transform[] StartEndPos;
// Start is called before the first frame update
void Start()
{
var match = Instantiate(matchPrefab);
StartEndPos = match.GetComponentsInChildren<Transform>();
}
// Update is called once per frame
void Update()
{
Vector3 mousePos = new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0f);
if (Input.GetMouseButtonDown(0))
{
Ray ray = Camera.main.ScreenPointToRay(mousePos);
RaycastHit hit;
if (Physics.Raycast(ray, out hit))
{
if (hit.transform.tag == "Match Start" || hit.transform.tag == "Match End")
{
for (int i = 0; i < StartEndPos.Length; i++)
{
if (StartEndPos[i].name == hit.transform.name)
{
var ClonedMatch = Instantiate(matchPrefab, StartEndPos[i].transform.position, Quaternion.identity);
}
}
}
else
{
Debug.Log("Nothing there");
}
}
}
}
}