Ir para conteúdo
  • Cadastre-se

(Resolvido)[Ajuda] doTransformItem (item not found)


Ir para solução Resolvido por dominus,

Posts Recomendados

Server 8.6

 

Estou editando um server de pokemon...

Tava tudo uma maravilha... até colocar a merda da porta da pxg...

gbQn4DF.png

 

O script funciona certinho mais da esse bug no console

 

Script

Spoiler

local config = {
    delay = 100,                                  --Intervalo de tempo entre as "transformações" da porta, em milésimos.
    door = {11689, 11688, 11687},                       --{ID da porta fechada, ID da porta aberta pela metade, ID da porta aberta},
    ids = {
        [58221] = {                               --[action_id] = {
            {x = 812, y = 887, z = 7},         --Posições das portas.
            {x = 812, y = 887, z = 7},
        },
        [58224] = {                               --[action_id] = {
            {x = 1036, y = 1017, z = 7},         --Posições das portas.
            {x = 1036, y = 1017, z = 7},
        },
        [58225] = {                               --[action_id] = {
            {x = 826, y = 1104, z = 7},         --Posições das portas.
            {x = 826, y = 1104, z = 7},
        },
        [58226] = {                               --[action_id] = {
            {x = 741, y = 809, z = 6},         --Posições das portas.
            {x = 741, y = 809, z = 6},
        },
        [58227] = {                               --[action_id] = {
            {x = 1665, y = 1460, z = 7},         --Posições das portas.
            {x = 1665, y = 1460, z = 7},
        },
        [58228] = {                               --[action_id] = {
            {x = 1148, y = 1044, z = 7},         --Posições das portas.
            {x = 1148, y = 1044, z = 7},
        },
        [58229] = {                               --[action_id] = {
            {x = 1218, y = 1043, z = 6},         --Posições das portas.
            {x = 1218, y = 1043, z = 6},
        },
        [58230] = {                               --[action_id] = {
            {x = 1793, y = 1586, z = 7},         --Posições das portas.
            {x = 1793, y = 1586, z = 7},
        },
        [58231] = {                               --[action_id] = {
            {x = 1918, y = 1498, z = 7},         --Posições das portas.
            {x = 1918, y = 1498, z = 7},
        },
        [58232] = {                               --[action_id] = {
            {x = 721, y = 373, z = 13},         --Posições das portas.
            {x = 721, y = 373, z = 13},
        },
    },
}
function onStepIn(cid, item, position, fromPosition)
    if config.ids[item.actionid] then
        for _, pos in pairs(config.ids[item.actionid]) do
            if getTileItemById(pos, config.door[1]).uid > 0 then
                for i = 1, 2 do
                    addEvent(function()
                        doTransformItem(getTileItemById(pos, i == 1 and config.door[1] or config.door[2]).uid, config.door[i + 1])
                    end, i * config.delay)
                end
            end
        end
    end
    return true
end
function onStepOut(cid, item, position, fromPosition)
    if config.ids[item.actionid] then
        for _, pos in pairs(config.ids[item.actionid]) do
            local it = getTileItemById(pos, config.door[3]).uid
            if it > 0 then
                if getSpectators(pos, 1, 1) then
                    return true
                end
            end
        end
        for _, pos in pairs(config.ids[item.actionid]) do
            if getTileItemById(pos, config.door[3]).uid > 0 then
                for i = 1, 2 do
                    addEvent(function()
                        doTransformItem(getTileItemById(pos, i == 1 and config.door[3] or config.door[2]).uid, config.door[i == 1 and 2 or 1])
                    end, i * config.delay)
                end
            end
        end
    end
    return true
end

 

Editado por Thiago Rulexz (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Substitui isso:

Citar

addEvent(function()
                        doTransformItem(getTileItemById(pos, i == 1 and config.door[1] or config.door[2]).uid, config.door[i + 1])
                    end, i * config.delay)

 

 

Por isto:

Citar

addEvent(function(pos, itemid, id)
                        doTransformItem(getTileItemById(pos, itemid).uid, id)
                    end, i * config.delay,pos,config.door[i ], config.door [i+1])

 Caso não aparece os cochetes ponha na sentença config.door[ cochetes contendo a variável i] 

toda vez que se põe cochetes junto com a letra "i" o site do tk entendo como uma sentença de itálico. 

Editado por dominus
Problema com a senteca cochetes com letra i (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

O erro persiste e agr nem a porta abre apsokaoska

 

8LjvPQl.png

Link para o post
Compartilhar em outros sites

Esta vendo que na 1 ft a porta está aberta?

e na 2 ela está fechada?

é como se fosse uma animação.... (igual a porta do cp da pxg)

ele está funcionando 100% mais ta dando o erro no console =/

Link para o post
Compartilhar em outros sites
  • Solução

Por que que no script existe 2 posições repetidas em todas as tabelas?

Citar

58221] = {                               --[action_id] = {
            {x = 812, y = 887, z = 7},         --Posições das portas.
            {x = 812, y = 887, z = 7},

 

Editado por dominus (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

eu moscando aqui nem vi que repetia :X

VLw man

Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo