Добрый всем день. Решил написать пятнашки на Unity3D, но застрял и приуныл. Хотел реализовать рандомное перемешивание пятнашек, но не могу понять где ошибаюсь, так что выручайте.
Вот так я планирую чтобы они у меня выглядели в начале:
А вот так я хочу их перемешать:
Итог при любых моих попытках реализовать всегда такой:
Получается, что часть фишек всегда залазит друг на друга.
public class Primer : MonoBehaviour {
private GameObject[] plastinka;
private GameObject[] newObject;
private Transform[] plastinkatransform;
void Start () {
newObject = GameObject.FindGameObjectsWithTag("Plastinka");
plastinka = GameObject.FindGameObjectsWithTag("Plastinka");
plastinkatransform = new Transform[16];
for (int i = 0; i < plastinka.Length; i++)
{
plastinkatransform[i] = plastinka[i].transform;
}
Shuffle(plastinkatransform);
// var random = new System.Random(DateTime.Now.Millisecond);
// plastinka = plastinka.OrderBy(x => random.Next()).ToArray();
for (int i = 0; i < plastinka.Length; i++)
{
newObject[i].transform.position = plastinkatransform[i].position;}
void Shuffle(Transform[] deck)
{
for (int i = 0; i < deck.Length; i++)
{
Transform temp = deck[i];
int randomIndex = UnityEngine.Random.Range(0, deck.Length);
deck[i] = deck[randomIndex];
deck[randomIndex] = temp;
}
}
Всем спасибо за комментарии, в итоге оказалось, что нужно перемешать массив состоящий из Vector3. Видно я не полностью понимаю как работает GameObject.transform.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Стоит PostgreSQLВ ней таблица с чуть более, чем 300 тысяч строк
Я работаю с элементом Microsoft Ribbon WPF 2010
У меня есть файл на сервере, который я хочу отправить клиентуЯ отправлю его так