Rekabetçi savaş tabanlı deneyimler oluşturmaya yardımcı olmak için, herhangi bir deneyimde kullanılabilen birkaç onaylanmış silah mevcut.Çekirdek sistem, omzun üzerindeki bir kamera ile mermi tabanlı silahlara sahiptir ve mermi hızını yeterince yüksek ayarlamak, lazer silahları gibi ışın atış silahlarını simüle edebilir.

Deneyiminizde onaylanmış bir silah kullanmak için:
- Aşağıdan bir silah seçin ve varlık kütüphane bağlantısına yönlendirin.
Silahın öğe sayfasında, yeşil Al düğmesine tıklayın ve işlemi onaylayın.
Studio'da, Alet çantasını aç ( Görüş → Alet çantası ).
Alet kutunuzu seçin Envanter bölümünü.
Silahı bul ve eklemek için yere tıkla.Araçları başlangıç paketine koymanız istenirse, oyuncuların silahı sırt çantasında başlatmasını istiyorsanız Evet veya sadece silahı 3D dünyaya bir toplama olarak yerleştirmek istiyorsanız Hayır seçeneğine tıklayın.
Bu, onaylanmış bir silah getirmenin ilk kez olduğunda, onun SilahSistemi klasörünü SunucuKriptServisi 'ye taşıyın, deneyimdeki tüm onaylanmış silahlar için tek birleşik sistem klasörü olarak hizmet vermek için.
Sistem klasör yapısı
SilahSistemi klasörü, deneyimdeki tüm onaylanmış silahları güçlendiren varlıklar, yapılandırmalar ve senaryolar içeren birleşik bir klasördür. Sunucu Kod Hizmeti içinde yerleşmişse, bireysel silahlar içinde bulunan herhangi bir eşdeğer Silah Sistemi klasörünü geçersiz kılar.

SilahSistemi klasörü aşağıdaki örnekleri içerir:
- SilahTürleri ( Folder ) – Tüm silah tiplerini belirtir.
- SunucuSilahSkripti ( Script )
- Sürüm ( IntValue )
- Müşteri Silah Kodu ( LocalScript )
- Ağ Çağrıları ( ModuleScript )
- SilahData ( RemoteEvent )
- Silah Sistemi ( ModuleScript ) SilahSistemi klasörü içinde, farklı yönler aşağıdakiler tarafından kontrol edilir: ModuleScripts
Açı | Ana olarak içinde ele alındı... |
---|---|
Silah işlevi |
|
Omuz kamerası |
|
Silah GUI'si |
|
Silah yapısı
Onaylanmış silahlar Tools ve oyuncunun sırt çantasında görünecekleri gibi adlandırılır. Her silah benzer bir hiyerarşi ile yapılandırılır.
Silah yaz
The SilahTürü silahın WeaponsSystem / SilahTürleri klasöründeki silahla eşleşir.İki temel değer Mermi Silahı ve Yay Silahı dır.
Silah modeli
Her silah bir veya daha fazla Model fiziksel silah oluşturmak için birden fazla BaseParts içerir.Bunlardan biri modelin PrimaryPart olarak ayarlanmalıdır.

Model ayrıca modelin BaseParts birine ebeveyn olabilecek şu önemli soyluları da içerir:
- İp Bağlantısı – Attachment ebeveyn üzerindeki konumu mermilerin/mermilerin nereden çıktığını belirleyen BasePart kişi
- Eklentiyi Ele Alma – Attachment ebeveyn üzerindeki konumu BasePart nerede Kolu kaynaklanacağını belirler.
- Ateş edildi – Sound Silah ateş edildiğinde oynayan şey.
- Yeniden yükleme – Sound silah yeniden yüklendiğinde oynayan şey.
- Herhangi bir uzman seçeneğe özel ek çocuklar.
Silah kolu
Tutuş bölümü, bir oyuncu karakterinin silahı nerede tutacağını belirler.Bu bir Part, adlandırılmalıdır Kullanımı ve silahın (aracın) doğrudan bir yavrusu olmalıdır.
Yapılandırma klasörü
Yapılandırma klasörü silah davranışı için özel "değer" türleri içerir.Varsayılana ek olarak, geçerli olduğunda uzman seçenekler için ek yapılandırma öğeleri ekleyebilirsiniz.
Aşağıda temel yapılandırmalar ve varsayılan değerleri bulunur:
Eşya | Açıklama | Varsayılan |
---|---|---|
Mermi Kapasitesi | Oyuncu yeniden yüklemeden önce her "mühimmat klip"teki atış sayısı.Mermilerin sınırsız olduğunu ve bir oyuncunun ne kadar mermi taşıdığını belirtmediğini unutmayın. | 30 |
Ateş Modu | Seçimden önce Yarı otomatik (her tıklama/dokunuş için bir atış), Otomatik (sürekli ateş), veya Patlama (her tıklama/dokunuş için çekilen atışların eşit olduğu NumBurstShots 'a eşit) seçin. | Yarı otomatik |
Atış Bekleme Süresi | Tıklamalar arasındaki minimum bekleme süresi.Silahların Ateş Modu Otomatik ile sahip olduğu için, bu da ateş düğmesine basarken veya tıklamayı tutarken atış süresidir. | 0.1 |
Patlama Atış Soğuma Süresi | Bir patlamada her atış arasındaki süre; yalnızca Ateş Modu Patlama 'ya ayarlarsanız önemlidir. | Değeri Ateş Bekleme Süresi |
NumBurstShotslar | Tıklama/ patlama başına atış sayısı; yalnızca Ateş Modu Patlama 'ya ayarlarsanız önemlidir. | 3 |
Vuruş Hasarı | Her doğrudan vuruşun verdiği hasar miktarı. | 10 |
Tam Hasar Mesafesi | Ateşlerin tüm hasarı yapacağı maksimum mesafe.Bu mesafenin ötesine giden herhangi bir şey, mesafe SıfırHasarMesafe yaklaştıkça daha az hasar alacaktır. | 1000 |
Sıfır Hasar Mesafesi | Bu mesafede veya bu mesafenin ötesinde herhangi bir şeye hasar verilmeyecektir. | 10000 |
Mermi Hızı | Mermilerin/mermilerin vurulduğunda seyahat ettiği hız. Bu, lazer silahları gibi çok yüksek bir değere ayarlanır; 20000. | 1000 |
Maksimum Mesafe | Kaybolmadan önce maksimum mesafe mermileri/projeleri seyahat eder. | 2000 |
Minimum Yayılma | Silah için minimum yayılma miktarı. | 0 |
Maksimum Yayılma | Silah için maksimum yayılma miktarı. | Değeri MinSpread |
Yerçekimi Faktörü | Yerçekimi etkilemesi gereken her mermi/fırlatma silahının miktarı.Örneğin, Arbalet için bu değer 1 çünkü oklar uçuş sırasında yayılır, ancak Roket Fırlatıcısı için bu değer 0 çünkü itilen roketler doğrudan seyahat eder. | 0 |
HasScope'un | doğru Weapons System GUI'de belirtilen alanı kullanmak istiyorsanız ayarlayın if you want to use the scope that's specified in Weapons System GUI . | sahte |
Yeniden Yükleme Animasyonu | Yeniden yükleme animasyon parçasının adı Varlıklar / Animasyonlar / sistem klasörü 'de. | TüfekYenidenYükleme |
Hedef Takibi | Hedef animasyon parçasının adı Varlıklar / Animasyonlar / sistem klasöründe. | TüfekAmaçlama |
Hedef Zoom Takibi | Hedef kısayol animasyon parçasının adı Varlıklar / Animasyonlar / sistem klasörü 'daki. | TüfekAmaçAşağıManzaralar |
Geri TepmeMin | Her atış için minimum geri tepme eklenir. | 0.05 |
Geri TepmeMax | Her atış için maksimum geri tepme eklenir. | 0.5 |
ToplamGeri TepmeMax | Toplam maksimum biriken geri tepme. Silahın mevcut geri tepmesi asla bu değeri aşmayacaktır. | 2 |
Geri TepmeKaybı | Geri tepme için çürüme çarpanı; temelde geri tepmenin atıştan sonra azaldığı oran. | 0.825 |
Geri Tepme Süresi | Geri tepme sırasında vurmadan/tıklamadan önce bekleme süresi kameraya eklenir. | 0.07 |
Başlatma Süresi | Oyuncu atış yapmadan önce silah donatıldıktan sonraki süre uzunluğu.Bu, oyuncuların hızlı bir şekilde farklı silahlardan tek bir atış yapmasını engeller. | 0.2 |
AteşliOynatmaHızAralığı | Silahın Ateş edilmiş sesi için değişebilecek miktar. Bunu daima aynı tonla çalmak için 0 olarak ayarlayın. | 0.1 |
NumProjectiles sayısı | Bir kez tıkladığınızda aynı anda ateş edecek mermi/mermilerin sayısı.Bu, aynı anda birden fazla mermi atan silahlar gibi silahlar için yararlıdır Pompalı Tüfek.Bir atışın bu değere rağmen daima aynı mermi kullanacağını unutmayın. | 1 |
Uzman seçenekler
Herhangi bir silah için aşağıdaki seçenekleri ekleyebilir/modifiye edebilirsiniz.Bu özelleştirmeler silahın Model , silahın Configuration veya her ikisine de değiştirilmesini gerektirir.Bazı yapılandırmalar diğerlerine bağlıdır, örneğin Namlu Parçacıkları, Projile/Hit Etkileri ve Sesleri için gerekli çocukları gerektirir.
Bıçak animasyonları ve sesleri
Bir silahın mermisi her ateş edildiğinde sağa sola hareket eden parçadır.
- Silahın Silah Modeli soyundakiler
Mermi | BasePart Silah ateşlendiğinde hareket eden. | |
BoltMotor | Motor6D vida animasyonu için kullanılır.Motorun Part0 'sını silah modelinin PrimaryPart 'sine ve Part1 'sını da Bolt 'a ayarladığınızdan emin olun. | |
Boltt motor başlatma | Attachment ebeveyn üzerindeki konumu, vida'nın dinlenirken nerede olduğunu belirleyen ebeveynin BasePart pozisyonudur. | |
BoltMotorHedefi | ebeveyn üzerindeki konumu, somunun atış sırasında nereye animasyon yapacağını belirler. | |
BoltOpenSound | Sound kilit açıldığında çalan. | optional |
BoltCloseSound | Sound kilit kapandığında çalan. | optional |
- Silahın Yapılandırma klasörünün çocukları
Eşya | Açıklama | Varsayılan |
---|---|---|
EylemAçmaSüresi | Kelebin açık pozisyona animasyon yapması için gereken süre. | 0.025 |
EylemKapatmaSüresi | Kelebin kapalı konuma animasyon yapması için gereken süre. | 0.075 |
Mermi kabuklarını çıkar
Silahlar ateş edildiğinde çıkan ve yere düşen fiziksel kurşun kabukları içerebilir.
- Silahın Silah Modeli soyundakiler
Kaçış Noktası | Attachment ebeveyn üzerindeki konumu, mermi kabuklarının patlayacağı yeri belirler. kimin konumu üzerinde çıkmak istediğiniz BasePartDikkat edin, yönü kapağın çıkış yönünü belirler. |
- Silahın Yapılandırma klasörünün çocukları
Eşya | Açıklama | Varsayılan |
---|---|---|
KasaEtkisi | Kasa adı BasePart in Varlıklar / Etkiler / Kasalar of the sistem klasörü . | |
Kasa Çıkış Hızı Minimumu | Kabukların minimum çıkış hızı | 15 |
Kasa Çıkış Hızı Maksimumu | Kabukların maksimum çıkış hızı | 18 |
Kasa Vuruş Sesi | Sound kasalar yere çarptığında çalan ses. | optional |
Mermi/vuruş etkileri ve sesler
Herhangi bir silah için fiziksel mermileri, Sounds , Beams ve ParticleEmitters saldırı etkileri ve diğer özel efektler için yapılandırabilirsiniz.
- Silahın Yapılandırma klasörünün çocukları
Eşya | Açıklama | Varsayılan |
---|---|---|
AtışEtkisi | Bir atış efektinin adı Varlıklar / Etkiler / Sistem Klasörü içinde saklanır. | |
ShouldMovePart'i Taşımalı | Silahın AtışEtkisi hareket etmesi gerekiyorsa doğru veya değilse yalan olarak ayarlanır.Bunu yalnızca doğru ayarlamalısınız, eğer her atışta hareket eden görünür bir nesne varsa, örneğin ok veya roket. | sahte |
IşınKaybolmaSüresi | Işın0 veya Işın1 ( aşağıya bakın ) mermi/mermiden sonra kaybolması için gereken süreVarsayılan olarak, kod tarafından hiçbir manuel geçiş uygulanmayacaktır. | 0 |
Işın Genişliği0 | Işın0 veya Işın1 Bağlantı0 ( aşağıya bakın ). | 1.5 |
Işın Genişliği11 | Işın0 veya Işın1 Bağlantı1 ( aşağıya bakın ). | 1.8 |
NumHitParçacıkları | HitParticles ( aşağıya bakın ) yayıcının yayacağı parçacık sayısı. | 3 |
HitParticlesKullanma RenkParçası | Vuruş parçacıklarının vuruş yüzeyinin rengi olmasını istiyorsanız doğru ayarlayın; vuruş parçacıklarının renk değiştirmemesini istiyorsanız yanlış . | doğru |
- Belirtilen Atış Etkisi 'nin çocukları önceki bölümde not edildi
Uçuyor | Sound Mermi/mermiler seyir ederken oynayan şey. | optional |
Işın0 | Arka plaka/mermiden sonraki ilk yuvası Beam ardında. Eklenti0 ve Eklenti1 ayarlanmasını unutmayın. | optional |
Işın1 | Ardından gelen bir mermi/projile arkadan Beam ikinci yuva. Eklenti0 ve Eklenti1 ayarlanmasını unutmayın. | optional |
Eklenti0 | Attachment Ki ebeveyn üzerindeki konumu, arka izleyen ışınların arkasını belirler; bunun için her ikisine de Class.BasePart``Class.Beam.Attachment0 ve Beam1 ayarlayın. | optional |
Eklenti1 | Attachment Ki ebeveyn üzerindeki konumu, arka izleyen ışınların önünü belirler; bunun için her ikisine de Class.BasePart``Class.Beam.Attachment1 ve Beam1 ayarlayın. | optional |
İz Parçacıkları | ParticleEmitter ebeveyn olarak çizginin/merminin doğrudan bir çocuğu olarak seyahat ediyor; bu, mermi/mermiler seyahat ederken yayılacaktır. | optional |
Önder Parçacıklar | ParticleEmitter Bağlantı1 'in doğrudan bir çocuğu olarak yolculanır; bu, mermi/mermilerin seyahat ettiği sırada yayılacaktır. | optional |
HitEffect | Attachment ki pozisyonu mermi/merminin vurduğu yere ayarlanacak Beam.Attachment1 Işın0 olduğunda.Bunun düzgün çalışması için Işın0 ve eklerini belirtmelisiniz. | optional |
optional | ||
optional | ||
[MermiParçası] | Herhangi biri Part ya da MeshPart fiziksel bir mermi olarak görünmek istediğiniz herhangi biriBurada görünen bir nesneniz varsa önceki bölümde belirtilen ShouldMovePart ayarını doğru olarak ayarladığınızdan emin olun. | optional |
Tepme parçacıkları
Bu seçenek, silahın ParticleEmitter Bağlantısına Attachment parçacıklarını çıkarır.
Konfigurasyon mirasçıları:

- Atış Etkisi ( StringValue ) — WeaponsSystem/Assets/Effects/Shots içinde saklanan bir atış efektinin adı.
- NumMuzzleParticles ( IntValue ) (isteğe bağlı) — Yayılacak mermi parçacıklarının sayısı; varsayılan değer 50 .
Belirtilen atış efekti için, WeaponsSystem/Assets/Effects/Shots adında bir Parçacık Yayıcı öğesi ekleyin MuzzleParticles .

Tepme parıltıları
Bu seçenek, silah ateşlendiğinde bir Beam ışık etkisi oluşturur.
Model soyundakiler:

- MuzzleFlash0 ( Attachment ) — Mermi flaşının bir tarafını belirtmek için kullanılır. Konum önemli değil.
- MuzzleFlash1 ( Attachment ) — Mermi flaşının karşıt tarafını belirtmek için kullanılır. Konum önemli değil.
- MuzzleFlash ( Beam ) — Attachment0 'i MuzzleFlash0 ve Attachment1 'i MuzzleFlash1 olarak ayarladığınızdan emin olun.
Konfigurasyon mirasçıları:

- MuzzleFlashTime ( NumberValue ) (isteğe bağlı) — Mermi flaşının gösterileceği süre uzunluğu; varsayılan değer 0.03 .
- MuzzleFlashRotation0 ( NumberValue ) (isteğe bağlı) — Namlu flaşının minimum dönüşü; varsayılanı -math.pi dır.
- MuzzleFlashRotation1 ( NumberValue ) (isteğe bağlı) - Namlu flaşının maksimum dönüşü; varsayılanı math.pi .
Parçacık izleri
Bu seçenek, silahdan projile etki noktasına değişen uzunlukta bir iz oluşturur.
Konfigurasyon mirasçıları:

- İz Uzunluğu ( NumberValue ) (isteğe bağlı) — Mermi/mermiden sonraki iz uzunluğu; varsayılanı, iz uzunluğunun yerine nil kullanılarak hesaplanacağıdır, ki bu da iz uzunluğunun İz UzunluğuFaktörü kullanılarak hesaplanacağı demektir.
- Yol Uzunluğu Faktörü ( NumberValue ) (isteğe bağlı) — Yol uzunluğu, merminin/merminin projelerinin son çerçevede seyahat ettiği mesafeyle çarptırılarak bu değere ayarlanacaktır; varsayılan değer 1 dir.Not bu geçerli olmayacak, eğer Yol Uzunluğu dahil ederseniz.
- ShowEntireTrailUntilHit ( BoolValue ) (isteğe bağlı) — Yolun tüm yol boyunca silah ucundan projileye kadar görüntülenmesi için true ayarlandı; bu, her ikisini de YolUzunluğu ve YolUzunluğuFaktörü ve yol sadece projilin bir şeye çarptığında kaybolacak.Yukarıdaki iki seçeneğin birini hesaplamak için false ayarına ayarlayın, iz uzunluğunu hesaplamak için.Varsayılan değer false dir.
Vuruş işaretleri
Bu görsel ek, mermilerin vurduğu yüzeyde görünür ve oklar, kurşun delikleri, yanma izleri vb. için yararlıdır.
Konfigurasyon mirasçıları:

- HitMarkEffect ( StringValue ) (isteğe bağlı) — vuruş işaret etkisi adı WeaponsSystem/Assets/Effects/HitMarks içinde saklanır; varsayılanı Mermi Deliği dır.
- AlignHitMarkToNormal ( BoolValue ) (isteğe bağlı) — Vuruş işaretinin daima yüzeye bir mermi deliği gibi düz hizalanması gerektiğinde doğru veya vuruş işaretinin yüzeyden geldiği yönden (bir ok gibi) sıkışmış görünmesi gerektiğinde yalan olarak ayarlanır.Varsayılan değer doğrudur .
Aşağıdaki opcional varlığı WeaponsSystem/Assets/Effects/HitMarks içine ekleyebilirsiniz:

- Parlama ( Decal ) (isteğe bağlı) — Hit yüzeyinde tümüyle opak görünür, ardından hızla daha fazla saydam hale gelir, yüzeyde hızla kaybolan parlak bir etki gibi.Patlayıcıların vurduğu yerde parlayan kırmızı bir işaret göstermek gibi şeyler için yararlı.
- Mermi Deliği ( Decal ) (isteğe bağlı) — Vuruş yüzeyinde tümüyle opak görünür ve 4 saniye sonra 1 saniye boyunca transparan olur.
- Etkileşim Duvarı ( BillboardGui ) (isteğe bağlı) — Hit yüzeyinde görüntüler, daima kameraya doğru yönlendirilir.
- Etkisi ( ImageLabel ) (isteğe bağlı) — İmpactBillboard 'in doğrudan çocuğu; bu, tamamen opak başlar, 0.1 saniye boyunca İmpactBillboard 'in bütün boyutuna büyür, ardından yarısının boyutuna düşer ve 0.1 saniye boyunca bütün transparansiyete dönüşür.
- Herhangi bir Part / MeshPart / SpecialMesh fiziksel bir mermi olarak görünmek istediğiniz (isteğe bağlı).Örneğin, bir ok MeshPart ve yukarıda belirtilen AlignHitMarkToNormal ayarını yanlış yönünden yüze çıkarmak, oku ateş ettiğiniz yönden yüze çıkaracaktır.
Patlayan mermiler
Mermiler, etki noktasının etrafındaki bir alandaki oyuncu karakterlerine hasar vermek için bir Patlama nesnesi içerebilir.
Konfigurasyon mirasçıları:

- ExplodeOnImpact ( BoolValue ) (isteğe bağlı) - Silahların etki sırasında patlaması için mermiler/mermiler ayarlamak istiyorsanız, true eğer değilse, false diğer taraftan.Varsayılanı yanlış dır.
- Patlama Hasarı ( NumberValue ) (isteğe bağlı) — Patlamanın merkezindeki şeylere verilen hasar.Patlamanın, patlamanın merkezinden uzaklaştıkça daha az hasar verdiğini unutmayın.Varsayılan değer 100 dır.
Silah şarj ediliyor
Railgun gibi bir şarj silahı tekrar ateş edebilmek için atışlar arasında şarj edilmelidir.
Model soyundakiler:

- Şarj etme ( Sound ) (isteğe bağlı) — Silah şarj ederken oynar.
- Boşaltma ( Sound ) (isteğe bağlı) — Silah boşaltırken oynar, örneğin silahı yalnızca kısmen şarj edip ateş düğmesini serbest bırakırsanız.
- Şarj Tamamlandı ( Sound ) (isteğe bağlı) — Silah tamamen şarj olduğunda oynar.
- Bırakma Tamamlandı ( Sound ) (isteğe bağlı) — Silah tamamen boşaltıldığında oynar.
- ŞarjIşığı ( BasePart ) (isteğe bağlı) — Bu nesne silah şarj edildikçe daha az şeffaf olacak, böylece %100 ücrettamamen opak olacak.
- Şarj Tamamlanmış Parçacıklar ( ParticleEmitter ) (isteğe bağlı) — Silah şarjı bittiğinde yayılır.Bu yayıcı herhangi bir modelin çocuğu veya içindeki bir çocuk olabilir .
- DischargeCompleteParticles ( ParticleEmitter ) (isteğe bağlı) — Silah tamamen boşaltıldığında yayılır.Bu yayıcı herhangi bir modelin çocuğu veya içindeki bir çocuk olabilir .
- Şarj Edilen Parçacıklar ( ParticleEmitter ) (isteğe bağlı) — Silah şarj ederken yayılır.Bu ismin çeşitli yayıcılarını dahil edebilir ve her biri şarj ederken yayın yapar.Bu yayıcı herhangi bir modelin çocuğu veya içindeki bir çocuk olabilir .
Konfigurasyon mirasçıları:

- Şarj Oranı ( NumberValue ) — Silahın ücretedeceği oran. Bu değer, silahın şarj kullandığını belirtmek için belirtilmelidir.
- Boşaltma Oranı ( NumberValue ) (isteğe bağlı) — Silahın boşaltacağı oran; varsayılanı, silahın hiç boşaltmayacağı demektir 0 .
- Pasif olarak şarj edin ( BoolValue ) (isteğe bağlı) — Silahın pasif olarak şarj olmasını istiyorsanız buna doğru ayarlayın, böylece tıkladığınızda anında ateş edecek veya yanlış eğer silahı şarj etmek ve bir kez dolu şarj ulaştığında ateş etmek istiyorsanız.Varsayılanı yanlış dır.
- ŞarjEdilenParçacıkOranıHerŞarj ( IntValue ) (isteğe bağlı) — Tüm ŞarjEdilenParçacıkların çıkardığı parçacık sayısı silahın mevcut şarjı ile çarptı.Varsayılan değer 20 , yani silah yükü %10 ise, her bir ŞarjParçacığı yayıcısı 2 parça (20×0.1) yayacak ve silah yükü %90 ise, her bir yayıcı 18 parça (20×0.9) yayacaktır.
- Ateş boşaltma ( NumberValue ) (isteğe bağlı) — Silahın tamamen şarj edilmiş bir atış atıktan sonra kaybedeceği miktar; varsayılanı 1 dir.
- NumChargeCompleteParticles ( IntValue ) (isteğe bağlı) - Silah tamamen şarj olduğunda - ChargeCompleteParticles yayıcısının yayacağı parça sayısı.Varsayılan değer 25 dir.
- NumDischargeCompleteParticles ( IntValue ) (isteğe bağlı) — silah tamamen boşaltıldığında yayıcının yayacağı parça sayısı - DischargeCompleteParticles .Varsayılan değer 25 dir.
Yay silahı
Arbalet gibi bir ok silahı, gerçekçi bir ip ve kollar yapısı ve ipten görsel bir ok dahil edebilir, ayrıca ipten vurulan bir dizi.
Model mirasçıları eklemekle birlikte, takip edilenuygulamanız gerekir:
- Silahı şarj silahı yapın.Örneğin, gereken Şarj Oranı silahın Configuration içine ekleyin, ne kadar hızlı dize çekildiğini belirleyen.Ayrıca, silahın Model örneğin bir dize/kolun geri çekildiği için bir Şarj sesi gibi zorunlu olmayan bir soyutlar eklemek de düşünebilirsiniz.
Model soyundakiler:

- Sol Dize ( Beam ) (isteğe bağlı) — Dizeyi görsel olarak sol yarısı.
- Sağ Dize ( Beam ) (isteğe bağlı) — Dizeye görsel sağ yarısı.
- Ok ( BasePart ) (isteğe bağlı) — Yay tamamen çekildiğinde görünen ok.Lütfen unutmayın ki bu sadece ok üzerindeki görsel görünüm içindir (gerçek ateşlenen ok, Projile/Hit Etkileri ve Sesleri 'de belirtildiği gibi bir AtışEtkisi olacaktır).
- Dize1 ( Attachment ) (dizibağlı) — Dizinin merkez noktası.
- Dize Sıkıştırma ( Attachment ) (isteğe bağlı) — Yay tamamen çekildiğinde Dize1 nin olması gereken nokta.
- Kollar ( Part ) (isteğe bağlı) — Yay kollarının animasyon olacağına dair içsel bir gösterge olarak hizmet eden bir parça.Bu, aşağıdaki doğrudan çocukları içerebilir:
- LeftString0 ( Attachment ) (isteğe bağlı) — Ip'nin sol tarafının yayın üzerine bağlandığı nokta.
- RightString0 ( Attachment ) (isteğe bağlı) — Ip'nin sağ tarafının yayın üzerine bağlandığı nokta.
- Sıkı Sol ( Attachment ) (isteğe bağlı) — Yay tamamen çekildiğinde LeftString0 nin olması gereken nokta.
- Sağ Sıkıştırma ( Attachment ) (isteğe bağlı) — Yay tamamen çekildiğinde RightString0 nin olması gereken nokta.
- [Özel Dokuma] ( SpecialMesh ) (isteğe bağlı) — Yay çekildiğinde gerçekten eğilecek olan yayın parçası.Bunu animasyon haline getirmek için aşağıdaki dört Vector3Value nesneyi belirtmeniz gerektiğini unutmayın.
Silah sistemi GUI'si
Çekirdek silah sistemi, silahın yayılması gibi şeyler üzerine dayanarak GUI'yi güncelleştirmek için bu sistemle arayüz kurur, vurulduğunuzda veya başkalarına vurduğunuzda göstergeler gibi.
The WeaponsSystemGui bir deneyim başladığında ebeveyn olarak kabul edilen ScreenGui bir nesnedir WeaponsSystem/Assets ve deneyim başladığında PlayerGui ile bağlantı kurur.WeaponSystemGui'nin 4 türevi vardır:
- Ölçeklendirme Elemanları - Ekrandaki öğelerin bir Folder kısmı.
- Büyük Dokunmatik Ekran - Büyük dokunmatik ekranlardaki düğmeler için bir Frame .
- Küçük Dokunmatik Ekran - Küçük dokunmatik ekranlardaki düğmeler için bir Frame .
Ölçeklendirme elemanları
ScalingElements, WeaponsSystemGui altında aşağıdaki mirasçılarla bir Folder ebeveynidir:
Adı | İstisna yaz | Açıklama |
---|---|---|
YönlüGöstergeler | Folder | Tüm yön göstergeleri depolanan bir Folder A nerede tüm |
Kros saçma | Frame | Bir içinde şu nesneler bulunur:[UIAspectRationConstraint] - Aşağı - Sola - Sağa - Üstüne - Üstüne - |
Vuruş İşaretleyici | Frame | A Frame içinde aşağıdaki nesneler bulunur:[UIAspectRatioConstraint] - UIAspectRatioConstraint HitMarkerImage - ImageLabel oyuncu başka bir oyuncu karakterine başarılı bir şekilde vurduğunda görünür ve kaybolur. |
Büyük Dokunmatik Ekran
Büyük Dokunmatik Ekran, büyük dokunmatik ekranlarda görünen düğmelere sahip bir Frame dır. Büyük Dokunmatik Ekran'ın aşağıdaki yerlileri vardır:
- Hedef Düğmesi ( ImageButton )
- Ateş Düğmesi ( ImageButton )
Alanı
Alan, Frame içeren bir ScopeImage ( ImageLabel ) özelliğidir, HasScope etkinleştirilmiş bir silaha yakınlaşırken görünür (Silah Yapısına bakın ). Scope aşağıdaki yerlere sahiptir:
Adı | İstisna yaz | Açıklama |
---|---|---|
Alan İstekçisi ScopeInstance | Frame | Bir silahın HasScope etkinleştirildiğinde yakınlaşırken kullanılan aşağıdaki varlıkları içeren bir Frame :[UIAspectRationConstraint] - UIAspectRatioConstraint BottomBlack - Frame LeftBlack - Frame RightBlack - Frame TopBlack - Frame |
Küçük Dokunmatik Ekran
SmallTouchScreen, küçük dokunma ekranlarında görünen düğmelere sahip bir Frame dır. SmallTouchscreen'in aşağıdaki yerlileri vardır:
- Hedef Düğmesi ( ImageButton )
- Ateş Düğmesi ( ImageButton )
Yön göstericisi oluştur
Yön göstericileri, oyuncunun kros sahibinin etrafındaki bir şeyin yönünü göstermek için kullanılır.Örneğin, birisi sana ateş ederse, kırmızı yarı çember atışın geldiği yönde etrafında görünebilir.Diğer örnekler, adımların yönünü göstermek, doğrudan silah atışı veya hatta sandıklar gibi çevresel nesneleri göstermek için göstergeler içerir.
Yeni bir gösterge oluşturmak için, aşağıdaki yapı ile yeni bir gösterge ekleyin:
Adı | İstisna yaz | Açıklama |
---|---|---|
[UIAspectRationSınırı] | UIAspectRatioConstraint | |
[GörüntüEtiketi] | ImageLabel | Yön göstergesinin görüntüsü.Stüdyoda görüntünün dönüşünü ayarlamak, görüntü yukarı bakıyor ve etrafında az veya hiç boş alan yoksa yüklemediğiniz sürece gerekli olabilir.Bu görüntü etiketinin de kendi UIAspectRatioConstraint 'si içermelidir. |
[Yapılandırma] | Configuration | Düzeltmek için opcional özellikler içerir. Daha fazla bilgi için Gösterge Yapılandırması'na bakın. |
Oluşturulduktan sonra, yön göstericisini etkinleştirmek için aşağıdaki komut içindeki noktasında göstericinin dize adını etkinleştirmek ve dünyaPos dünya konumunu işaret etmesi gereken yön göstericisinin konumu:
self.DirectionalIndicatorGuiManager:ActivateDirectionalIndicator(indicatorName, worldPos)
Gösterge yapılandırması
Yön göstergeleri, Configuration altında bulunan [Indicator] nesneyi ayarlayarak daha da değiştirilebilir.Bu ayarların tümünün varsayılan bir değeri vardır, bu nedenle bir ayarı değiştirmediğinizde yapılandırma ayarlanmasına gerek yoktur.
Aşağıdaki yapılandırmalar ayarlanabilir:
Adı | İstisna yaz | Açıklama |
---|---|---|
Merkezden Uzaklık SeviyesiFromCenter | NumberValue | Ekranın merkezinden uzaklık seviyelerinin sayısı (her uzaklık seviyesi yaklaşık 0.03 ekran ölçeğidir); varsayılan değer 6 dır. |
Kaybolma Süresi | NumberValue | Aktifleşmesinin ardından gösterge solgunma süresi ve TimeBeforeFade saati; varsayılan değer 1 dır. |
Adı | StringValue | kodreferans vermek istediğiniz yön göstericisinin adı; varsayılanı, göstericinin üst seviyesinin adıdır Frame . |
Solgun Öncesi Süre | NumberValue | Göstergenin kaybolmadan önce görüneceği saniye sayısı; varsayılan değer 1 dır. |
Sönmeden Önce Transparanslılık | NumberValue | Solgunlaşmaya başlamadan önce göstergenin şeffaflığı; varsayılanı 0 . |
Genişlik Seviyesi | NumberValue | Oradan genişlik seviyelerinin sayısı (her genişlik seviyesi yaklaşık 0.03 ekran ölçeğindedir); varsayılan değer DistanceLevelFromCenter 'dir. |
Hasar afişini göster
Hasar afişi, hasar gördüğünde karakterin başının üzerinde az sayı göstermek için kullanılır.Bunlar sadece başka bir oyuncunun karakterini hasar veren oyuncu için görünecek, seyirci oyuncular için değil.
Hasar afişleri WeaponsSystem/Libraries/DamageBillboardHandler içinde ele alınır ve hasar, hasar miktarı ve adornmentPart, afişe hasar verecek olan kısımdır, örneğin kurbanın başı gibi:
DamageBillboardHandler:ShowDamageBillboard(damage, adornmentPart)
Omuz kamerası
Omuz kamerası, oyuncu karakterin sağ omzuna bakan üçüncü kişi kamerasıdır.Omuz kamerasını özelleştirmek için, -- Yapılandırma parametleri (konstantlar) yorumunun altındaki değişkenleri değiştirin ShoulderCamera.new() içinde WeaponsSystem/Libraries/ShoulderCamera fonksiyonunun .Görüş alanı, karakterden ofset,koşma veya zoomlama sırasında yürüme hızı gibi şeyleri değiştirebilirsiniz, vs.
Koşma ve yakınlaştırma kontrolü
Varsayılan olarak, silah sistemi "koşma" yeteneğini ekler, böylece oyuncular Shift tuşuna basarak, dinamik joystick'te (mobil) veya sol joystick'te (oyun kolu) tamamen basarak koşabilirler.Koşmayı devre dışı bırakmak istiyorsanız, SprintEnabled değerini SilahSistemi / Yapılandırma içinde false olarak ayarlayın.
Sistem ayrıca oyuncunun hedef alması/yakınlaşması sırasında oyuncu hızını azaltır, ancak bu davranışı devre dışı bırakmak için YavaşZoomWalkEnabled değerini false olarak ayarlayabilirsiniz.
