‫Tekrar hoş geldiniz.
‫Umarım bazı sağlıklı meyveler hakkında bilgi sahibi olmuşsunuzdur.
‫Hadi gidelim.
‫Ne olmuş yani?
‫Bu videodaki amacımız, alttan ortaya çıkacak ve oyun sahnemize veya oyun görünümümüze fırlayacak
‫olan bazı meyveleri ortaya çıkarmak ve sonra onları dilimleyebilmektir.
‫Şimdilik onları dilimleyemiyoruz, ancak daha sonra bunu yapabileceğiz ve bunu rastgele yapmak istiyoruz.
‫Bu yüzden rastgele bir meyve ve zaman içinde rastgele bir mesafe yaratmak istiyoruz.
‫Bu yüzden tam olarak aynı süre sonra oluşturulmamalıdır.
‫Bunun için yeni bir komut dosyası oluşturalım ve buna spanner diyelim, çünkü böyle olacak.
‫Bu bir anahtar olacak.
‫O zaman bunu açalım.
‫Ve burada güncelleme yöntemine ihtiyacımız olmayacak, ancak birkaç değişkene ihtiyacımız olacak.
‫İlk olarak, bir oyun nesnesine ihtiyacımız olacak.
‫Yani genel oyun nesnesi ve bu da ortaya çıkacak meyve olacak.
‫Yani ortaya çıkarmak istediğimiz meyve bir portakal olabilir, bir muz olabilir vb.
‫Ve hangi meyveyi yumurtlamamız gerektiğini bilmek istiyoruz.
‫O zaman farklı meyveler arasında ne kadar zaman olmasını istediğimizi bilmek istiyoruz.
‫Yani, diyelim ki, 3 arasında olmalı. 3 ve 1 saniye.
‫O halde bir float min ağırlık oluşturalım ve bu 0 olsun. 3 saniye ve halka açık şamandıra maksimum ağırlığı.
‫Dolayısıyla bir meyve için beklememiz gereken maksimum süre 1/2 olmalıdır.
‫Ve bu şekilde yaparsak, bunu birlik içine kolayca ekleyebiliriz.
‫Böylece bunu yapabileceğiz.
‫Şimdi BAŞLAT yöntemi içinde, burada sahip olduğumuz bu belirli zamandan sonra sürekli olarak meyve yaratacak
‫bir rutin başlatmak istiyorum.
‫Bunu yapmak için kod rutinini başlat yöntemini kullanmamız gerekiyor, kod rutinini başlat.
‫Burada da görebileceğiniz gibi, START kod rutininin bir AI numaralandırıcısına ihtiyacı vardır.
‫Herhangi bir şeyi başlatmak için, bir metot başlatabilir veya bir nesne ile bir metot başlatabiliriz.
‫Ama asıl sahip olmak istediğimiz şey buradaki.
‫Bir AI numaralandırıcıya ihtiyaç duyan ilk aşırı yük.
‫Başlangıç kodu rutini elbette şimdi bir numaralandırıcıya ihtiyaç duyar.
‫Şimdi bunu yorumlayalım ve AI numaralandırıcısını oluşturalım.
‫Ve bunu yapmak için, bir AI numaralandırıcı döndürecek ve genel olmayan koleksiyon üzerinde basit bir yinelemeyi
‫destekleyen bir yöntem oluşturmamız gerekir.
‫Böylece, bu yöntemi birden çok kez çağırmak ve bir kod rutini başlatmak için işleri iyi yapmamızı
‫sağlayacak ve devam edip meyveleri ortaya çıkaralım.
‫Ben böyle adlandıracağım ve doğruluğunu kontrol etmek istediğim şey de bu.
‫Bu kod rutini çalıştığı sürece meyvelerin ortaya çıkmasını istiyorum.
‫Burada vahşi döngüde yapmak istediğim şey geri dönüş sağlamak.
‫Yani henüz kullandığımız temel bir return deyimi değil.
‫Yeni 4 saniye bekleme için kullanabileceğiniz bir getiri getirisidir.
‫Dolayısıyla, belirli bir süre sonra bir şey yapmak istiyorsanız, bu numaralandırıcıyı yield return ile kullanabilirsiniz.
‫Bu yüzden bir saniye bekleyin ve minimum ağırlık ile maksimum ağırlık aralığımız arasında rastgele bir değer olmasını istiyorum.
‫Ve şimdi burada yapacağım şey sadece günlükte ve meyvelerde hata ayıklamak, daha fazla meyve almak, yumurtlamak.
‫Tamam.
‫Diyelim ki bu senaryo ve aslında kod rutinimizde spawn fruit'i çağırmamız gerekiyor.
‫Tabii ki.
‫Meyveler ortaya çıksın.
‫Şimdi her şey yoluna girdi.
‫Script'i bir kez daha kaydedelim ve Unity'ye geri dönelim.
‫Pekala, burada yeni bir boş nesne oluşturalım.
‫Ve ben buna sadece anahtar diyeceğim.
‫Ve buradaki tüm portakallardan kurtulalım.
‫Lider ve Boehner'in nesnesi, elbette bir bileşene ihtiyaç duyuyor.
‫Boehner adında bir senaryo arayalım.
‫Ve gördüğünüz gibi, maksimum ağırlıktaki minimum ağırlığı istediğimiz zaman değiştirebiliriz.
‫Şimdi, yumurtlanacak meyve elbette yumurtlama meyvesi veya yumurtlamak istediğimiz meyvedir.
‫Ve bizim durumumuzda, bu bizim portakalımız.
‫Şimdi sponsora gidelim ve portakalımızı yumurtlaması için buraya sürükleyelim.
‫Ve şimdi buna başlayalım.
‫Yani şimdi olacak tek şey, elbette, konsolumuza gidecek ve meyvelerin beş, altı, yedi,
‫sekiz olarak ortaya çıktığını görebilirsiniz.
‫Böylece sürekli meyve üretilir.
‫Yani bu iyi bir şey.
‫Ama tabii ki henüz pek bir şey göremiyoruz ve bunu değiştirmemiz gerekecek.
‫Tamam.
‫Böylece, gördüğünüz gibi belirli bir konuma sahip olan buradaki spawn'dan doğabiliriz.
‫İşte geldi.
‫Çok iyi göremiyorsun.
‫O zaman bir alet ekleyelim.
‫Burada sağ tarafta, anahtarın adının hemen yanında, anahtar için küçük bir görünüm eklemeyi seçebilirsiniz.
‫Burada görebileceğiniz gibi, şimdi bu mor rengi kullanalım.
‫Yani bu anahtar olacak.
‫Bu sadece oyunda görünmese bile bir nesnenin nerede olduğunu görmemi sağlayan bir aygıt.
‫Yani herhangi bir Sprite veya animasyon ya da bunun gibi şeyler yok.
‫Eşleşme yok, öyle bir şey yok.
‫Ve şimdi sadece oyun görünümümde nerede olduğunu gösteren bu küçük gizmo var.
‫Yani şu anda durum bu.
‫Biraz aşağı çekelim.
‫Aslında, önce konumlandıralım ya da sıfırlayalım.
‫Yani 000'da olacak ve ben buna sadece spawn veya diyeceğim.
‫Ya da ortaya çıkan oyunlar.
‫İşte burada ortaya çıkacak.
‫Şimdi bu spawn yerini çoğaltalım ve biraz yana sürükleyelim.
‫Bunu bir kez daha çoğaltalım ve onu da yana sürükleyelim.
‫Şimdi elimizde pozisyonla ilgili bu üç ipucu var.
‫Bunun için şimdilik endişelenme.
‫Daha sonra kontrol edeceğiz.
‫Doğru pozisyonla oynayacağız ve bunun için mükemmel pozisyonun ne olduğunu bulacağız.
‫Şimdi de yan taraftaki iki yumurtlama yerine gelelim.
‫Yumurtlama yeri de öyle.
‫Ve benim durumumda bu birincisi.
‫Sizin durumunuzda farklı olanlar olabilir, ancak burada karar verecek olanlar sadece tepeye ateş etmemelidir.
‫Hafifçe ortaya doğru fırlamalıdırlar.
‫Bu yüzden onları döndürmemiz gerekiyor.
‫Bunları bu şekilde döndürebiliriz, bu yüzden bu şekilde döndüreceğim ya da değeri buraya ekleyebilirim.
‫Bu yüzden 30 derece döndürün diyeceğim ve artı iki olarak yumurtlayacağım.
‫Benim durumumda Z değeri -30 olmalıdır.
‫Şimdi her ikisi de biraz dönecek.
‫Tamam.
‫Sıradaki.
‫Şimdi senaryomuza geri dönelim.
‫Şimdi buna sahip olduğumuza göre -- ve yumurtlama meyvemizde, farklı yumurtlama yerlerine sahip olmamız gerekecek.
‫Spawn, spawn yerleri hakkında bilgi sahibi olmalıdır.
‫Öyleyse, spawn yerlerimiz olan bir transform dizisi oluşturalım.
‫Ve şimdi ortaya çıkan meyvelerimiz içinde, sadece hata ayıklamak istemiyoruz, aynı zamanda yaratılan meyvenin konumunu da dönüştürmek
‫istiyoruz.
‫Bu nedenle, t dönüşümü rastgele aralık konumunda doğar ve sıfır ile spawn yerleri nokta uzunluğu arasında rastgele
‫bir konum olmalıdır.
‫Bunun anlamı, ne kadar çok doğma yeri yaratırsak yaratalım, yarattığımız meyvenin konumunu
‫bu yerlerin rastgele bir konumuna atamak istiyoruz.
‫Yani ya ilk yumurtlama yerinde, ya ikincisinde, ya üçüncüsünde ve benzeri yerlerde olacak demektir.
‫Yani kaç tane atarsak atayalım, burada söylediğimiz şey spawn yerleri nokta uzunluğu.
‫Burası seçmek istediğimiz yumurtlama yeri.
‫Şimdi meyvemiz olan oyun nesnesini oluşturalım ve bunu örnekleyelim ve ortaya çıkacak meyveyi
‫örneklemek istiyoruz.
‫Yani T konumunda ortaya çıkmasını istediğimiz meyve, burada yeni oluşturduğumuz dönüşüm
‫değişkeninden, t nokta konumundan ve DT nokta
‫dönüşünden çıkar.
‫Pekala, Unity'ye geri dönelim ve bunu kontrol edelim.
‫Şimdi aslında bu ortakların olması gerekiyor, bu puanları henüz atamadık ve artık bir sponsorumuz
‫yok, bu yüzden bunu değiştirelim.
‫Doğru.
‫Bu yüzden sildiğim boş bir spawn oluşturdu.
‫Ve şimdi bileşen komut dosyasını buraya ekleyelim.
‫Ve sponsorumdu.
‫Şimdi yumurtlamak için meyvelere ihtiyacımız var.
‫Ve dediğim gibi yine turuncu ile başlayacağız.
‫Bir sonraki şey ise yumurtlama yerlerine ihtiyacımız olması.
‫Bu yüzden kaç tane yumurtlama yerimiz olduğunu belirlememiz gerekiyor.
‫Ve şimdilik üç farklı yumurtlama yerimiz var.
‫Ve burada farklı doğma yerlerini senaryoma sürükleyeceğim.
‫Tamam.
‫Şimdi oyuna başlayalım ve neler olacağını görelim.
‫Ve şimdi görebileceğiniz gibi, oyunumuzda rastgele meyveler yaratıyoruz.
‫Şimdi bu manzarada göremediğiniz şey.
‫Öyleyse devre dışı bırakalım, oynatmayı en üst düzeye çıkaralım.
‫Bakalım buradan başlarsak ne olacak.
‫Gördüğünüz gibi, portakallar yaratıyoruz ve onları asla silmediğimiz için çok sayıda portakal yaratacağız.
‫Şimdiye kadar onlardan hiç kurtulamadık.
‫Bunu halletmemiz gerekecek.
‫Tabii ki.
‫Ve tabii ki ateş ettikleri yönü de değiştirmemiz gerekiyor.
‫Yani şu anda sadece yere düşüyorlar ve havaya uçmak için kendilerine uygulanan herhangi bir güç yok.
‫Değiştirmek istediğimiz şey de bu.
‫O zaman devam edelim ve bunu yapalım.
‫Meyvelerimize biraz güç uygulayalım.
‫Ve bunu nasıl yapabileceğimizi.
‫Bileşen katı gövdeyi meyvemizin DX'ine getirirken ve sonra bir kuvvet uygularken bunu nasıl yapabiliriz?
‫Yani kuvvet ekleyin ve iki farklı aşırı yükümüz olsun.
‫Buradaki kuvveti ve modu kullanacağız.
‫Yani uygulamak istediğimiz kuvvet on ile çarpılarak dönüştürülür.
‫Yani bu sadece buraya atadığım bir değer.
‫Ve sonra güç modu.
‫DX Yani onları zorlamak istediğimiz yol dürtü olacak.
‫Yani küçük olmak aslında böyle bir dürtüdür.
‫Tamam.
‫Komut dosyasını kaydedelim ve Unity'ye geri dönelim.
‫Bakalım neler olacak.
‫Ve gördüğünüz gibi, vuruluyorlar ve sonra birbirlerine çarpıyorlar ve sonra tekrar düşüyorlar.
‫Şimdi, sahip olmadıkları şey rotasyon, bu yüzden bundan hoşlanmıyorum.
‫Şimdi farklı yerlere bir göz atalım.
‫Şimdi elbette yumurtlama yerlerimizin artık yumurtlama veya komut dosyasına ihtiyacı olacak.
‫Öyleyse, spawn yerlerimizden bu remove bileşeninden kurtulalım.
‫Tamam.
‫O zaman buradaki spawn'ı da kaldıralım.
‫Pekala, şimdi sınırsız meyveye sahip olmamız sorununu hızlıca çözelim, böylece en azından bir süre
‫sonra meyveleri yok etmeyelim.
‫Hadi yapalım şunu.
‫Yani burada sadece 5 saniye sonra meyveyi yok et diyoruz.
‫Yani burada oluşturduğumuz oyun nesnesini 5 saniye sonra yok etmek istiyoruz.
‫Havalandıktan hemen sonra yere düştü.
‫Yani onu yok etmekte sorun yok.
‫Şimdi buraya bir göz atalım.
‫Olan şey, ortaya çıkacaklar ve birkaç saniye sonra yok edilecekler.
‫Beş, altı, yedi, sekiz tane var.
‫Ve gördüğünüz gibi, portakallar tekrar yok oluyor.
‫Bu çok iyi.
‫Onları döndürmemiz hala işe yaramıyor.
‫Böylece kuvvet, doğma yerlerini döndürdüğümüz yöne doğru gider.
‫Şimdi buna bir göz atalım.
‫Ve eksik rotasyonun tek bir şeyle ilgisi var.
‫Şimdi kodumuza geri dönelim, burada yaptığımız şey bir şeyi on katına çıkarmaktır ve bu durumda kodumuzu
‫döndürücünün kendisine bir kuvvet ekleyecek şekilde dönüştürüyoruz.
‫Bununla birlikte, istediğimiz şey meyvelerimizi dönüştürmektir.
‫T'mizden gelen kuvveti eklemek istiyoruz, yani dönüşüm konumumuzdan, doğma yerimizden gelen kuvveti.
‫Bu yüzden bunun yumurtlama yerimizden veya kendimizden değil, yumurtlama yerimizden olmasını istiyoruz.
‫Ve yumurtlama yerimizin belirli bir rotasyonu var.
‫Şimdi tekrar başlayalım ve meyvelerimizin farklı yönlere nasıl uçtuğunu görelim.
‫Ve gördüğünüz gibi, farklı yönlere doğru uçuyorlar.
‫Ve bir bakalım.
‫Buradaki değerlerle oynadım, yani bu 30 olmalı, şu da -30 olmalı.
‫Ve merkezde sıfır ile bir spawn yeri kullanabiliriz.
‫Şimdi devam edelim ve bunu tekrar yapalım.
‫Ve göreceksiniz ki farklı yönlere doğru uçacaklar ve şu anda birbirlerine bile dokunabiliyorlar.
‫Ama bununla da daha sonra ilgileneceğiz.
‫Şimdi, yumurtlama yerlerimizin konumunu değiştirmemiz gerekiyor çünkü şu anda hepsi
‫biraz fazla yüksekte.
‫O halde hepsini biraz aşağıya, eksi beş civarına kaydıralım ya da aslında eksi beşe şimdi
‫buradan girebiliriz.
‫Sonra, vuruldukları gücü değiştirmek istiyorum.
‫O halde şu anda nasıl yumurtladıklarına bir göz atalım.
‫Gördüğünüz gibi, merkeze zar zor ulaşıyorlar.
‫O zaman bunu değiştirelim.
‫Bunu yapmak için dönüşümü değiştirmemiz gerekiyor.
‫Şimdi on oldu.
‫Ancak elimizdeki şey, vuruldukları rastgele bir güç olabilir.
‫Ve bunun için iki ek değişken oluşturalım: public float main force diyelim ki 12 ve public
‫float max force diyelim ki 17 olsun.
‫Yani bunlar sadece üzerinde oynadığım değerler.
‫Şimdi de rastgele aralıktaki minimum kuvvet ve maksimum kuvvet ile çarpalım.
‫Şimdi yapacağı şey bize rastgele bir değer vermek olacak ve gücü şimdi 12 ile 17 arasında rastgele
‫ekleyeceğiz ve bunu buradaki ayarlarımızdan kolayca ayarlayabiliriz.
‫Bu nedenle, spawn'ımızın içinde bunu değiştirebileceğiz.
‫Böylece minimum kuvvet ve maksimum kuvveti görebilirsiniz.
‫O zaman başlayalım.
‫Daha sonra bunun iyi bir değer olup olmadığını doğrudan kontrol edebiliriz.
‫Gördüğünüz gibi, uçuyorlar ve belki burada daha da ileri gidebiliriz min kuvvet, diyelim ki 15 ve maksimum kuvvet
‫25 ve sonra ekrandan tamamen uçacaklarını ve tekrar düşeceklerini göreceksiniz.
‫Belki de 12 ve 17 her şeye rağmen iyi değerlerdir.
‫Tamam.
‫Kaşıkçılar hakkında her şey bu kadar.
‫Aslında, meyvelerimizi hala dilimleyebiliriz, bu yüzden biraz yumurtlayalım ve dilimleyelim.
‫Gördüğünüz gibi, sahnede birden fazla varsa, yine de onları dilimleyebiliyoruz.
‫Ama tabii ki bunu klavyemizle değil faremizle yapmak istiyoruz.
‫Harika.
‫Bir sonraki videoda bıçağa bir göz atacağız.
‫Şimdi bıçağı oluşturacağız.
‫Bak.
‫Orada görüşürüz.