Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Potion esta infinita, ja mechi no config lua e nao consigo arrumar, ajuda por favor?
local config = {
-- strong health potion
[7588] = {health = {250, 350}, vocations = {3, 4}, text = 'paladins and knights', level = 50, emptyId = 7634},
-- strong mana potion
[7589] = {mana = {115, 185}, vocations = {1, 2, 3}, text = 'sorcerers, druids and paladins', level = 50, emptyId = 7634},
-- great mana potion
[7590] = {mana = {150, 250}, vocations = {1, 2}, text = 'sorcerers and druids', level = 80, emptyId = 7635},
-- great health potion
[7591] = {health = {425, 575}, vocations = {4}, text = 'knights', level = 80, emptyId = 7635},
-- health potion potion
[7618] = {health = {125, 175}, emptyId = 7636},
-- mana potion potion
[7620] = {mana = {75, 125}, emptyId = 7636},
-- great spirit potion
[8472] = {health = {250, 350}, mana = {100, 200}, vocations = {3}, text = 'paladins', level = 80, emptyId = 7635},
-- ultimate health potion
[8473] = {health = {650, 850}, vocations = {4}, text = 'knights', level = 130, emptyId = 7635},
-- antidote potion
[8474] = {antidote = true, emptyId = 7636},
-- small health potion
[8704] = {health = {60, 85}, emptyId = 7636}
}

