Ir para conteúdo
  • 0

erro na distro ao usar vial of blood na POI


brunonyyu

Pergunta

Olá Bom dia, pessoal estou com um probleminha no servidor, ao iniciar a quest Pits of Inferno, jogando o sangue em cima do gravestone, ele teletransporta meu personagem corretamente, mas gera um erro na distro: Error- Action Interface
Data/actions/scripts/Liquids/containers.lua:onUse
Description:
<luaDoDecayItem> Item not found
  

Movements.xml

 

<movement type="AddItem" tileitem="1" uniqueid="50010" event="script" value="PitsOfInferno/gravestone.lua" />

Script Gravestone

Citar

function onAddItem(moveitem, tileitem, pos)
newpos = {x = 32791, y = 32332, z = 10}
cidtile1 = {x=pos.x, y=pos.y+1, z=pos.z, stackpos=253}
cidtile2 = {x=pos.x+1, y=pos.y+1, z=pos.z, stackpos=253}
cid1 = getThingfromPos(cidtile1)
cid2 = getThingfromPos(cidtile2)

if tileitem.uid == 50010 then
       if moveitem.itemid == 2016 and moveitem.type == 2 and cid1.uid > 0 and cid2.uid ~= cid1.uid then
      doRemoveItem(moveitem.uid, 1)
      doSendMagicEffect(pos,13)
      doTeleportThing(cid1.uid,newpos)
      doSendMagicEffect(newpos,10)
      
elseif tileitem.uid == 50010 then
       if moveitem.itemid == 2016 and moveitem.type == 2 and cid1.uid ~= cid2.uid and cid2.uid > 0 then
      doRemoveItem(moveitem.uid, 1)
      doSendMagicEffect(pos,13)
      doTeleportThing(cid2.uid,newpos)
      doSendMagicEffect(newpos,10)
      
else
doSendMagicEffect(pos,2)
doRemoveItem(moveitem.uid, 1)

end
end
end
end

 

Containers

Citar

local DISTILLERY = {5513, 5514, 5469, 5470}

local ITEM_RUM_FLASK = 5553

local ITEM_POOL = 2016


local TYPE_EMPTY = 0

local TYPE_WATER = 1

local TYPE_BLOOD = 2

local TYPE_BEER = 3

local TYPE_SLIME = 4

local TYPE_MANA_FLUID = 7

local TYPE_LIFE_FLUID = 10

local TYPE_OIL = 11

local TYPE_WINE = 15

local TYPE_MUD = 19

local TYPE_LAVA = 26

local TYPE_RUM = 27

local TYPE_SWAMP = 28


local oilLamps = {[2046] = 2044}
local casks = {[1771] = TYPE_WATER, [1772] = TYPE_BEER, 
[1773] = TYPE_WINE, [1369] = TYPE_WATER, [1368] = TYPE_WATER}

local alcoholDrinks = {TYPE_BEER, TYPE_WINE, TYPE_RUM}

local poisonDrinks = {TYPE_SLIME, TYPE_SWAMP}


local drunk = createConditionObject(CONDITION_DRUNK)

setConditionParam(drunk, CONDITION_PARAM_TICKS, 60000)


local poison = createConditionObject(CONDITION_POISON)

setConditionParam(poison, CONDITION_PARAM_DELAYED, true)

setConditionParam(poison, CONDITION_PARAM_MINVALUE, -50)

setConditionParam(poison, CONDITION_PARAM_MAXVALUE, -120)
setConditionParam(poison, CONDITION_PARAM_STARTVALUE, -5)

setConditionParam(poison, CONDITION_PARAM_TICKINTERVAL, 4000) 

setConditionParam(poison, CONDITION_PARAM_FORCEUPDATE, true)  


local exhaust = createConditionObject(CONDITION_EXHAUST)

setConditionParam(exhaust, CONDITION_PARAM_TICKS, (getConfigInfo('timeBetweenExActions') - 100))

