Postado Fevereiro 12, 2015 10 anos Estou refazendo o sistema de clean, mas ta usando muita CPU (100% de um core). function onSay(cid, words, param, channel) local pos = {} local fromPos, toPos, toFloor = 800, 1200, 15 for x = fromPos, toPos do for y = fromPos, toPos do for z = 0, toFloor do local coord = {x = x, y = y, z = z, stackpos = 0} if getTileThingByPos(coord).itemid ~= 0 and not getTileInfo(coord).house then table.insert(pos, coord) end end end end local delay = 0.0001 local _delay, i = delay, 1 while i <= #pos do addEvent(doCleanTile, delay, pos[i], false) i = i + 1 delay = delay + _delay end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Game map cleaned.') return true end Num mapa pequeno não tem problema, mas num mapa grande tem chances de travar o pc... Alguém tem alguma sugestão para diminuir o uso de CPU? Editado Fevereiro 12, 2015 10 anos por fireelement (veja o histórico de edições)
Postado Fevereiro 12, 2015 10 anos Não da pra dividir em partes? Cria uma ou duas funções, cada uma dando save em xx tabela, e a outra em xxx tabela. Compreende? Contato: beeki@ resto vocês sabem, eu acho.
Postado Fevereiro 12, 2015 10 anos Autor Não da pra dividir em partes? Cria uma ou duas funções, cada uma dando save em xx tabela, e a outra em xxx tabela. Compreende? O problema não ta no doCleanTile, e sim no table.insert, pois insere muitos valores ao mesmo tempo. Queria tentar colocar um addEvent no table.insert também, mas não consegui fazer isso
Postado Fevereiro 12, 2015 10 anos não usa o table.insert. function onSay(cid, words, param, channel) local fromPos, toPos, toFloor = 800, 1200, 15 for x = fromPos, toPos do for y = fromPos, toPos do for z = 0, toFloor do local coord = {x = x, y = y, z = z, stackpos = 0} if getTileThingByPos(coord).itemid ~= 0 and not getTileInfo(coord).house then addEvent(doCleanTile, 1, coord, false) end end end end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Game map cleaned.') return true end Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Fevereiro 12, 2015 10 anos Autor não usa o table.insert. obg pela ajuda, mas continua usando 1 core inteiro :'( Editado Fevereiro 12, 2015 10 anos por fireelement (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.