Ir para conteúdo
  • 0

[ Spells ] Potions


Pergunta

3 respostass a esta questão

Posts Recomendados

  • 0

eu acho que é isso veja se da certo.

 

OBS:creditos não são meus.

 

Crie um arquivo chamado Potions.lua na pasta data/actions/scripts e coloque:

 

local ultimateHealthPot = 8473

local greatHealthPot = 7591

local greatManaPot = 7590

local greatSpiritPot = 8472

local strongHealthPot = 7588

local strongManaPot = 7589

local healthPot = 7618

local manaPot = 7620

 

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

if itemEx.uid ~= cid or itemEx.itemid ~= 1 then

return TRUE

end

 

if(item.itemid == healthPot) then

if(doTargetCombatHealth(0, cid, COMBAT_HEALING, 100, 200, CONST_ME_MAGIC_BLUE) == LUA_ERROR) then

return FALSE

end

doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1)

 

elseif(item.itemid == manaPot) then

if(doTargetCombatMana(0, cid, 70, 130, CONST_ME_MAGIC_BLUE) == LUA_ERROR) then

return FALSE

end

doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1)

 

elseif(item.itemid == strongHealthPot) then

if (not(isKnight(cid) or isPaladin(cid)) or (getPlayerLevel(cid) < 50)) and not(getPlayerGroupId(cid) >= 2) then

doCreatureSay(cid, "This potion can only be consumed by paladins and knights of level 50 or higher.", TALKTYPE_ORANGE_1)

return TRUE

end

 

if(doTargetCombatHealth(0, cid, COMBAT_HEALING, 200, 400, CONST_ME_MAGIC_BLUE) == LUA_ERROR) then

return FALSE

end

doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1)

 

 

elseif(item.itemid == strongManaPot) then

if (not(isSorcerer(cid) or isDruid(cid) or isPaladin(cid)) or (getPlayerLevel(cid) < 50)) and not(getPlayerGroupId(cid) >= 2) then

doCreatureSay(cid, "This potion can only be consumed by sorcerers, druids and paladins of level 50 or higher.", TALKTYPE_ORANGE_1)

return TRUE

end

 

if(doTargetCombatMana(0, cid, 110, 190, CONST_ME_MAGIC_BLUE) == LUA_ERROR) then

return FALSE

end

doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1)

 

elseif(item.itemid == greatSpiritPot) then

if (not(isPaladin(cid)) or (getPlayerLevel(cid) < 80)) and not(getPlayerGroupId(cid) >= 2) then

doCreatureSay(cid, "This potion can only be consumed by paladins of level 80 or higher.", TALKTYPE_ORANGE_1)

return TRUE

end

 

if(doTargetCombatHealth(0, cid, COMBAT_HEALING, 200, 400, CONST_ME_MAGIC_BLUE) == LUA_ERROR or doTargetCombatMana(0, cid, 110, 190, CONST_ME_MAGIC_BLUE) == LUA_ERROR) then

return FALSE

end

doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1)

 

elseif(item.itemid == greatHealthPot) then

if (not(isKnight(cid)) or (getPlayerLevel(cid) < 80)) and not(getPlayerGroupId(cid) >= 2) then

doCreatureSay(cid, "This potion can only be consumed by knights of level 80 or higher.", TALKTYPE_ORANGE_1)

return TRUE

end

 

if(doTargetCombatHealth(0, cid, COMBAT_HEALING, 500, 700, CONST_ME_MAGIC_BLUE) == LUA_ERROR) then

return FALSE

end

doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1)

 

elseif(item.itemid == greatManaPot) then

if (not(isSorcerer(cid) or isDruid(cid)) or (getPlayerLevel(cid) < 80)) and not(getPlayerGroupId(cid) >= 2) then

doCreatureSay(cid, "This potion can only be consumed by sorcerers and druids of level 80 or higher.", TALKTYPE_ORANGE_1)

return TRUE

end

 

if(doTargetCombatMana(0, cid, 200, 300, CONST_ME_MAGIC_BLUE) == LUA_ERROR) then

return FALSE

end

doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1)

 

elseif(item.itemid == ultimateHealthPot) then

if (not(isKnight(cid)) or (getPlayerLevel(cid) < 130)) and not(getPlayerGroupId(cid) >= 2) then

doCreatureSay(cid, "This potion can only be consumed by knights of level 130 or higher.", TALKTYPE_ORANGE_1)

return TRUE

end

 

if(doTargetCombatHealth(0, cid, COMBAT_HEALING, 800, 1000, CONST_ME_MAGIC_BLUE) == LUA_ERROR) then

return FALSE

end

doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1)

 

 

Agora na pasta data/actions, abra o actions.xml e adicione as seguintes linhas:

 

<action itemid="7588" script="potions.lua" />

<action itemid="7589" script="potions.lua" />

<action itemid="7590" script="potions.lua" />

<action itemid="7591" script="potions.lua" />

<action itemid="7618" script="potions.lua" />

<action itemid="7620" script="potions.lua" />

<action itemid="7618" script="potions.lua" />

<action itemid="7620" script="potions.lua" />

<action itemid="8472" script="potions.lua" />

<action itemid="8473" script="potions.lua" />

 

espero ter ajudado.

Link para o comentário
https://xtibia.com/forum/topic/132939-spells-potions/#findComment-875595
Compartilhar em outros sites

  • 0

NNNNNNNNNN DEU ARRUMA SERTINHO PRA MIN TIPO UZO OT STYLLER TEM UM MONTE DE PORRA DE PASTA EDITAÇÃO DO XML NOSSA ME DEIXA LOCAAA!

 

 

USAHUSHAUSHA, VLW SE COMSEGUI ARRUMA PRA EU

Link para o comentário
https://xtibia.com/forum/topic/132939-spells-potions/#findComment-875622
Compartilhar em outros sites

  • 0

outro jeito também, é ir até

Data>Actions>Scripts>liquids

e abrir os arquivos.lua das potions que você quer deixar infinitas,então você remove essa parte:

 

doTransformItem(item.uid, EMPTY_POTION)

 

Pronto,depois disso elas ficarão infinitas (:

Link para o comentário
https://xtibia.com/forum/topic/132939-spells-potions/#findComment-875728
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

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