Menu
CoddyTech

Cliquez ici

Fait partie de la section Scripting de jeux Roblox du Journey Lua de Coddy. Leçon 20 sur 25.

Un ClickDetector placé dans une pièce la rend cliquable : le curseur de la souris se transforme en main lorsqu’il la survole, et son événement MouseClick se déclenche avec le joueur qui a cliqué. Les joueurs peuvent cliquer à une distance maximale de 32 studs.

local bell = script.Parent
bell.ClickDetector.MouseClick:Connect(function(player)
	print(player.Name .. " rang the bell")
end)

Un interrupteur doit mémoriser s’il est activé. Stocke cette information dans une variable située en dehors de la fonction, puis inverse sa valeur avec not : not true vaut false et not false vaut true.

local open = false
open = not open -- maintenant true
open = not open -- de nouveau false
challenge icon

Défi

Moyen

Transforme la lampe ronde en interrupteur : chaque clic l’allume ou l’éteint.

  1. Dans la fonction de clic, inverse on.
  2. Ensuite, si on, définis le matériau de la lampe sur Neon, sinon sur Plastic. Elle est éteinte au départ.

Appuie sur « Jouer » et clique plusieurs fois sur la lampe : elle s’allume, s’éteint, puis se rallume. Ensuite, appuie sur « Vérifier ».

Essayez vous-même

local lamp = script.Parent
local on = false

lamp.ClickDetector.MouseClick:Connect(function(player)
	-- Active la lampe, puis donne-lui le matériau Neon lorsqu’elle est allumée et Plastic lorsqu’elle est éteinte
end)

Toutes les leçons de Scripting de jeux Roblox

Entraînez-vous par vous-même : Compilateur Lua en ligne