local antidote = Combat()
antidote:setParameter(COMBAT_PARAM_TYPE, COMBAT_HEALING)
antidote:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
antidote:setParameter(COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
antidote:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
antidote:setParameter(COMBAT_PARAM_DISPEL, CONDITION_POISON)

local exhaust = Condition(CONDITION_EXHAUST_HEAL)
exhaust:setParameter(CONDITION_PARAM_TICKS, (configManager.getNumber(configKeys.EX_ACTIONS_DELAY_INTERVAL) - 100))
-- 1000 - 100 due to exact condition timing. -100 doesn't hurt us, and players don't have reminding ~50ms exhaustion.

function onUse(cid, item, fromPosition, itemEx, toPosition)
local potion = config[item.itemid]
if not potion then
return true
end

if itemEx.itemid ~= 1 or itemEx.type ~= THING_TYPE_PLAYER then
return true
end

local player = Player(cid)
if player:getCondition(CONDITION_EXHAUST_HEAL) then
player:sendTextMessage(MESSAGE_STATUS_SMALL, Game.getReturnMessage(RETURNVALUE_YOUAREEXHAUSTED))
return true
end

if potion.antidote and not antidote:execute(itemEx.uid, Variant(itemEx.uid)) then
return false
end

if (potion.level and player:getLevel() < potion.level)
or (type(potion.vocations) == 'table' and not isInArray(potion.vocations, player:getVocation():getBase():getId()))
and not (player:getGroup():getId() >= 2) then
player:say(string.format('This potion can only be consumed by %s of level %d or higher.', potion.text, potion.level), TALKTYPE_MONSTER_SAY)
return true
end

if type(potion.health) == 'table' and not doTargetCombatHealth(0, itemEx.uid, COMBAT_HEALING, potion.health[1], potion.health[2], CONST_ME_MAGIC_BLUE) then
return false
end

if type(potion.mana) == 'table' and not doTargetCombatMana(0, itemEx.uid, potion.mana[1], potion.mana[2], CONST_ME_MAGIC_BLUE) then
return false
end

local cStorage = player:getStorageValue(Storage.Achievements.PotionAddict)
if cStorage < 100000 then
player:setStorageValue(Storage.Achievements.PotionAddict, math.max(1, cStorage) + 1)
elseif cStorage == 100000 then
player:addAchievement('Potion Addict')
player:setStorageValue(Storage.Achievements.PotionAddict, 100001)
end

doCreatureSayWithRadius(itemEx.uid, 'Aaaah...', TALKTYPE_MONSTER_SAY, 2, 2, toPosition)
setPlayerStorageValue(cid, 14582, getPlayerStorageValue(cid, 14582) + 1)
Item(item.uid):remove(1)
return true
end

Link para o post
Compartilhar em outros sites

Troca o seu potions.lua por esse :

local config = {
removeOnUse = "yes",
usableOnTarget = "yes", -- can be used on target? (fe. healing friend)
splashable = "yes",
range = -1,
area = {1, 1} -- if not set correctly, the message will be sent only to user of the item
}


local multiplier = {
health = 1.0,
mana = 1.0
}


local POTIONS = {
[8704] = {empty = 7636, splash = 42, health = {50, 100}}, -- small health potion
[7618] = {empty = 7636, splash = 42, health = {100, 200}}, -- health potion
[7588] = {empty = 7634, splash = 42, health = {200, 350}, level = 50, vocations = {3, 4, 7, 8}, vocStr = "knights and paladins"}, -- strong health potion
[7591] = {empty = 7635, splash = 42, health = {400, 600}, level = 80, vocations = {4, 8}, vocStr = "knights"}, -- great health potion
[8473] = {empty = 7635, splash = 42, health = {650, 800}, level = 130, vocations = {4, 8}, vocStr = "knights"}, -- ultimate health potion


[7620] = {empty = 7636, splash = 47, mana = {100, 150}}, -- mana potion
[7589] = {empty = 7634, splash = 47, mana = {210, 290}, level = 50, vocations = {1, 2, 3, 5, 6, 7}, vocStr = "sorcerers, druids and paladins"}, -- strong mana potion
[7590] = {empty = 7635, splash = 47, mana = {350, 450}, level = 80, vocations = {1, 2, 5, 6}, vocStr = "sorcerers and druids"}, -- great mana potion


[8472] = {empty = 7635, splash = 43, health = {300, 450}, mana = {110, 190}, level = 80, vocations = {3, 7}, vocStr = "paladins"} -- great spirit potion
}


for index, potion in pairs(POTIONS) do
if(type(index) == 'number')then
for k, v in pairs(config) do
if(not potion[k]) then
potion[k] = v
end
end


if(potion.removeOnUse) then
potion.removeOnUse = getBooleanFromString(potion.removeOnUse)
end


if(potion.usableOnTarget) then
potion.usableOnTarget = getBooleanFromString(potion.usableOnTarget)
end


if(potion.splashable) then
potion.splashable = getBooleanFromString(potion.splashable)
end


if(type(potion.health) == 'table' and table.maxn(potion.health) > 1) then
potion.health[1] = math.ceil(potion.health[1] * multiplier.health)
potion.health[2] = math.ceil(potion.health[2] * multiplier.health)
else
potion.health = nil
end




if(type(potion.mana) == 'table' and table.maxn(potion.mana) > 1) then
potion.mana[1] = math.ceil(potion.mana[1] * multiplier.mana)
potion.mana[2] = math.ceil(potion.mana[2] * multiplier.mana)
else
potion.mana = nil
end


POTIONS[index] = potion
end
end


function onUse(cid, item, fromPosition, itemEx, toPosition)
local potion = POTIONS[item.itemid]
if(not potion) then
return false
end


if(not isPlayer(itemEx.uid) or (not potion.usableOnTarget and cid ~= itemEx.uid)) then
if(not potion.splashable or not potion.splash) then
return false
end


if(toPosition.x == CONTAINER_POSITION) then
toPosition = getThingPosition(item.uid)
end


doDecayItem(doCreateItem(POOL, potion.splash, toPosition))
doRemoveItem(item.uid, 1)
if(not potion.empty or potion.removeOnUse) then
return true
end


if(fromPosition.x ~= CONTAINER_POSITION) then
doCreateItem(potion.empty, fromPosition)
else
doPlayerAddItem(cid, potion.empty, 1)
end


return true
end


if(((potion.level and getPlayerLevel(itemEx.uid) < potion.level) or (potion.vocations and not isInArray(potion.vocations, getPlayerVocation(itemEx.uid)))) and
not getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_GAMEMASTERPRIVILEGES))
then
doCreatureSay(itemEx.uid, "Only " .. potion.vocStr .. (potion.level and (" of level " .. potion.level) or "") .. " or above may drink this fluid.", TALKTYPE_MONSTER, false, cid)
return true
end


if(potion.range > 0 and cid ~= itemEx.uid and getDistanceBetween(getThingPosition(cid), getThingPosition(itemEx.uid)) > potion.range and not getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_CANUSEFAR)) then
doPlayerSendDefaultCancel(cid, RETURNVALUE_TOOFARAWAY)
return true
end


if(potion.health and not doTargetCombatHealth(cid, itemEx.uid, COMBAT_HEALING, potion.health[1], potion.health[2], CONST_ME_MAGIC_BLUE, false)) then
return false
end


