Ir para conteúdo
  • Cadastre-se

Posts Recomendados

SCREENSHOT
[IMG]
__________________________________

SCRIPT
Crie um arquivo chamado ballista.lua na pasta data/actions
local config = {
    shootRange = 7,
    damage = {50, 100}, -- min/max
    shootEffect = CONST_ANI_HUNTINGSPEAR,
    impactEffect = CONST_ME_HITAREA,
    exhaustOnUse = 300, -- miliseconds
    direction = {
        [5692] = DIRECTION_NORTH,
        [5701] = DIRECTION_EAST,
        [5698] = DIRECTION_WEST,
        [5695] = DIRECTION_SOUTH
    }
}

local exhaust = Condition(CONDITION_EXHAUST_WEAPON)
exhaust:setParameter(CONDITION_PARAM_TICKS, config.exhaustOnUse)

function onUse(player, item, fromPosition, target, toPosition, isHotkey)
    if player:getCondition(CONDITION_EXHAUST_WEAPON) then
        player:sendTextMessage(MESSAGE_STATUS_SMALL, Game.getReturnMessage(RETURNVALUE_YOUAREEXHAUSTED))
        return true
    end

    player:addCondition(exhaust)
    for i = 1, config.shootRange do
        local nextPosition = item:getPosition()
            nextPosition:getNextPosition(config.direction[item.itemid], i)

        local tile = Tile(nextPosition)
        if tile then
            local topCreature = tile:getTopCreature()
            if topCreature then
                toPosition:sendDistanceEffect(topCreature:getPosition(), config.shootEffect)
                doTargetCombatHealth(player, topCreature, COMBAT_PHYSICALDAMAGE, -config.damage[1] * i, -config.damage[2] * i, config.impactEffect)
                return true
            end
        end
    end

    local nextPosition = item:getPosition()
    nextPosition:getNextPosition(config.direction[item.itemid], config.shootRange)

    toPosition:sendDistanceEffect(nextPosition, config.shootEffect)
    return true
end
Não esqueça de adicionar a tag em actions.xml
__________________________________
CRÉDITOS
Printer
Link para o post
Compartilhar em outros sites
  • 2 weeks later...

Coloquei a tag e tals, mas da esse erro na distro

Spoiler

[09/11/2015 13:03:02] [Error - Action Interface]
[09/11/2015 13:03:02] data/actions/scripts/ballista.lua
[09/11/2015 13:03:02] Description:
[09/11/2015 13:03:02] data/actions/scripts/ballista.lua:15: attempt to call global 'Condition' (a nil value)
[09/11/2015 13:03:02] [Warning - Event::loadScript] Cannot load script (data/actions/scripts/ballista.lua)

 

 

Poderia ajudar?

 

a tag que coloquei foi essa:

Spoiler

        <action itemid="11586" event="script" value="ballista.lua"/>

 

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.

  • Conteúdo Similar

    • Por Tricoder
      Preview

       
      Script
      data/items/items.xml
      <item id="8981" article="a" name="gold premium card"> <attribute key="weight" value="0" /> <attribute key="description" value="Use this card to receive 7 premium days." /> </item> data/actions/actions.xml
      <action itemid="8981" script="other/premiumcard.lua"/> data/actions/scripts/premium_card
      local t = { days = 7, effect = CONST_ME_HOLYAREA } function onUse(cid, item, fromPosition, itemEx, toPosition) doPlayerRemoveItem(cid, 8981, 1) return TRUE, doPlayerAddPremiumDays(cid, t.days), doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You now have +" .. t.days .. " premium days!"), doSendMagicEffect(fromPosition, t.effect) end Créditos: God Mythera
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo