ClickDetector
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Cliquez sur le détecteur de cliquerpermet à Class.Script|Scripts et Class.LocalScript|LocalScript
Les scripts de contrôle par défaut lient ButtonR2 à interagir avec ClickDetectors en utilisant Class. ContextActionService:BindActiv
MaxActivationDistance peut être utilisé pour limiter la distance qu'un joueur peut être d'un détecteur de clics avant qu'il ne soit plus cliquable.
ClickDetector événements se déclenchent
Priorité d'entrée
Si plusieurs ClickDetectors peuvent détecter l'entrée de l'utilisateur, seuls les plus profonds déclencheront des événements. Si deux ClickDetectors sont des frères, le premier prendra la priorité.
Si une action liée à ContextActionService utilise le même entrée qu'un ClickDetector, l'action liée à ContextActionService prendra la priorité sur les événements du détecteur de clics.
UserInputService.InputBegan se déclenchera avant les événements ClickDetector.
Échantillons de code
local clickDetector = script.Parent
local function onClicked(player)
-- Show a message to the player
local msg = Instance.new("Message")
msg.Parent = player:FindFirstChild("PlayerGui")
msg.Text = "Hello, " .. player.Name
wait(2.5)
msg:Destroy()
end
-- Connect the function to the MouseClick event
clickDetector.MouseClick:Connect(onClicked)
local part = script.Parent
-- Create a ClickDetector so we can tell when the part is clicked
local cd = Instance.new("ClickDetector", part)
-- This function updates how the part looks based on its Anchored state
local function updateVisuals()
if part.Anchored then
-- When the part is anchored...
part.BrickColor = BrickColor.new("Bright red")
part.Material = Enum.Material.DiamondPlate
else
-- When the part is unanchored...
part.BrickColor = BrickColor.new("Bright yellow")
part.Material = Enum.Material.Wood
end
end
local function onToggle()
-- Toggle the anchored property
part.Anchored = not part.Anchored
-- Update visual state of the brick
updateVisuals()
end
-- Update, then start listening for clicks
updateVisuals()
cd.MouseClick:Connect(onToggle)
Résumé
Propriétés
Définit l'icône de curseur pour s'afficher lorsque la souris est positionnée sur le parent de ce ClickDetector ou DragDetector .
Distance maximale entre un personnage et le ClickDetector ou DragDetector pour que le joueur puisse interagir avec lui.
Évènements
Se déclenche lorsqu'un joueur interagit avec le parent d'un ClickDetector ou DragDetector.
Se déclenche lorsque le parent d'un ClickDetector ou DragDetector est survolé par un joueur.
Activer le jeu quand le curseur d'un joueur passe du parent d'un ClickDetector ou d'un DragDetector.
Se déclenche lorsqu'un joueur fait un clic droit sur leur curseur de souris sur un ClickDetector ou DragDetector.
Propriétés
CursorIcon
Définit l'icône de curseur pour s'afficher lorsque la souris est positionnée sur le parent de cette ClickDetector ou DragDetector . Si cette propriété est vide, le détecteur utilisera l'icône par défaut.
Pour changer l'icône de curseur, définissez cette propriété sur l'ID de la ressource de l'image que vous souhaitez utiliser.
MaxActivationDistance
Cette propriété contrôle la distance maximale, en studs, entre un Character et le ClickDetector ou DragDetector pour que le joueur puisse interagir avec lui. Par instance, un personnage à moins de 10
Méthodes
Évènements
MouseClick
Cet événement se déclenche à partir d'un Script ou d'un LocalScript lorsqu'un joueur interagit avec un ClickDetector ou 2>Class.DragDetector2> via les entrées suivantes :
- Sur les plates-formes avec une souris, lorsque le joueur a quitté les clics de souris.
- Sur les plates-formes TouchEnabled, lorsque le joueur appuie.
- Sur les plates-formes GamepadEnabled, lorsque le point central est sur le même modèle et que le bouton A est pressé et relâché.
Remarquez que le joueur de Character doit être dans la zone de MaxActivationDistance du détecteur.
Paramètres
Le Player qui a cliqué sur le parent d'un ClickDetector ou DragDetector.
MouseHoverEnter
Cet événement se déclenche à partir d'un Script ou d'un LocalScript lorsque le parent d'un ClickDetector ou 2>Class.DragDetector2> est survolé par un joueur. Cela ne nécess
En raison de la nature de l'entrée de l'utilisateur, vous ne devriez pas dépendre de tous les événements MouseHoverEnter qui tirent un événement correspondant MouseHoverLeave .
Paramètres
Le Player qui a commencé à passer le curseur sur le parent d'un ClickDetector ou DragDetector.
Échantillons de code
local clickDetector = script.Parent:FindFirstChildOfClass("ClickDetector")
clickDetector.MouseHoverEnter:Connect(function(player)
print(player.Name .. " hovered over my parent!")
end)
clickDetector.MouseHoverLeave:Connect(function(player)
print(player.Name .. " hovered off my parent!")
end)
MouseHoverLeave
Cet événement se déclenche à partir d'un Script ou d'un LocalScript lorsque le curseur d'un joueur passe du parent d'un ClickDetector ou d'un 1> Class.
En raison de la nature de l'entrée de l'utilisateur, vous ne devriez pas dépendre de tous les événements MouseHoverLeave qui se déclenchent après un événement correspondant MouseHoverEnter .
Paramètres
Le Player dont le curseur est passé du parent d'un ClickDetector ou DragDetector.
Échantillons de code
local clickDetector = script.Parent:FindFirstChildOfClass("ClickDetector")
clickDetector.MouseHoverEnter:Connect(function(player)
print(player.Name .. " hovered over my parent!")
end)
clickDetector.MouseHoverLeave:Connect(function(player)
print(player.Name .. " hovered off my parent!")
end)
RightMouseClick
Cet événement se déclenche à partir d'un Script ou d'un LocalScript lorsqu'un joueur fait un clic droit sur leur curseur de souris sur un ClickDetector ou 2>Class.DragDetector2>. Notez que le joueur doit être dans
Paramètres
Le Player qui a cliqué avec le bouton droit de la souris sur le parent d'un ClickDetector ou DragDetector.