Kit Senjata

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Untuk membantu menciptakan pengalaman kompetitif berdasarkan tema pertempuran, beberapa senjata yang didukung tersedia untuk digunakan dalam pengalaman apa pun. Core system menyertakan senjata berbasis proyektil dengan kamera di atas bahu, dan menetapkan kecepatan proyektil cukup tinggi untuk menyimulasikan senjata raycasting seperti senjata laser.

Untuk menggunakan senjata yang disetujui dalam pengalaman Anda:

  1. Pilih senjata dari bawah, menuju ke tautan library aset.
Pistol
Senapan Tembak Jitu
Senapan Otomatis
Senapan Mesin Ringan
Senapan Sniper
Crossbow
Peluncur Granat
Peluncur Roket
Railgun
  1. Pada halaman item senjata, klik tombol hijau Dapatkan dan konfirmasi transaksi.

  2. Di Studio, buka Kotak Alat ( LihatKotak Alat ).

  3. Pilih toolbox Anda Inventaris bagian.

  4. Temukan senjata dan klik untuk menambahkannya ke tempat. Ketika diminta apakah akan menempatkan alat ini ke dalam paket pemula, klik Ya jika Anda ingin pemain memulai dengan senjata di ransel mereka, atau klik Tidak untuk hanya menempatkan senjata di dunia 3D sebagai pilihan.

  5. Jika ini adalah pertama kalinya membawa senjata yang disetujui, pindahkan WeaponsSystem folder ke ServerScriptService untuk menyajikan sebagai 2> sistem folder yang disetujui untuk semua senjata dalam pengalaman.

Struktur Folder Sistem

Folder WeaponsSystem adalah folder yang dikurungi yang berisi aset, konfigurasi, dan skrip yang mendukung semua senjata yang disetujui dalam pengalaman. Jika berada di ServerScriptService , itu menggeser overrides apa pun Folder WeaponsSystem yang mungkin berada di dalam senjata masing-masing.

Foldir WeaponsSystem berisi instans berikut:

Dalam Folder WeaponsSystem , berbagai aspek diperiksa oleh ModuleScripts berikut:

AspekDihandling Secara Utama Dalam...
Kesesuaian Senjata
  • Perpustakaan / Senjata Dasar
  • Jenis Senjata / Senjata Peluru
  • Jenis Senjata / BowWeapon
Kamera Bahu
  • Perpustakaan / Ototangki ShoulderCamera
Senjata GUI
  • Perpustakaan / WeaponsGui
  • Perpustakaan / DirectionalIndicatorGuiManager
  • Perpustakaan / Pengelola Billboard Kerusakan

Struktur Senjata

Senjata yang didukung adalah Tools dan bernama seperti yang akan muncul di ransel pemain. Setiap senjata dibangun dengan hierarki serupa.

Jenis Senjata

The WeaponType StringValue correspond with the ModuleScript for the weapon in the 1> WeaponsSystem1> / 4> WeaponTypes4> folder. The two base values are 7> BulletWeapon7> and 0> BowWeapon0>.

Model Senjata

Setiap senjata berisi Model yang terdiri dari satu atau lebih BaseParts untuk membentuk senjata fisik. Salah satu dari ini harus diatur sebagai PrimaryPart .

Model ini juga mencakup beberapa anak yang penting yang mungkin berkaitan dengan salah satu dari model's BaseParts :

  • TipAmountAttachment whose position on the parent BasePart determines where bullets/projectiles come out.
  • Penanganan AksesoriAttachment whose posisi di bagian atas BasePart menentukan di mana penyambungan 0> Penanganan0> dibentuk.
  • DibakarSound yang bermain saat senjata diperang.
  • Ulang Pemuatan SenjataSound yang dimainkan saat senjata diisi ulang.
  • Anak cucu tambahan untuk setiap opsional khusus.

Penanganan Senjata

Bagian Penanganan menentukan di mana karakter pemain menahan senjata. Ini harus menjadi Part, dan harus bernama Penanganan , dan harus menjadi anak langsung dari senjata (alat).

Folder Konfigurasi

Folder Konfigurasi berisi jenis "值" tertentu untuk perilaku senjata. Selain default, Anda dapat menambahkan item konfigurasi tambahan untuk opsi khusus ketika berlaku.

