Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Oi pessoal do TK! Blza?

preciso que alguém me ajude a arrumar a área de de um script que é esse:

local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 41)

local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 41)

local condition = createConditionObject(CONDITION_PARALYZE) setConditionParam(condition, CONDITION_PARAM_TICKS, 20000) setConditionFormula(condition, -0.7, 0, -0.7, 0) setCombatCondition(combat1, condition)

local condition = createConditionObject(CONDITION_PARALYZE) setConditionParam(condition, CONDITION_PARAM_TICKS, 20000) setConditionFormula(condition, -0.7, 0, -0.7, 0) setCombatCondition(combat2, condition)

local glacier = { {0, 1, 1, 1, 0}, {1, 0, 0, 0, 1}, {1, 0, 2, 0, 1}, {1, 0, 0, 0, 1}, {0, 1, 1, 1, 0} }

local glacier2 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 2, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} }

local area = createCombatArea(glacier) setCombatArea(combat1, area)

local area2 = createCombatArea(glacier2) setCombatArea(combat2, area2)

function onGetFormulaValues() return -200, -200, -200, -200 end

function onGetFormulaValues1() return -200, -200, -200, -200 end

setCombatCallback(combat2, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues") setCombatCallback(combat1, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues1")

local chance = 90

function onStatsChange(cid, attacker, type, combat, value) if value >= 5 and type == 1 then if getPlayerSlotItem(cid, CONST_SLOT_ARMOR).itemid == 7897 then local random = math.random(100) if random >= chance then doCombat( cid, combat2, numberToVariant(cid) ) doCombat( cid, combat1, numberToVariant(cid) ) return TRUE end end end return TRUE end

Quero que a área seja assim:

 

    

                                                            ____________

                                                            | PLAYER        |

                                                            |___________|

Ou seja ela quero que fique em volta do player!

 

ATT: Ribeiro

TRABALHOS

 

 

[iTEM.XML] Ancient Helmt dar HP e Duration: http://www.tibiaking.com/forum/topic/35010-itemxml-helmet-dar-vida-e-duration/

 

[CreatureScripts] OwNeD ao character morrerhttp://www.tibiaking.com/forum/topic/35733-creaturescripta-owned-quando-morrer/

 

Link para o post
Compartilhar em outros sites

testa ai

local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 41)

local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 41)

local condition = createConditionObject(CONDITION_PARALYZE) setConditionParam(condition, CONDITION_PARAM_TICKS, 20000)
setConditionFormula(condition, -0.7, 0, -0.7, 0) setCombatCondition(combat1, condition)

local condition = createConditionObject(CONDITION_PARALYZE) setConditionParam(condition, CONDITION_PARAM_TICKS, 20000)
setConditionFormula(condition, -0.7, 0, -0.7, 0) setCombatCondition(combat2, condition)

local glacier = AREA_SQUARE1X1
local glacier2 = AREA_SQUARE1X1

local area = createCombatArea(glacier)
setCombatArea(combat1, area)

local area2 = createCombatArea(glacier2)
setCombatArea(combat2, area2)

function onGetFormulaValues()
    return -200, -200, -200, -200
end

function onGetFormulaValues1()
    return -200, -200, -200, -200
end

