Mechanikę łamigłówki można zintegrować z wieloma gatunkami gier – na przykład przygodowymi, RPG, platformowymi czy FPS. I to tylko kilka z nich. Jeśli łamigłówki są atrakcyjne, mogą one również funkcjonować jako niezależne kompletne środowiska gier. Tę samą konfigurację łamigłówki można nawet wykorzystać wielokrotnie w jednej grze, jeśli dla każdego jej wystąpienia zdefiniuje się inne warunki początkowe i rozwiązania.
W tej łamigłówce gracz musi odszukać właściwą kombinację świateł – w tym przypadku włączyć wszystkie – wchodząc w interakcję z przyciskami. Każdy przycisk przełącza zestaw świateł. Po rozwiązaniu łamigłówki w ramach nagrody spawnowany jest przedmiot.

Wykonując instrukcje zawarte w tym samouczku, nauczysz się tworzyć wersję tej łamigłówki, w której możesz dostosować stany początkowe świateł, przypisać poszczególne światła do przycisków, które będą je przełączać, a także zdefiniować rozwiązanie łamigłówki, a to wszystko za pomocą jednego urządzenia utworzonego za pomocą języka Verse w Unreal Editor dla Fortnite (UEFN).
Używane funkcje języka Verse
array
: Do wykonania logiki urządzenia, które utworzysz, w dużej mierze wykorzystuje się tablice. Przyciski, światła, stan światła, procedury obsługi zdarzeń oraz wiele innych elementów przechowuje się w tablicach, aby umożliwić różnicowanie konfiguracji łamigłówki (przez dodanie lub odjęcie świateł, zdefiniowanie innych stanów początkowych i docelowych świateł) oraz zapobiec duplikowaniu kodu.for
: Wyrażeniefor
umożliwia iterację po tablicach używanych przez urządzenie.if
: Wyrażenieif
służy do sprawdzania, czy łamigłówka została rozwiązana, filtrowania urządzeń wyszukiwanych za pomocą funkcjiGetCreativeObjectsWithTag()
oraz sterowania stanem świateł.failure
: Konteksty niepowodzenia wykorzystuje się w celu uzyskania dostępu do tablic, wykrywania momentu rozwiązania łamigłówki oraz sterowania przepływem programu.class
: Oprócz klasy urządzenia kreatywnegotagged_lights_puzzle
, utworzysz również klasę dla procedur obsługi zdarzeńInteractedWithEvent
przycisku, aby umożliwić korzystanie z właściwości poszczególnych zdarzeń.
Używane interfejsy API Verse
- Edytowalne właściwości: W UEFN uwidocznionych jest wiele właściwości urządzeń tworzonych w Verse, dzięki czemu możesz dostosowywać je w edytorze. Modyfikując te właściwości, zyskasz możliwość tworzenia nowych konfiguracji łamigłówki.
GetCreativeObjectsWithTag()
: Za pomocą interfejsu APIGetCreativeObjectsWithTag()
możesz wyszukać wszystkie urządzenia oznaczone w środowisku uruchomieniowym tagiem rozgrywki, który możesz dostosowywać, bez konieczności uwidaczniania odwołań w edytorze. W tym przypadku światła są oznaczone tagiempuzzle_light
.- Zdarzenia urządzenia: Zdarzenia InteractedWithEvent przycisków służą do kontrolowania stanu gry.
Kroki
Wykonując poniższe kroki, dowiesz się, jak utworzyć łamigłówkę, w której gracz musi znaleźć właściwą kombinację świateł, aby zespawnować przedmiot. Ostatni krok zawiera kompletny skrypt, do którego można sięgnąć w ramach odwołania.