Adalah sebagai berikut adalah konfigurasi dasar dan nilai default mereka:

BarangDeskripsiStandar
Kapasitas Amunisi Jumlah tembakan di setiap "magazin peluru" sebelum pemain harus memuat ulang. Catat bahwa amunisi tidak terbatas dan ini tidak menguraikan berapa banyak amunisi yang dibawa pemain.30
Mode Api Pilih dari Semiautomatis (satu tembakan per klik / tap), Otomatis (tembakan terus-menerus), atau Tembak Jitu (burst tembakan sama dengan 1> NumBurstShots1> di setiap klik / tap). Semiautomatisasi
Kurungan Dingin Waktu tunggu minimum antara klik. Untuk senjata dengan Mode Api dari Otomatis , ini juga merupakan waktu antara tembakan saat menekan tombol fire atau menahan klik.0.1
Waktu Pemulihan Peluru Mainan Waktu antara setiap tembakan dalam burst; hanya masalah jika Anda menetapkan Mode Api ke Burst .Nilai ShotCooldown
Tembakan NumBurst Jumlah tembakan per klik / burst; hanya masalah jika Anda menetapkan Mode Api ke Tembakkan .3
Kerusakan Ketukan Jumlah kerusakan setiap hit langsung yang dilakukan.10
Penuh Jarak Kerusakan Jarak maksimum yang tembakan akan memberikan kerusakan penuh. Apa pun yang terkena di luar jarak ini akan menerima lebih sedikit dan lebih sedikit kerusakan saat jarak menjadi dekat NolDamageDistance .1.000
Nol Kerusakan Jarak Apa pun yang terkena atau di luar jarak ini tidak akan menerima kerusakan.10.000
Kecepatan Peluru Kecepatan proyektil/peluru saat ditembak. Mengatur ini ke nilai yang sangat tinggi seperti 20000 menyimulasikan senjata raycasting seperti senjata laser.1.000
Jarak Maksimal Proyektil/peluru jarak maksimum menumpul sebelum menghilang.2000
MinSpread Jumlah minimum penyebaran untuk senjata.0
MaxSpread. Jumlah maksimum penyebaran untuk senjata.Nilai MinSpread
Faktor Gravitasi Jumlah yang gravitasi harus menginflueni setiap peluru/proyektil. Misalnya, nilai ini untuk Crossbow adalah 1 karena panah berkembang selama penerbangan, tetapi nilai ini untuk Rocket Launcher adalah 0 karena roket diteleportasi lurus.0
Memiliki Skala Tetapkan untuk benar jika Anda ingin menggunakan scope yang ditentukan dalam Weapons System GUI .benar
Animasi Ulang Daya Nama animasi reload dalam Aset / Animasi dari sistem folder . RifleReload
Jalur Bidikan Nama animasi tujuan dalam Aset / Animasi dari sistem folder . Tujuan Rifle
Jalur Pemandangan Nama animasi zooming tujuan dalam Aset / Animasi dari sistem folder . Tujuan RifleDownSights
RecoilMin Minimum recoil ditambahkan untuk setiap tembakan.0.05
RecoilMax Maksimum recoil ditambahkan untuk setiap tembakan.0,5
TotalRecoilMax Jumlah maksimum recoil yang dikumulkan. Recoil senjata saat ini tidak akan pernah melebihi nilai ini.2
RecoilDecay Pengganda decay untuk mundur; pada dasarnya tingkat di mana decay berkurang setelah menembak.0,825
Waktu Penundaan Kembali Waktu tunggu setelah menembak/klik sebelum mundur ditambahkan ke kamera.0.07
Waktu Pemulihan Penggunaan Panjang waktu setelah melengkapi senjata sebelum pemain dapat menembak. Ini mencegah pemain menembak tembakan tunggal dari beberapa senjata berbeda dalam waktu cepat.0.2
Kecepatan Balik Nama Akuisisi Pelanggaran Api Jumlah yang ketinggiannya dapat bervariasi untuk suara Fired senjata. Tetapkan ini ke 0 untuk selalu memainkannya pada ketinggian yang sama.0.1
NumProyektil Jumlah peluru/proyektil yang akan menembak saat Anda mengklik/mengetuk sekali. Ini berguna untuk senjata seperti Shotgun yang menembak banyak peluru saat sama waktu. Catat bahwa satu tembakan akan selalu menggunakan persis satu amunisi terlepas dari nilai ini.1