setCombatCallback(combat2, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")
setCombatCallback(combat1, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues1")
function onStatsChange(cid, attacker, type, combat, value)
    local chance = 90
    if value >= 5 and type == 1 then
        if getPlayerSlotItem(cid, CONST_SLOT_ARMOR).itemid == 7897 then
            local random = math.random(100)
            if random >= chance then
                doCombat(cid, combat2, numberToVariant(cid))
                doCombat(cid, combat1, numberToVariant(cid))
                return true
            end
        end
    end

    return true
end
 
Editado por fireelement (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Nao foi!

edit: consegui arrumar foi easy!

Editado por Ribeiro Foda (veja o histórico de edições)

TRABALHOS

 

 

[iTEM.XML] Ancient Helmt dar HP e Duration: http://www.tibiaking.com/forum/topic/35010-itemxml-helmet-dar-vida-e-duration/

 

[CreatureScripts] OwNeD ao character morrerhttp://www.tibiaking.com/forum/topic/35733-creaturescripta-owned-quando-morrer/

 

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 Cat
      Use esse script para remover criaturas de tempo em tempo em uma determinada área do mapa.
       
      -- -- --
       
      Em data/globalevents/cria um arquivo chamado removemonster.lua
      local config = { fromPos = {x=556,y=451,z=6}, -- posição superior esquerda do mapa, da area em que esta mapeado a area. toPos = {x=566,y=456,z=6}, -- posição inferior direita do mapa, da area em que esta mapeado a area. boss = "Nomedomonstroaqui" -- Aqui você bota o nome do monstro que você quer remover } function onTime() removeMonsterInArea(fromPos, toPos) return true end function removeMonsterInArea() local positionsCheck = {} for i = config.fromPos.x, config.toPos.x do positionsCheck[#positionsCheck+1] = {x=i, y = config.fromPos.y, z = config.fromPos.z, stackpos = 0} for j = config.fromPos.y+1, config.toPos.y do positionsCheck[#positionsCheck+1] = {x=i, y = j, z = config.fromPos.z, stackpos = 0} end end for j=1, #positionsCheck do for i = 0, 255 do positionsCheck[j].stackpos = i local tile = getTileThingByPos(positionsCheck[j]) if isMonster(tile.uid) then if getCreatureName(tile.uid) == config.boss then doRemoveCreature(tile.uid) end end end end end TAG:
      <globalevent name="removemonster" time="03:00" event="script" value="removemonster.lua"/> time="03:00"   representa 3horas AM
       
       
    • Por xWhiteWolf
      Fala galera do TK, hoje vim trazer pra vocês um conjuntinho de spells que eu criei com base em uma spell que achei aqui no fórum mesmo
      Os créditos da spell base que eu utilizei são do OneShot

      São duas spells bem simples, uma puxa o oponente pra perto e a outra arremessa ele longe.
      Idéia original tirada dos servidores de Avatar que possuem esse tipo de magia pra nação do Ar haha.

      Aqui vão os scripts:

      empurrararea.lua


      Agora algumas imagens (não deu pra captar muito bem oque a spell faz porque ela é composta por diferentes movimentos, sugiro que vcs instalem e testem)
      Puxar:




      Empurrar 



    • Por felippepsa
      Bom hoje baixei a base do ntoshinobi e estou tentando criar uma spell um ataque pro minato, de area que funciona só para o norte sul leste e oeste   /\
      e estou precisando de uma script não tenho nenhuma de base infelizmente, obs : o spell ira usar uma sprite pra cada lado ( norte sul leste e oeste)<     >
      E se possivel podem me arrumar uma script de spell tambem que trapa por spr (sem usar item) Agradeço!                                                                      \/
    • Por zPerseu
      ALGUEM QUE PODE ME AJUDAR COM ESSA SPELL
       
      local config = {
      efeitoTele = 134, -- efeito q ira aparacer a cada teleport.
      efeitoDamage = 134, -- efeito q ira aparecer ao hitar no alvo
      hits = 2, -- quantos hits vai dar
      delay = 600, -- intervalo de tempo a cada hit
      mini = 11000, -- dano minimo
      maxi = 12000, -- dano maximo
      damage = COMBAT_PHYSICALDAMAGE -- tipo do dano
      }
      function isWalkable(pos, creature, pz, proj) -- nord
          if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end
          if getTopCreature(pos).uid > 0 and creature then return false end
          if getTileInfo(pos).protection and not pz then return false end
          local n = not proj and 3 or 2
          for i = 0, 255 do
                          pos.stackpos = i
                          local tile = getTileThingByPos(pos)
                          if tile.itemid ~= 0 and not isCreature(tile.uid) then
                                          if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then
                                                          return false
                                          end
                          end
          end
          return true
      end
      function getPosDirs(p, dir) -- mkalo
          return dir == 1 and {x=p.x-1, y=p.y, z=p.z} or dir == 2 and {x=p.x-1, y=p.y+1, z=p.z} or dir == 3 and {x=p.x, y=p.y+1, z=p.z} or dir == 4 and {x=p.x+1, y=p.y+1, z=p.z} or dir == 5 and {x=p.x+1, y=p.y, z=p.z} or dir == 6 and {x=p.x+1, y=p.y-1, z=p.z} or dir == 7 and {x=p.x, y=p.y-1, z=p.z} or dir == 8 and {x=p.x-1, y=p.y-1, z=p.z}
      end
      function validPos(pos)
      tb = {}
      for i = 1, 8 do
        newpos = getPosDirs(pos, i)
        if isWalkable(newpos) then
         table.insert(tb, newpos)
        end
      end
      table.insert(tb, pos)
      return tb
      end
      spell1 = {
      start1 = function (cid, target, markpos, hits)
          if not isCreature(cid) then return true end
          if not isCreature(target) or hits < 1 then
                       doTeleportThing(cid, markpos)
                       doSendMagicEffect(getThingPos(cid), config.efeitoTele)
                       return true
          end
          posAv = validPos(getThingPos(target))
          rand = #posAv == 1 and 1 or #posAv - 1
          doSendMagicEffect(getThingPos(cid), config.efeitoTele)
          doTeleportThing(cid, posAv[math.random(1, rand)])
          doAreaCombatHealth(cid, config.damage, getThingPos(target), 0, -config.mini, -config.maxi, config.efeitoDamage)
          addEvent(spell1.start1, config.delay, cid, target, markpos, hits - 1)
         end
      }
      function onCastSpell(cid)
      local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z}
      local position2 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}
      target = getCreatureTarget(cid)
      if target then
        spell1.start1(cid, target, getThingPos(cid), config.hits)
      doSendMagicEffect(position1, 247)
      doSendMagicEffect(position2, 248)
      end
      return true
      end
       
       
      EU QUERIA COLOCAR TIPO 1 TEMPO NELA!MAS COMO ASSIM?ELA SOUTA 2 SPELL EU QUERIA QUE TIPO  1 VAI PRIMEIRO TIPO A 247 E DPS DE 1 SEGUNDA SAI OUTRA SPELL TIPO UM COMBO NUMA SPELL VLW QUEM PUDER AJUDAR REP+
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo