Classe de moteur
RayValue
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Résumé
Événements
Changed(value: Ray):RBXScriptSignal |
changed(value: Ray):RBXScriptSignal |
Échantillons de code
Rays, RayValue et Raycasting
local partA = workspace.PartA
local partB = workspace.PartB
local origin = partA.Position
local direction = partB.Position - partA.Position
local ray = Ray.new(origin, direction)
local rayValue = Instance.new("RayValue")
rayValue.Value = ray
rayValue.Name = "PartA-to-PartB Ray"
rayValue.Parent = workspace
-- Raycast pour trouver toutes les parties entre PartA et PartB
local part = workspace:FindPartOnRay(ray)
if part then
print("Part touchée : " .. part:GetFullName())
else
-- Cela ne devrait jamais arriver, car notre ray commence à PartA
-- et pointe vers PartB, donc nous devrions toujours toucher PartB
-- ou une autre partie.
print("Aucune partie touchée !")
endRéférence API
Propriétés
Événements
Changed
Paramètres
Échantillons de code
Comment utiliser RayValue.Changed
local value = Instance.new("RayValue")
value.Parent = workspace
value.Changed:Connect(function(NewValue)
print(NewValue)
end)
local start = Vector3.new(0, 0, 0)
local lookAt = Vector3.new(10, 10, 10)
local ray = Ray.new(start, (lookAt - start).Unit)
value.Value = raychanged