Tool

继承自

描述

会切换装备已有的工具

属性

bool
可否丢弃道具,默认不可以丢弃
bool
决定道具能否被使用,默认可以使用
夹点位置
夹点的欧拉
string
道具提示信息
string
默认快捷栏界面,显示的图标资源
bool
仅激活

函数

已装备的的工具,模拟点击使用,会触发Activated事件。
模拟工具的结束使用。

事件

SBXSignal ()
玩家已装备工具,点击鼠标左键时触发
SBXSignal ()
当鼠标左键松开时触发
SBXSignal ()
当装备道具时触发
SBXSignal ()
当卸载道具时触发。

代码示例

--在StarterPack下新增一个Tool节点,Tool下新增一个Script节点,运行游戏,按1装备该Tool,鼠标点击空白处使用
local tool = script.Parent
tool.Equipped:Connect(function()
		print("Equipped----")
	end
)
tool.Unequipped:Connect(function()
		print("Unequipped----")
	end
)
tool.Activated:Connect(function()
		print("Activated----")
	end
)
tool.Deactivated:Connect(function()
		print("Deactivated----")
	end
)
tool.TouchBegin:Connect(function()
		print("onTouchBegin----")
	end
)
tool.TouchEnd:Connect(function()
		print("onTouchEnd----")
	end
)

 --以下示例是使用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') )
Last Updated: