Ir para conteúdo
  • Cadastre-se

Posts Recomendados

E aew gente bonita!!!

 

Eu to com um desafio para quem se diz sabido em Script.

 

Quero um Spell para Knight, o qual quando utilizado troque Temporariamente (por uns 10 segundos) o Dano FÍSICO por outro tipo de dano como ICE, FIRE, EARTH, ENERGY ou HOLLY, ou seja, seriam 5 spells.

 

Não estou dizendo para encantar a Arma, é só o tipo de Dano que vai mudar e algum ícone qualquer vai aparecer lá onde fica quando você usa algum spell de buff.

 

Se alguém puder me ajudar . . . não esquecerei da Rep +

rsrs

Link para o post
Compartilhar em outros sites

E aew . . . será que alguem pode me ajudar nisso???

 

Ou ao menos dar uma luz de como pode ser feito, pq eu sou realmente muito newb em script...

Link para o post
Compartilhar em outros sites

Pois bem . . . acho que não deve ser possível fazer isso neah . . . já faz tempo que perguntei e ninguem deu nem ao menos uma "idéia"

 

 

enfim . . . agradeço a quem passou pra olhar rsrs

Link para o post
Compartilhar em outros sites

e bem fácil se vc tiver um arquivo chamado exp.lua ou algo que tenha essa função no creaturescript "function onStatsChange(cid, attacker, type, combat, value)" vc deve setar uma storage na magia pra fazer a mudança, ai e só fazer essa checagem na função

 

 

pra setar faz assim setPlayerStorageValue(pid, 6657, os.time() + 10) -- 10 segundos de duraçao

 

ai se coloca essa checagem no script do creaturescript

 

       if getPlayerStorageValue(attacker, 6657) > os.time() then
         combat = ICEDAMAGE
       end

Link para o post
Compartilhar em outros sites
  • 2 weeks later...
Em 15/11/2015 00:26:05, nociam disse:

e bem fácil se vc tiver um arquivo chamado exp.lua ou algo que tenha essa função no creaturescript "function onStatsChange(cid, attacker, type, combat, value)" vc deve setar uma storage na magia pra fazer a mudança, ai e só fazer essa checagem na função

 

 

pra setar faz assim setPlayerStorageValue(pid, 6657, os.time() + 10) -- 10 segundos de duraçao

 

ai se coloca essa checagem no script do creaturescript

 

       if getPlayerStorageValue(attacker, 6657) > os.time() then
         combat = ICEDAMAGE
       end

enfim...desde já, você recebeu meu Rep, mas ainda não consegui fazer funfar a magia, se você puder me dar uma ajuda mais "mastigada" eu agardeço rsrs

realmente não compreendi como fazer este script funcionar como magia, sei realmente pouco de script...e não tenho nenhum 'exp.lua' ou algum que eu tenha encontrado o 'onStatsChange' , aí complicou pra mim pq não saberia fazer algo do zero...

caso possa me dar uma luz a mais . . . tmj

 

Link para o post
Compartilhar em outros sites

Espero que ajude ! 

Citar

w = {


[1] = {ef = 36, sh = 3, dmg = COMBAT_FIREDAMAGE},
[4] = {ef = 17, sh = 31, dmg = COMBAT_DEATHDAMAGE},
[7] = {ef = 49, sh = 37, dmg = COMBAT_HOLYDAMAGE}
}

