FindPartsInZoneWithIgnoreList

格式

FindPartsInZoneWithIgnoreList(minPoint,maxPoint,ignoreTable,maxParts)

简介

返回一个数组,数组内容为在指定区域内所有零件类对象,忽略表中的对象。

其他相关

该方法运行效率较低,若检测的范围内存在大量需要检测的对象,会严重影响游戏运行效率,造成游戏卡顿。避免检测大量的游戏对象,或减少函数调用频率。

参数

变量名称 类型 默认 描述
minPoint Vector3 minPoint 构成包围区域的最小点
maxPoint Vector3 maxPoint 构成包围区域的最大点
ignoreTable table ignoreTable 要忽略的对象列表
maxParts int 最大计算数

返回值

类型 描述
table RWObject 找到的对象

实例

2秒后查找(0,0,0)点到(10,10,10)范围内所有符合条件的零件,输出找到的零件的名称

wait(1)
local workSpace=GetService("WorkSpace") --获取工作区服务
--在工作区创建三个位置不同的零件
local part1=RWObject:New("Part")
part1.Position=Vector3.New(1,1,1)
part1.Anchored=true
part1.Parent=workSpace
local part2=RWObject:New("Part")
part2.Position=Vector3.New(2,2,2)
part2.Anchored=true
part2.Parent=workSpace
local part3=RWObject:New("Part")
part3.Position=Vector3.New(-3,3,3)
part3.Anchored=true
part3.Parent=workSpace
wait(2)

local minPoint = Vector3.New(0,0,0) --设置区域最小点
local maxPoint = Vector3.New(10,10,10) --设置区域最大点
local ignoreTable = {workSpace:WaitForChild("New Plate")} --设置忽略的对象
local maxParts = 10 --设置检测数量限制
local list = workSpace:FindPartsInZoneWithIgnoreList(minPoint,maxPoint,ignoreTable,maxParts) --找出区域内符合条件的对象
for k,v in pairs(list) do
    print(v.Name)
    v.Color = Vector3.New(255,0,0)
end    
文档更新时间: 2020-08-11 17:37   作者:王辰剑