Dzięki funkcjatworzenia zasobów w doświadczeniu użytkownicy mogą pozwolić sobie na zapisywanie tworów, które stworzyli w swoim doświadczeniu, do swoich zapasów.Twoi użytkownicy mogą korzystać z tych tworów w doświadczeniu tak jak z każdym innym aktywem.Ponadto te twory przypisane są do twojego doświadczenia, gdy są wyświetlane na platformaRoblox, więc każdy użytkownik może użyć linku przypisania, aby dotrzeć do twojego doświadczenia i stworzyć posiadać.
Na przykład możesz włączyć użytkowników do tworzenia niestandardowych stworzeń jako zwierzaków w swoim doświadczeniu i pozwolić im zapisać swoje ulubione zwierzęta do swoich zapasów.Masz pełną kontrolę nad tym, jakie obiekty użytkownicy mogą modyfikować i zapisywać z twojego doświadczenia.Użytkownicy z kolei mogą wyświetlać swoje twory na swoich profilach z przypisem do twojego doświadczenia, zwiększając widoczność twojego doświadczenia.
Wspierane typy zasobów i limity
Tak jak wszystkie zasoby na platforma, twory w doświadczeniu podlegają moderacji zasobów.Obecnie możesz zezwolić użytkownikom tylko na tworzenie pakietów z twojego doświadczenia.Pakiety te nie mogą zawierać żadnych skryptów ani prywatnych zasobów, takich jak dźwięk, wideo i pakiety zagnieżdżone.Jeśli system wykrywa skrypty lub prywatne zasoby w pakiecie, które mogą być zapisane przez użytkowników, blokuje akcję zapisu w doświadczeniu, ukrywając monit o zapis dla użytkowników.
Gdy uruchamiasz lub testujesz swoje doświadczenie i dodajesz skrypty lub prywatne zasoby jako część dziełow doświadczeniu, nie udaje się zapisać i wyświetla się komunikat o błędzie w oknie Studio Wyjście lub w konsoli programisty Developer Console.
Aktywacja tworzenia zasobów w dzieło
Aby włączyć tworzenie zasobów w doświadczeniu dla użytkowników, użyj metody AssetService:PromptCreateAssetAsync() w skrypcie stronowym wraz z inną logiką tworzenia.Określ, jakie instancje w swoim doświadczeniu chcesz włączyć tę funkcjonalność, ustaw niestandardowy trigger (taki jak ikona interfejsu użytkownika) do wywołania metody i słuchaj zdarzeń zdalnych klienta do przechowywania zasobów.
AssetService:PromptCreateAssetAsync() bierze następujące parametry:
- Przedmiot Player reprezentujący użytkownika, który przesyła dziełozasobu.
- Przedmiot Instance reprezentujący zasób do dzieło.
- The Enum.AssetType, które jest obecnie ograniczone do Enum.AssetType.Model.
Kiedy serwer wzywa AssetService:PromptCreateAssetAsync(), wysyła dialog Prześlij pakiet na klienta, tak że użytkownik, który uruchamia akcję zapisu, może wprowadzić nazwę i opis pakietu.Roblox dostarcza interfejs dialogowy out-of-the-box, ponieważ przepływ pracy zapisu jest funkcjonalnością poziomu platformy.
Poniższy przykład skryptu po stronie serwera wymaga od użytkowników zapisania samochodu, który malują w doświadczeniu:
Przykład skryptu do tworzenia zasobów w doświadczeniu
-- Zdefiniuj zmienną AssetService
local AssetService = game:GetService("AssetService")
-- Ustaw PromptCreateAssetAsync() do szybkiego wysyłania dialogu zatwierdzania
local function CreateAsset(player, instance)
local complete, result, assetId = pcall(function()
return AssetService:PromptCreateAssetAsync(player, instance, Enum.AssetType.Model)
end)
if complete then
if result == Enum.PromptCreateAssetResult.Success then
print("successfully uploaded, AssetId:", assetId)
else
print("Received result", result)
end
else
print("error")
print(result)
end
end
-- Logika malowania samochodu pominięta
-- Dodaj obsługę zdarzeń
local function onUserPublish(player, promptObject)
-- Użytkownik zapisuje instancję samochodu z domyślnym kolorem doświadczenia
if promptObject.Name == "car" then
CreateAsset(player, car)
elseif promptObject.Name == "CarPaintYellow" or promptObject.Name == "CarPaintBlue" or promptObject.Name == "CarPaintBlack" or promptObject.Name == "CarPaintRed" then
PaintCarColor(promptObject.Name)
end
end
PublishEvent.OnServerEvent:Connect(onUserPublish)
Arena demonstracji tworzenia w doświadczeniu pokazuje przykład tego, jak możesz wykorzystać tę funkcja.Możesz dołączyć do demokracji, aby przejść przez proces tworzenia w doświadczeniu jako użytkownik, lub edytować miejsce w Studio, aby odnieść się do projektu.
Powstanie i przypisanie po stworzeniu
Po utworzeniu i zapisaniu zasobu z twojego doświadczenia użytkownicy mogą go znaleźć w następujących miejscach:
- Ich strona Mój ekwipunek.
- Zakładka Tworzenia na ich stronie Profil.
- Zakładka Przedmioty rozwojowe pod ich panelu twórców Tworzenia.
- Zakładka Ekwipunek z ich Pudełka z narzędziami w Studio.
Kiedy użytkownicy widzą kreacje w doświadczeniu na profilach lub zapasach swoich znajomych, widzą przypisanie do oryginalnego doświadczenia, w którym utworzono zasób.Użytkownicy mogą kliknąć link przypisania, aby przekierować na stronę doświadczenia, tak aby mogli dołączyć do doświadczenia i stworzyć posiadać.