if(potion.mana and not doTargetCombatMana(cid, itemEx.uid, potion.mana[1], potion.mana[2], CONST_ME_MAGIC_BLUE, false)) then
return false
end


if(type(potion.area) == 'table' and table.maxn(potion.area) > 1) then
for i, tid in ipairs(getSpectators(getThingPosition(itemEx.uid), potion.area[1], potion.area[2])) do
if(isPlayer(tid)) then
doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_MONSTER, false, tid)
end
end
else
doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_MONSTER, false, itemEx.uid)
if(itemEx.uid ~= cid) then
doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_MONSTER, false, cid)
end
end


doRemoveItem(item.uid, 1)
if(not potion.empty or potion.removeOnUse) then
return true
end


if(fromPosition.x ~= CONTAINER_POSITION) then
doCreateItem(potion.empty, fromPosition)
else
doPlayerAddItem(cid, potion.empty, 1)
end


return true
end

btn_donate_LG.gif

 
 
 

 

Link para o post
Compartilhar em outros sites

 

Troca o seu potions.lua por esse :

local config = {
removeOnUse = "yes",
usableOnTarget = "yes", -- can be used on target? (fe. healing friend)
splashable = "yes",
range = -1,
area = {1, 1} -- if not set correctly, the message will be sent only to user of the item
}


local multiplier = {
health = 1.0,
mana = 1.0
}


local POTIONS = {
[8704] = {empty = 7636, splash = 42, health = {50, 100}}, -- small health potion
[7618] = {empty = 7636, splash = 42, health = {100, 200}}, -- health potion
[7588] = {empty = 7634, splash = 42, health = {200, 350}, level = 50, vocations = {3, 4, 7, 8}, vocStr = "knights and paladins"}, -- strong health potion
[7591] = {empty = 7635, splash = 42, health = {400, 600}, level = 80, vocations = {4, 8}, vocStr = "knights"}, -- great health potion
[8473] = {empty = 7635, splash = 42, health = {650, 800}, level = 130, vocations = {4, 8}, vocStr = "knights"}, -- ultimate health potion


[7620] = {empty = 7636, splash = 47, mana = {100, 150}}, -- mana potion
[7589] = {empty = 7634, splash = 47, mana = {210, 290}, level = 50, vocations = {1, 2, 3, 5, 6, 7}, vocStr = "sorcerers, druids and paladins"}, -- strong mana potion
[7590] = {empty = 7635, splash = 47, mana = {350, 450}, level = 80, vocations = {1, 2, 5, 6}, vocStr = "sorcerers and druids"}, -- great mana potion


[8472] = {empty = 7635, splash = 43, health = {300, 450}, mana = {110, 190}, level = 80, vocations = {3, 7}, vocStr = "paladins"} -- great spirit potion
}


for index, potion in pairs(POTIONS) do
if(type(index) == 'number')then
for k, v in pairs(config) do
if(not potion[k]) then
potion[k] = v
end
end


if(potion.removeOnUse) then
potion.removeOnUse = getBooleanFromString(potion.removeOnUse)
end


if(potion.usableOnTarget) then
potion.usableOnTarget = getBooleanFromString(potion.usableOnTarget)
end


if(potion.splashable) then
potion.splashable = getBooleanFromString(potion.splashable)
end


if(type(potion.health) == 'table' and table.maxn(potion.health) > 1) then
potion.health[1] = math.ceil(potion.health[1] * multiplier.health)
potion.health[2] = math.ceil(potion.health[2] * multiplier.health)
else
potion.health = nil
end




if(type(potion.mana) == 'table' and table.maxn(potion.mana) > 1) then
potion.mana[1] = math.ceil(potion.mana[1] * multiplier.mana)
potion.mana[2] = math.ceil(potion.mana[2] * multiplier.mana)
else
potion.mana = nil
end


POTIONS[index] = potion
end
end


function onUse(cid, item, fromPosition, itemEx, toPosition)
local potion = POTIONS[item.itemid]
if(not potion) then
return false
end


if(not isPlayer(itemEx.uid) or (not potion.usableOnTarget and cid ~= itemEx.uid)) then
if(not potion.splashable or not potion.splash) then
return false
end


if(toPosition.x == CONTAINER_POSITION) then
toPosition = getThingPosition(item.uid)
end


doDecayItem(doCreateItem(POOL, potion.splash, toPosition))
doRemoveItem(item.uid, 1)
if(not potion.empty or potion.removeOnUse) then
return true
end


