-
Notifications
You must be signed in to change notification settings - Fork 0
Switch et container
#Switch et container (pratique)
Ce qu'il faut comprendre du système d'UI c'est qu'il marche principalement autour de container. Qu'est qu'un container ? Hmm on pourrait d'écrire un container comme une page d'un site internet. Si tu est sur la page option alors tu n'est pas sur la page accueil, etc..
Switch étant la function UI qui va permettre de déplacer des containers. Prenons une scène neutre avec un script simple :
function Behavior:Awake()
UI = United.UserInterface:New(self,true,"Accueil")
--United.Stylesheets("Test")
end
function Behavior:Update()
United()
if CS.KeyReleased("A") then
UI:Switch("Option")
end
end
Lancer votre jeu vos serers sur la page "Accueil", mais si vous appuyiez sur la touche "A" vous serez alors sur la page "option" !
Je vous conseille de noter l'argument New pour crée votre HUD que vous pouvez trouver dans le référencement d'userinterface.
New(env,autocreate,indexSwitch,callback)
Si pendant le développement de votre jeu vous avez besoin d'intéragir de manière plus effectif avec vos containers alors il vos mieux savoir récupérer le container actif non ?
print(UI.ActiveContainer) -- Retournera "Accueil" par exemple.
Par défaut si la construction n'a pas éter effectuer le HUD va s'en occuper lui même car il en a besoin. Et oui container fait partit des catégories présente dans la construction de scène!
-- On enregistre nos objets dans une variable
local ContainerTable = SceneConstructor:Get("container")
-- On boucle et print nos objets.
for k,v in pairs(ContainerTable) do
print(k,v:GetName())
end
-- Rapport d'exécution
1 Container_Accueil
2 Container_Option
Pas besoin de demander a switch "Container_Option", la function switch ajoutera le mot clé "Container_" elle même.
-- Mauvais
UI:Switch("Container_Option")
-- Bon
UI:Switch("Option")
Je vous conseille de vous documenter sur les commandes disponibles en stylesheets pour faire des transitions et des actions assez facilement.
La plus importante reste "switch" :
CSS.MenuOption = {
onclick = {
switch = "Option"
}
}
Télechargement de la framework : http://lib.antarka.com/UnitedFrameworks.zip