тяжело описать, в теме

Krisp

Новичок
Автор темы
23
1
Версия MoonLoader
.026-beta
стою на админке, пишу свой скрипт, который проверяют обвесы/аксессуары в зоне стрима
периодически появляется баг, что аксы или обвесы вносятся в массив к нику другого игрока, как возможно это исправить?

первый отрывок из кода

Lua:
if not isCompleteCommand and isRunCommand and (isUpgradeGun or isUpgradeSharp) then
        if isUpgradeSharp then
            local subText, _ = text:gsub(upgradeSharp,'')

            local split = splitStringByLine(subText)

            local warningSlots = {} --{'{f5e50c}Надетые аксессуары:'}
            for i = 1, #split do
                if split[i]:match('%+%d+') ~= nil then
                    local number = tonumber(split[i]:match('+(%d+)'))
                    if number >= 4 then
                        local subText, _ = split[i]:gsub('({%x%x%x%x%x%x})','')
                        table.insert(warningSlots, subText)
                    end
                end
            end
            players[#players].upgradeSharp = warningSlots
            isCompleteCommand = true
        end

        if isUpgradeGun then
            local subText, _ = text:gsub(upgradeGun,'')

            local split = splitStringByLine(subText)

            local warningSlots = {} --{'{f5900c}Надетые улучшения оружия:'}

            for i = 1, #split do
                if split[i]:match('.+%(.+%)') ~= nil then
                    local subText, _ =  split[i]:gsub('({%x%x%x%x%x%x})','')
                    table.insert(warningSlots, subText)
                end
            end
            players[#players].upgradeGun = warningSlots
            isCompleteCommand = true
        end
end

второй отрывок из кода

Lua:
for i = 1, #players do
    if ((players[i].upgradeSharp ~= nil and #players[i].upgradeSharp > 0) or (players[i].upgradeGun ~= nil and #players[i].upgradeGun > 0)) then
        if isAdmin(string.gsub(players[i].nickname, '.%d.+','')) then
            table.insert(result, {line = '\n'..players[i].nickname..' - Admin', color = 'FF594A'})
        else
                table.insert(result, {line = '\n'..players[i].nickname..' - '..getFraction(string.gsub(players[i].nickname, '%D','')), color = 'FF594A'})
        end
    end
    if (players[i].upgradeSharp ~= nil and #players[i].upgradeSharp > 0) then
        table.insert(result, {line = 'Надетые аксессуары:', color = 'f5e50c'})
        for j = 1, #players[i].upgradeSharp do
            table.insert(result, {line = players[i].upgradeSharp[j], color = '07F59A'})
        end
    end
    if (players[i].upgradeGun ~= nil and #players[i].upgradeGun > 0) then
        table.insert(result, {line = 'Надетые улучшения оружия:', color = 'f5900c'})
        for j = 1, #players[i].upgradeGun do
            table.insert(result, {line = players[i].upgradeGun[j], color = '07F59A'})
        end
    end
end

если будет нужно - скину фулл код в лс
 
  • Эм
Реакции: qdIbp

Vespan

loneliness
Проверенный
2,103
1,633
ипт, который проверяют обвесы/аксессуары в зоне стрима
ниче не понял,как ты получаешь аксессуары в зоне стрима(с обвесами там в текстдраве пишет вроде как)
с аксами - юзай хук
Lua:
INCOMING_RPCS[RPC.ATTACHOBJECTTOPLAYER]       = {'onAttachObjectToPlayer', {objectId = 'int16'}, {playerId = 'int16'}, {offsets = 'vector3d'}, {rotation = 'vector3d'}}