38 lines
1.0 KiB
C#
38 lines
1.0 KiB
C#
using UnityEngine;
|
|
using System.Collections.Generic;
|
|
|
|
public class PengacakPosisi : MonoBehaviour
|
|
{
|
|
// Tarik semua objek hewan bos ke dalam list ini di Inspector
|
|
public List<Transform> daftarHewan;
|
|
|
|
void Start()
|
|
{
|
|
ShuffleHewan();
|
|
}
|
|
|
|
void ShuffleHewan()
|
|
{
|
|
// 1. Simpan semua posisi asli yang sudah bos tata
|
|
List<Vector3> daftarPosisi = new List<Vector3>();
|
|
foreach (Transform hewan in daftarHewan)
|
|
{
|
|
daftarPosisi.Add(hewan.position);
|
|
}
|
|
|
|
// 2. Acak daftar posisi (Shuffle)
|
|
for (int i = 0; i < daftarPosisi.Count; i++)
|
|
{
|
|
Vector3 temp = daftarPosisi[i];
|
|
int randomIndex = Random.Range(i, daftarPosisi.Count);
|
|
daftarPosisi[i] = daftarPosisi[randomIndex];
|
|
daftarPosisi[randomIndex] = temp;
|
|
}
|
|
|
|
// 3. Terapkan posisi baru ke hewan-hewan
|
|
for (int i = 0; i < daftarHewan.Count; i++)
|
|
{
|
|
daftarHewan[i].position = daftarPosisi[i];
|
|
}
|
|
}
|
|
} |