The MerchBooth 模块开发者 memungkinkan Anda menawarkan asi avatar , 1>tiket1> , dan 4>produk pengembang4> untuk dijual langsung di dalam pengalaman Anda. Pemain dapat
Penggunaan Modul
Pemasangan
Untuk menggunakan modul MerchBooth dalam pengalaman:
Dari tab Lihat, buka tab Kotak Alat dan pilih tab Toko Pencipta .
Pastikan Model penyortiran dipilih, lalu klik tombol Lihat Semua untuk Kategori .
Temukan dan klik Modul Dev ubin.
Temukan modul Merch Booth dan klik, atau seret ke dalam pandangan 3D.
Di jendela Explorer, pindahkan seluruh model MerchBooth ke ServerScriptService . Setelah mengeksekusi pengalaman, modul akan di distribusikan ke berbagai layanan dan mulai berjalan.
Konfigurasi
Modul ini telah dikonfigurasi untuk bekerja untuk kebanyakan kasus pengguna, tetapi dapat dengan mudah disesuaikan melalui fungsi konfigurasikan. Misalnya, untuk membuat tema yang lebih ringan dan menonaktifkan tombol Filter default di area atas kiri katalog:
Dalam StarterPlayerScripts , buat LocalScript baru dan ganti nama menjadi ConfigureMerchBooth .
Tempaste kode berikut ke dalam naskah baru.
Skrip Lokal - Konfigurasi MerchBoothlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.configure({backgroundColor = Color3.fromRGB(220, 210, 200),textSize = 17,textFont = Enum.Font.Fondamento,textColor = Color3.fromRGB(20, 20, 20),useFilters = false})
Menambahkan Item
Apa itu stan dagang tanpa merch? Bagian berikut menjelaskan cara menambahkan asi avatar, kartu kredit, dan produk pengembang ke stan dagang Anda.
Aset Avatar
Item seperti pakaian dan aksesori harus ditambahkan melalui ID aset mereka yang berlokasi di halaman rincian item di Toko Avatar.
Buat Script di dalam ServerScriptService dan tempastekan kode berikut.
Skrip - Tambahkan Aset Avatarlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local items = {}for _, assetId in items dolocal success, errorMessage = pcall(function()MerchBooth.addItemAsync(assetId)end)if not success thenwarn(errorMessage)endendSalinan ID aset item dari situs web mereka Toko Avatar mereka . Misalnya, ID Topi Baseball Roblox adalah 607702162 .
Tempaste setiap ID yang disalin ke dalam daftar dalam tabel items dengan tanda baca. Secara default, item muncul dalam tampilan katalog dalam urutan alfabetik, tetapi Anda dapat menyesuaikan sorting menggunakan setCatalogSort .
Skrip - Tambahkan Aset Avatarlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local items = {607702162, -- Topi Baseball Roblox4819740796, -- Robot1374269, -- Telinga Kucing11884330, -- Kacamata Nerd10476359, -- Topi Kertas}for _, assetId in items dolocal success, errorMessage = pcall(function()MerchBooth.addItemAsync(assetId)end)if not success thenwarn(errorMessage)endend
Melewati
Menambahkan kartu keluar memerlukan ID kartu yang dapat ditemukan di Dashboard Pembuat.
Buat Script di dalam ServerScriptService dan tempastekan kode berikut.
Skrip - Tambahkan Passlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local items = {}for _, assetId in items dolocal success, errorMessage = pcall(function()MerchBooth.addItemAsync(assetId)end)if not success thenwarn(errorMessage)endendNavigate to the Dashboard Pencipta and select the experience.
Di kolom kiri, di bawah Monetization , pilih Passes .
Klik tombol ⋯ untuk mendapatkan kartu dan pilih Copy Asset ID .
Tempaste setiap ID yang disalin ke dalam daftar dalam tabel items dan termasuk Enum.InfoType.GamePass sebagai parameter kedua untuk 2> tambahkanItemAsync2> untuk menunjukkan bahwa item adalah pas. Secara default, item akan muncul dalam tampilan katalog dalam urutan
Skrip - Tambahkan Passlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local items = {4343758, -- Zirah ColdFyre28521575, -- Perisai Slime}for _, assetId in items dolocal success, errorMessage = pcall(function()MerchBooth.addItemAsync(assetId, Enum.InfoType.GamePass)end)if not success thenwarn(errorMessage)endend
Produk Pengembang
Menambahkan produk pengembang mengharuskan ID produk yang dapat ditemukan di Dashboard Pembuat .
Buat Script di dalam ServerScriptService dan tempastekan kode berikut.
Skrip - Tambahkan Produk Pengembanglocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local items = {}for _, assetId in items dolocal success, errorMessage = pcall(function()MerchBooth.addItemAsync(assetId)end)if not success thenwarn(errorMessage)endendNavigate to the Dashboard Pencipta and select the experience.
Di kolom kiri, di bawah Monetization , pilih Produk Pengembang .
Klik tombol ⋯ untuk produk dan pilih Salinan ID Aset .
Tempaste setiap ID yang disalin ke dalam daftar koma-delimited dalam tabel items dan включаетEnum.InfoType.Product sebagai parameter kedua untuk 2> addItemAsync2> untuk menunjukkan bahwa item adalah produk pengembang. Secara default, item muncul dalam tampilan k
Skrip - Tambahkan Produk Pengembanglocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local items = {1236602053, -- Mana Pengisian Ulang1257880672, -- Ramuan Penyembuh}for _, assetId in items dolocal success, errorMessage = pcall(function()MerchBooth.addItemAsync(assetId, Enum.InfoType.Product)end)if not success thenwarn(errorMessage)endend
Tombol Katalog Kustom
Secara default, tombol katalog pihak kanan memungkinkan pemain untuk membuka stan kapan saja.
Dalam beberapa kasus, mungkin berguna untuk menghapus tombol ini dan menghubungkan yang Anda memiliki:
Buat tombol baru seperti yang dijelaskan dalam Tombol .
Buat LocalScript sebagai anak objek tombol.
Tempaste kode berikut ke dalam naskah baru.
Script Lokal - Tombol Katalog Kustomlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))-- Hapus tombol katalog defaultMerchBooth.toggleCatalogButton(false)-- Koneksikan tombol khususscript.Parent.Activated:Connect(function()MerchBooth.openMerchBooth()end)
Wilayah yang Dapat Dibeli
Cara yang membantu untuk menyetir pembelian dalam pengalaman Anda adalah dengan menunjukkan secara otomatis stan pakaian saat seorang pemain memasuki area.
Untuk membuat wilayah yang dapat dibeli:
Buat blok Anchored yang mencakup wilayah deteksi. Pastikan blok tinggi cukup untuk bertabrakan dengan PrimaryPart karakter model ( HumanoidRootPart secara default).
Menggunakan bagian Tags dari propinsi blok, atau Studio's Editor Tag, tetapkan tag ShopRegion ke blok sehingga 1> Class.CollectionService1> mendeteksi itu.
Tetapkan Transparency bagiannya sepenuhnya untuk menyembunyikannya dari pemain dalam pengalaman. Juga nonaktifkan prop CanCollide dan CanQuery-nya sehingga objek tidak bertabrakan fisik dengan itu dan raycasts tid
Sisipkan LocalScript baru di bawah StarterPlayerScripts .
Dalam naskah baru, pastikan kode berikut yang menggunakan acara Touched dan TouchEnded untuk mendeteksi ketika karakter memasuki/meninggalkan wilayah dan memanggil openMerchBooth dan 1> closeMerchBooth1> untuk membu
Skrip Lokallocal Players = game:GetService("Players")local ReplicatedStorage = game:GetService("ReplicatedStorage")local CollectionService = game:GetService("CollectionService")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))-- Hapus tombol katalog defaultMerchBooth.toggleCatalogButton(false)local function setupRegion(region: BasePart)region.Touched:Connect(function(otherPart)local character = Players.LocalPlayer.Characterif character and otherPart == character.PrimaryPart thenMerchBooth.openMerchBooth()endend)region.TouchEnded:Connect(function(otherPart)local character = Players.LocalPlayer.Characterif character and otherPart == character.PrimaryPart thenMerchBooth.closeMerchBooth()endend)end-- Iterate melalui wilayah toko yang sudah adafor _, region in CollectionService:GetTagged("ShopRegion") dosetupRegion(region)end-- Deteksi saat wilayah toko non-streamed ber流入CollectionService:GetInstanceAddedSignal("ShopRegion"):Connect(setupRegion)
Mendekati Prompt
Sebagai alternatif untuk pandangan katalog 2D, Anda dapat menambahkan tombol kedekatan di objek-objek pengalaman. Ini mengundang pemain untuk menemukan item di lingkungan 3D, mempratinjau mereka di avatar mereka sendiri, membelinya, dan segera mengequipnya. Lihat tambahkanTombolKedekatan untuk detail.
Mengubah Efek Equip
Secara default, stan pakaian menunjukkan efek cahaya generik saat seorang pemain menggunakan item darinya. Untuk mengubah efeknya, set particleEmitterTemplate ke instans Anda sendiri dari ParticleEmitter dalam panggilan konfigurasikan.
Skrip Lokal - Konfigurasi MerchBooth
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local myParticleEmitter = Instance.new("ParticleEmitter")myParticleEmitter.SpreadAngle = Vector2.new(22, 22)myParticleEmitter.Lifetime = NumberRange.new(0.5, 1.5)myParticleEmitter.Shape = Enum.ParticleEmitterShape.SpheremyParticleEmitter.Transparency = NumberSequence.new(0, 1)myParticleEmitter.RotSpeed = NumberRange.new(200, 200)MerchBooth.configure({particleEmitterTemplate = myParticleEmitter})
Kesadaran GUI
Secara default, stan dagang menyembunyikan semua ScreenGuis dan CoreGuis saat UI-nya muncul, termasuk chat, papan peringkat, dan yang lainnya yang ditambahkan oleh Roblox. Jika Anda ingin menonaktifkan perilaku ini, set hideOther
Skrip Lokal - Konfigurasi MerchBooth
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.configure({hideOtherUis = false})
Gerakan Karakter
Dapat menguntungkan untuk mencegah seorang karakter bergerak saat mereka berada di stan dagang. Ini dapat dilakukan dengan menetapkan disableCharacterMovement ke true dalam panggilan configure.
Skrip Lokal - Konfigurasi MerchBooth
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.configure({disableCharacterMovement = true})
Referensi API
Jenis
Barang
Item di stan dagang diwakili oleh kamus dengan kombinasi nilai kunci berikut. Item dapat diumpulkan melalui fungsi getItems atau acara itemAdded.
Kunci | Jenis | Deskripsi |
---|---|---|
assetId | nomor | ID Katalog item, seperti yang diteruskan ke addItemAsync . |
title | string | Judul item seperti yang muncul dalam katalog. |
price | nomor | Harga item dalam Robux. |
deskripsi | string | Deskripsi item seperti yang muncul dalam katalog. |
assetType | string | String mewakili ketikaksesori item. |
isOwned | boolean | Apakah pemain saat ini memiliki item. |
creatorName | string | Pembuat item seperti yang ditunjukkan dalam katalog. |
creatorType | Enum.CreatorType | Jenis pencipta untuk item. |
Umum
Panel Merch.
Digunakan bersama dengan setControlKeyCodes untuk menyesuaikan tombol dan gamepad untuk berinteraksi dengan stan dagang.
Nama | Sintesis |
---|---|
ProximityPrompts | Tombol kunci dan / atau gamepad untuk membuka tampilan item saat proximity prompts di konfigurasi. |
OpenMerchBooth | Tombol kunci dan / atau gamepad untuk membuka stan. |
CloseMerchBooth | Tombol kunci dan / atau gamepad untuk menutup stan. |
Filter | Tombol kunci dan / atau gamepad untuk menggunakan pulldown default Filter di area atas kiri katalog. |
ViewItem | Tombol kunci dan / atau gamepad untuk membuka tampilan item booth khusus. |
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.setControlKeyCodes(MerchBooth.Controls.ProximityPrompts, {keyboard = Enum.KeyCode.Q,gamepad = Enum.KeyCode.ButtonL1})
Fungsi
mengonfigurasi
Menggeser opsi konfigurasi pihak klien default melalui tombol/值 berikut di tabel config . Fungsi ini hanya dapat dipanggil dari LocalScript .
Kunci | Deskripsi | Standar |
---|---|---|
backgroundColor | Warna latar belakang utama dari jendela ( Color3 ). | [0, 0, 0] |
cornerRadius | Radius sudut untuk jendela utama ( UDim ). | (0, 16) |
cornerRadiusSmall | Radius sudut untuk elemen di dalam jendela ( UDim ). | (0, 8) |
textFont | Font "teks utama" seperti harga, deskripsi, dan informasi umum lainnya (Enum.Font). | Gotham |
textSize | Ukuran teks utama. | 14 |
textColor | Warna teks utama ( Color3 ). | [255, 255, 255] |
secondaryTextColor | Warna yang digunakan untuk beberapa variasi teks utama ( Color3 ). | [153, 153, 158] |
headerFont | Font dari teks judul jendela ( Enum.Font ) digunakan. | GothamMedium |
headerTextSize | Ukuran teks header yang digunakan untuk judul jendela. | 18 |
titleFont | Font teks judul yang digunakan untuk nama item di halaman item terperinci ( Enum.Font ). | GothamBold |
titleTextSize | Ukuran teks judul yang digunakan untuk nama item di halaman item rincian. | 28 |
buttonColor | Warna latar belakang untuk tombol yang lebih besar dalam keadaan dapat diklik, seperti tombol pembelian utama dalam tampilan item (Color3 ). | [255, 255, 255] |
buttonTextColor | Warna teks untuk tombol besar dalam kondisi yang dapat diklik, seperti tombol pembelian utama dalam tampilan item (Color3). | [0, 0, 0] |
secondaryButtonColor | Warna latar belakang untuk tombol yang lebih kecil seperti tombol harga dalam pandangan katalog atau tombol Coba pakai ( Color3 ). | [34, 34, 34] |
secondaryButtonTextColor | Warna teks untuk tombol yang lebih kecil seperti tombol harga dalam pandangan katalog atau tombol Coba pakai ( Color3 ). | [255, 255, 255] |
inactiveButtonColor | Warna latar belakang untuk semua tombol dalam keadaan tidak dapat diklik ( Color3 ). | [153, 153, 158] |
inactiveButtonTextColor | Warna teks untuk semua tombol dalam kondisi tidak dapat diklik ( Color3 ). | [255, 255, 255] |
particleEmitterTemplate | Instansi ParticleEmitter khusus yang muncul dan bermain di equip. |
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.configure({backgroundColor = Color3.fromRGB(255, 255, 255),textSize = 16,textFont = Enum.Font.Roboto,textColor = Color3.fromRGB(20, 20, 20),hideOtherUis = false,})
tambahkanItemAsync
Secara asinkron menambahkan item ke stan dagang sehingga itu layak untuk dibeli dalam pengalaman. assetId adalah ID aset item, productType adalah item as Enum.InfoType dan 1> hideFromCatalog1> dapat digunakan untuk menyembunyikan item di view katalog.
Lihat Menambahkan Item untuk rincian, karena penggunaan bervariasi sedikit untuk asi versus game passes atau 1>produk pengembang1> .
Skrip - Tambahkan Aset Avatar
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local items = {
607702162, -- Topi Baseball Roblox
4819740796, -- Robot
1374269, -- Telinga Kucing
11884330, -- Kacamata Nerd
10476359, -- Topi Kertas
}
for _, assetId in items do
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(assetId)
end)
if not success then
warn(errorMessage)
end
end
Skrip - Tambahkan Pass
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local items = {
4343758, -- Zirah ColdFyre
28521575, -- Perisai Slime
}
for _, assetId in items do
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(assetId, Enum.InfoType.GamePass)
end)
if not success then
warn(errorMessage)
end
end
Skrip - Tambahkan Produk Pengembang
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local items = {
1236602053, -- Mana Pengisian Ulang
1257880672, -- Ramuan Penyembuh
}
for _, assetId in items do
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(assetId, Enum.InfoType.Product)
end)
if not success then
warn(errorMessage)
end
end
mendapatkan item
Mengembalikan definisi menggambarkan semua item yang terdaftar saat ini. Setiap kunci adalah ID aset item sebagai string, dan nilai setiap unitadalah Item. Fungsi ini hanya dapat dipanggil dari Script .
Skrip
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(4819740796)
end)
if success then
local items = MerchBooth.getItems()
print(items)
end
hapusItem
Menghapus item sebelumnya yang ditambahkan dengan tambahkanItemAsync, menghapus ubinnya dalam pandangan katalog dan setiap 提示 kedekatan yang ditetapkan untuk itu. Fungsi ini hanya dapat dipanggil dari Class.Script .
Skrip
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(4819740796)
end)
if success then
-- Setelah beberapa waktu, hapus item
task.wait(5)
MerchBooth.removeItem(4819740796)
end
tambahkanTombolKesesuaian
Menambahkan prompt kedekatan di atas adornee yang diberikan yang akan mengaktifkan tampilan item pembelian, diberikan IDnya. Ini dapat digunakan sebagai alternatif untuk tampilan katalog 2D, mendorong pemain untuk menemukan item di lingkungan 3D.
Catat bahwa item harus ditambahkan melalui tambahkanItemAsync sebelum tombol kedekatan dapat ditetapkan untuknya. Lihat juga menghapus tombolKedekatan untuk menghapus prompt kedekatan dari objek.
Skrip
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(4819740796)
end)
if success then
local item = workspace:FindFirstChild("Robox")
if item then
MerchBooth.addProximityButton(item, 4819740796)
end
end
hapusTombolKesetaraan
Menghapus sebuah prompt kedekatan yang dihasilkan melalui tambahkanProximityButton . Fungsi ini hanya dapat dipanggil dari sebuah Script .
Skrip
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(4819740796)
end)
if success then
local item = workspace:FindFirstChild("Robox")
if item then
MerchBooth.addProximityButton(item, 4819740796)
end
-- Setelah beberapa waktu, hapus prompt
task.wait(5)
MerchBooth.removeProximityButton(item)
end
setKatalogSort
Mengatur fungsi sortiran sortFunction untuk digunakan dalam tampilan katalog. Fungsi sortiran yang disediakan dapat menggunakan logika berdasarkan Item info seperti price atau 1> title1>. Fungsi ini hanya dapat dipanggil dari 4> Class.LocalScript4> .
Berikut adalah beberapa contoh untuk mengurutkan katalog:
Harga Rendah ke Tinggi
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.setCatalogSort(function(a, b)
return a.price < b.price
end)
Harga Tinggi-ke-Rendah
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.setCatalogSort(function(a, b)
return a.price > b.price
end)
Harga Rendah ke Tinggi & Alphabetical
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.setCatalogSort(function(a, b)
return if a.price == b.price then a.title < b.title else a.price < b.price
end)
setKodeKontrol
Mengkonfigurasi nilai tombol dan kunci untuk interaksi dengan stan dagang. Parameter pertama harus menjadi MerchBooth.Controls enum dan parameter kedua menjadi tabel yang berisi kunci keyboard dan/atau gamepad dengan nilai 1> Container.KeyCode1> yang sesuai.
enum ( control ) | Standar keyCodes Kunci/Nilai |
---|---|
MerchBooth.Controls.ProximityPrompts | keyboard = Enum.KeyCode.E``gamepad = Enum.KeyCode.ButtonY |
MerchBooth.Controls.OpenMerchBooth | gamepad = Enum.KeyCode.ButtonY |
MerchBooth.Controls.CloseMerchBooth | gamepad = Enum.KeyCode.ButtonB |
MerchBooth.Controls.Filter | gamepad = Enum.KeyCode.ButtonX |
MerchBooth.Controls.ViewItem | gamepad = Enum.KeyCode.ButtonA |
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.setControlKeyCodes(MerchBooth.Controls.ProximityPrompts, {keyboard = Enum.KeyCode.Q,gamepad = Enum.KeyCode.ButtonL1,})
Buka stan
Membuka jendela stan dagang (jika ditutup) dan menavigasi ke tampilan katalog. Fungsi ini hanya dapat dipanggil dari LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(assetId)
end)
if not success then
warn(errorMessage)
end
MerchBooth.openMerchBooth()
Buka Pandangan
Navigates to the single item view of the given itemId, opening the merch booth window if it is currently closed. This function can only be called from a LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(4819740796)
end)
if success then
MerchBooth.openItemView(4819740796)
end
ToggleKatalog
Mengubah tombol katalog di sisi kanan layar. Ini berguna ketika menerapkan tombol tombol khusus atau membatasi penampilan stan dagang ke regio atau proximity prompts. Hanya dapat dipanggil dari 2>Class.LocalScript2> .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.toggleCatalogButton(false)
Apakah MerchBoothTerbuka
Mengembalikan true jika katalog atau tampilan item terbuka. Jika tampilan item terbuka, ID aset item dikembalikan sebagai nilai kedua. Fungsi ini hanya dapat dipanggil dari LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(4819740796)
end)
if success then
MerchBooth.openItemView(4819740796)
local isOpen, itemId = MerchBooth.isMerchBoothOpen()
print(isOpen, itemId)
end
tutupMarkas
Tutup jendela stan dagang. Fungsi ini hanya dapat dipanggil dari LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.closeMerchBooth()
isMerchBoothAktif
Fungsi ini dapat digunakan bersama dengan setEnabled untuk memeriksa apakah stan dagang saat ini diaktifkan atau tidak. Hanya dapat dipanggil dari LocalScript .
setAktif
Tetapkan apakah seluruh stan mahkota diaktifkan atau tidak. Saat dinonaktifkan, fungsi ini menghapus seluruh UI, termasuk prompt kedekatan dan menghubungkan kembali semua peristiwa. Fungsi ini hanya dapat dipanggil dari LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local isEnabled = MerchBooth.isMerchBoothEnabled()if isEnabled thenMerchBooth.setEnabled(false)end
Acara
item ditambahkan
Fire saat item ditambahkan melalui addItemAsync . Acara ini hanya dapat dihubungkan dalam sebuah Script .
Skrip
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.itemAdded:Connect(function(assetId, itemInfo)
print("Item added with asset ID of", assetId)
print(itemInfo)
end)
item diHapus
Berapi-api saat item dihapus melalui menghapus item. Acara ini hanya dapat dihubungkan dalam sebuah Script .
Parameter | |
---|---|
assetId: number | ID aset item. |
Skrip
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.itemRemoved:Connect(function(assetId)
print("Item removed with asset ID of", assetId)
end)
merchBoothTerbuka
Dibakar saat salah satu item atau tampilan detail katalog dibuka.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.merchBoothOpened:Connect(function()
print("Booth view opened")
end)
tenda penjualan tertutup
Berapi-api saat salah satu item atau deskripsi item ditutup.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.merchBoothClosed:Connect(function()
print("Booth view closed")
end)
atalogTerbuka
Diaktifkan saat pandangan katalog dibuka.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.catalogViewOpened:Connect(function()
print("Catalog view opened")
end)
atalogTutup
Diaktifkan saat pandangan katalog ditutup.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.catalogViewClosed:Connect(function()
print("Catalog view closed")
end)
itemViewDibuka
Dibakar saat tampilan rincian item dibuka.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.itemViewOpened:Connect(function()
print("Item view opened")
end)
itemViewTutup
Dibakar saat tampilan rincian item ditutup.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.itemViewClosed:Connect(function()
print("Item view closed")
end)