Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

Potions com cargas


suportec5
 Compartilhar

Posts Recomendados

Bom dia!

Tenho visto, que muitos usuarios procuram tutoriais de como deixar as potions infinitas ou com charges por exemplo.

Espero que este tutorial, solucione.

 

Primeiro passo:

 

data\actions\scripts\liquids e abra potions.lua

Apague tudo, e cole este código:

 

local config = {

realAnimation = true, -- make text effect visible only for players in range 1x1

healthMultiplier = 1.0,

manaMultiplier = 1.0

}

 

local POTIONS = {

[8704] = {charges = 100, splash = 2, health = {50, 100}}, -- small health potion

[7618] = {charges = 100, splash = 2, health = {100, 200}}, -- health potion

[7588] = {charges = 100, splash = 2, health = {200, 400}, level = 50, vocations = {3, 4, 7, 8, 12, 11}, vocStr = "knights and paladins"}, -- strong health potion

[7591] = {charges = 100, splash = 2, health = {500, 700}, level = 80, vocations = {4, 8, 12}, vocStr = "knights"}, -- great health potion

[8473] = {charges = 100, splash = 2, health = {800, 1000}, level = 130, vocations = {4, 8, 12}, vocStr = "knights"}, -- ultimate health potion

 

[7620] = {charges = 100, splash = 7, mana = {70, 130}}, -- mana potion

[7589] = {charges = 100, splash = 7, mana = {110, 190}, level = 50, vocations = {1, 2, 3, 5, 6, 7, 9, 10, 11}, vocStr = "sorcerers, druids and paladins"}, -- strong mana potion

[7590] = {charges = 100, splash = 7, mana = {200, 300}, level = 80, vocations = {1, 2, 5, 6, 9, 10}, vocStr = "sorcerers and druids"}, -- great mana potion

 

[8472] = {charges = 100, splash = 3, health = {200, 400}, mana = {110, 190}, level = 80, vocations = {3, 7, 11}, vocStr = "paladins"} -- great spirit potion

}

 

local exhaust = createConditionObject(CONDITION_EXHAUST)

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

 

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

local potion = POTIONS[item.itemid]

if(not potion or not isPlayer(itemEx.uid)) then

return false

end

 

if(hasCondition(cid, CONDITION_EXHAUST_HEAL)) then

return doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED)

end

 

if(((potion.level and getPlayerLevel(cid) < potion.level) or (potion.vocations and not isInArray(potion.vocations, getPlayerVocation(cid)))) and not getPlayerCustomFlagValue(cid, PlayerCustomFlag_GamemasterPrivileges)) then

return doCreatureSay(itemEx.uid, "Only " .. potion.vocStr .. (potion.level and (" of level " .. potion.level) or "") .. " or above may drink this fluid.", TALKTYPE_ORANGE_1)

end

 

local health = potion.health

if(health and not doCreatureAddHealth(itemEx.uid, math.ceil(math.random(health[1], health[2]) * config.healthMultiplier))) then

return false

end

 

local mana = potion.mana

if(mana and not doPlayerAddMana(itemEx.uid, math.ceil(math.random(mana[1], mana[2]) * config.manaMultiplier))) then

return false

end

 

doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_MAGIC_BLUE)

if(not realAnimation) then

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

else

for i, tid in ipairs(getSpectators(getCreaturePosition(cid), 1, 1)) do

if(isPlayer(tid)) then

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

end

end

end

 

doAddCondition(cid, exhaust)

 

doItemSetAttribute(item.uid, 'aid', math.max(101, item.actionid + 1))

doItemSetAttribute(item.uid, 'description', 'Charges: ' .. 100 + potion.charges - getItemAttribute(item.uid, 'aid'))

if item.actionid >= 100 + potion.charges then

doRemoveItem(item.uid)

end

return true

end

 

Segundo passo, vá até data\items , e abra o items.xml

Procure por :

 

- Great Mana Potion.

- Great Health Potion.

- Great Spirit Potion.

- Ultimate Health Potion.

- Strong Mana Potion.

- Strong Health Potion.

- Mana Potion.

- Heath potion.

 

Acresente essas linhas nas potions.

Após:

<attribute key="weight" value="220" />

 

Acresente Isso:

<attribute key="charges" value="100"/>

<attribute key="showCharges" value="1"/>

 

Porém só vai aparecer as charges quando der look na potion.

Exemplo:

You see a great mana potion that has 100 charges left.

It weighs 2.20 oz.

This potion can only be consumed by sorcerers and druids of level 80 or higher.

 

Espero que ajude.

Quaisquer dúvidas posteriores, contate-me.

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.