ME

Pot Agrupavel Sem Bug.

Por meromeromei, 19 de mar. de 2011 em Archived

otserv
tibia
4
1.2k
meromeromeiM
19 de março de 2011 às 13:30

Olá lekada do :XTibia_smile:

Estou com um problema,tenho o sistema de pots agrupaveis.

até aí ótimo,mas elas nao agrupam automaticamente.

Assim...

Eu uso e cada uma das empty flask vão ocupando slots separados na bp.

Isso da muuuuuuuuuuuuuuuuuuuuuuuuito trabalho porque eu mato um demon e perco uns 40 segundos jogando empty flask no chão.

 

keria um que agrupasse sozinho.

alguem ajuda ?

beto06B
19 de março de 2011 às 18:06

Olha, dá um pequeno trabalho.

Vá em data/actions/liquids/, lá vai ter todas as potions e teremos que editar uma por uma.

Comece por qualquer uma.

Se seu server for o Styller 8.60, provavelmente terá no fim de todos os arquivos das potions o seguinte:

	doAddCondition(cid, exhaust)
doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_MAGIC_BLUE)
doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_ORANGE_1)
doTransformItem(item.uid, EMPTY_POTION)
return TRUE
end

Ok, se estiver assim, embaixo de doCreatureSay..., adicione o seguinte:

	doRemoveItem(item.uid, 1)
   doPlayerAddItem(cid, EMPTY_POTION, 1)
   pot_count = getPlayerItemCount(cid, EMPTY_POTION) 
   doPlayerRemoveItem(cid, EMPTY_POTION, pot_count) 
   doPlayerAddItem(cid, EMPTY_POTION, pot_count) 
   return TRUE 
end

Ficando por exemplo, o health_potion.lua:

 

local MIN = 100

local MAX = 200

local EMPTY_POTION = 7636

 

local exhaust = createConditionObject(CONDITION_EXHAUST)

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

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

if isPlayer(itemEx.uid) == FALSE then

return FALSE

end

 

if hasCondition(cid, CONDITION_EXHAUST_HEAL) == TRUE then

doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED)

return TRUE

end

 

if doCreatureAddHealth(itemEx.uid, math.random(MIN, MAX)) == LUA_ERROR then

return FALSE

end

 

doAddCondition(cid, exhaust)

doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_MAGIC_BLUE)

doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_ORANGE_1)

doRemoveItem(item.uid, 1)

doPlayerAddItem(cid, EMPTY_POTION, 1)

pot_count = getPlayerItemCount(cid, EMPTY_POTION)

doPlayerRemoveItem(cid, EMPTY_POTION, pot_count)

doPlayerAddItem(cid, EMPTY_POTION, pot_count)

return TRUE

end

 

Faça em todas. Caso funcionar REP+?

Não lembro de onde retirei, portanto se aparecer tal pessoa colocarei os devidos créditos.

Obs: Aqui funciona legal.

Editado Julho 16 por Beto06

meromeromeiM
19 de março de 2011 às 20:16

nossa mano,eu te amo :wubsmiley:

HUSAHUSAHUASUH'

rep+++

hoje ja dei rep,relaxa que as tres proximas são suas.

Muito obrigado.

Editado Março 20 por meromeromei

beto06B
20 de março de 2011 às 13:02

Opa, de nadz!