- L'image StarterGui que vous voyez dans la fenêtre de l'explorateur.
- Ce que vous mettez dans le StarterGui. Le ScreenGui le donne au PlayerGui de tout le monde.
- Où le StarterGUI clone les objets dans.
- La zone de texte. Lisez la description plus bas sur la page.
- Le TextButton. Lisez la description plus bas sur la page.
- Le TextLabel. Lisez la description plus bas sur la page.
- L'étiquette d'image. Lisez la description plus bas sur la page.
- Le bouton Image. Lisez la description plus bas sur la page.
- Un script à l'intérieur de l'objet GUI "Frame".
- L'objet GUI de l'objet crucial appelé "ScreenGui" est sélectionné. Assurez-vous que tous vos autres objets GUI sont placés à l'intérieur, comme cela se voit !
Contenu
- 1 Notions de base
- 2 Comment utiliser les interfaces graphiques
- 3 fonctions/déclarations pour les interfaces graphiques
- 4 fonctions chez MarketplaceService, ou autres
Notions de base
Une GUI (Graphical User Interface) est un objet qui apparaît sur votre écran avec lequel vous pouvez interagir (comme l'interface graphique de santé ROBLOX qui affiche (montre) votre santé). Vous pouvez vous demander : « Pourquoi ces éléments sont-ils importants ? ». La réponse est assez simple. Si vous êtes un scripteur d'élite (ou avez une certaine expérience), vous pouvez créer un jeu à partir d'interfaces graphiques, au lieu de briques. Ou vous pouvez créer un jeu utilisant les deux, comme un jeu de zombies qui indique le nombre de zombies restants et d'autres éléments cruciaux.
Comment utiliser les interfaces graphiques
Lors de la modification de votre lieu, assurez-vous que vous affichez la fenêtre de l'explorateur. Il y aura plusieurs objets répertoriés, dont un intitulé "StarterGui". Sélectionnez cet objet en cliquant dessus, allez jusqu'au bouton "Insérer" à droite du bouton "Afficher", cliquez dessus. Cliquez maintenant sur celui intitulé "Objet" qui apparaît dans la liste. Recherchez un objet appelé "ScreenGui" et sélectionnez-le. Vous pouvez maintenant soit double-cliquer, soit cliquer sur OK, car l'un ou l'autre fait la même chose. L'explorateur restera le même, uniquement avec un StarterGui > ScreenGui maintenant. À partir de maintenant, lorsque vous insérez des objets liés à l'interface graphique (ImageLabel, ImageButton, Frame, TextLabel, TextBox et TextButton), ils iront directement dans le ScreenGui, PAS le StarterGui. Une autre chose que vous devez savoir est que les interfaces graphiques n'utilisent pas Vector3.new (0,0,0) comme le font les briques. Ils utilisent UDim2.new pour la taille et la position. Ex: GUI.Size = UDim2.new(0,0,0,0) (UDim2.new utilise 4 valeurs au lieu de 3) Les objets GUI contiennent également d'autres valeurs à l'intérieur, mais vous n'avez besoin d'en connaître que quelques-unes pour créer un modèle de base créé par l'interface graphique.
Exemple un:
- StarterGui
- ÉcranGui
- TexteÉtiquette
- Bouton de texte
- ÉtiquetteImage
- Bouton de texte
- TexteÉtiquette
- ÉcranGui
Exemple deux:
- StarterGui
- ÉcranGui
- TexteÉtiquette
- Zone de texte
- ÉcranGui
Comme vous l'avez peut-être remarqué, vous pouvez avoir plusieurs objets dans le ScreenGui (comment feriez-vous autrement des jeux d'interface graphique complets ?). Vous pouvez également renommer les objets ScreenGui AND qu'il contient avec la fenêtre Propriétés tout en sélectionnant l'objet. Je vais maintenant définir chaque objet GUI d'une manière que tout le monde peut comprendre :
Interface de démarrage : Tout ce qui est placé ici sera mis dans le lecteur. La seule chose que vous devriez vraiment mettre ici est le ScreenGui.
Écran graphique : Tout ce qui est placé ici sera affiché pour le joueur dans lequel il se trouve.
PlayerGui : Ce que le StarterGui met des objets. C'est à l'intérieur du lecteur.
Panneau d'affichage : Un objet GUI placé dans le Worspace. Tous les objets de l'interface graphique à l'intérieur seront affichés près de son Adornee (définissez l'Adornee sur une brique). Invisible sauf si des objets y sont placés.
Zone de texte: Un objet GUI redimensionnable qui peut être modifié par le joueur dans le jeu. Simplement en cliquant dessus et en tapant. Très utile pour les commandes d'administration basées sur l'interface graphique.
Bouton de texte : Un objet GUI redimensionnable qui peut être cliqué et, s'il est programmé, provoquer un événement. Cet objet ne peut pas être modifié dans le jeu par un joueur. Uniquement par une commande programmée.
Étiquette de texte : Un objet GUI redimensionnable qui peut être cliqué. N'a pas d'utilité réelle en programmation. Il n'affiche que le texte qui ne peut pas être modifié dans le jeu par un joueur. Uniquement par une commande programmée.
Étiquette de l'image : Un objet GUI redimensionnable qui affiche une image. Cela peut être défini via la fenêtre Propriétés. Ne peut pas être modifié dans le jeu par le joueur. Uniquement par une commande programmée.
Bouton Image : Identique à un ImageLabel, mais s'il est programmé, il provoquera un événement lorsqu'un joueur cliquera dessus.
Cadre: Un objet GUI redimensionnable dans lequel n'importe quel objet GUI peut entrer. Tout ce qui est mis dans un cadre sera modifié à sa taille, de sorte qu'il crée plusieurs fenêtres.
Fonctions/Déclarations pour les GUI
Tous les boutons de l'interface graphique incluent les éléments suivants :
AscendanceChangé
Changé
EnfantAjouté
EnfantSupprimé
DescendantAjouté
DescendantSuppression
MouseButton1Down
Bouton de la souris1Clic
MouseButton1Up
MouseButton2Down
Bouton de la souris2Clic
MouseButton1Up
Mouseenter
Mouseleave
Souris Déplacée
Exemple d'utilisation de MouseButton1Down (mettez un script OU un script local dans l'objet Button) :
1 local gui = script.Parent -- Ceci définira "gui" comme parent du script. Dans ce cas, le bouton GUI. 2 joueur local = gui.Parent.Parent.Parent -- Ce sera le joueur. 3 gui.MouseButton1Down:connect(function() 4 local ch = player.Character -- Le personnage du joueur. 5 if (ch ~= nil) then -- Si le personnage existe. 6 ch.Head:Remove() -- I pensez que vous savez ce que cela fait. 7 fin 8 fin)
Toutes les étiquettes/boîtes d'interface graphique incluent les éléments suivants :
AscendanceChangé
Changé
EnfantAjouté
EnfantSupprimé
DescendantAjouté
DescendantSuppression
Mouseenter
Mouseleave
Souris Déplacée
Exemple de MouseEnter et MouseLeave. Idem que l'exemple ci-dessus pour MouseButton1Down (MouseButton1Down ne fonctionne pas sur les étiquettes ou les boîtes) :
1 local gui = script.Parent -- Ceci définira "gui" comme parent du script. Dans ce cas, le bouton GUI. 2 joueur local = gui.Parent.Parent.Parent -- Ce sera le joueur. 3 gui.MouseButton1Down:connect(function() 4 local ch = player.Character -- Le personnage du joueur. 5 if (ch ~= nil) then -- Si le personnage existe. 6 ch.Head:Remove() -- I pensez que vous savez ce que cela fait. 7 fin 8 fin)
Le cadre GUI comprend les éléments suivants :
AscendanceChangé
Changé
EnfantAjouté
EnfantSupprimé
DescendantAjouté
DescendantSuppression
Mouseenter
Mouseleave
Souris Déplacée
Fonctions chez MarketplaceService ou autres
Exemple de script d'ouverture-fermeture Frame (LocalScript) sur l'interface graphique :
1 bouton local = script.Parent --Emplacement du bouton. 2 3 fonction locale onClick(bouton) 4 if script.Parent.Parent.Frame.Visible == false then 5 script.Parent.Parent.Frame.Visible = true 6 script.Parent.Text = "Close" 7 elseif script.Parent .Parent.Frame.Visible == true puis 8 script.Parent.Parent.Frame.Visible = false 9 script.Parent.Text = "Open" 10 end 11 end 12 script.Parent.MouseButton1Click:Connect(onClick)
Exemple de script d'achat de gamepass (LocalScript chez Button, parenté chez Frame) :
1 local MarketplaceService = jeu:GetService("MarketplaceService") 2 bouton local = script.Parent 3 joueur local = game.Players.LocalPlayer 4 5 script.Parent.MouseButton1Click:Connect(function() 6 jeu:GetService("MarketplaceService") :PromptGamePassPurchase(player, 0000000000) --L'identifiant du gamepass. 7 8 if game:GetService("MarketplaceService"):UserOwnsGamePassAsync(player, 0000000000) then --Vérifie si le joueur possède ou non le gamepass. 9 error("Gamepass déjà possédé" ) --Erreurs indiquant que le gamepass était déjà détenu. 10 fin 11 fin)
Je suis presque sûr que vous pouvez comprendre ce que font la plupart d'entre eux, car toutes les fonctions impliquées par la souris sont plutôt faciles à comprendre. Amusez-vous à utiliser ces connaissances dans votre jeu !