if(fromPosition.x ~= CONTAINER_POSITION) then
doCreateItem(potion.empty, fromPosition)
else
doPlayerAddItem(cid, potion.empty, 1)
end


return true
end


if(((potion.level and getPlayerLevel(itemEx.uid) < potion.level) or (potion.vocations and not isInArray(potion.vocations, getPlayerVocation(itemEx.uid)))) and
not getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_GAMEMASTERPRIVILEGES))
then
doCreatureSay(itemEx.uid, "Only " .. potion.vocStr .. (potion.level and (" of level " .. potion.level) or "") .. " or above may drink this fluid.", TALKTYPE_MONSTER, false, cid)
return true
end


if(potion.range > 0 and cid ~= itemEx.uid and getDistanceBetween(getThingPosition(cid), getThingPosition(itemEx.uid)) > potion.range and not getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_CANUSEFAR)) then
doPlayerSendDefaultCancel(cid, RETURNVALUE_TOOFARAWAY)
return true
end


if(potion.health and not doTargetCombatHealth(cid, itemEx.uid, COMBAT_HEALING, potion.health[1], potion.health[2], CONST_ME_MAGIC_BLUE, false)) then
return false
end


if(potion.mana and not doTargetCombatMana(cid, itemEx.uid, potion.mana[1], potion.mana[2], CONST_ME_MAGIC_BLUE, false)) then
return false
end


if(type(potion.area) == 'table' and table.maxn(potion.area) > 1) then
for i, tid in ipairs(getSpectators(getThingPosition(itemEx.uid), potion.area[1], potion.area[2])) do
if(isPlayer(tid)) then
doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_MONSTER, false, tid)
end
end
else
doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_MONSTER, false, itemEx.uid)
if(itemEx.uid ~= cid) then
doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_MONSTER, false, cid)
end
end


doRemoveItem(item.uid, 1)
if(not potion.empty or potion.removeOnUse) then
return true
end


if(fromPosition.x ~= CONTAINER_POSITION) then
doCreateItem(potion.empty, fromPosition)
else
doPlayerAddItem(cid, potion.empty, 1)
end


return true
end

 

 

Mt obrigado pela ajuda, eu uso a versao 1.0 do TFS, quando coloco esse script ele NAO FUNCIONA, apenas fala para todas vocacoes (you cannot use this potion)...

 

Fico no aguardo, mt obrigado.

Link para o post
Compartilhar em outros sites

tenta então esse :

local ultimateHealthPot = 8473
local greatHealthPot = 7591
local greatManaPot = 7590
local greatSpiritPot = 8472
local strongHealthPot = 7588
local strongManaPot = 7589
local healthPot = 7618
local manaPot = 7620
local smallHealthPot = 8704
local antidotePot = 8474
local greatEmptyPot = 7635
local strongEmptyPot = 7634
local emptyPot = 7636


