Помогите написать скрипт luau roblox - Вопросы по сайтостроению

Вопрос Помогите написать скрипт luau roblox

Регистрация
11 Сен 2013
Сообщения
72
Репутация
0
Спасибо
0
Монет
0
короче надо чтоб скрипт проверял сколько партов с одинаковым названием и выдавал эту цифру в переменной в luau - roblox studio
 
Регистрация
16 Дек 2013
Сообщения
78
Репутация
28
Спасибо
1
Монет
0
ну как и везде циклом проходимся бам бам бум бум готово
 
Регистрация
24 Дек 2013
Сообщения
86
Репутация
0
Спасибо
0
Монет
0
На local CollectionService = game:GetService("CollectionService")
local RunService = game:GetService("RunService")

-- Кэш для хранения количества партов
local partCountCache = {}

-- Функция для быстрого подсчета партов с тегом
local function countPartsWithTag(tagName)
return #CollectionService:GetTagged(tagName)
end

-- Функция для создания или обновления тега для партов
local function updatePartTags(partName)
local tagName = "CountMe_" .. partName
for _, object in ipairs(workspace:GetDescendants()) do
if object:IsA("BasePart") and object.Name == partName then
if not CollectionService:HasTag(object, tagName) then
CollectionService:AddTag(object, tagName)
end
elseif CollectionService:HasTag(object, tagName) and (not object:IsA("BasePart") or object.Name ~= partName) then
CollectionService:RemoveTag(object, tagName)
end
end
end

-- Функция для получения количества партов с определенным именем
local function getPartCount(partName)
local tagName = "CountMe_" .. partName
if not partCountCache[partName] then
updatePartTags(partName)
partCountCache[partName] = countPartsWithTag(tagName)
end
return partCountCache[partName]
end

-- Функция для обновления кэша
local function updateCache()
for partName, _ in pairs(partCountCache) do
local tagName = "CountMe_" .. partName
partCountCache[partName] = countPartsWithTag(tagName)
end
end

-- Настройка автоматического обновления кэша
RunService.Heartbeat:Connect(function()
updateCache()
end)

-- Пример использования
local function exampleUsage()
local partNameToCount = "ExamplePart"
local count = getPartCount(partNameToCount)
print("Количество партов с именем '" .. partNameToCount .. "': " .. count)

-- Добавляем прослушивание изменений
CollectionService:GetInstanceAddedSignal("CountMe_" .. partNameToCount):Connect(function()
print("Парт добавлен! Новое количество: " .. getPartCount(partNameToCount))
end)

CollectionService:GetInstanceRemovedSignal("CountMe_" .. partNameToCount):Connect(function()
print("Парт удален! Новое количество: " .. getPartCount(partNameToCount))
end)
end

exampleUsage()
 
Регистрация
8 Июл 2013
Сообщения
76
Репутация
0
Спасибо
0
Монет
0
попробуй перезагрузить, мне помогло
 
Сверху Снизу