Ir para conteúdo

Jhoon Stifler

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    Jhoon Stifler deu reputação a xWhiteWolf em (Resolvido)Monstro que enche vida e mana   
    cria a spell que vai encher a vida/mana
    local config = { health = 300, mana = 300 } function onCastSpell(cid, var) if getCreatureMaster(cid) then local master = getCreatureMaster(cid) if isInParty(master) then local members = getPartyMembers(getPlayerParty(master)) local health = math.ceil( config.health / #members ) local mana = math.ceil( config.mana / #members ) for i = 1, #members do doCreatureAddHealth(members[i], health) doCreatureAddMana(members[i], mana) doSendAnimatedText(getCreaturePosition(members[i]), "+"..health, 18) doSendMagicEffect(getCreaturePosition(members[i]), 12) end else doCreatureAddHealth(master, config.health) doCreatureAddMana(master, config.mana) doSendAnimatedText(getCreaturePosition(master), "+"..config.health, 18) doSendMagicEffect(getCreaturePosition(master), 12) end end return true end declara ela e coloca pra só monstros poderem usar:
    <instant name="healmaster" words="healmaster" lvl="0" mana="0" prem="0" aggressive="0" exhaustion="1500" needlearn="1" event="script" value="especiais/healmaster.lua"> </instant> agora vá no xml do monstro que vc quer que solte essa magia e embaixo de 
    <defenses armor="7" defense="5"> coloque isso daqui:
      <defense name="healmaster" interval="10000" chance="99" duration="100">   </defense> No final, se seu monstro não usar nenhuma outra magia de defesa, deve ficar assim:
      <defenses armor="7" defense="5">   <defense name="healmaster" interval="10000" chance="99" duration="100">   </defense> </defenses> esse /defense fecha a magia e o /defenses fecha a armor lá em cima
  2. Gostei
    Jhoon Stifler deu reputação a xWhiteWolf em (Resolvido)[Spell] Exori Element   
    <instant name="testeTK" words="exevoelemental" lvl="16" mana="500" soul="50" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="1000" needlearn="0" event="script" value="especiais/exevoelemental.lua"> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, CONST_ME_ICEATTACK) setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SMALLICE) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE) setCombatParam(combat3, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SMALLHOLY) setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) local deathpowder = createConditionObject(CONDITION_CURSED) setConditionParam(deathpowder, CONDITION_PARAM_DELAYED, 1) addDamageCondition(deathpowder, 10, 1000, -200) setCombatCondition(combat3, deathpowder) local function onCastSpell1(parameters) doCombat(parameters.cid, parameters.combat1, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, parameters.combat2, parameters.var) end local function onCastSpell3(parameters) doCombat(parameters.cid, parameters.combat3, parameters.var) end function onCastSpell(cid, var) local parameters = {cid = cid, var = var, combat1 = combat1, combat2 = combat2, combat3 = combat3} addEvent(onCastSpell1, 1000, parameters) addEvent(onCastSpell2, 1500, parameters) addEvent(onCastSpell3, 2000, parameters) return true end
  3. Negativo
    Jhoon Stifler recebeu reputação de KotZletY em Otserv Dragon Souls 8.54   
    @Removido!
  4. Gostei
    Jhoon Stifler recebeu reputação de drepeste em Bolt que só use com 1 unico crossbow   
    Bom galera o titulo já diz tudo, eu preciso que a crossbow id 12000 só use com a bolt 12500 e só a vocação 3 e 7.
     
    Ajudem ai por favor +repp
  5. Gostei
    Jhoon Stifler deu reputação a xWhiteWolf em (Resolvido)Spell para ficar intocavel   
    local config = {  storage = 3482101, effect1 = 1 --- efeito ao ser atacado estando invulnerável }  function onStatsChange(cid, attacker, type, combat, value) if value >= 1 and (type == STATSCHANGE_HEALTHLOSS or (getCreatureCondition(cid, CONDITION_MANASHIELD) and type == STATSCHANGE_MANALOSS))  then if getPlayerStorageValue(cid,config.storage) - os.time() > 0 and isCreature(attacker) then doSendMagicEffect(getCreaturePosition(cid), config.effect1) doSendAnimatedText(getCreaturePosition(cid), "IMMORTAL!", 180) return false end end return true end
  6. Gostei
    Jhoon Stifler deu reputação a xWhiteWolf em (Resolvido)Spell para ficar intocavel   
    @skailord, você não pode dar up no tópico dos outros a não ser que tenha passado 24 hrs. Leia as regras
    spells\scripts\especiais\invencible.lua
    local config = {  storage = 3482101, cooldown = 30,  --- tempo entre um uso e outro duration = 5, --- duração effect1 = 29 -- efeito que sai ao falar a spell }  local outfit = createConditionObject(CONDITION_INVISIBLE, config.duration * 1000, false) function onCastSpell(cid, var)      if os.time() - getPlayerStorageValue(cid, 55695) >= config.cooldown then setPlayerStorageValue(cid, 55695, os.time()) doSendMagicEffect(getCreaturePosition(cid), config.effect1) setPlayerStorageValue(cid, config.storage, os.time() + config.duration) doCreatureSay(cid,"UNTOUCHABLE!!!", 19) doAddCondition(cid, outfit) doPlayerSendTextMessage(cid, 27, "You have now ".. config.duration .." seconds of invulnerability.") else doPlayerSendCancel(cid, "Your skill is in cooldown, you must wait "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, 55695))).." seconds.") return false end       return true end spells.xml
    <instant name="testeTK" words="naruto3" lvl="16" mana="500" prem="1" aggressive="0" exhaustion="1000" needlearn="0" event="script" value="especiais/invencible.lua"> </instant> creaturescripts\scripts\login.lua:
    ---------- Invencible ---------------- registerCreatureEvent(cid, "invencible") if getPlayerStorageValue(cid, 3482101) ~= 0 then         setPlayerStorageValue(cid, 3482101, 0)  end creaturescripts.xml:
    <event type="statschange" name="invencible" event="script" value="invencible.lua"/> creaturescripts\scripts\invencible.lua
     
    local config = {  storage = 3482101, effect1 = 2 --- efeito ao ser atacado estando invulnerável }  function onStatsChange(cid, attacker, type, combat, value) if value >= 1 and (type == STATSCHANGE_HEALTHLOSS or (getCreatureCondition(cid, CONDITION_MANASHIELD) and type == STATSCHANGE_MANALOSS))  then if getPlayerStorageValue(cid,config.storage) - os.time() > 0 and isCreature(attacker) then doSendMagicEffect(getCreaturePosition(cid), config.effect1) doSendAnimatedText(getCreaturePosition(cid), "0", 180) return false end end return true end Usei o mesmo storage da outra spell que fiz pra vc uchihagaeshi, mude o storage em todos os scripts ;]
  7. Gostei
    Jhoon Stifler deu reputação a xWhiteWolf em New Library v. 1.2   
    Fala galera, hoje vim trazer pra vocês uma nova biblioteca de funções que eu venho desenvolvendo, pretendo ir atualizando esse tópico constantemente sempre adicionando funções novas e explicando a utilização delas. Algumas funções que eu coloquei aqui estão presentes na OTAL também, porém algumas eu fiz pequenas correções de forma que essa lib poderia facilmente substituir a OTAL sem grandes problemas (pelo menos se você utilizava apenas as funções básicas da otal)
    Todas as funções que não tem -- nome do autor do lado dela foram feitas por mim, xWhiteWolf ou Night Wolf (NW). O restante delas são créditos dos devidos autores, apenas coloquei pois considero funções vitais no server de cada um. Crie um arquivo em data/lib chamado 075 - White Wolf Functions.lua e coloque o seguinte código dentro:



     
    Agora eu vou explicar oque cada função faz porque de nada adianta lançar uma lib e não explicar oque ela faz não é mesmo? hahaha
    Obs inicial: quando uma função tiver em seus parametros um [] significa que oque está dentro do colchetes não é um parâmetro obrigatório.



    Como usar: doShowTimeByPos(cid, getCreaturePosition(cid), 20, 20)
    Irá fazer uma contagem regressiva na posição que o player se encontra começando de 20 e mandando a mensagem na mesma cor da fala dos monstros.
    Essa função é bem útil em actions/spells para fazer contagem de tempo em runas como a magic wall e ver quanto tempo falta pra magic wall sumir)

     
    Obs: Espero que ajude bastante pessoas a entender sobre funções, eu utilizei cid como o principal uid das funções nos exemplos mas você pode muito bem utilizar outros uids, fica a critério seu.

    Qualquer dúvida comentem abaixo que eu vou tentar ajudar da melhor maneira.
    Ahhh, isso daí foi testado em 8.54 mas deve funcionar em quase todas as versões que tenham as funções básicas do TFS. 

    EDIT: Pessoal, agora é sério, essa lib tem fácil umas 600 linhas, das quais umas 500 eu devo ter codado sozinho (na mão, linha por linha). Eu tive todo o trabalho de testar cada uma delas e oque eu peço é o mínimo de gratidão e respeito. Se eu te ajudei clique em Gostei, se você tiver alguma dúvida eu to me colocando a disposição de responder qualquer coisa relacionada ao tópico, mesmo que você não saiba nem oque é uma lib apenas venha aqui e escreva sua dúvida.

    EDIT 2: Duas novas funções adicionas, espero que gostem!

    EDIT 3: Três novas funções adicionadas juntamente com suas respectivas explicações.
  8. Gostei
    Jhoon Stifler deu reputação a xWhiteWolf em Experience Weapon System   
    sem o string.lower ele tá acusando que não achou o monstro.. estranho.. as vezes a função até funciona e o problema pode ser nesse noque ela tá retornando e se ela retorna uma tabela com index experience pra gente chamar. Teria que fazer uns testes no seu servidor pra ter certeza... que versão vc usa?
  9. Gostei
    Jhoon Stifler deu reputação a xWhiteWolf em Experience System   
    Eai galera, eu acabei criando um sistema bem legal que você mata certos bixos e acumula parte da experiencia deles na sua arma, por enquanto tá bem rudimentar mas eu gostaria de saber a opinião de vocês.. esses leveis a mais deveriam significar oque??
    Comentem as sugestões doque vocês acham que o level da arma deveria influenciar no sistema que depois eu vejo de postar ele   
     




    Uma arma +5 deveria ter oque em relação à uma arma que não tem level ainda? É isso que eu quero que vcs comentem com sugestões pra terminar o sistema. Aqui tá uma lista de coisas que eu pensei mas sintam-se livres pra falar opções que vcs considerem melhores:
    • Dropar mais gold dos monstros
    • Adicionar skills pro player
    • Aumentar vida/mana
    • Tirar mais dano (+ attack)
    • Deixar ele tomando alguma condition (poison/curse/fire/energy)
    • Liberar novas magias pro player
    • Ao clicar nela/Ao atacar soltar um efeito bonito
    • Fazer um efeito em area em volta do char que possuir uma arma de nivel alto
    • Aumentar a experiencia ganha
    • Roubar vida/Mana de quem atacar dependendo do level
    • Aumentar chance de critical dependendo do level
     
    Então, essas foram as coisas que eu pensei.. eu também fiz uma votação pra vcs colocarem se eu devo continuar com essa idéia ou se ela é uma merda auheuhuha

Informação Importante

Confirmação de Termo