function onUse(cid, item, fromPosition, itemEx, toPosition)
    
if(itemEx.uid == cid) then
        
if(item.type == TYPE_EMPTY) then
            
doPlayerSendCancel(cid, "It is empty.")
            
return true
        
end

        
if(item.type == TYPE_MANA_FLUID) then
            
if(hasCondition(cid, CONDITION_EXHAUST_HEAL)) then
                
doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED)
                
return true
            
end

            
if(not doPlayerAddMana(cid, math.random(80, 160))) then
                
return false
            
end

            
doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1)
            
doSendMagicEffect(toPosition, CONST_ME_MAGIC_BLUE)
            
doAddCondition(cid, exhaust)
        
elseif(item.type == TYPE_LIFE_FLUID) then
            
if(hasCondition(cid, CONDITION_EXHAUST_HEAL)) then
                
doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED)
                
return true
            
end

            
if(not doCreatureAddHealth(cid, math.random(40, 75))) then
                
return false
            
end

            
doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1)
            
doSendMagicEffect(toPosition, CONST_ME_MAGIC_BLUE)
            
doAddCondition(cid, exhaust)
        
elseif(isInArray(alcoholDrinks, item.type)) then
            
if(not doTargetCombatCondition(0, cid, drunk, CONST_ME_NONE)) then
                
return false
            
end

            
doCreatureSay(cid, "Aaah...", TALKTYPE_ORANGE_1)
        
elseif(isInArray(poisonDrinks, item.type)) then
            
if(not doTargetCombatCondition(0, cid, poison, CONST_ME_NONE)) then
                
return false
            
end

            
doCreatureSay(cid, "Urgh!", TALKTYPE_ORANGE_1)
    
else
            
doCreatureSay(cid, "Gulp.", TALKTYPE_ORANGE_1)
        
end

        
doChangeTypeItem(item.uid, TYPE_EMPTY)
        
return true
    
end

    
if(not isCreature(itemEx.uid)) then
        
if(item.type == TYPE_EMPTY) then
            
if(item.itemid == ITEM_RUM_FLASK and isInArray(DISTILLERY, itemEx.itemid)) then
                
if(itemEx.actionid == 100) then
                    
doItemEraseAttribute(itemEx.uid, "description")
                    
doItemEraseAttribute(itemEx.uid, "aid")
                    
doChangeTypeItem(item.uid, TYPE_RUM)
                
else
                    
doPlayerSendCancel(cid, "You have to process the bunch into the distillery to get rum.")
                
end
                
return true
            
end

            
if(isItemFluidContainer(itemEx.itemid) and itemEx.type ~= TYPE_EMPTY) then
                
doChangeTypeItem(item.uid, itemEx.type)
                
doChangeTypeItem(itemEx.uid, TYPE_EMPTY)
                
return true
            
end

            
if(casks[itemEx.itemid] ~= nil) then
                
doChangeTypeItem(item.uid, casks[itemEx.itemid])
                
return true
            
end

            
local fluidEx = getFluidSourceType(itemEx.itemid)
            
if(fluidEx ~= false) then
                
doChangeTypeItem(item.uid, fluidEx)
                
return true
            
end

            
doPlayerSendCancel(cid, "It is empty.")
            
return true
        
end

        
if(item.type == TYPE_OIL and oilLamps[itemEx.itemid] ~= nil) then
            
doTransformItem(itemEx.uid, oilLamps[itemEx.itemid])
            
doChangeTypeItem(item.uid, TYPE_NONE)
            
return true
        
end

        
if(hasProperty(itemEx.uid, CONST_PROP_BLOCKSOLID)) then
            
return false
        
end
    
end

    
doDecayItem(doCreateItem(ITEM_POOL, item.type, toPosition))
    
doChangeTypeItem(item.uid, TYPE_EMPTY)
    
return true

end
 

 

 

 

 

Editado por brunonyyu
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...