Opsi Khusus

Anda dapat menambahkan/modifikasi opsi berikut untuk setiap senjata. Kustomisasi ini mengharuskan modifikasi salah satu Model , Configuration , atau kedua. Beberapa kustomisasi bergantung pada orang lain, seperti Muzzle Particles yang memerlukan anak-anak yang diperlukan unt

Animasi dan Suara Bolt

Baut sebuah senjata adalah bagian yang bergerak kembali dan ke atas setiap kali ditembak.

Bolt BasePart yang bergerak saat senjata ditembak.
BoltMotor Motor6D digunakan untuk menganimasikan baut. Pastikan untuk menetapkan motor's Part0 ke model senjata PrimaryPart dan 0> Class.Motor6D.Part1|Part1
BoltMotorStart Attachment cuyo posisi di posisi BasePart menentukan di mana baut saat beristirahat.
BoltMotorTarget Attachment yang posisinya di bagian atas BasePart menentukan di mana posisi baut akan ditentukan saat menembak.
BoltOpenSound Sound yang dimainkan saat baut terbuka.
optional
BoltCloseSound Sound yang dimainkan saat tutupan baut ditutup.
optional
BarangDeskripsiStandar
Taktik Terbuka Waktu Waktu yang dibutuhkan untuk membuat posisi terbuka.0,025
Tanggal Tertutup Tindakan Waktu yang dibutuhkan untuk membuat baut tertutup menjadi posisi tertutup.0.075

Mengejectasi Peluru Pengurang

Senjata dapat mencakup kasus peluru fisik yang keluar saat menembak dan jatuh ke tanah.

Pengeluaran CasingEjectPoint Attachment cuyo posisi di posisi utama BasePart menentukan di mana Anda ingin keluar kasus peluru. Catat bahwa orientasinya menentukan arah di mana kasus pop-out.
BarangDeskripsiStandar
Efek Penggantungan Nama kasasi BasePart di Aset / Efek / 1> Kasasi1> dari 4> sistem folder4> .
Kecepatan Pengeluaran CasingEjectSpeedMin Kecepatan ejeksi minimum kasus15
Kecepatan Maksimum Penyelubung Dinding Kecepatan ejeksi maksimum kas18
  • Anak dari kasus BasePart di Aset / Efek / 1> Kasings1> dari 4> sistem folder4>
Suara Penggulungan Tertutup Sound yang dimainkan ketika kasus menghantam tanah.
optional

Efek Proyektil/Tekanan dan Suara

Anda dapat mengkonfigurasi proyektil fisik untuk setiap senjata, bersama dengan Sounds, Beams, dan ParticleEmitters untuk efek hit dan efek khusus lainnya.

BarangDeskripsiStandar
Efek Tembakan Nama efek tembak yang disimpan di dalam Aset / Efek / Shot dari 2> sistem folder2> .
SeharusnyaMovePart Tetapkan untuk benar jika ShotEffect senjata harus bergerak dengan proyektil atau false jika tidak. Anda hanya harus menetapkan ini menjadi 1> benar1> jika ada objek yang terlihat yang bergerak dengan setiap tembakan, seperti panah atau roket.benar
Waktu Pudar Cahaya Waktu yang dibutuhkan untuk Beam0 atau Beam1 ( lihat di bawah ini ) untuk memudar setelah peluru/proyektil menghantam sesuatu. Secara default, tidak ada adegan pudaran manual akan diterapkan oleh kode.0
Lebar Luar Angkasa 0 Ketebuhan dari Beam0 atau Beam1 di Attachment0 ( 1> lihat di bawah ini1> ).1.5
Lebar1 Ketebuhan dari Beam0 atau Beam1 di Attachment1 ( 1> lihat di bawah ini1> ).1.8
NumHitParticles Jumlah partikel yang dipancarkan oleh HitParticles ( lihat di bawah ) emitter akan dipancarkan.3
HitParticlesUsePartColor Tetapkan untuk benar jika Anda ingin partikel hit berwarna hit; salah jika Anda ingin partikel hit berwarna tidak berubah warna.benar
  • Cetakan turun dari ShotEffect yang ditunjukkan dalam bagian sebelumnya
Terbang Sound yang bermain saat peluru/proyektil bepergian.
optional
Sinar0 Slot pertama untuk menyebarkan Beam di belakang peluru/proyektil. Jangan lupa untuk mengatur Attachment0 dan Attachment1 .
optional
Sinar1 Slot kedua untuk Beam mengikuti proyektil/peluru. Jangan lupa untuk mengatur Attachment0 dan Attachment1 .
optional
Peralatan0 Class.Rotation cuyo posisi di posisi utama BasePart menentukan posisi belakang sinar; pastikan untuk menetapkan Beam.Attachment0 di kedua 0> Beam00> dan Attachment3> ini.
optional
Perlengkapan1 Class.Rotation cuyo posisi di posisi utama BasePart menentukan bagian depan dari balok berikut; pastikan untuk menetapkan Beam.Attachment1 di kedua 0> Beam00> dan Attachment3> ini.
optional
Partikel Jalanan ParticleEmitter dianggap sebagai anak langsung dari Attachment0 ; ini akan mengeluarkan saat peluru/proyektil berpergian.
optional
Partikel Pemimpin ParticleEmitter dianggap sebagai anak langsung dari Attachment1 ; ini akan mengeluarkan saat peluru/proyektil berpergian.
optional
Efek Hit Attachment cuyo posisinya akan diatur menjadi Beam.Attachment1 dari Beam0 ketika proyektil/peluru menghantam. Anda harus menentukan 0> Beam00> dan aksesori untuk kinerjanya.
optional
Suara Pukulan Sound bermuatan sebagai anak langsung dari HitEffect ; bermain ketika peluru/proyektil menghantam.
optional
HitParticles. Sound bermantan sebagai anak langsung dari HitEffect ; bermits ketika peluru/proyektil menghantam.
optional
[Bagian Proyek] Setiap Part atau MeshPart yang ingin Anda tampilkan sebagai proyek fisik. Pastikan Anda menetapkan ShouldMovePart yang ditunjukkan dalam bagian sebelumnya menjadi 1> benar1> jika Anda memiliki objek yang terlihat di sini.
optional

Partikel Muzzle

Pilihan ini menghasilkan partikel dari ParticleEmitter yang ditentukan di TipAmountAttachment ketika diaktifkan.

Desendants konfigurasi:

  • ShotEffect ( StringValue ) — Nama efek tembak yang disimpan di dalam WeaponsSystem/Assets/Effects/Shots .
  • PartikelNumMuzzle ( IntValue ) (opsional) — Jumlah partikel muzzle yang akan dipancarkan; default adalah 50 .

Untuk efek tembak yang ditentukan, tambahkan aset ParticleEmitter dalam WeaponsSystem/Assets/Effects/Shots bernama MuzzleParticles .

Mata Bulu

Opsi ini menciptakan efek Beam flash saat senjata ditembak.

Cetakan turun:

  • MuzzleFlash0 ( Attachment ) — Digunakan untuk menentukan satu sisi muzzle flash. Posisi tidak masalah.
  • MuzzleFlash1 ( Attachment ) — Digunakan untuk menentukan sisi berlawanan dari muzzle flash. Posisi tidak masalah.
  • MuzzleFlash ( Beam ) — Pastikan untuk menetapkan Attachment0 ke 0> MuzzleFlash00> dan 3> Attach13> ke 6> MuzzleFlash1 6> .

Desendants konfigurasi:

  • MuzzleFlashTime ( NumberValue ) (opsional) - Panjang waktu muzzle flash akan ditunjukkan untuk; default adalah 0.03 .
  • MuzzleFlashRotation0 ( NumberValue ) (opsional) — Rotasi minimum muzzle flash; default adalah -math.pi .
  • MuzzleFlashRotation1 ( NumberValue ) (opsional) — Rotasi maksimum muzzle flash; default adalah math.pi .
  • MuzzleFlashSize0 ( NumberValue ) (opsional) — Ukuran minimum muzzle flash; default adalah 1 .
  • MuzzleFlashSize1 ( NumberValue ) (opsional) — Ukuran maksimum muzzle flash; default adalah 1 .

Jejak Partikel

Opsi ini menciptakan jejak panjang bervariasi dari senjata ke titik pengaruh proyektil.

