Lớp công cụ
RayValue
*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.
Tóm Tắt
Sự Kiện
Changed(value: Ray):RBXScriptSignal |
changed(value: Ray):RBXScriptSignal |
Mẫu mã
Các tia, RayValue và 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 = "Tia từ PartA đến PartB"
rayValue.Parent = workspace
-- Raycast để tìm bất kỳ phần nào ở giữa PartA và PartB
local part = workspace:FindPartOnRay(ray)
if part then
print("Đã chạm tới phần: " .. part:GetFullName())
else
-- Điều này lẽ ra không bao giờ xảy ra, vì tia của chúng ta bắt đầu từ PartA
-- và chỉ vào PartB, vì vậy chúng ta luôn nên chạm tới PartB
-- hoặc một phần khác.
print("Không có phần nào được chạm tới!")
endTài Liệu Tham Khảo API
Thuộc Tính
Sự Kiện
Changed
Tham Số
Mẫu mã
Cách Sử Dụng 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