Ir para conteúdo
  • 0

Carpet Sumindo Após Reiniciar o Servidor


jeffinhotop

Pergunta

local object_itemid = {

[16487] = {transform_to = 16488, premium = true, useWith=true},
[16488] = {transform_to = 16487, premium = true, useWith=false},

[16490] = {transform_to = 16491, premium = true, useWith=true},
[16491] = {transform_to = 16490, premium = true, useWith=false},

[16493] = {transform_to = 16494, premium = true, useWith=true},
[16494] = {transform_to = 16493, premium = true, useWith=false},

[16496] = {transform_to = 16497, premium = true, useWith=true},
[16497] = {transform_to = 16496, premium = true, useWith=false},

[16499] = {transform_to = 16500, premium = true, useWith=true},
[16500] = {transform_to = 16499, premium = true, useWith=false},

[16502] = {transform_to = 16503, premium = true, useWith=true},
[16503] = {transform_to = 16502, premium = true, useWith=false},

[16505] = {transform_to = 16506, premium = true, useWith=true},
[16506] = {transform_to = 16505, premium = true, useWith=false},

[16508] = {transform_to = 16509, premium = true, useWith=true},
[16509] = {transform_to = 16508, premium = true, useWith=false},

[16511] = {transform_to = 16512, premium = true, useWith=true},
[16512] = {transform_to = 16511, premium = true, useWith=false},

[16514] = {transform_to = 16515, premium = true, useWith=true},
[16515] = {transform_to = 16514, premium = true, useWith=false},

[16517] = {transform_to = 16518, premium = true, useWith=true},
[16518] = {transform_to = 16517, premium = true, useWith=false},

[16520] = {transform_to = 16521, premium = true, useWith=true},
[16521] = {transform_to = 16520, premium = true, useWith=false},

[16523] = {transform_to = 16524, premium = true, useWith=true},
[16524] = {transform_to = 16523, premium = true, useWith=false},

[16526] = {transform_to = 16527, premium = true, useWith=true},
[16527] = {transform_to = 16526, premium = true, useWith=false},

[16529] = {transform_to = 16530, premium = true, useWith=true},
[16530] = {transform_to = 16529, premium = true, useWith=false},

[16532] = {transform_to = 16533, premium = true, useWith=true},
[16533] = {transform_to = 16532, premium = true, useWith=false},

[16535] = {transform_to = 16536, premium = true, useWith=true},
[16536] = {transform_to = 16535, premium = true, useWith=false},

[16538] = {transform_to = 16539, premium = true, useWith=true},
[16539] = {transform_to = 16538, premium = true, useWith=false},

[16541] = {transform_to = 16542, premium = true, useWith=true},
[16542] = {transform_to = 16541, premium = true, useWith=false},

[16163] = {transform_to = 16164, premium = true, useWith=true},
[16164] = {transform_to = 16163, premium = true, useWith=false},

[16165] = {transform_to = 16166, premium = true, useWith=true},
[16166] = {transform_to = 16165, premium = true, useWith=false},

[16167] = {transform_to = 16168, premium = true, useWith=true},
[16168] = {transform_to = 16167, premium = true, useWith=false},

[16169] = {transform_to = 16170, premium = true, useWith=true},
[16170] = {transform_to = 16169, premium = true, useWith=false},

[16171] = {transform_to = 16172, premium = true, useWith=true},
[16172] = {transform_to = 16171, premium = true, useWith=false},

[16173] = {transform_to = 16174, premium = true, useWith=true},
[16174] = {transform_to = 16173, premium = true, useWith=false},

[16185] = {transform_to = 16186, premium = true, useWith=true},
[16186] = {transform_to = 16185, premium = true, useWith=false},

[16187] = {transform_to = 16188, premium = true, useWith=true},
[16188] = {transform_to = 16187, premium = true, useWith=false},

[16189] = {transform_to = 16190, premium = true, useWith=true},
[16190] = {transform_to = 16189, premium = true, useWith=false},

[16191] = {transform_to = 16192, premium = true, useWith=true},
[16192] = {transform_to = 16191, premium = true, useWith=false},


[16455] = {transform_to = 16456, premium = true, useWith=true},
[16456] = {transform_to = 16455, premium = true, useWith=false},

[16457] = {transform_to = 16458, premium = true, useWith=true},
[16458] = {transform_to = 16457, premium = true, useWith=false},

[16461] = {transform_to = 16462, premium = true, useWith=true},
[16462] = {transform_to = 16461, premium = true, useWith=false},




}
function onUse(cid, item, frompos, item2, topos)
    local storage = 789561
    local time = 1
    
    local sendEffect = true -- true or false
    local EffectId = 1
    
    local item_from_table = object_itemid[item.itemid]
    
    if exhaustion.check(cid, storage) then
        return false
    end
    
    if item_from_table then
    if getPlayerGroupId(cid) == 1 then
        if item_from_table.premium and not isPremium(cid) then
            return true and doPlayerSendCancel(cid, "Voce nao e vip.")
        end
		end
        doRemoveItem(item.uid,1)
        if item_from_table.useWith then
            doCreateItem(item_from_table.transform_to,1,topos)
        else
            doCreateItem(item_from_table.transform_to,1,frompos)
        end
        if sendEffect then
            doSendMagicEffect(getThingPos(cid), EffectId)
        end
    end
    
    return true and exhaustion.set(cid,storage,time)
end

Este é o Script, o que ocorre é que sempre que reinicia o servidor os carpets somem, pelo que percebi quando o carpet é colocado no piso esta acontecendo como se fosse uma alteração de mapa e não como decoração sobre o piso atual.. e por isso quando reinicia o servidor eles somem.. como qualquer outra alteração de mapa com jogo online.. por favor alguém pode ajudar?

carpet.jpg

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0


Parece que o problema está relacionado ao fato de que os carpets estão sendo tratados como uma alteração no mapa em vez de decoração sobre o piso existente. Para corrigir isso, você pode modificar o script para garantir que os carpets sejam criados como decoração sobre o piso existente. Aqui está uma versão modificada do seu script que deve resolver o problema:

 

local object_itemid = {
    -- Defina os IDs dos itens e suas transformações correspondentes aqui
}

function onUse(cid, item, frompos, item2, topos)
    local storage = 789561
    local time = 1
    
    local sendEffect = true -- true ou false
    local EffectId = 1
    
    local item_from_table = object_itemid[item.itemid]
    
    if exhaustion.check(cid, storage) then
        return false
    end
    
    if item_from_table then
        if getPlayerGroupId(cid) == 1 then
            if item_from_table.premium and not isPremium(cid) then
                return true and doPlayerSendCancel(cid, "Voce nao e vip.")
            end
        end
        
        -- Verifica se o carpet será criado no local do player (useWith = true) ou na posição do item (useWith = false)
        local position = item_from_table.useWith and topos or frompos
        
        -- Cria o carpet como decoração sobre o piso existente
        local carpet = doCreateItem(item_from_table.transform_to, 1, position)
        
        -- Verifica se o efeito deve ser enviado
        if sendEffect then
            doSendMagicEffect(position, EffectId)
        end
        
        -- Remove o item usado para criar o carpet
        doRemoveItem(item.uid, 1)
    end
    
    return true and exhaustion.set(cid, storage, time)
end

Nesta versão modificada, o carpet é criado na posição do jogador se useWith for verdadeiro e na posição do item se for falso. Isso deve garantir que os carpets sejam tratados como decoração sobre o piso existente, em vez de uma alteração no mapa, e devem persistir após o reinício do servidor. 

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...