• TibiaFace

    Tibiaface | Una comunidad Open Tibia donde encontras : mapas, scripts, Otserver, npc y amigos etc ...

    .
    demo menumenu

    Afiliados



    Votar:

    [Spells] ayuda con 2 spells

    Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje (Página 1 de 1.)

    1default [Spells] ayuda con 2 spells el Sáb Ago 12, 2017 4:26 pm

    jesusaron

    avatar
    Miembro
    Miembro
    bueno el primero

    Código:
    local combat = createCombatObject()
    setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
    setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, true)
    setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)

    function onGetFormulaValues(cid, level, skill, attack, factor)
       return -(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5))
    end

    setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")

    local combat1 = createCombatObject()
    setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
    setCombatParam(combat1, COMBAT_PARAM_BLOCKARMOR, true)
    setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)

    function onGetFormulaValues(cid, level, skill, attack, factor)
       return -(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5))
    end

    setCombatCallback(combat1, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")

    local function onCastSpell(cid, var, c) return
    function RunPart, (cid,var)
           doCombat(cid, c, var)return

       addEvent(RunPart,100,combat,cid,var)
       addEvent(RunPart,200,combat1,cid,var)
       return doCombat(cid, combat1, var, combat)
    end
    end

    este quiero que realize 2 exori con pero con un intervalo de 100ms y el segundo de 200ms

    este segundo spells
    Código:
    function onTargetTile(cid, pos)
       local getPos = pos
       getPos.stackpos = STACKPOS_TOP_MOVEABLE_ITEM_OR_CREATURE

       local corpse = getThingFromPos(getPos)
       if(corpse.uid > 0 and isMoveable(corpse.uid)) then
          doRemoveItem(corpse.uid)
          doPlayerAddItem(cid,2666,math.random(1, 15))
          
          doSendMagicEffect(pos, CONST_ME_MAGIC_BLUE)
          return true
       end

       return false
    end


    local area, combat = createCombatArea(AREA_SQUARE1X1), createCombatObject()
    setCombatArea(combat, area)

    setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
    setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

    function onCastSpell(cid, var)
       return doCombat(cid, combat, var)
    end
    quiero que haga comida meat o food cuando al estar serca de un cuerpo de una creature se convierta en comida

    Ver perfil de usuario

    2default [Ayuda] Ayuda con spells el Lun Ago 14, 2017 5:20 am

    The_Pain

    avatar
    Miembro
    Miembro
    Amigo prueba con estas a ver:

    [ La primera ]
    Código:
    local combat = createCombatObject()
    setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
    setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, true)
    setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)

    function onGetFormulaValues(cid, level, skill, attack, factor)
    return -(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5))
    end

    setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")

    local runSpells = function(parametros)
    local player = parametros[1]
    local variant = parametros[2]
    doCombat(player, combat, variant)
    return true
    end

    function onCastSpell(player, variant)
    local parametros = { player, variant }
    for s = 1, 2 do
    addEvent(runSpells, (100 * s), parametros)
    end
    return true
    end

    [ La segunda ]
    Código:
    function onTargetTile(player, position)
    local getPos = position
    getPos.stackpos = STACKPOS_TOP_MOVEABLE_ITEM_OR_CREATURE
    local foods = { 2666, 2666, 2666 }
    local corpse = getThingFromPos(getPos)
    if(corpse.uid > 0 and isMoveable(corpse.uid)) then
    doRemoveItem(corpse.uid)
    doPlayerAddItem(player, foods[math.random(1, #foods)], math.random(1, 15))
    doSendMagicEffect(position, CONST_ME_MAGIC_BLUE)
    return true
    end
    return false
    end


    local area = createCombatArea(AREA_SQUARE1X1)
    local combat = createCombatObject()
    setCombatArea(combat, area)
    setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
    setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

    function onCastSpell(player, variant)
    return doCombat(player, combat, variant)
    end

    avisame si te funcionan.

    Ver perfil de usuario

    3default gracias el Lun Ago 14, 2017 5:30 pm

    jesusaron

    avatar
    Miembro
    Miembro
    si gracias si funciono like

    Ver perfil de usuario

    4default Re: [Spells] ayuda con 2 spells el Lun Ago 14, 2017 8:31 pm

    The_Pain

    avatar
    Miembro
    Miembro
    asi ->
    Código:

    function onTargetTile(player, position)
    local getPos = position
    getPos.stackpos = STACKPOS_TOP_MOVEABLE_ITEM_OR_CREATURE
    local foods = { 2666, 2666, 2666 }
    local corpse = getThingFromPos(getPos)
    if(corpse.uid > 0 and isMoveable(corpse.uid)) then
    doRemoveItem(corpse.uid)
    doCreateItem(foods[math.random(1, #foods)], math.random(1, 15), getPos)
    doSendMagicEffect(position, CONST_ME_MAGIC_BLUE)
    return true
    end
    return false
    end


    local area = createCombatArea(AREA_SQUARE1X1)
    local combat = createCombatObject()
    setCombatArea(combat, area)
    setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
    setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

    function onCastSpell(player, variant)
    return doCombat(player, combat, variant)
    end

    Ver perfil de usuario

    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.

     

    BienvenidosTibiaFace es una comunidad de Open Tibia. Para participar debes estar registrado (click para Regístrate).