Olá! Isso acontece porque cada depot no Tibia é vinculado a uma determinada "town" (cidade). Quando você coloca um depot em uma house, ele é tratado como um novo depot separado do depot original localizado no CP (temple) da cidade.
Para resolver esse problema, você precisará garantir que ambos os depots (o da house e o do CP) estejam vinculados à mesma "town ID" e que eles compartilhem a mesma "depot ID"
-
Verifique a Town ID:
-
Certifique-se de que a "town ID" do depot na house seja a mesma do depot original no CP. Essa informação geralmente está definida no arquivo
map
ou no código da script que cria o depot.
-
Vincule o Depot ID:
-
Verifique o
depotid
do depot da house e do depot no CP. Ambos precisam compartilhar o mesmo depotid
para que os itens sejam acessíveis de qualquer um dos depots.
-
Scripts e Configurações:
Em alguns casos, pode ser necessário ajustar o código do servidor para garantir que os depots compartilhem o mesmo inventário. Dependendo do código do servidor, você pode precisar revisar as funções que lidam com a criação e gestão de depots para garantir que eles estejam corretamente sincronizados.
-
Outra opção é criar ou modificar um script LUA que faz a checagem e sincronização entre os depots. Isso pode ser feito no evento de abertura do depot, onde você sincroniza os itens entre os depots do CP e da casa do jogador.
Um exemplo básico de script:
local function syncDepots(player)
local mainDepot = player:getDepot(1) -- CP depot ID
local houseDepot = player:getDepot(2) -- House depot ID (ajuste conforme o ID do depot na casa)
-- Sincroniza itens do depot da casa com o CP
for i = 0, houseDepot:getCapacity() - 1 do
local item = houseDepot:getItem(i)
if item then
mainDepot:addItemEx(item)
end
end
end
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
syncDepots(player)
-- Continuar a lógica normal de abrir o depot...
end