O Mercado de Merchmódulo de desenvolvedor permite que você ofereça recursos de avatar, 2> passes2> e 5> produtos de desenvolvedor5> para venda diretamente dentro de sua experiência. Os jogadores podem pesquisar it
Uso de Módulo
Instalação
Para usar o módulo MerchBooth em uma experiência:
Na aba Ver, abra a caixa de ferramentas e selecione a aba Loja do Criador.
Certifique-se de que a classificação Modelos foi selecionada, então clique no botão Ver Todos para Categorias .
Localize e clique no mosaico Modulos de Desenvolvedor .
Localize o módulo Loja de Merchandising e clique nele, ou arraste e solte na janela de ver3D.
Na janela Explorer, mova o modelo completo de Loja de Mercadoria para ServerScriptService . Ao executar a experiência, o módulo será distribuído para vários serviços e começará a funcionar.
Configuração
O módulo está predefinido para funcionar para a maioria dos casos de uso, mas pode ser facilmente personalizado através da função Configurar. Por exemplo, para criar um tema mais claro e desativar o botão Filtro padrão na área superior esquerda da verdo catálogo:
In StarterPlayerScripts , create a new LocalScript and rename it to ConfigurarMercado .
Paste o seguinte código no novo script.
LocalScript - ConfigureCompradorlocal 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})
Adicionando Itens
O que é uma cabine de merchandising sem merch? As seções a seguir contornam como adicionar recursos de avatar, passes e produtos do desenvolvedor à sua cabine de merchandising.
Recursos de Avatar
Itens, como roupas e acessórios, devem ser adicionados através de seu ID de ativo, localizado na página de detalhes do item na Loja de Avatar .
Crie um Script dentro de ServerScriptService e cole o seguinte código.
Script - Adicionar Recursos de 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)endendCopie os IDs de ativos de seus sites Avatar Shop. Por exemplo, o ID de Capa de Beisebol Roblox é 607702162 .
Paste cada ID copiado em uma lista com espaços dentro da tabela items. Por padrão, os itens aparecem na visualização do catálogo na ordem alfabético, mas você pode personalizar a classificação usando setCatalogSort.
Script - Adicionar Recursos de Avatarlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local items = {607702162, -- Capa de beisebol da Roblox4819740796, -- Roblox1374269, -- Orelhas de Gatinho11884330, -- Óculos Nerd10476359, -- Chapéu de Papel}for _, assetId in items dolocal success, errorMessage = pcall(function()MerchBooth.addItemAsync(assetId)end)if not success thenwarn(errorMessage)endend
Passes
Adicionar passes requer IDs de passe que podem ser localizados no Painel do Criador.
Crie um Script dentro de ServerScriptService e cole o seguinte código.
Script - Adicionar Passeslocal 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)endendNavegue até o Painel do Criador e selecione a experiência.
Na coluna da esquerda, em Monetização , selecione Passes .
Clique no botão ⋯ para um passe e selecione Copiar ID do Recurso .
Paste cada ID copiado em uma lista com espaço-delimite dentro da items tabela e incluir Enum.InfoType.GamePass como o segundo parâmetro para 2> adicionarItemAsync2> para indicar que os itens são passes. Por padrão, os itens aparecerão na visualização do catálogo na ordem
Script - Adicionar Passeslocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local items = {4343758, -- Armadura de Fogo Frio28521575, -- Escudo de Slime}for _, assetId in items dolocal success, errorMessage = pcall(function()MerchBooth.addItemAsync(assetId, Enum.InfoType.GamePass)end)if not success thenwarn(errorMessage)endend
Produtos do desenvolvedor
Adicionar produtos do desenvolvedor requer IDs de produto que podem ser localizados na Criador Dashboard.
Crie um Script dentro de ServerScriptService e cole o seguinte código.
Script - Adicionar Produtos do Desenvolvedorlocal 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)endendNavegue até o Painel do Criador e selecione a experiência.
Na coluna da esquerda, em Monetização , selecione Produtos do Desenvolvedor .
Clique no botão ⋯ para um produto e selecione Copiar ID do Recurso .
Colete cada ID copiado em uma lista com espaço-delimite dentro da items tabela e incluir Enum.InfoType.Product como o segundo parâmetro para adicionar 2>addItemAsync2> às vezes para indicar que os itens são produtos do desenvolvedor. Por padrão, os itens aparecem na visão do catálogo na ord
Script - Adicionar Produtos do Desenvolvedorlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local items = {1236602053, -- Reabastecimento de Mana1257880672, -- Poção de Regeneração}for _, assetId in items dolocal success, errorMessage = pcall(function()MerchBooth.addItemAsync(assetId, Enum.InfoType.Product)end)if not success thenwarn(errorMessage)endend
Botão do Catálogo Personalizado
Por padrão, um botão de catálogo direito botão de direito do catálogo permite que os jogadores abram o estande em qualquer momento.
Em alguns casos, pode ser útil remover este botão e conectar o seu possuir:
Crie um novo botão, conforme descrito em Botões.
Crie um LocalScript como filho do Objetobotão.
Paste o seguinte código no novo script.
LocalScript - Botão de Catálogo Personalizadolocal ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))-- Remova o botão padrão do catálogoMerchBooth.toggleCatalogButton(false)-- Conecte o botão personalizadoscript.Parent.Activated:Connect(function()MerchBooth.openMerchBooth()end)
Regiões Compráveis
Um bom jeito de aumentar as compras na sua experiência é mostrar automaticamente a área de merchandising quando um jogador entrar em uma área.
Para criar uma região comprável:
Crie um bloco Anchored que abrange a região de detecção. Certifique-se de que o bloco seja alto o suficiente para colidir com o PrimaryPart de modelos de personagens ( HumanoidRootPart por padrão).
Usando a seção Tags das propriedades do bloco, ou o Editor de Tags do Studio, aplique a etiqueta ShopRegion ao bloco para que o 1> Class.CollectionService1> detecte-o.
Defina a Transparency da peça para o máximo para ocultá-la dos jogadores na experiência. Desative suas propriedades CanCollide e CanQuery para que os objetos não colidam fisicamente com ela e os raios não detectem.
Insira um novo LocalScript sob StarterPlayerScripts .
No novo script, cole o seguinte código que usa os seguintes eventos Touched e TouchEnded para detectar quando os personagens entram/saiem da região e chamam abrir o MerchBooth e 2> fechar o MerchBooth2> para abrir/fechar a Interface gráfica do usuáriodo booth.
Script Locallocal Players = game:GetService("Players")local ReplicatedStorage = game:GetService("ReplicatedStorage")local CollectionService = game:GetService("CollectionService")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))-- Remova o botão padrão do catálogoMerchBooth.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-- Iterar através de regiões de loja existentesfor _, region in CollectionService:GetTagged("ShopRegion") dosetupRegion(region)end-- Detecte quando regiões não estreamadas da loja flutuamCollectionService:GetInstanceAddedSignal("ShopRegion"):Connect(setupRegion)
Prompts de Proximidade
Como uma alternativa à verde catálogo 2D, você pode adicionar 提示 de proximidade sobre objetos-alvo na experiência. Isso incentiva os jogadores a descobrir itens na ambiente3D, visualizá-los em seu próprio avatar, comprar e equipá-los instantaneamente. Veja adicionarProximityButton para detalhes.
Mudando o Efeito de Equipar
Por padrão, a cabine de mercadoria mostra um efeito de brilho genérico quando um jogador equipa um item dela. Para alterar o efeito, configure particleEmitterTemplate para sua própria instância de um ParticleEmitter em uma chamada Configurar.
LocalScript - ConfigureComprador
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})
Visibilidade GUI
Por padrão, a cabine de merchandising oculta todos os ScreenGuis e CoreGuis quando sua UI aparece, incluindo o chat, a tabela de classificação e outros incluídos pelo Roblox. Se você quiser desativar esse comportamento, configure hideOtherUis para 1>
LocalScript - ConfigureComprador
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.configure({hideOtherUis = false})
Movimento de Personagem
Pode ser vantajoso impedir um personagem de se mover enquanto eles estão na cabine de merchandising. Isso pode ser feito definindo disableCharacterMovement para true em um Configurar chamada.
LocalScript - ConfigureComprador
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.configure({disableCharacterMovement = true})
Referência da API
Tipos
Item
Os itens na área de venda são representados por um dicionário com as seguintes pares de valores-chave. Os itens podem ser coletados através da função obter itens ou do evento itemAdded.
Chave | Tipo | Descrição |
---|---|---|
assetId | número | ID do Catálogo do item, como passado para addItemAsync . |
title | string / cadeia / texto | Título do item como ele aparece no catálogo. |
price | número | Preço do item em Robux. |
description | string / cadeia / texto | Descrição do item como ele aparece no catálogo. |
assetType | string / cadeia / texto | Uma string representando o digitarde acessório do item. |
isOwned | booleano | Se o jogador atual possui ou não o item. |
creatorName | string / cadeia / texto | Criador de itens como mostrado no catálogo. |
creatorType | Enum.CreatorType | Tipo de criador para o item. |
Enums
MerchBooth.Controls
Usado junto com setControlKeyCodes para personalizar as chaves e os botões do gamepad para interagir com a cabine de merchandising.
Nome | Visão Geral |
---|---|
ProximityPrompts | Botão de chave e/ou gamepad para abrir a janela de visualização de itens quando ximidade prompts estiverem configurados. |
OpenMerchBooth | Botão de chave e/ou gamepad para abrir a cabine de mercadoria. |
CloseMerchBooth | Botão de chave e/ou gamepad para fechar a cabine de mercadoria. |
Filter | Botão de tecla e/ou gamepad para usar o pulldown de 필터 padrão na área superior esquerda da verdo catálogo. |
ViewItem | Botão de chave e/ou gamepad para abrir uma verde cabine de mercadoria específica. |
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.setControlKeyCodes(MerchBooth.Controls.ProximityPrompts, {keyboard = Enum.KeyCode.Q,gamepad = Enum.KeyCode.ButtonL1})
Funções
configurar
Substitui as opções de configuração padrão do lado do cliente através das seguintes chaves/valores na tabela config. Essa função só pode ser chamada de um LocalScript .
Chave | Descrição | Padrão |
---|---|---|
backgroundColor | Cor de fundo principal da janela ( Color3 ). | [0, 0, 0] |
cornerRadius | Raio de canto para a janela principal ( UDim ). | (0, 16) |
cornerRadiusSmall | Raio de canto para elementos dentro da janela ( UDim ). | (0, 8) |
textFont | Fonte de "texto principal" como preços, descrições e outras informações gerais (Enum.Font). | Gotham |
textSize | Tamanho do texto principal. | 14 |
textColor | Cor do texto principal ( Color3 ). | [255, 255, 255] |
secondaryTextColor | Cor usada para algumas variações do texto principal ( Color3 ). | [153, 153, 158] |
headerFont | Fonte do texto usado para o cabeçalho ( Enum.Font ) usado para o cabeçalho da janela. | GothamMedium |
headerTextSize | Tamanho do texto do cabeçalho usado para o título da janela. | 18 |
titleFont | Fonte do texto de título usado para nomes de itens na página de detalhes do item ( Enum.Font ). | GothamBold |
titleTextSize | Tamanho do texto de título usado para nomes de itens na página de detalhes do item. | 28 |
buttonColor | Cor de fundo para botões maiores em um estado clicável, como o botão de compra principal na visualização de itens ( Color3 ). | [255, 255, 255] |
buttonTextColor | Cor de texto para botões maiores em um estado clicável, como o botão de compra principal na visualização de itens ( Color3 ). | [0, 0, 0] |
secondaryButtonColor | Cor de fundo para botões menores, como os botões de preço na visualização de catálogo ou o botão Try On ( Color3 ). | [34, 34, 34] |
secondaryButtonTextColor | Cor de texto para botões menores, como os botões de preço na visualização do catálogo ou o botão Try On ( Color3 ). | [255, 255, 255] |
inactiveButtonColor | Cor de fundo para todos os botões em um estado não clicável ( Color3 ). | [153, 153, 158] |
inactiveButtonTextColor | Cor de texto para todos os botões em um estado não clicável ( Color3 ). | [255, 255, 255] |
particleEmitterTemplate | Instância de ParticleEmitter personalizada opcional que aparece e joga no equip. |
Script Local
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,})
addItemAsync
Adiciona um item à loja de artigos de forma assíncrona para que ele seja elegível para compra na experiência. assetId é o ID de ativo do item, productType é o ativo da Enum.InfoType枚, e 1> hideFromCatalog1> pode ser usado para ocultar o item na verdo catálogo.
Veja Adicionando Itens para detalhes, pois o uso varia um pouco para ativos em vez de passe de jogo ou 1>produtos do desenvolvedor1>.
Script - Adicionar Recursos de Avatar
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local items = {
607702162, -- Capa de beisebol da Roblox
4819740796, -- Roblox
1374269, -- Orelhas de Gatinho
11884330, -- Óculos Nerd
10476359, -- Chapéu de Papel
}
for _, assetId in items do
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(assetId)
end)
if not success then
warn(errorMessage)
end
end
Script - Adicionar Passes
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local items = {
4343758, -- Armadura de Fogo Frio
28521575, -- Escudo de 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
Script - Adicionar Produtos do Desenvolvedor
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local items = {
1236602053, -- Reabastecimento de Mana
1257880672, -- Poção de Regeneração
}
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
obter itens
Retorna um dicionário representando todos os itens registrados atualmente. Cada chave é um ID de ativo de um item como uma string / cadeia / texto, e cada chave de valor é um Item. Essa função só pode ser chamada de um Script .
Script
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
removerItem
Desregistra um item previamente adicionado com adicionarItemAsync, removendo sua tabela na visualização do catálogo e quaisquer 提pts de proximidade atribuídos a ele. Essa função só pode ser chamada de um Script.
Script
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
local success, errorMessage = pcall(function()
MerchBooth.addItemAsync(4819740796)
end)
if success then
-- Depois de algum tempo, remova o item
task.wait(5)
MerchBooth.removeItem(4819740796)
end
adicionarBotão de Proximidade
Adiciona um prompt de proximidade sobre o adornee que será acionado para exibir a verde um item, dado seu ID de recurso. Isso pode ser usado como uma alternativa à verde catálogo 2D, encorajando os jogadores a descobrir itens na ambiente3D.
Nota que um item deve ser adicionado via adicionarItemAsync antes que um botão de proximidade possa ser atribuído a ele. Veja também removerProximityButton para remover o prompt de proximidade de um Objeto.
Script
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
removerProximityButton
Remove a janela de proximidade gerada através de adicionarBotão de Proximidade . Essa função só pode ser chamada de um Class.Script .
Script
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
-- Depois de algum tempo, remova o prompt
task.wait(5)
MerchBooth.removeProximityButton(item)
end
setCatálogoSort
Define a função de classificação sortFunction para ser usada na verdo catálogo. A função de classificação fornecida pode usar lógica baseada em informações de Item ou price ou 1> title1>. Essa função só pode ser chamada de um 4> Class.LocalScript4>.
Aqui estão alguns exemplos para classificar o catálogo:
Preço Baixo para Alto
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.setCatalogSort(function(a, b)
return a.price < b.price
end)
Preço Alto para Baixo
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.setCatalogSort(function(a, b)
return a.price > b.price
end)
Preço Baixo-para-Alto & Alfabético
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)
setControlKeyCodes
Configura os valores de chave e botão para interações com a cabine de merchandising. O primeiro parâmetro deve ser um MerchBooth.Controls enum e o segundo parâmetro uma tabela contendo as chaves keyboard e/ou gamepad com os valores correspondentes 2> Container.KeyCode2> e 5> enum.KeyCode5> em seus respectivos 8> 1>.1>
Enum ( control ) | Padrão keyCodes Chaves/Valores |
---|---|
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 |
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.setControlKeyCodes(MerchBooth.Controls.ProximityPrompts, {keyboard = Enum.KeyCode.Q,gamepad = Enum.KeyCode.ButtonL1,})
abrirComercio
Abre a janela do estande de mercadoria (se fechada) e navega para a janela de visualização do ver. Essa função só pode ser chamada de um LocalScript .
Script Local
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()
abrirItemView
Navega até a janela de visualização de itens única do itemId, abrindo a janela de cabine de mercadoria se ela estiver atualmente fechada. Essa função só pode ser chamada de um LocalScript.
Script Local
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
Alternar Botão de Catálogo
Alterna o botão de catálogo no lado direito da tela. Isso é útil ao implementar um botão de botão personalizado ou limitar a aparência do cabine de merchandising para regiões ou 提pts de proximidade. Só pode ser chamado de um 2>Class.LocalScript2>.
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.toggleCatalogButton(false)
é aberto
Retorna true se a janela de catálogo ou a janela de visualização de itens estiver aberta. Se a janela de visualização de itens estiver aberta, o ID de ativo do item é retornado como o segundo valor. Essa função só pode ser chamada de um LocalScript .
Script Local
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
fecharCabine
Fecha a janela da cabine de artesanato. Essa função só pode ser chamada de um LocalScript.
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))MerchBooth.closeMerchBooth()
isMerchBoothAtivado
Essa função pode ser usada em conjunto com setEnabled para verificar se a cabine de merchandising está atualmente ativada ou não. Somente pode ser chamada de um LocalScript.
setHabilitado
Define se a cabine de merchandising inteira é habilitada ou não. Quando desativada, esta função remove toda a UI, incluindo prompt de proximidade e desconecta todos os eventos. Essa função só pode ser chamada de um LocalScript.
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))local isEnabled = MerchBooth.isMerchBoothEnabled()if isEnabled thenMerchBooth.setEnabled(false)end
Eventos
itemAdicionado
Ocorre quando um item é adicionado através de adicionarItemAsync. Este evento só pode ser conectado em um Script .
Parâmetros | |
---|---|
assetId: number | ID de ativo de item. |
itemInfo: table | Dicionário de Item informações, como price ou title. |
Script
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)
itemRemovido
Só é disparado quando um item é removido através de removerItem. Este evento só pode ser conectado em um Script .
Parâmetros | |
---|---|
assetId: number | ID de ativo de item. |
Script
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)
merchBoothAberto
Dispara quando é aberto o detalhe de catálogo ou .
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.merchBoothOpened:Connect(function()
print("Booth view opened")
end)
merchBoothFechado
Dispara quando o detalhe de catálogo ou é fechado.
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.merchBoothClosed:Connect(function()
print("Booth view closed")
end)
catálogoVistaAberta
Dispara quando a visualização do catálogo é aberta.
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.catalogViewOpened:Connect(function()
print("Catalog view opened")
end)
atalogoFechado
Dispara quando a janela de catálogo é fechada.
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.catalogViewClosed:Connect(function()
print("Catalog view closed")
end)
itemViewAberto
Dispara quando a visualização de detalhes do item é aberta.
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.itemViewOpened:Connect(function()
print("Item view opened")
end)
itemViewFechado
Dispara quando a visualização de detalhes do item é fechada.
Script Local
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MerchBooth = require(ReplicatedStorage:WaitForChild("MerchBooth"))
MerchBooth.itemViewClosed:Connect(function()
print("Item view closed")
end)