Tool
属性
bool CanBeDropped |
---|
可否丢弃道具,默认不可以丢弃 |
bool Enabled |
---|
决定道具能否被使用,默认可以使用 |
Vector3 GripPos |
---|
夹点位置 |
Vector3 GripEuler |
---|
夹点的欧拉 |
string ToolTip |
---|
道具提示信息 |
string TextureId |
---|
默认快捷栏界面,显示的图标资源 |
bool ActivationOnly |
---|
仅激活 |
成员函数
已装备的的工具,模拟点击使用,会触发Activated事件。 |
bool Deactivate () |
---|
模拟工具的结束使用。 |
事件
SBXSignal Activated () |
---|
玩家已装备工具,点击鼠标左键时触发 |
SBXSignal Deactivated () |
---|
当鼠标左键松开时触发 |
SBXSignal Equipped () |
---|
当装备道具时触发 |
SBXSignal Unequipped () |
---|
当卸载道具时触发。 |
代码示例
lua
--以下示例是使用LocalPlayer的EquipTool,UnequipTools接口,装备指定Tool和卸下Tool 的示例。将其放到Tool下的Script节点里,按X装备该Tool,按Z卸下当前的装备(不管是不是该Tool节点)
local tool = script.Parent
local playersService = game:GetService("Players")
local localPlayer = playersService.LocalPlayer
local ContextActionService = game:GetService("ContextActionService")
local function testEquipTool(actionName, inputState, inputObj)
if inputState == Enum.UserInputState.InputBegin.Value then
localPlayer:EquipTool( tool )
end
end
ContextActionService:BindAction(
"testEquipTool",
testEquipTool,
Enum.ContextActionType.KeyBoard.Value,
string.byte('X') )
local function testUnequipTool(actionName, inputState, inputObj)
if inputState == Enum.UserInputState.InputBegin.Value then
localPlayer:UnequipTools()
end
end
ContextActionService:BindAction(
"testUnequipTool",
testUnequipTool,
Enum.ContextActionType.KeyBoard.Value,
string.byte('Z') )