function onUseWeapon(cid, var)
min, max = 850,1500
target = getCreatureTarget(cid)
if target ~= 0 then
wx = w[math.random(10, #w)]
doSendDistanceShoot(getThingPos(cid), getThingPos(target), wx.sh)
addEvent(doAreaCombatHealth, 100, cid, wx.dmg, getThingPos(target), 0, -min, -max, wx.ef)
end
return true
end
 

 

Editado por lango rullez (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

lango rullez, realmente não consegui compreender o script, como ele vai proceder . . . embora eu não entenda tanto, eu acho que você compreendeu um pouco errado o meu pedido . . .

 

_ _ _ _ _ _ _ _ _

 

enfim, até agora TENTEI fazer um e só consegui chegar até isso:

Spoiler

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_RED)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, true)

 

local condition = createConditionObject(CONDITION_FIRE)
setConditionParam(condition, CONDITION_PARAM_TICKS, 10000)
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
setCombatCondition(combat, condition)

 

local storage = 76543

 

local duration = 10 -- 10 segundos de duraçao

 

    function onCastSpell(cid, var)
    setCreatureStorageValue(cid, storage, os.time() + duration)
    if getCreatureStorageValue(cid, 76543) > os.time() then
         combat = FIREEDAMAGE
       end
    return doCombat(cid, combat, var)
end

 

está dando erro na parte da 'function', vem escrito "attempt to call global 'setCreatueStorageValue' (a nil value)"

 

como eu já disse, eu entendo muito pouco de script...

 

krsrksrs

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 Jaurez
      .
    • Por Kazuya9629
      como eu fasso pro charmander usa spell Ember ea outfit dele mudar por alguns segundos
       
      base poke jornadas 
    • Por Cat
      Em alguns casos, o tibia 8.60 comum não abre de jeito nenhum no map editor, mesmo desmarcando check file signatures e configurando o path corretamente.
       
      Este é o client 8.60 adaptado para o Remere's Map Editor. Resolvi postar já que ele foi removido do site oficial do RME. (ficou apenas a versão para linux lá)
      Se estiver tendo problemas para abrir a versão 8.60, tente utilizar este.
                                                                                                                     
      Baixar o Tibia Client 8.60 que funciona no Remere’s Map Editor
      Essa versão do Tibia 8.60 client resolve o erro unsupported client version ou Could not locate tibia.dat and/or tibia.spr, please navigate to your tibia 8.60 installation folder.
       
      Downloads
      https://tibiaking.com/applications/core/interface/file/attachment.php?id=47333

      Scan: https://www.virustotal.com/gui/file/333e172ac49ba2028db9eb5889994509e7d2de28ebccfa428c04e86defbe15cc
       
    • Por Jedian
      Olá galera, aqui eu denovo com outro post, que espero que seja útil pra vocês.
      Pois é, eu só posto spells, mas é que o resto, praticamente não tem o que inventar, sim, tem, mas o que está exatamente ao alcance de um scripter, nem fácil demais, nem impossível pra ele, é praticamente inexistente, por isso é difícil pra nós, scripters, na minha opinião, demonstrar exatamente o potencial de cada um, e em spells, cada um faz do seu jeito, ficando ruim ou não, é perfeita pra cada um que a faz, estou pensando muito em outros sistemas pra vocês, sério, mas tá difícil.
      Mudando de assunto, vamos a magia, pensei nela esfregando pedras a ideia seria uma magia que faz uma espada "costurar em linha reta"(como o nome diz) para frente do personagem de acordo com o tipo de arma usada, aí, se houver um target, ela vai até ele e dá "costuradas" conforme a distância que percorreu até chegar nele, quanto mais perto, mais "costuradas" e vice-versa.
      Vamos instalar:
      em data/spells/scripts copie um arquivo e cole-o, renomeie para algum nome, apague todo o conteúdo e cole isso dentro:



      <instant name="Sewing Straight" words="sewing straight" lvl="35" mana="0" prem="0" needweapon="1" exhaustion="2000" needlearn="0" event="script" value="nome.lua"></instant>
      edite o nome do arquivo e ajeite conforme as preferências.
      Pronto, está instalado, nenhuma foto, pois não dá pra ter uma ideia muito boa com elas :S testem e critiquem aí.
    • Por Sociopata
      Abra data\spells\scripts cria um arquivo com nome earthquake.lua e cole isso \/


      local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_STONES) setCombatParam(combat, COMBAT_PARAM_USECHARGES, TRUE) setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0.9, 0, 1.0, 0) local area = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat, area) local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 34) setCombatParam(combat1, COMBAT_PARAM_USECHARGES, TRUE) setCombatFormula(combat1, COMBAT_FORMULA_SKILL, 0.9, 0, 1.0, 0) local area1 = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat1, area1) function onCastSpell(cid, var) doCombat(cid, combat1, var) return doCombat(cid, combat, var) end em data /spells.xml cole isso \/ <instant name="earthquake" words="exori beam" lvl="33" mana="450" prem="0" needweapon="1" exhaustion="2000" needlearn="0" event="script" value="earthquake.lua"> <vocation id="4"/>
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo