Şimdi Ara

Unity Random Spawn Sorunu

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir - 3 Masaüstü
5 sn
6
Cevap
0
Favori
313
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri
  • Son Yorum 2 yıl
  • Cevaplayan Üyeler 3
  • Konu Sahibinin Yazdıkları 4
  • Ortalama Mesaj Aralığı 14 saat 56 dakika
  • Haberdar Edildiklerim (Alıntılar) 1
  • Konuya En Çok Yazanlar
  • gc1dcc2 (4 mesaj) Fulton (1 mesaj) Musahan17 (1 mesaj)
  • Konuya Yazanların Platform Dağılımı
  • Masaüstü (6 mesaj)
  • @
0 oy
Öne Çıkar
Giriş
Mesaj
  • using System.Collections;

    using System.Collections.Generic;

    using UnityEngine;


    public class Klonla : MonoBehaviour

    {

      public GameObject[] Objeler;

      public Transform[] SpawnNoktaları;

      public List<GameObject> SpawnlananNesnelerListe;

      public GameObject SpawnKlasörü;



      // Start is called before the first frame update

      void Start()

      {

       

      }


      private void OnTriggerEnter(Collider other)

      {

         

         

         

        if(other.gameObject.tag == "Player")

        {

          foreach(var item in SpawnlananNesnelerListe)

          {

            Destroy(item);

          }

          for (int i = 0; i < 8; i++)

          {

            int sayi = Random.Range(0,SpawnNoktaları.Length);

            GameObject Obje = Instantiate(Objeler[Random.Range(0, Objeler.Length)], SpawnNoktaları[Random.Range(0, SpawnNoktaları.Length)].position, Quaternion.identity) as GameObject;

            SpawnlananNesnelerListe.Add(Obje);

            Obje.transform.parent = SpawnKlasörü.transform;

          }

          


        }

        

      }


      public void DestroyObje()

      {


        while (transform.childCount > 0)

        {

          DestroyImmediate(transform.GetChild(0).gameObject);

        }

      }


      // Update is called once per frame

      void Update()

      {

         

      }


      

    }




    Arkadaşlar öncelikle merhaba.

    Objeleri spawnlarken bir spawn noktasına sadece bir obje gelmesini istiyorum rastgele şekilde.

    Örnek 20 engel var ise 20 engeli rastgele sapawn noktaları 1 defa olmak üzere spawnlasın.




    |
    |




  • +++guncel

  • objenin hangi spawn noktasına gitmesi gerektigini önceden belirlersin, sonrasında eğer o spawn noktası önceden kullanılmadıysa instantiate edersin, kullanıldıysa yeniden rastgele yer seçsin.

  • Musahan17 M kullanıcısına yanıt

    Cevap için teşekkürler bu attığım kod üzerinde oynama yapıp gönderme şansınız varmıdır acaba.

    Bu arada birden fazla obje bulunmakta.




    < Bu mesaj bu kişi tarafından değiştirildi gc1dcc2 -- 11 Ocak 2021; 12:55:56 >
  • gc1dcc2 g kullanıcısına yanıt

    +++Güncel arkadaşlar kaç gündür bu sorunu düzeltemedim lütfen yardımcı olurmusunuz bu liste halinde spawn noktalarına sadece 1 obje spawlansın istiyorum.

  • Seçilen her obje ya da noktayı listeden "Remove" komutu ile silebilirsiniz. Bu şekilde aynı şeyi seçmezsiniz Random.Range ile.

- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.