Up <3
4
1.5k
info
Grupo: Campones
Registrado: 15/06/11
Posts: 65
Reputação: +71
Gênero: Masculino

01 de julho de 2016 às 10:23
info
Grupo: Visconde
Registrado: 08/12/15
Posts: 309
Reputação: +133
Gênero: Masculino

01 de julho de 2016 às 10:41
É da mesma forma que faz as spells no tibia, não entendo muito bem, mas tenta assim:
local master = getCreatureMaster(cid)local combat = createCombatObject()setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)setCombatParam(combat, COMBAT_PARAM_TARGETPLAYERSORSUMMONS, true)setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 20, 30)local area = createCombatArea(AREA_CIRCLE3X3)setCombatArea(combat, area)local su = getCreatureSummons(cid)function onCastSpell(cid, var)if isCreature(cid) then if #getCreatureSummons(cid) < 1 then return doPlayerSendCancel(cid, "Sorry...") endend return doCombat(cid, combat, var)end
OBS: pode ser que não exista alguma dessas funções, você disse que ta usando a versão antiga.
info
Grupo: Barão
Registrado: 31/07/09
Posts: 205
Reputação: +24
Gênero: Masculino

06 de julho de 2016 às 03:09
tenta esse \/
elseif spell == "Healarea" then
local min = (getCreatureMaxHealth(cid) * 50) / 100
local max = (getCreatureMaxHealth(cid) * 60) / 100
local function doHealArea(cid, min, max)
local amount = math.random(min, max)
if (getCreatureHealth(cid) + amount) >= getCreatureMaxHealth(cid) then
amount = -(getCreatureHealth(cid)-getCreatureMaxHealth(cid))
end
if getCreatureHealth(cid) ~= getCreatureMaxHealth(cid) then
doCreatureAddHealth(cid, amount)
doSendAnimatedText(getThingPosWithDebug(cid), "+"..amount.."", 65)
end
end
local pos = getPosfromArea(cid, heal)
local n = 0
doHealArea(cid, min, max)
while n < #pos do
n = n+1
thing = {x=pos[n].x,y=pos[n].y,z=pos[n].z,stackpos=253}
local pid = getThingFromPosWithProtect(thing)
doSendMagicEffect(pos[n], 12)
if isCreature(pid) then
if isSummon(cid) and (isSummon(pid) or isPlayer(pid)) then
if canAttackOther(cid, pid) == "Cant" then
doHealArea(pid, min, max)
end
elseif ehMonstro(cid) and ehMonstro(pid) then
doHealArea(pid, min, max)
end
end
end
recomendo vc baixar um servidor mais recente, pois nele contem bastante coisa e ate algumas coisas da pxg ^^



info
Grupo: Campones
Registrado: 15/06/11
Posts: 65
Reputação: +71
Gênero: Masculino
Salve galera, recentemente
(depois de ter parado 5 vezes)comecei a mexer com a base Pokémon Dash (Antiga) e me deparei com a spell e move healarea, o que esta acontecendo? Bom ela apenas esta healando o Pokémon, gostaria que ela desse heal igual na pxg que no caso é tanto no player quanto no pokemon.Versão: 0.3.6 TFS
Código do move:
elseif pokemon.x.spell == "Healarea" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) setCombatParam(COMBAT_HEALING, COMBAT_PARAM_AGGRESSIVE, FALSE) doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3)))) doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_HEALING, getThingPos(getCreatureSummons(cid)[1]), healarea, ((num1)+(getPlayerLevel(cid)*(num3))), ((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_MAGIC_BLUE) doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 71) addEvent(doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 71),1) return 0Se alguém puder ajudar agradeço.
Editado Junho 29 por Behmen