Postado Junho 7, 2019 6 anos Utilizo o servidor OTServBR Global Master baseado no TFS 1.3. Quando tento utilizar as pedras (ex: small ruby) nas shrines, nada acontece e no terminal do ot aparece o seguinte erro: Erro da Ice Shrine: Citar Lua Script Error: [Action Interface] data/actions/scripts/others/icefeyristentrada.lua:onUse data/actions/scripts/others/icefeyristentrada.lua:3: attempt to index global 'player' (a nil value) stack traceback: [C]: in function '__index' data/actions/scripts/others/icefeyristentrada.lua:3: in function <data/actions/scripts/others/icefeyristentrada.lua:1> Erro da Fire Shrine: Citar Lua Script Error: [Action Interface] data/actions/scripts/others/firefeyristentrada.lua:onUse data/actions/scripts/others/firefeyristentrada.lua:3: attempt to index global 'player' (a nil value) stack traceback: [C]: in function '__index' data/actions/scripts/others/firefeyristentrada.lua:3: in function <data/actions/scripts/others/firefeyristentrada.lua:1> Screenshot O que tem de errado? Desde já, grato! Editado Junho 7, 2019 6 anos por d0gw4r (veja o histórico de edições)
Postado Junho 7, 2019 6 anos posta o script amigo! [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
Postado Junho 7, 2019 6 anos Autor Olá, eu já consegui consertar, mas obrigado mesmo assim! Deixarei o script bugado e o corrigido aqui pra caso alguém por aí, que tenha o mesmo problema que eu, possa encontrar esse post. Eis o script defeituoso: function onUse(creature, item, position, fromPosition, pos, target, toPosition) if player:getStorageValue(Storage.Exaust.Time) >= os.time() then player:sendTextMessage(MESSAGE_STATUS_SMALL, 'You are exhausted.') return true end local player = creature:getPlayer() local tilepos1 = {x=32910, y=32339, z=15} local tilepos2 = {x=32911, y=32339, z=15} local tilepos3 = {x=32910, y=32338, z=15} local tilepos4 = {x=32911, y=32338, z=15} if not player then return end if player:getItemCount(2147) >= 1 and pos.x == tilepos1.x or pos.x == tilepos2.x and pos.y == tilepos1.y or pos.y == tilepos3.y and pos.z == tilepos1.z then player:removeItem(2147, 1) player:teleportTo(Position(33586,32263, 7)) player:getPosition():sendMagicEffect(CONST_ME_MAGIC_RED) return true end player:setStorageValue(Storage.Exaust.Time, os.time()) return true end Eis a correção: function onUse(creature, item, position, fromPosition, pos, target, toPosition) local player = Player(creature) if not player then return false end if player:getStorageValue(Storage.Exaust.Time) >= os.time() then player:sendTextMessage(MESSAGE_STATUS_SMALL, 'You are exhausted.') return false end local tilepos1 = {x=32910, y=32339, z=15} local tilepos2 = {x=32911, y=32339, z=15} local tilepos3 = {x=32910, y=32338, z=15} local tilepos4 = {x=32911, y=32338, z=15} if player:getItemCount(2147) >= 1 and pos.x == tilepos1.x or pos.x == tilepos2.x and pos.y == tilepos1.y or pos.y == tilepos3.y and pos.z == tilepos1.z then player:removeItem(2147, 1) player:teleportTo(Position(33586,32263, 7)) player:getPosition():sendMagicEffect(CONST_ME_MAGIC_RED) end player:setStorageValue(Storage.Exaust.Time, os.time()) return true end Até mais! Editado Junho 7, 2019 6 anos por d0gw4r (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.