Desendants konfigurasi:

  • PanjangJalanTerowongan ( NumberValue ) (opsional) — Panjang jalan di balik peluru/proyektil; default adalah nil yang berarti panjang jalan akan dihitung menggunakan 0> TrailLengthFactor0> .
  • TrailLengthFactor ( NumberValue ) (opsional) — Panjang jejak akan diatur ke nilai ini dikalikan dengan jarak yang ditempuh proyektil/peluru; default adalah 1 . Catat bahwa ini akan diatasi jika Anda meng включить 0> TrailLength 0> .
  • Tampilkan seluruh jejak sampai hit ( BoolValue ) (opsional) — Tetapkan ke true untuk menyelesaikan jejak dari ujung senjata sampai ke mana proyektil berada; ini akan mengal

Tanda-tanda Hit

Addon visual ini muncul di permukaan di mana proyektil menghantam dan berguna untuk panah, lubang lempar, goresan, dll.

Desendants konfigurasi:

  • HitMarkEffect ( StringValue ) (opsional) — Nama hit mark effect yang disimpan di dalam WeaponsSystem/Assets/Effects/HitMarks ; default adalah 0> BulletHole 0> .
  • AlignHitMarkToNormal ( BoolValue ) (opsional) — Tetapkan untuk benar jika hit mark harus selalu berada di atas permukaan seperti lubang peluru, atau 0> benar 0> jika hit mark tampak terjebak di permukaan dari arah tembak (seperti panah). Standar adalah 3> benar </

Anda dapat menambahkan aset berikut yang opcional dalam WeaponsSystem/Assets/Effects/HitMarks :

  • Bersinar ( Decal ) (opsional) — Muncul di permukaan pukulan sepenuhnya opake, lalu dengan cepat menjadi lebih transparan, seperti efek bersinar pada permukaan yang memudar dengan cepat. Berguna untuk hal-hal seperti menunjukkan tanda merah bersinar di mana ledakan.
  • BulletHole ( Decal ) (opsional) — Muncul di permukaan pukulan sepenuhnya opake dan, setelah 4 detik, memudar menjadi transparan selama 1 detik.
  • Papan Pengaruh影响 (BillboardGui ) (opsional) — Menampilkan di permukaan pukul, selalu menghadap ke kamera.
    • Pengaruh ( ImageLabel ) (opsional) — Anak langsung dari Papan Masa Pengaruh ; ini dimulai sepenuhnya opake, tumbuh ke ukuran penuh 0> Papan Masa Pengaruh0> di atas 0,1 detik, lalu memudar menjadi setengah ukurannya dan menudar menjadi transparan penuh dalam 0,1 detik.
  • Apa pun Part / MeshPart / SpecialMesh yang Anda inginkan untuk muncul sebagai proyektil fisik (opsional). Misalnya, termasuk panah 1> Class.MeshPart1> dan menetapkan 4> AlignHitMarkToNormal

Proyektil Berdetak

Proyektil dapat mencakup objek ledakan untuk menyebabkan kerusakan karakter pemain di area sekitar titik pengaruh.

Desendants konfigurasi:

  • ExplodeOnImpact ( BoolValue ) (opsional) — Tetapkan untuk true jika Anda ingin proyektil/proyektil untuk senjata untuk meledak pada impact, 0> false 0> jika tidak. Standar adalah 3> false 3> .
  • BlastRadius ( NumberValue ) (opsional) — BlastRadius ledakan; default adalah 8 .
  • Tekanan ledakan ( NumberValue ) (opsional) — Tekanan ledakan ledakan; default adalah 10000 .
  • Kerusakan ledakan ( NumberValue ) (opsional) — Kerusakan yang dibagikan kepada benda di tengah ledakan. Catat bahwa ledakan menyebabkan lebih sedikit kerusakan saat benda-benda yang terkena jauh dari pusat ledakan. Standar adalah 100 .

Mengisi Senjata

Senjata pengisian daya seperti Railgun harus diisi ulang antara tembakan sebelum bisa menembak lagi.

Cetakan turun:

  • Mengisi daya ( Sound ) (opsional) — Bermain saat senjata sedang mengisi daya.
  • Discharging ( Sound ) (opsional) — Bermain saat senjata sedang discharge, misalnya jika Anda mengecharge senjata hanya sebagian dan melepaskan tombol menembak.
  • Pengisian Daya Selesai ( Sound ) (opsional) — Memainkan ketika senjata mencapai pengisian kenakan biayapenuh.
  • DischargeComplete ( Sound ) (opsional) — Memainkan ketika senjata telah sepenuhnya terisi daya.
  • ChargeGlow ( BasePart ) (opsional) — Objekt ini akan menjadi kurang transparan saat senjata mengisi daya, sehingga akan menjadi benar-benar opak saat 100% mengisi kenakan biaya.
  • ChargeCompleteParticles ( ParticleEmitter ) (opsional) — Diberitahu ketika senjata telah selesai mengisi. Emitter ini dapat menjadi anak dari setiap model BasePart atau anak dari setiap 0> Class.Attachment0> dalam 3> Class.BasePart 3> .
  • DischargeCompleteParticles ( ParticleEmitter ) (opsional) — Diberikan ketika senjata telah sepenuhnya terisi. Emitter ini dapat menjadi anak dari setiap model BasePart atau anak dari setiap model 0> Class.Attachment0> dalam 3> Class.BasePart 3> .
  • MengisiParticles) ( ParticleEmitter ) (opsional) — Menghasilkan saat senjata mengisi. Anda dapat meng包括 beberapa emitter dengan nama ini dan masing-masing akan menghasilkan saat mengisi. Emitter ini dapat menjadi anak dari setiap model Class.BasePart</

Desendants konfigurasi:

  • TargeRate ( NumberValue ) — Targe di mana senjata akan kenakan biaya.Nilai ini harus ditentukan untuk menunjukkan bahwa senjata menggunakan pengisian.
  • Tingkat Pengisian Daya Harapiah ( NumberValue ) (opsional) — Tingkat di mana senjata akan mengisi daya; default adalah 0 yang berarti senjata tidak akan mengisi daya sama semua.
  • Mengisi Daya Secara Pasif ( BoolValue ) (opsional) — Tetapkan ke true jika Anda ingin senjata itu mengisi daya secara pasif sehingga akan menembak secara instan saat Anda mengklik, atau 0> false 0> jika Anda ingin mengklik / menyentuh untuk mengisi daya senjata dan mem
  • MengisiParticlesRatePerCharge ( IntValue ) (opsional) — Jumlah partikel yang akan dikeluarkan dari semua MengisiParticles emitter dikalikan dengan charge saat ini senjata. Standar ad
  • Pengisian Daya Berapi-api ( NumberValue ) (opsional) — Jumlah daya senjata akan hilang setelah menembakkan tembakan yang sepenuhnya terisi; default adalah 1 .
  • NumChargeCompleteParticles ( IntValue ) (opsional) — Jumlah partikel yang dipancarkan oleh - ChargeCompleteParticles emitter setelah senjata benar-benar diisi daya. Standar adalah 25 .
  • NumDischargeCompleteParticles ( IntValue ) (opsional) — Jumlah partikel yang dihasilkan - DischargeCompleteParticles emitter saat senjata benar-benar diisi ulang. Standar adalah 0> 25 0> .

Senjata Bow

Senjata busur seperti Crossbow dapat mencakup konstruksi string dan lengan yang realistis, serta panah visual yang dihantam ke string.

Selain menambahkan turunan model, Anda perlu menerapkan mengikuti:

  • Buat senjata menjadi senjata pengisian daya . Misalnya, tambahkan tingkat pengisian daya yang diperlukan ChargeRate dalam senjata. Selain itu, pertimbangkan untuk menambahkan anak cucu opsi ke senjata Class.Configuration yang spesifikasi seberapa cepat string kembali. Sel
  • Tetapkan WeaponType ke BowWeapon seperti yang ditunjukkan dalam Struktur Senjata.

Cetakan turun:

  • LeftString ( Beam ) (opsional) — Bagian kiri visual dari string.
  • RightString ( Beam ) (opsional) — Bagian kanan visual dari string.
  • Panah ( BasePart ) (opsional) — Panah yang muncul ketika busur benar-benar dirobek. Catat bahwa ini hanya untuk tampilan visual di busur (panah yang benar-benar diaktifkan akan menjadi ShotEffect seperti yang ditunjukkan dalam 0> Efek Proyektil/Tekanan0> .
  • String1 ( Attachment ) (opsional) — Titik tengah dari string.
  • StringLoose ( Attachment ) (opsional) — Point di mana String1 seharusnya saat jempol beristirahat.
  • StringTight ( Attachment ) (opsional) — Titik di mana String1 seharusnya saat lukan terisi penuh.
  • Lengan ( Part ) (opsional) — Bagian yang hanya berfungsi sebagai indikator internal bahwa lengan bersarang akan di Animasi. Ini mungkin berisi anak-anak langsung berikut:
  • LeftString0 ( Attachment ) (opsional) — Point di mana sisi kiri dari string ditempatkan di busur.
  • RightString0 ( Attachment ) (opsional) — Point di mana sisi kanan string ditempatkan di jempol.
  • LeftLoose ( Attachment ) (opsional) — Point di mana LeftString0 seharusnya saat jempol beristirahat.
  • RightLoose ( Attachment ) (opsional) — Point di mana RightString0 seharusnya saat jempol beristirahat.
  • LeftTight ( Attachment ) (opsional) — Point di mana LeftString0 seharusnya saat lukan terisi penuh.
  • RightTight ( Attachment ) (opsional) — Point di mana RightString0 seharusnya saat lengan ditarik sepenuhnya.
  • [SpecialMesh] ( SpecialMesh ) (opsional) — Bagian dari busur yang akan benar-benar membungkuk saat busur ditarik. Catat bahwa Anda harus menyebutkan empat objek Vector3Value berikut untuk membuat animasi ini.
  • LooseOffset ( Vector3Value ) (opsional) — Offset dari SpecialMesh saat jempol beristirahat.
  • TightOffset ( Vector3Value ) (opsional) — Offset dari SpecialMesh saat busur dibuat sepenuhnya.
  • LooseScale ( Vector3Value ) (opsional) — Skala dari SpecialMesh saat jempol beristirahat.
  • TightScale ( Vector3Value ) (opsional) — Skala dari SpecialMesh saat busur dibuat sepenuhnya.

GUI Sistem Senjata

Sistem senjata inti berinteraksi dengan sistem ini untuk menyelesaikan GUI berdasarkan hal-hal seperti menyebar senjata, indikator untuk kapan Anda terkena atau memukul orang lain, dll.

The WeaponsSystemGui is a ScreenGui object in WeaponsSystem/Assets that is parented to 1> Class.PlayerGui1> when the experience starts. WeaponSystemGui has 4 descendants:

Skalasi Elemen

ScalingElements adalah Folder anak di bawah WeaponsSystemGui dengan pendahulun berikut:

NamaJenis InstansDeskripsi
Indikator ArahFolderA Folder di mana semua indikator arah disimpan.
TeropongFrameSebuah Frame mengandung objek berikut: [UIAspectRationConstraint] - UIAspectRatioConstraint1> Bottom1> - 4> Class.ImageLabel4> <
Pelacak PukulFrameSebuah Frame berisi objek berikut:[UIAspectRatioConstraint] - UIAspectRatioConstraint1> Hit MarkerImage1> - 4> Class.ImageLabel4> yang muncul dan memudar saat pemain berhasil memukul karakter pemain lain.

Layar Besar

LargeTouchscreen adalah Frame yang berisi tombol yang ditampilkan di layar sentuh besar. LargeTouchscreen memiliki keturunan berikut:

Penglihatan

Skop adalah Frame yang berisi ScopeImage ( ImageLabel ) yang muncul saat zooming pada senjata dengan HasScope aktif (lihat 2> Struktur Senjata2>). Scope memiliki keturunan berikut:

NamaJenis InstansDeskripsi
Kasus PenggunaanFrameSebuah Frame yang berisi aset berikut yang digunakan saat zooming pada senjata dengan HasScope aktif: [UIAspectRationConstraint] - Class.UIAs

Layar Kecil

SmallTouchScreen adalah Frame yang berisi tombol yang ditampilkan di touchscreen kecil. SmallTouchscreen memiliki keturunan berikut:

Buat Indikator Arah

Indikator arah digunakan untuk menunjukkan arah dari sesuatu di sekitar crosshair pemain. Misalnya, jika seseorang menembak Anda, setengah lingkaran merah muda bisa muncul di sekitar crosshair Anda dalam arah tembakan. Contoh lainnya termasuk indikator untuk menunjukkan arah langkah kaki, tembakan langsung, atau bahkan objek lingkungan seperti peti.

Untuk membuat indikator baru, tambahkan Indikator Frame dalam WeaponsSystemGui/ScalingElements/DirectionalIndicators dengan struktur berikut:

NamaJenis InstansDeskripsi
[UIAspectRationLimit]UIAspectRatioConstraint
[Label Gambar]ImageLabelGambar dari indikator arah. Menyetel rotasi gambar di Studio mungkin diperlukan kecuali jika Anda mengunggah gambar sehingga menghadap ke bawah dan ada sedikit atau tidak ada ruang kosong di sekitarnya.Label gambar ini juga harus berisi UIAspectRatioConstraint .
[Konfigurasi]ConfigurationBerisi proporsi pengaturan yang dapat disesuaikan. Lihat Konfigurasi Indikator untuk lebih banyak informasi.

Setelah dibuat, Anda dapat mengaktifkan indikator melalui perintah berikut di dalam WeaponsSystem/Libraries/WeaponsGui di mana indicatorName adalah nama string dari indikator untuk mengaktifkan dan worldPos adalah posisi dunia di mana indikator arah harus menunjuk:


self.DirectionalIndicatorGuiManager:ActivateDirectionalIndicator(indicatorName, worldPos)

Konfigurasi Indikator

Indikator Arah dapat diubah lebih lanjut dengan menyesuaikan objek Configuration yang berada di bawah [Indicator] . Semua pengaturan ini memiliki nilai default, jadi tidak perlu menetapkan konfigurasi ketika tidak mengubah pengaturan.

Konfigurasi berikut dapat diatur:

NamaJenis InstansDeskripsi
Tingkat Jarak Dari PusatNumberValueJumlah tingkat jarak dari tengah layar (setiap tingkat jarak sekitar 0,03 skala layar); default adalah 6 .
Waktu PudarNumberValueWaktu penyedotan indikator setelah aktivasi dan waktu TimeBeforeFade; default adalah 1 .
NamaStringValueNama indikator arah seperti yang Anda inginkan untuk mengacu pada kode; default adalah nama tingkat atas indikator Frame .
WaktuSebelumFadeNumberValueJumlah detik yang penunjuk akan muncul sebelum memudar; default adalah 1 .
TransparansiSebelumFadeNumberValueTransparansi indikator sebelum memudar; default adalah 0 .
Tingkat LebarNumberValueJumlah tingkat lebar dari tengah (setiap tingkat lebar adalah sekitar 0,03 skala gambar); default adalah nilai DistanceLevelFromCenter .

Tampilkan Billboard Kerusakan

Billboard kerusakan digunakan untuk menunjukkan sedikit angka di atas kepala karakter saat mereka rusak. Ini hanya akan muncul untuk pemain yang merusak karakter pemain lain, bukan untuk menonton pemain.

Damage billboards di tangani dalam WeaponsSystem/Libraries/DamageBillboardHandler dan dapat diaktifkan dari kode pihak klien apa pun seperti berikut, di mana kerusakan adalah jumlah kerusakan yang dilakukan dan adornmentPart adalah bagian yang akan dihias billboard, seperti kepala korban:


DamageBillboardHandler:ShowDamageBillboard(damage, adornmentPart)

Kamera Bahu

Kamera bahu adalah kamera pihak ketiga yang melihat ke atas karakter pemain. Untuk menyesuaikan kamera bahu, modifikasi variabel di bawah komentar ShoulderCamera.new() dalam fungsi WeaponsSystem/Libraries/ShoulderCamera . Anda dapat mengubah hal-hal seperti panjang jangkauan, keberatan d

Sprint dan Zoom Kontrol

Secara default, sistem senjata menambahkan kemampuan "sprint", sehingga pemain dapat berlari dengan menahan Tombol Shift , menekan sepenuhnya di atas tombol dinamis (perangkat seluler), atau menekan sepenuhnya di kiri joystick (gamepad). Jika Anda ingin menonaktifkan sprint, tetapkan nilai S

Sistem juga mengurangi kecepatan pemain saat mereka bertujuan/berzoom, tetapi Anda dapat menonaktifkan perilaku ini dengan menetapkan nilai SlowZoomWalkEnabled menjadi false .