BlackTibia

No estás conectado. Conéctate o registrate

 » Open Tibia » Pedido de Scripts » 

[Ajuda] Weappon efecto cambio Vocation

[Ajuda] Weappon efecto cambio Vocation

#1 [Ajuda] Weappon efecto cambio Vocation el Miér Abr 01, 2015 1:49 am

Medeiros


Aprendiz
Hola, les doy las gracias. como se puede ver que estoy tratando de tener un efecto diferente en el personal para Druida y Sorcerrer he intentado con la función de ahí abajo. muchas Gracias

Código:
if (getPlayerVocation(cid, 5).itemid  == iddowand) then
    return doCombat(cid, combat2, var)
end

Scripts Weappon
Código:
local iddowand = 12318 -- coloque o id do wand aqui
local playerVoc = getPlayerVocation(cid)

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_BLOCKSHIELD, 1)
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 1)
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 36)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 3)

function onGetFormulaValues(cid, level, maglevel)
local min = -((level/50)+(maglevel*7.99)+15)
local max = -((level/50)+(maglevel*8.99)+30)
return min, max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_BLOCKSHIELD, 1)
setCombatParam(combat2, COMBAT_PARAM_BLOCKARMOR, 1)
setCombatParam(combat2, COMBAT_PARAM_AGGRESSIVE, 1)
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 36)
setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, 3)

function onGetFormulaValues(cid, level, maglevel)
local min = -((level/50)+(maglevel*7.99)+15)
local max = -((level/50)+(maglevel*8.99)+30)
return min, max
end

setCombatCallback(combat2, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

local area = createCombatArea({
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 3, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0}
})

setCombatArea(combat2, area)

function onUseWeapon(cid, var)
if (getPlayerVocation(cid, 5).itemid  == iddowand) then
    return doCombat(cid, combat2, var)
end
    return doCombat(cid, combat, var)
end

#2 Re: [Ajuda] Weappon efecto cambio Vocation el Miér Abr 01, 2015 7:55 am

Belerofonte


Administrador
¿El efecto se transmitiría por esa área?
local area = createCombatArea({
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 3, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0}
})

setCombatArea(combat2, area)

Y por lo tanto formaría parte de la zona:
local combat2 = createCombatObject()
   setCombatParam(combat2, COMBAT_PARAM_BLOCKSHIELD, 1)
   setCombatParam(combat2, COMBAT_PARAM_BLOCKARMOR, 1)
   setCombatParam(combat2, COMBAT_PARAM_AGGRESSIVE, 1)
   setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
   setCombatParam(combat2, COMBAT_PARAM_EFFECT, 36)
   setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, 3)


function onGetFormulaValues(cid, level, maglevel)
   local min = -((level/50)+(maglevel*7.99)+15)
   local max = -((level/50)+(maglevel*8.99)+30)
 return min, max
end

   setCombatCallback(combat2, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

¿O solamente aparecerá en un sqm encima del target?



Sugerencia para evitar futuros quebraderos de cabeza:
[Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo]
[Tienes que estar registrado y conectado para ver esa imagen]

#3 Re: [Ajuda] Weappon efecto cambio Vocation el Miér Abr 01, 2015 9:41 am

Medeiros


Aprendiz
Si si. Obrigado.

#4 Re: [Ajuda] Weappon efecto cambio Vocation el Miér Abr 01, 2015 10:50 am

Belerofonte


Administrador
 local area = createCombatArea({ -- Área de daño alrededor del target.
   {0, 0, 0, 0, 0, 0, 0},
   {0, 0, 1, 1, 1, 0, 0},
   {0, 1, 1, 1, 1, 1, 0},
   {0, 1, 1, 3, 1, 1, 0},
   {0, 1, 1, 1, 1, 1, 0},
   {0, 0, 1, 1, 1, 0, 0},
   {0, 0, 0, 0, 0, 0, 0}
 })

local voc = {
 -- [nº vocation] = {Combat damage, DistanceShoot, MagicEffect},
   [1] = {COMBAT_FIREDAMAGE, CONST_ANI_FIRE, CONST_ME_FIREAREA}, -- Sorcerer
   [2] = {COMBAT_EARTHDAMAGE, CONST_ANI_EARTH, CONST_ME_SMALLPLANTS}, -- Druid
 }

function onUseWeapon(cid, var)

 local v = voc[getPlayerVocation(cid)]
   if v then
     local cidLvl, cidMag, target = getPlayerLevel(cid), getPlayerMagLevel(cid), getCreatureTarget(cid)
       doSendDistanceShoot(getCreaturePos(cid), getCreaturePos(target), v[2])

     local targetDamage = { -- Sólo daño en el target.
       min = -((cidLvl / 50) + (cidMag * 7.99) + 15),
       max = -((cidLvl / 50) + (cidMag * 8.99) + 30),
     }
       doTargetCombatHealth(cid, target, v[1], targetDamage.min, targetDamage.max, v[3])

     local areaDamage = { -- Daño en el área de alrededor del target.
       min = -((cidLvl / 50) + (cidMag * 3) + 9),
       max = -((cidLvl / 50) + (cidMag * 4) + 20),
     }
       doAreaCombatHealth(cid, v[1], getCreaturePos(target), area, areaDamage.min, areaDamage.max, v[3])

   end

 return true
end



Sugerencia para evitar futuros quebraderos de cabeza:
[Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo]
[Tienes que estar registrado y conectado para ver esa imagen]

#5 Re: [Ajuda] Weappon efecto cambio Vocation el Miér Abr 01, 2015 12:33 pm

Medeiros


Aprendiz
Mui Gracias '-' The Best forever (y)

Contenido patrocinado


Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.

 

¿Quién está en línea?

En total hay 1 usuario en línea: 0 Registrados, 0 Ocultos y 1 Invitado

Usuarios navegando en este foro: Ninguno

Forum Statistics

Nuestros miembros han públicado un total de posts en temas.
Actualmente hay miembros registrados.
Démosle la bienvenida al miembro más reciente,
La mayor cantidad de usuarios en línea ha sido de .