DragDetector
*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.
Các DragDetector instance dễ dàng và khuyến khích tương tác với 3D objects trong một trải nghiệm, chẳng hạn như mở cửa và tủ Draw, Slide một phần xung quanh, và nhiều hơn nữa. Các tính năng chính bao gồm:
Đặt một DragDetector dưới bất kỳ BasePart hoặc Model nào để làm cho nó có thể kéo bằng tất cả các 1> Class.Input1> (chuột, chạm, gamepad và VR), tất cả mà không có dòng mã nào.
Chọn từ một số lựa chọn DragStyle , xác định cách đối tượng phản hồi với chuyển động bằng cách sử dụng ResponseStyle , và áp dụng các giới hạn chuyển động hoặc giới hạn mặt trụ cơ.
Scripts có thể đáp lại sự thao tác của các thành phần để lái UI hoặc đưa ra các quyết định hợp lý, chẳng hạn như điều chỉnh mức ánh sáng trong một phòng bằng cách sử dụng nút điều khiển trượt.
Người chơi có thể thao tác vào các bộ phận hoặc mô hình đã gắn và chúng sẽ ở chính xác nơi bạn đặt chúng khi phát hành.
Class.DragDetector|DragDetectors hoạt động trong Studio miễn là bạn không sử dụng công cụ Chọn , Di chuyển , 0> Scale0> hoặc DragDetectors3> trong các công cụ khác, dễ dàng hơn để kiểm tra và điều chỉ
Xem hướng dẫn 3D Drag Detectors cho chi tiết và ví dụ sử dụng.
Tóm Tắt
Thuộc Tính
Đặt biểu tượng chuột để hiển thị khi chuột được kích hoạt trên phụ huynh của DragDetector này.
Có phải áp dụng sự ràng buộc lực đến trung tâm hình thể của đối tượng.
Trục chính của chuyển động, biểu tượng tương đối với khung tham chiếu.
Datatype.CFrame của trục dựa trên thẻ ngắt của trình phát, độc lập vào trình phát ngắt trục ReferenceInstance .
Phương tiện được sử dụng để tạo ra chuyển động đề xuất.
Dù DragDetector có đáp lại nhập người dùng hay không.
Trong khi đang nhập gamepad, modifier Enum.KeyCode cho chế độ di chuyển thứ cấp.
Trong khi nhập bàn phím, modifier Enum.KeyCode cho chế độ di chuyển thứ cấp.
Cùng với MinDragAngle, làm cho kẻ thử nghiệm máy dịch chuyển của máy dịch chuyển không thể tạo ra chuyển động.
Cùng với MinDragTranslation, làm cho kẻ ngăn cản những nỗ lực của máy dòng để tạo ra chuyển động.
Quản lý tối đa sức mạnh để đạt được mục tiêu của mục tiêu.
Tốc độ quay tối đa được áp dụng cho thiết bị để đạt được mục tiêu của nó.
Cùng với MaxDragAngle , làm cho các thử nghiệm của máy dòng chuyển động bị trì hoãn.
Cùng với MaxDragTranslation , làm cho các thử nghiệm của máy dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình dòng trình d
Đặt hàng YXZ để quay các trục di chuyển so với khung tham chiếu.
Điều khiển cấp độ quyền cho người chơi có thể tương tác với DragDetector .
Một instace whose CFrame là khung tham chiếu cho máy dò dịch.
Khái niệm được sử dụng để di chuyển, hoặc không di chuyển, các thể thống ảnh hưởng bởi thiết bị dò dơi.
Giá trị càng cao hơn khiến mục tiêu đạt được mục tiêu của mình nhanh hơn.
Whether user input on a DragDetector replicates to the server or remains local to the specific client.
Trục phụ của chuyển động.
Nếu DragStyle là một trong những multiplier for adding a radial pull rotation as a contribution to the total.
Nếu DragStyle là Enum.DragDetectorDragStyle.RotateTrackball , hệ số nhân cho việc thêm vòng quay cuộn vào tổng số.
Trong khi VR đang được nhập, modifier Enum.KeyCode cho chế độ di chuyển thứ cấp.
Các Axis biểu tượng trong không gian thế giới.
Các SecondaryAxis biểu tượng trong không gian thế giới.
Đặt icon cursors để hiển thị khi chuột đang hoạt động trên phụ huynh của ClickDetector hoặc DragDetector .
Khoảng cách tối đa giữa một nhân vật và ClickDetector hoặc DragDetector để người chơi có thể tương tác với nó.
Phương Pháp
Thêm chức năng để điều chỉnh hoặc hạn chế chuyển động đề xuất.
Trả lại tham chiếu CFrame trong đó biểu tượng di chuyển được biểu tượng.
Có thể gọi từ một script để khởi động lại cuộn dịch bằng cách sử dụng các tham số mới.
Làm cho một chức năng để được sử dụng nếu và chỉ nếu DragStyle được set để Enum.DragDetectorDragStyle.Scriptable .
Làm cho một chức năng để được sử dụng nếu và chỉ nếu PermissionPolicy được đặt thành Enum.DragDetectorPermissionPolicy.Scriptable .
Sự Kiện
- DragContinue(playerWhoDragged : Player,cursorRay : Ray,viewFrame : CFrame,vrInputFrame : OptionalCoordinateFrame,isModeSwitchKeyDown : bool):RBXScriptSignal
Lửa khi một người tiếp tục kéo mục từ sau khi đã kích hoạt DragStart .
Lửa khi một người dừng khiến vật đối tượng.
Lửa khi một người bắt đầu kéo vật thể.
Lửa khi một người chơi tương tác với cha của một ClickDetector hoặc DragDetector .
Lửa khi ClickDetector hoặc DragDetector của cha mẹ đang bị giữ bởi một người chơi.
Lửa khi người chơi hoặc người chơi chuột của người chơi không còn là cha của một ClickDetector hoặc DragDetector .
Kích hoạt khi một người chơi nhấp chuột phải vào chuột của họ trên một ClickDetector hoặc DragDetector .
Thuộc Tính
ActivatedCursorIcon
Đặt icon cursors để hiển thị khi chuột được kích hoạt trên phụ huynh của thẻ này DragDetector . Nếu thuộc tính này được để trống, thì máy dò sẽ sử dụng biểu tượngmặc định.
Để thay đổi biểu tượng người dùng đang hoạt động, hãy tùy chỉnh thuộc tính này vào ID tài sản của hình ảnh bạn muốn sử dụng.
ApplyAtCenterOfMass
Khi false (đoạn chuẩn), hạn chế sức mạnh được áp dụng tại điểm mà người dùng nhấp vào. Khi true, hạn chế sức mạnh được áp dụng tại trung tâm của mục đích. Chỉ áp dụng nếu ResponseStyle là mục đích chín
Axis
Trục chính của chuyển động, được biểu thị bằng một DragStyle của Amount.DragDetectorDragStyle.Trans
DragFrame
Nếu ReferenceInstance được cài đặt, CFrame của pivot相对于 trục quay; otherwise, the CFrame of pivot相对于 khung hồ sơ của nó ở đầu của拖.
DragStyle
Phương tiện được sử dụng để tạo ra chuyển động đề xuất, cho một dòng trượt chuột. Tham khảo Enum.DragDetectorDragStyle cho các tùy chọn.
GamepadModeSwitchKeyCode
Trong khi đang nhập gamepad, Enum.KeyCode để điều khiển chế độ di chuyển thứ cấp. Chỉ áp dụng khi thiết bị dò dịch chính DragStyle có cả chế độ di chuyển chính và chế độ di chuyển thứ cấp.
KeyboardModeSwitchKeyCode
Trong khi đang nhập bàn phím, Enum.KeyCode để bật/tắt chế độ di chuyển thứ cấp. Chỉ áp dụng khi thiết bị bắt sóng di chuyển chính/thứ cấp.
MaxDragAngle
Nếu kích thước này lớn hơn MinDragAngle, thì dịch sẽ được kẹp trong khoảng cách đó.
Đây không phải là một hạn chế; nó chỉ làm trở ngại những lần thử của máy dòng trong để đạt được sự di chuyển trong giới hạn. Xem AddConstraintFunction() để thêm hạn chế tùy chỉnh cho một drag.
Chỉ liên quan nếu DragStyle là Enum.DragDetectorDragStyle.RotateAxis .
MaxDragTranslation
Trong bất kỳ chiều hướng nào, nếu điều này lớn hơn MinDragTranslation , bản dịch sẽ được cắt trong phạm vi đó.
Đây không phải là một hạn chế; nó chỉ làm trở ngại những lần thử của máy dòng trong để đạt được sự di chuyển trong giới hạn. Xem AddConstraintFunction() để thêm hạn chế tùy chỉnh cho một drag.
MaxForce
Quyền lực tối đa được áp dụng cho đối tượng để đạt được mục tiêu của nó. Chỉ có ý nghĩa khi ResponseStyle là Enum.DragDetectorResponseStyle.Physical và đối tượng cha không có kết nối.
MaxTorque
Mô-men xoắn tối đa được áp dụng cho đối tượng để đạt được mục tiêu của nó. Chỉ có ý nghĩa khi ResponseStyle là Enum.DragDetectorResponseStyle.Physical và đối tượng cha không có kết nối.
MinDragAngle
Nếu đây là dưới MaxDragAngle , bản dịch sẽ được kẹp trong khoảng này.
Đây không phải là một hạn chế; nó chỉ làm trở ngại những lần thử của máy dòng trong để đạt được sự di chuyển trong giới hạn. Xem AddConstraintFunction() để thêm hạn chế tùy chỉnh cho một drag.
Chỉ liên quan nếu DragStyle là Enum.DragDetectorDragStyle.RotateAxis .
MinDragTranslation
Trong bất kỳ chiều hướng nào, nếu điều này ít hơn MaxDragTranslation , bản dịch sẽ được kẹp trong phạm vi đó.
Đây không phải là một hạn chế; nó chỉ làm trở ngại những lần thử của máy dòng trong để đạt được sự di chuyển trong giới hạn. Xem AddConstraintFunction() để thêm hạn chế tùy chỉnh cho một drag.
Orientation
Đặt YXZ rotation of axes of motion relative to the reference frame (không thay đổi hướng của trụ cơ sở của hướng dẫn). Linear translation and axial rotation will be on this reorient Y axis, and planar translation in the XZ plane. Changing this value automatically updates 1> Class.DragDetector.Axis
PermissionPolicy
Điều khiển cấp độ quyền cho các người chơi có thể tương tác với DragDetector . Mặc định là Enum.DragDetectorPermissionPolicy.Everybody .
ReferenceInstance
Một đối tượng có định nghĩa CFrame là khung tham chiếu cho máy dò dịch. The DragFrame được biểu hiện bằng cách đối tượng này được lấy từ định nghĩa Datatype.CFrame
Nếu đây là một PVInstance , thì khung tham chiếu sẽ là pivot của nó; nếu một Attachment , thì thế giới của nó CFrame . Nếu nó
ResponseStyle
Một khi chuyển động đã được tính toán và có thể bị hạn chế, đây là phương tiện di chuyển màu đối tượng ảnh hưởng bởi DragDetector . Xem Enum.DragDetectorResponseStyle cho các tùy chọn.
Responsiveness
Giá trị càng cao hơn dẫn đến việc đạt mục tiêu của đối tượng nhanh hơn. Chỉ liên quan nếu ResponseStyle là Enum.DragDetectorResponseStyle.Physical và đối tượng cha không có kết nối.
RunLocally
Nếu false (đoạn mặc định), client gửi tín hiệu bị sao chép ( DragStart , DragContinue , DragEnd ) tới máy chủ xử lý các tia chuột, thay đổi mô
Nếu đúng, client xử lý các tín hiệu này bằng cách tự xử lý chúng và không sao chép chúng cho máy chủ. Client LocalScripts có thể được sử dụng để phản hồi vào các sự kiện này và RemoteEvents có thể được sử dụng để gửi bất kỳ
SecondaryAxis
Trục phụ của chuyển động. Quan hệ với hướng dẫn sử dụng cùng một triết lý như Attachments .
TrackballRadialPullFactor
Khi cursor ở ngoài trackball, DragDetector có thể áp dụng một vòng xoay quay tròn từ trái sang phải để biến bóng như thể nó đang cố gắng cuộn ra phía trái. Đây là một biến đổi 0-1 để th
TrackballRollFactor
Khi cursor ở ngoài trackball, DragDetector có thể áp dụng một lượt quay tròn tay như thể nó đang được gắn trên một bản ghi vinyl đang mặc khải viewer. Đây là một đơn vị 0-1 cho việc th
VRSwitchKeyCode
Trong khi VR đang được nhập, Enum.KeyCode cho phép bật/tắt chế độ di chuyển thứ cấp. Chỉ áp dụng nếu thiết bị bắt sóng siêu thanh DragStyle có cả chế độ di chuyển chính và thứ cấp.
WorldAxis
Các Axis biểu hiện trong không gian thế giới. Liên quan đến hướng dẫn sử dụng cùng một triết lý như Attachments .
WorldSecondaryAxis
Các SecondaryAxis được biểu hiện trong không gian thế giới. Liên quan đến hướng tới sử dụng cùng một paradigm như Attachments .
Phương Pháp
AddConstraintFunction
Thêm một chức năng để điều chỉnh hoặc hạn chế chuyển động đề xuất. Chức năng nhận một đầu vào CFrame của motion đề xuất và trả mộ
Để loại bỏ một chức năng hạn chế đã được thêm, hãy gọi Disconnect() trên các thể hiện kết nối đã trả lại.
Tham Số
Lệ thuộc trên ưu tiên cho các hàm được thêm bằng cách này. Giá trị càng cao càng được ưu tiên hơn.
Lợi Nhuận
Sử dụng đối tượng kết nối này để loại bỏ chức năng hạn chế.
GetReferenceFrame
Trả lại tham chiếu CFrame trong đó biểu tượng di chuyển được biểu tượng; xem tham chiếu ReferenceInstance để biết thêm chi tiết.
Lợi Nhuận
RestartDrag
Có thể gọi từ một script để khởi động lại cuộn dữ liệu bằng cách sử dụng các tham số mới, nếu các tham số như DragStyle , Axis hoặc SecondaryAxis thay đổi.
Lợi Nhuận
SetDragStyleFunction
Làm cho một chức năng để được sử dụng nếu và chỉ nếu DragStyle được đặt ở Amount.DragDetectorDrag
Nếu hàm nil trả về, thì đối tượng sẽ không được di chuyển. Điều này hữu ích nếu script chưa thu thập được tất cả các thông tin cần thiết để đưa ra câu trả lời chính xác, hoặc trong các trường hợp tạm thời mà bạn muốn đối tượng ở lại nơi nó đã ở.
Tham Số
Chức năng để theo dõi DragContinue các tín hiệu. Đây chức năng nhận dấu chuột thế giới của tín hiệu và trả lại một CFrame đựng vị trí và hướng của pivot trong thế giới. Nếu chức
Lợi Nhuận
SetPermissionPolicyFunction
local dragDetector = script.Parent.DragDetector
dragDetector.PermissionPolicy = Enum.DragDetectorPermissionPolicy.Scriptable
dragDetector:SetPermissionPolicyFunction(function(player, part)
if player and player:GetAttribute("IsInTurn") then
return true
elseif part and not part:GetAttribute("IsDraggable") then
return false
else
return true
end
end)
Tham Số
Chức năng cho phép bạn cài đặt sự tương tác của thiết bị dưới đấ
Lợi Nhuận
Sự Kiện
DragContinue
Lửa khi một người tiếp tục kéo mục từ sau khi đã kích hoạt DragStart .
Tham Số
Nếu sử dụng thiết bị nhập VR, CFrame của tay cầm cursor / pointer / controller.
DragEnd
Lửa khi một người dừng khiến vật đối tượng.
Tham Số
DragStart
Lửa khi một người bắt đầu kéo vật thể.
Tham Số
Khung đập của thanh trượt chuột đã khởi tạo cuộn dịch.
Phần đã được đánh bởi các cánh cursors đã khởi động cuộn dịch.
Nếu sử dụng thiết bị nhập VR, CFrame của tay cầm cursor / pointer / controller.