local antidote = Combat()
antidote:setParameter(COMBAT_PARAM_TYPE, COMBAT_HEALING)
antidote:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
antidote:setParameter(COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
antidote:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
antidote:setParameter(COMBAT_PARAM_DISPEL, CONDITION_POISON)


local exhaust = Condition(CONDITION_EXHAUST_HEAL)
exhaust:setParameter(CONDITION_PARAM_TICKS, (configManager.getNumber(configKeys.EX_ACTIONS_DELAY_INTERVAL) - 1000))
-- 1000 - 100 due to exact condition timing. -100 doesn't hurt us, and players don't have reminding ~50ms exhaustion.


function onUse(cid, item, fromPosition, itemEx, toPosition)
if itemEx.itemid ~= 1 or itemEx.type ~= THING_TYPE_PLAYER then
return true
end


local player = Player(cid)
if player:getCondition(CONDITION_EXHAUST_HEAL) then
player:sendTextMessage(MESSAGE_STATUS_SMALL, Game.getReturnMessage(RETURNVALUE_YOUAREEXHAUSTED))
return true
end


if item.itemid == antidotePot then
if not doCombat(cid, antidote, numberToVariant(cid)) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == smallHealthPot then
if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 60, 85, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == healthPot then
if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 125, 175, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == manaPot then
if not doTargetCombatMana(0, cid, 75, 125, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == strongHealthPot then
if(not isInArray({3,4,7,8}, player:getVocation():getId()) or player:getLevel() < 50) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by paladins and knights of level 50 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 250, 350, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == strongManaPot then
if(not isInArray({1,2,3,5,6,7}, player:getVocation():getId()) or player:getLevel() < 50) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by sorcerers, druids and paladins of level 50 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatMana(0, cid, 115, 185, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == greatSpiritPot then
if(not isInArray({3, 7}, player:getVocation():getId()) or (player:getLevel() < 80)) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by paladins of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 250, 350, CONST_ME_MAGIC_BLUE) or not doTargetCombatMana(0, cid, 100, 200, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == greatHealthPot then
if(not isInArray({4, 8}, player:getVocation():getId()) or player:getLevel() < 80) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by knights of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 425, 575, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == greatManaPot then
if(not isInArray({1,2,5,6}, player:getVocation():getId()) or player:getLevel() < 80) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by sorcerers and druids of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatMana(0, cid, 150, 250, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == ultimateHealthPot then
if(not isInArray({4, 8}, player:getVocation():getId()) or player:getLevel() < 130) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by knights of level 130 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 650, 850, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
end


return true
end

btn_donate_LG.gif

 
 
 

 

Link para o post
Compartilhar em outros sites

Esse funcionou MT OBRIGADO! me ajudou de mais! só tem um problema, as POTIONS SOMEM quando usam, e queria que aparecesse o vial, pra mim seria melhor no caso de war, eh dificil implantar isso? obrigado!

Link para o post
Compartilhar em outros sites

"só tem um problema, as POTIONS SOMEM quando usam, e queria que aparecesse o vial, pra mim seria melhor no caso de war,"

 

Como assim as potions somem ? e como assim vial, se tu explicar um pouco como seria, eu faço pra ti ;

btn_donate_LG.gif

 
 
 

 

Link para o post
Compartilhar em outros sites

"só tem um problema, as POTIONS SOMEM quando usam, e queria que aparecesse o vial, pra mim seria melhor no caso de war,"

 

Como assim as potions somem ? e como assim vial, se tu explicar um pouco como seria, eu faço pra ti ;

Acho que ele quis dizer que ao invés das potions ficarem vazias na backpack, elas somem da backpack do jogador.

Vial seria as potions vazias.

Link para o post
Compartilhar em outros sites

desculpa nao ser mt claro, vc vem me ajudando bastante =)

 

entao eu me referia ao seguinte, player usa o potion, e simplesmente some o potion da backpack, e nao aparece nenhum vial vazio (potion vazio)

seria bom se quando usassem os potions eles apenas seriam transformados em um potion vazio igual tibia global entende?

 

 

obrigado..

"só tem um problema, as POTIONS SOMEM quando usam, e queria que aparecesse o vial, pra mim seria melhor no caso de war,"

 

Como assim as potions somem ? e como assim vial, se tu explicar um pouco como seria, eu faço pra ti ;

Link para o post
Compartilhar em outros sites
local ultimateHealthPot = 8473
local greatHealthPot = 7591
local greatManaPot = 7590
local greatSpiritPot = 8472
local strongHealthPot = 7588
local strongManaPot = 7589
local healthPot = 7618
local manaPot = 7620
local smallHealthPot = 8704
local antidotePot = 8474
local greatEmptyPot = 7635
local strongEmptyPot = 7634
local emptyPot = 7636


local antidote = Combat()
antidote:setParameter(COMBAT_PARAM_TYPE, COMBAT_HEALING)
antidote:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
antidote:setParameter(COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
antidote:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
antidote:setParameter(COMBAT_PARAM_DISPEL, CONDITION_POISON)


local exhaust = Condition(CONDITION_EXHAUST_HEAL)
exhaust:setParameter(CONDITION_PARAM_TICKS, (configManager.getNumber(configKeys.EX_ACTIONS_DELAY_INTERVAL) - 1000))
-- 1000 - 100 due to exact condition timing. -100 doesn't hurt us, and players don't have reminding ~50ms exhaustion.


function onUse(cid, item, fromPosition, itemEx, toPosition)
if itemEx.itemid ~= 1 or itemEx.type ~= THING_TYPE_PLAYER then
return true
end


local player = Player(cid)
if player:getCondition(CONDITION_EXHAUST_HEAL) then
player:sendTextMessage(MESSAGE_STATUS_SMALL, Game.getReturnMessage(RETURNVALUE_YOUAREEXHAUSTED))
return true
end


if item.itemid == antidotePot then
if not doCombat(cid, antidote, numberToVariant(cid)) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == smallHealthPot then
if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 60, 85, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == healthPot then
if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 125, 175, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == manaPot then
if not doTargetCombatMana(0, cid, 75, 125, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == strongHealthPot then
if(not isInArray({3,4,7,8}, player:getVocation():getId()) or player:getLevel() < 50) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by paladins and knights of level 50 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 250, 350, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == strongManaPot then
if(not isInArray({1,2,3,5,6,7}, player:getVocation():getId()) or player:getLevel() < 50) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by sorcerers, druids and paladins of level 50 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatMana(0, cid, 115, 185, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == greatSpiritPot then
if(not isInArray({3, 7}, player:getVocation():getId()) or (player:getLevel() < 80)) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by paladins of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 250, 350, CONST_ME_MAGIC_BLUE) or not doTargetCombatMana(0, cid, 100, 200, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == greatHealthPot then
if(not isInArray({4, 8}, player:getVocation():getId()) or player:getLevel() < 80) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by knights of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 425, 575, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == greatManaPot then
if(not isInArray({1,2,5,6}, player:getVocation():getId()) or player:getLevel() < 80) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by sorcerers and druids of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatMana(0, cid, 150, 250, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == ultimateHealthPot then
if(not isInArray({4, 8}, player:getVocation():getId()) or player:getLevel() < 130) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by knights of level 130 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 650, 850, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
doPlayerAddItem(cid, 7636, 1)
end


return true
end

YDmXTU2.png

 

Entenda tudo sobre VPS, DEDICADOS & HOSPEDAGENS. => Clique aqui

Global Full Download 10.9x - TFS 1.2/FERUMBRAS/KRAILOS. => Clique aqui

 

Muitos querem aquilo que você tem, 
mas vão desistir quando souberem o preço que você pagou.

 

skype-favicon.png lu.lukinha

message-16.png [email protected]

Link para o post
Compartilhar em outros sites

continua sem aparecer os vial vazio =(

sendo o id deles

pequeno (small health/mana potion) = 7636

medio = 7634

grande 7635

local ultimateHealthPot = 8473
local greatHealthPot = 7591
local greatManaPot = 7590
local greatSpiritPot = 8472
local strongHealthPot = 7588
local strongManaPot = 7589
local healthPot = 7618
local manaPot = 7620
local smallHealthPot = 8704
local antidotePot = 8474
local greatEmptyPot = 7635
local strongEmptyPot = 7634
local emptyPot = 7636


local antidote = Combat()
antidote:setParameter(COMBAT_PARAM_TYPE, COMBAT_HEALING)
antidote:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
antidote:setParameter(COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
antidote:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
antidote:setParameter(COMBAT_PARAM_DISPEL, CONDITION_POISON)


local exhaust = Condition(CONDITION_EXHAUST_HEAL)
exhaust:setParameter(CONDITION_PARAM_TICKS, (configManager.getNumber(configKeys.EX_ACTIONS_DELAY_INTERVAL) - 1000))
-- 1000 - 100 due to exact condition timing. -100 doesn't hurt us, and players don't have reminding ~50ms exhaustion.


function onUse(cid, item, fromPosition, itemEx, toPosition)
if itemEx.itemid ~= 1 or itemEx.type ~= THING_TYPE_PLAYER then
return true
end


local player = Player(cid)
if player:getCondition(CONDITION_EXHAUST_HEAL) then
player:sendTextMessage(MESSAGE_STATUS_SMALL, Game.getReturnMessage(RETURNVALUE_YOUAREEXHAUSTED))
return true
end


if item.itemid == antidotePot then
if not doCombat(cid, antidote, numberToVariant(cid)) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == smallHealthPot then
if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 60, 85, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == healthPot then
if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 125, 175, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == manaPot then
if not doTargetCombatMana(0, cid, 75, 125, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == strongHealthPot then
if(not isInArray({3,4,7,8}, player:getVocation():getId()) or player:getLevel() < 50) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by paladins and knights of level 50 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 250, 350, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == strongManaPot then
if(not isInArray({1,2,3,5,6,7}, player:getVocation():getId()) or player:getLevel() < 50) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by sorcerers, druids and paladins of level 50 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatMana(0, cid, 115, 185, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == greatSpiritPot then
if(not isInArray({3, 7}, player:getVocation():getId()) or (player:getLevel() < 80)) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by paladins of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 250, 350, CONST_ME_MAGIC_BLUE) or not doTargetCombatMana(0, cid, 100, 200, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == greatHealthPot then
if(not isInArray({4, 8}, player:getVocation():getId()) or player:getLevel() < 80) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by knights of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 425, 575, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == greatManaPot then
if(not isInArray({1,2,5,6}, player:getVocation():getId()) or player:getLevel() < 80) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by sorcerers and druids of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatMana(0, cid, 150, 250, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
elseif item.itemid == ultimateHealthPot then
if(not isInArray({4, 8}, player:getVocation():getId()) or player:getLevel() < 130) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by knights of level 130 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 650, 850, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
doPlayerAddItem(cid, 7636, 1)
end


return true
end
Link para o post
Compartilhar em outros sites

Absolute a função doPlayerAddItem não existe no TFS 1.0 mais ...

 

vamos lá :

local ultimateHealthPot = 8473local greatHealthPot = 7591
local greatManaPot = 7590
local greatSpiritPot = 8472
local strongHealthPot = 7588
local strongManaPot = 7589
local healthPot = 7618
local manaPot = 7620
local smallHealthPot = 8704
local antidotePot = 8474
local greatEmptyPot = 7635
local strongEmptyPot = 7634
local emptyPot = 7636


local antidote = Combat()
antidote:setParameter(COMBAT_PARAM_TYPE, COMBAT_HEALING)
antidote:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
antidote:setParameter(COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
antidote:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
antidote:setParameter(COMBAT_PARAM_DISPEL, CONDITION_POISON)


local exhaust = Condition(CONDITION_EXHAUST_HEAL)
exhaust:setParameter(CONDITION_PARAM_TICKS, (configManager.getNumber(configKeys.EX_ACTIONS_DELAY_INTERVAL) - 1000))
-- 1000 - 100 due to exact condition timing. -100 doesn't hurt us, and players don't have reminding ~50ms exhaustion.


function onUse(cid, item, fromPosition, itemEx, toPosition)
if itemEx.itemid ~= 1 or itemEx.type ~= THING_TYPE_PLAYER then
return true
end


local player = Player(cid)
if player:getCondition(CONDITION_EXHAUST_HEAL) then
player:sendTextMessage(MESSAGE_STATUS_SMALL, Game.getReturnMessage(RETURNVALUE_YOUAREEXHAUSTED))
return true
end


if item.itemid == antidotePot then
if not doCombat(cid, antidote, numberToVariant(cid)) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(emptyPot, 1)
elseif item.itemid == smallHealthPot then
if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 60, 85, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(emptyPot, 1)
elseif item.itemid == healthPot then
if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 125, 175, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(emptyPot, 1)
elseif item.itemid == manaPot then
if not doTargetCombatMana(0, cid, 75, 125, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(emptyPot, 1)
elseif item.itemid == strongHealthPot then
if(not isInArray({3,4,7,8}, player:getVocation():getId()) or player:getLevel() < 50) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by paladins and knights of level 50 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 250, 350, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(strongEmptyPot, 1)
elseif item.itemid == strongManaPot then
if(not isInArray({1,2,3,5,6,7}, player:getVocation():getId()) or player:getLevel() < 50) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by sorcerers, druids and paladins of level 50 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatMana(0, cid, 115, 185, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(strongEmptyPot, 1)
elseif item.itemid == greatSpiritPot then
if(not isInArray({3, 7}, player:getVocation():getId()) or (player:getLevel() < 80)) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by paladins of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 250, 350, CONST_ME_MAGIC_BLUE) or not doTargetCombatMana(0, cid, 100, 200, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(greatEmptyPot, 1)
elseif item.itemid == greatHealthPot then
if(not isInArray({4, 8}, player:getVocation():getId()) or player:getLevel() < 80) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by knights of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 425, 575, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(greatEmptyPot, 1)
elseif item.itemid == greatManaPot then
if(not isInArray({1,2,5,6}, player:getVocation():getId()) or player:getLevel() < 80) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by sorcerers and druids of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatMana(0, cid, 150, 250, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(greatEmptyPot, 1)
elseif item.itemid == ultimateHealthPot then
if(not isInArray({4, 8}, player:getVocation():getId()) or player:getLevel() < 130) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by knights of level 130 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 650, 850, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(greatEmptyPot, 1)
end


return true
end

Se não tiver mais nenhuma dúvida marque o tópico como resolvido ;D

btn_donate_LG.gif

 
 
 

 

Link para o post
Compartilhar em outros sites

mt obrigado, agora tudo 100%.

ambos me ajudaram mt, forte abracos...

 

Absolute a função doPlayerAddItem não existe no TFS 1.0 mais ...

 

vamos lá :

local ultimateHealthPot = 8473local greatHealthPot = 7591
local greatManaPot = 7590
local greatSpiritPot = 8472
local strongHealthPot = 7588
local strongManaPot = 7589
local healthPot = 7618
local manaPot = 7620
local smallHealthPot = 8704
local antidotePot = 8474
local greatEmptyPot = 7635
local strongEmptyPot = 7634
local emptyPot = 7636


local antidote = Combat()
antidote:setParameter(COMBAT_PARAM_TYPE, COMBAT_HEALING)
antidote:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
antidote:setParameter(COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
antidote:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
antidote:setParameter(COMBAT_PARAM_DISPEL, CONDITION_POISON)


local exhaust = Condition(CONDITION_EXHAUST_HEAL)
exhaust:setParameter(CONDITION_PARAM_TICKS, (configManager.getNumber(configKeys.EX_ACTIONS_DELAY_INTERVAL) - 1000))
-- 1000 - 100 due to exact condition timing. -100 doesn't hurt us, and players don't have reminding ~50ms exhaustion.


function onUse(cid, item, fromPosition, itemEx, toPosition)
if itemEx.itemid ~= 1 or itemEx.type ~= THING_TYPE_PLAYER then
return true
end


local player = Player(cid)
if player:getCondition(CONDITION_EXHAUST_HEAL) then
player:sendTextMessage(MESSAGE_STATUS_SMALL, Game.getReturnMessage(RETURNVALUE_YOUAREEXHAUSTED))
return true
end


if item.itemid == antidotePot then
if not doCombat(cid, antidote, numberToVariant(cid)) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(emptyPot, 1)
elseif item.itemid == smallHealthPot then
if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 60, 85, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(emptyPot, 1)
elseif item.itemid == healthPot then
if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 125, 175, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(emptyPot, 1)
elseif item.itemid == manaPot then
if not doTargetCombatMana(0, cid, 75, 125, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(emptyPot, 1)
elseif item.itemid == strongHealthPot then
if(not isInArray({3,4,7,8}, player:getVocation():getId()) or player:getLevel() < 50) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by paladins and knights of level 50 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 250, 350, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(strongEmptyPot, 1)
elseif item.itemid == strongManaPot then
if(not isInArray({1,2,3,5,6,7}, player:getVocation():getId()) or player:getLevel() < 50) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by sorcerers, druids and paladins of level 50 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatMana(0, cid, 115, 185, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(strongEmptyPot, 1)
elseif item.itemid == greatSpiritPot then
if(not isInArray({3, 7}, player:getVocation():getId()) or (player:getLevel() < 80)) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by paladins of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 250, 350, CONST_ME_MAGIC_BLUE) or not doTargetCombatMana(0, cid, 100, 200, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(greatEmptyPot, 1)
elseif item.itemid == greatHealthPot then
if(not isInArray({4, 8}, player:getVocation():getId()) or player:getLevel() < 80) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by knights of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 425, 575, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(greatEmptyPot, 1)
elseif item.itemid == greatManaPot then
if(not isInArray({1,2,5,6}, player:getVocation():getId()) or player:getLevel() < 80) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by sorcerers and druids of level 80 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatMana(0, cid, 150, 250, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(greatEmptyPot, 1)
elseif item.itemid == ultimateHealthPot then
if(not isInArray({4, 8}, player:getVocation():getId()) or player:getLevel() < 130) and not(player:getGroup():getId() >= 2) then
player:say("This potion can only be consumed by knights of level 130 or higher.", TALKTYPE_MONSTER_SAY)
return true
end


if not doTargetCombatHealth(0, cid, COMBAT_HEALING, 650, 850, CONST_ME_MAGIC_BLUE) then
return false
end
player:addCondition(exhaust)
player:say("Aaaah...", TALKTYPE_MONSTER_SAY)
Item(item.uid):remove(1)
player:addItem(greatEmptyPot, 1)
end


return true
end

Se não tiver mais nenhuma dúvida marque o tópico como resolvido ;D

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo