Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''spell''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • xTibia - Notícias e Suporte
    • Regras
    • Noticias
    • Soluções
    • Projetos Patrocinados
    • Tutoriais para Iniciantes
    • Imprensa
  • OTServ
    • Notícias e Debates
    • OTServlist
    • Downloads
    • Recursos
    • Suporte
    • Pedidos
    • Show-Off
    • Tutoriais
  • OFF-Topic
    • Barzinho do Éks
    • Design
    • Informática

Encontrar resultados em...

Encontrar resultados que contenham...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Sou

  1. Fala galera, tudo bem? Então, eu li o sot#01 alguns dias atrás e achei bem legal a história no qual ele gira em torno. Tive algumas idéias e, mesmo o evento não tendo acontecido por falta de inscritos, resolvi fazer pra lembrar algumas coisas, afinal tinha uns 7 anos que não mexia com scripts para otserv. O resultado, que vou mostrar abaixo, é um evento global (mas que pode muito bem ser adaptado para uma quest ou outra finalidade). Como parte da recompensa do evento, fiz de bonus uma spell baseada na frozenOrb do whitewolf. Bom vamos lá. O Evento Basicamente é um evento estilo aquela brincadeira antiga de criança "dança das cadeiras". Como assim? Bom, na área do evento o número de espaços vazios vai ser sempre o número de players restantes no evento -1. Isso implica que, em cada turno, pelo menos um player deixará o evento. Contexto Luna é uma estrela endeusada pelos elfos e muito poderosa. De tempo em tempo ela se desperta todos os players onlines são convocados para tentarem domar a sua ira. Aquele que sobreviver à ira de Luna sem se congelar será capaz de controlar seu poder até o próximo despertar. editado: Esqueci de avisar que coloquei para ele ignorar o tile central na contagem de tiles livres pois no tile central, do meu mapa, eu coloquei um frozen starlight representando a luna e, a cada round, há uma animação na luna só para ficar bonitinho. Crie um arquivo chamado lunaevent.lua dentro de scripts e coloque o código abaixo nele: Em globalevents.xml coloque a tag: <globalevent name="Luna" interval="18000000" script="lunaevent.lua" /> A recompensa do evento é uma souvenir, um frozen starlight com o nome do vencedor do evento e x horas (no caso 5) podendo utilizar o poder de luna. Bom, eu criei uma spell para ilustrar o poder de luna e como utilizar o storage que foi preenchido para o vencedor do evento para controlar o uso de uma spell. Luna Strike Primeiramente adicione a tag abaixo em spells.xml: <instant name="Luna Strike" words="exori luna" lvl="100" manapercent="5" prem="0" range="6" casterTargetOrDirection="1" blockwalls="1" exhaustion="10000" groups="1,4000" icon="156" needlearn="0" event="script" value="attack/luna strike.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> Crie um arquivo chamado luna strike.lua dentro de scripts/attacks e coloque o código abaixo nele: Essa magia tem duas peculiaridades: 1. Ela tem uma chance de 1/15 para cada hit que ela dá de congelar o alvo e tornalo imóvel por 1.8 segundos, o que já está implementado nesse script e já funciona. 2. Em pvp, isso é, ao atacar um player, ela tem uma chance de 1/18 de liberar a Benção de Luna e tornar o caster imune aos ataques daquele player por 3 segundos (atenção, não são de todos os players da área, somente do player que liberou a benção de luna ao receber um hit). Para implementar essa segunda parte, precisamos ir em creature scripts. Adicione as tags abaixo a creaturescripts.xml: <event type="attack" name="NoAtt" event="script" value="luna.lua"/> <event type="cast" name="NoSpell" event="script" value="luna.lua"/> <event type="target" name="NoTgt" event="script" value="luna.lua"/> Crie um arquivo chamado luna.lua dentro de scripts e coloque o código abaixo nele: Pronto, o seu evento está configura e sua magia 'Luna Strike' poderá ser castada pelo último vencedor do mesmo. Espero que gostem, os scripts estão comentados e são bem auto-explicativos, mas qualquer dúvida podem me perguntar. Abraços,
  2. Fala galera gostaria de ajuda com o seguinte problema. Após mudar a distro do servidor pela do PDA 2015 Open Source, o dano de todas as magias do servidor esta de acordo com a % de hp do target. Assim dificultando pois quando menos HP menor o hit chegando ao ultimo hit de -1 deis de ja agradeço, caso precise de algum script das spells etc. VALEU encontrei onde esta o erro. ele vai dividindo o valor do dano -> valor = valor / getDefense(cid) até que chega em um numero como 1 que nao da pra dividir e assim acaba o dano. Alguem ajuda?
  3. Como funciona: *Ao usar uma spell certo número de vezes, esta avançará de nível, aumentando o dano e caso queiram, mudando seu efeito. Adicionando no servidor: 1º - Crie um arquivo .lua com o nome de rockthrow em Data / Spells / Scripts com o seguinte conteúdo: 2º- Adicione esta tag no arquivo spells.xml (Data / Spells): Modificando o arquivo rockthrow.lua: *TODAS AS LETRAS EM DESTAQUE DEVEM SER SUBSTITUÍDAS DA SEGUINTE MANEIRA: x = Distance Effect da spell nível 1; y = Distance Effect da spell nível 2; z = Distance Effect da spell nível 3; w = Efeito que surgirá no player quando avançar a spell de nível; a = Número de vezes que a spell deve ser usada para upar ao nível 2; b = Número de vezes que a spell deve ser usada para upar ao nível 3. Bom uso. Att, Omnia.
  4. então gente tenho uma spell e queria configurar ela para dar somente de 10k a 20k de dano alguem poderia ajudar? local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -59.3, -30, -69.7, 0) local arr = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, } local area = createCombatArea(arr) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end na verdade só quero saber a formula para eu fazer em todas
  5. Pessoal, gostaria de saber se é possível fazer com que o dano de uma magia seja definida por uma outra skill sem ser o magic level propriamente dita, por exemplo o nivel da skill first aumentando o dano da magia.
  6. Boooa tarde xtibianos, venho por meio desse topico fazer 1 ilustre pedido de spells, que pode ser bem inovador tanto pra mim como pra outros membros que busca spells novas. Bom meu pedido se resume em 2 spells. 1 - Uma spell de target que solta-se 1 ataque elétrico, esse ataque da 1 dano regular e que o target fica-se eletrocutado durante 10 segundos levando hit de 50, e caso algum monstro ou jogador encoste nesse target, tb seja eletrocutado durante 10 segundos. 2 - Segunda spell, gostaria de uma spell para paladin onde eu solta-se uma flexa na direção reta de 7 sqm, se a flecha bater em algo o jogador q soltou a magia da flecha seja puxado até o alvo onde a flexa bateu e de 1 hit regular.
  7. Essa spell já existe no fórum porém com alguns bugs. Tentei atualizar ela para versões mais recentes mas o TFS é o único que está aceitando ela. Caso dê algum erro, vá até a linha 57 do script e adicione dois "--". Ficando assim: Creio que não irá ter erro. Achei a spell bem bacana porém estou sem SS dela.
  8. Bom, eu tinha criado um sv, mas tive que parar por não ter retorno... criei vários scripts, magias, mapas, etc... pra não ficar tudo parado vou disponibilizar algumas coisas feitas por mim Demorei pra fazer esse script, ele podia estar bem mais simples (mas não sei como fazer isso, assim funciona... então XD) Oque faz: Essa magia simplesmente rouba a vida do target e te da a mesma vida, tinha feito isso para um knight, então os efeitos estão para knights... é só trocar caso queira (: Imagemzinha básica da magia funcionando Exori Bong.lua: function onCastSpell(cid, var) local playerpos = getCreaturePosition(cid) local target = getCreatureTarget(cid) local trapos = getCreaturePosition(target) local level = getPlayerLevel(cid) local numero1 = (level*1.5) -- Dano Mínimo local numero2 = (level*2.5) -- Dano Máximo for i = numero1, numero2 do levelz = (math.random(numero2)) end doCreatureAddHealth(target, -levelz) doSendAnimatedText(trapos, levelz, 180) doCreatureAddHealth(cid, levelz) doCreatureAddMana(cid, -300) -- Quanto Vai Gastar de Mana doSendMagicEffect(trapos, 9) doSendMagicEffect(playerpos, 12) doSendDistanceShoot(trapos, playerpos, 40) return TRUE endspells.xml: <instant name="Exori Bong" words="exori bong" lvl="80" mana="300" prem="1" range="3" needtarget="1" blockwalls="1" needweapon="1" exhaustion="2000" needlearn="0" event="script" value="attack/exori bong.lua"> <vocation id="4"/> <vocation id="8"/> </instant>Espero que gostem da mágia
  9. Olá galera, eu estava pesando no Dota e talz... dai veio o Blood Seeker na cabeça.. e vi que ele tem umas magias bem dahora de sugar a life dos oponentes. Então eu descidi fazer uma magia dessas e postar aqui para voces ^^ Bom, essa magia está 90% configuravel dentro do script. eu só não coloquei para selecionar as vocaçoes que iriam usar ela, isso está no spells.xml mesmo. Bom, vá em Data/Spells/scripts, crie um arquivo chamado : bloodsuck.lua, e dentro adicione http://pastebin.com/PXdAJu0h Caso o link do pastebin não abra automaticamente, é so entrar no link mesmo. Agora vá em spells.xml, e adicione a seguinte TAG. Bom, lembrando... As configuraçoes do xml não irão funcionar, porq está configurando dentro do .lua Agora vou ensinar a voces a configurar o script . Screenshot da magia. Créditos : 100% OrochiElf Se voce tem sugestoes de magias do Dota. deixe ai embaixo. vlw.
  10. Esse script foi feito por Codex NG. Bom, o nome já diz tudo então... Bom proveito! global.lua function upGradeSpells(player, words, tier, max) if player:getStorageValue(SPELL_WORDS[words]) < max then if player:getStorageValue(SPELL_WORDS[words]) < TIER[tier] then player:setStorageValue(SPELL_WORDS[words], TIER[tier]) player:getPosition():sendMagicEffect(CONST_ME_CONFETTI_HORIZONTAL) doCreatureSay(cid, tier, TALKTYPE_ORANGE_1, false, 0, player:getPosition()) elseif player:getStorageValue(SPELL_WORDS[words]) == TIER[tier] then player:sendCancelMessage("You've already scribed a this version of the spell.") player:getPosition():sendMagicEffect(CONST_ME_POFF) return false else player:sendCancelMessage("You already have a higher spell version scribed.") player:getPosition():sendMagicEffect(CONST_ME_POFF) return false end else player:sendCancelMessage("You've reached the maximum tier for this spell.") player:getPosition():sendMagicEffect(CONST_ME_POFF) return false end end --light, haste, single targets, area, single target heal, support spell, speed SPELL_WORDS = { ["exura dis"] = 1001, ["exevo dis flam hur"] = 1002, ["exiva"] = 1003, ["exori min flam"] = 1004, ["utevo lux"] = 1005, ["exura"] = 1006, ["exani tera"] = 1007, ["exura ico"] = 1008, ["exana pox"] = 1009, ["exani hur"] = 10010, ["exori vis"] = 10011, ["exori tera"] = 10012, ["exevo con"] = 10013, ["utevo gran lux"] = 10014, ["exori flam"] = 10015, ["exevo pan"] = 10016, ["adevo grav pox"] = 10017, ["utamo vita"] = 10018, ["utani hur"] = 10019, ["adevo grav flam"] = 10020, ["exori frigo"] = 10021, ["adori min vis"] = 10022, ["adana pox"] = 10023, ["adura gran"] = 10024, ["exori moe ico"] = 10025, ["exevo con pox"] = 10026, ["exori mort"] = 10027, ["exori ico"] = 10028, ["adeta sio"] = 10029, ["adito grav"] = 10030, ["exevo con mort"] = 10031, ["adevo grav vis"] = 10032, ["exevo flam hur"] = 10033, ["exura sio"] = 10034, ["exevo frigo hur"] = 10035, ["exura gran"] = 10036, ["utani gran hur"] = 10037, ["exeta res"] = 10038, ["adori blank"] = 10039, ["adito tera"] = 10040, ["exana vis"] = 10041, ["exevo vis lux"] = 10042, ["utevo res ina"] = 10043, ["exori con"] = 10044, ["exevo con hur"] = 10045, ["adori tera"] = 10046, ["adura vita"] = 10047, ["adevo mas pox"] = 10048, ["adori vis"] = 10049, ["exevo con flam"] = 10050, ["utani tempo hur"] = 10051, ["utevo res"] = 10052, ["utori flam"] = 10053, ["utevo vis lux"] = 10054, ["exana ina"] = 10055, ["adevo mas flam"] = 10056, ["adevo res flam"] = 10057, ["adori san"] = 10058, ["adori flam"] = 10059, ["adevo ina"] = 10060, ["adana mort"] = 10061, ["adevo grav vita"] = 10062, ["adori frigo"] = 10063, ["exori hur"] = 10064, ["adori mas vis"] = 10065, ["adori mas tera"] = 10066, ["exevo gran vis lux"] = 10067, ["adevo mas grav pox"] = 10068, ["exura vita"] = 10069, ["exana flam"] = 10070, ["adori mas frigo"] = 10071, ["adori mas flam"] = 10072, ["adevo mas hur"] = 10073, ["adevo grav tera"] = 10074, ["utura mas sio"] = 10075, ["utori mas sio"] = 10076, ["utito mas sio"] = 10077, ["utamo mas sio"] = 10078, ["adevo mas grav flam"] = 10079, ["exevo con grav"] = 10080, ["exori mas"] = 10081, ["utori vis"] = 10082, ["utana vid"] = 10083, ["exori"] = 10084, ["exura san"] = 10085, ["exura gran mas res"] = 10086, ["adevo mas vis"] = 10087, ["exevo vis hur"] = 10088, ["exevo tera hur"] = 10089, ["exori san"] = 10090, ["exevo gran frigo hur"] = 10091, ["utori kor"] = 10092, ["adevo mas grav vis"] = 10093, ["exeta vis"] = 10094, ["exeta con"] = 10095, ["exana kor"] = 10096, ["adori gran mort"] = 10097, ["utura"] = 10098, ["utori pox"] = 10099, ["exevo mas san"] = 100100, ["adana ani"] = 100101, ["utamo tempo san"] = 100102, ["exevo gran mas tera"] = 100103, ["utamo tempo"] = 100104, ["exevo gran mas vis"] = 100105, ["exori amp vis"] = 100106, ["exevo con vis"] = 100107, ["utito tempo san"] = 100108, ["exura gran san"] = 100109, ["exevo gran mas frigo"] = 100110, ["exevo gran mas flam"] = 100111, ["utito tempo"] = 100112, ["exori gran tera"] = 100113, ["exori gran flam"] = 100114, ["exori min"] = 100115, ["utori san"] = 100116, ["utori mort"] = 100117, ["exori gran vis"] = 100118, ["exana mort"] = 100119, ["exura gran ico"] = 100120, ["exori gran frigo"] = 100121, ["exori max flam"] = 100122, ["exori max tera"] = 100123, ["exori gran con"] = 100124, ["exori gran"] = 100125, ["exori max frigo"] = 100126, ["exori max vis"] = 100127, ["utura gran"] = 100128, ["exori gran ico"] = 100129 } TIER = { ["Apprentice"] = 0, ["Journeyman"] = 1, ["Adept"] = 2, ["Expert"] = 3, ["Master"] = 4, ["Grandmaster"] = 5 } Isso é salvo em chatchannels data\chatchannels\chatchannels.xml <?xml version="1.0" encoding="UTF-8"?> <channels> <channel id="2" name="Tutor" script="tutor.lua" /> <channel id="3" name="World Chat" public="1" script="worldchat.lua" /> <channel id="4" name="Spells" public="1" script="spells.lua" /> <channel id="5" name="Trade" public="1" script="advertising.lua" /> <channel id="6" name="Advertising-Rookgaard" public="1" script="advertising-rook.lua" /> <channel id="7" name="Help" public="1" script="help.lua" /> <channel id="8" name="Gamemaster" script="gamemaster.lua" /> </channels> data\chatchannels\scripts\spells.lua local CHANNEL_CHARACTER = 4 local tier = { [0] = "[ Apprentice ]", [1] = "[ Journeyman ]", [2] = "[ Adept ]", [3] = "[ Expert ]", [4] = "[ Master ]", [5] = "[ Grandmaster ]" } local function listSpells(player) local count = getPlayerInstantSpellCount(player) local text = "" local t = {} for i = 0, count - 1 do local spell = getPlayerInstantSpellInfo(player, i) if spell.level ~= 0 then if spell.manapercent > 0 then spell.mana = spell.manapercent .. "%" end t[#t+1] = spell end end table.sort(t, function(a, b) return a.level < b.level end) local prevLevel = -1 for i, spell in ipairs(t) do local line = "" if prevLevel ~= spell.level then if i ~= 1 then line = "\n" end line = line .. "\nSpells for Level " .. spell.level .. "\n" prevLevel = spell.level player:sendChannelMessage(cid, line, TALKTYPE_CHANNEL_O, CHANNEL_CHARACTER) end if player:getStorageValue(SPELL_WORDS[spell.words]) > 0 then local index = player:getStorageValue(SPELL_WORDS[spell.words]) text = " " .. spell.words .. " " .. tier[index] .. " - " .. spell.name .. " : " .. spell.mana .. "\n" else text = " " .. spell.words .. " " .. tier[0] .. " - " .. spell.name .. " : " .. spell.mana .. "\n" end player:sendChannelMessage(cid, text, TALKTYPE_CHANNEL_Y, CHANNEL_CHARACTER) end end function onJoin(player) addEvent(listSpells, 100, player) return true end function onSpeak(player, type, message) player:sendCancelMessage("You may not speak in this chat.") return false end Exemplo: data\chatchannels\actions\scripts\spells.lua function onUse(cid, item, fromPosition, itemEx, toPosition, isHotkey) upGradeSpells(cid, "exevo pan", 1, item) return true end Exemplo em Spell: local food = { 2666, -- meat 2671, -- ham 2681, -- grape 2674, -- apple 2689, -- bread 2690, -- roll 2696 -- cheese } function onCastSpell(creature, var) if not creature:isPlayer() then return false end if creature:getStorageValue(SPELL_WORDS["exevo pan"]) > 0 then -- if the tier is higher then apprentice increase the amount of food created creature:addItem(food[math.random(#food)], (creature:getStorageValue(SPELL_WORDS["exevo pan"]) + 1)) creature:getPosition():sendMagicEffect(CONST_ME_MAGIC_GREEN) else -- else give 1 piece of food creature:addItem(food[math.random(#food)], 1) creature:getPosition():sendMagicEffect(CONST_ME_MAGIC_GREEN) end return true end
  11. Ola Bom Dia,Boa Tarde, Boa Noite, Perdão se for a sessão errada mas gostaria de fazer um breve pedido se e possível um script das magias novas contendo no tibia atualmente no caso de qualquer versão superior a 8.7 para um servidor 8.6. "em todo caso volto a repetir, se postei na área errada perdão " bem de fato era isso se e possível adicionar essas spells em um server 8.6..
  12. Entus

    Heal Friend

    Fala aí gurizada. Hoje vou trazer um script que não tenho visto muito em ot's 8.54, ou em qualquer outra versão, e eu acho ele bem útil para Druid/Sorcerer. OBJETIVO: Curar um amigo, ou seja, vamos usar um exemplo. Quero curar meu amigo que está com a vida baixa, vou usar o comando Ultra Heal "Amigo. Ok, vamos ao script. Em data/spells/scripts crie um arquivo com o nome de healaamigo.lua e dentro coloque: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_PINK) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE) setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 10, 10, 16, 22) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Depois de ter feito isto abra o spells.xml e coloque embaixo de uma spell a seguinte linha: <instant name="Ultra Heal" words="ultra heal" lvl="50" mana="200" prem="0" aggressive="0" needtarget="1" params="1" exhaustion="1000" groups="2,1000" icon="84" needlearn="0" event="script" value="healing/healaamigo.lua"> <vocation id="2"/> <vocation id="6"/> </instant> Eu coloquei para Druid e Sorcerer usarem, caso queira que mais vocations tenham essa spell é só colocar os ids delas. Espero que usem. Enjoy it!
  13. Pessoal estava procurando, e até tentei fazer um buff que aumente o dano da gloves em %, inves de aumentar o skill, e tambem o hp e mp, e ao invés de acabar com um determinado tempo, ele acabe com uma determinada quantidade de mp : Buff que uso: local outfit = {lookType = 399} -- Roupa que ira transformar no caso seu corpo ficara em choque local tempo = 12000 * 1000 -- Tempo, nesse caso esta 60 segundos Lembrando que 1000 = 1 segundo local ml = 5 -- quantos ira aumentar o skill de ML local skillfist = 10 -- quantos ira aumentar o skill de Fist local skillsword = 0 -- quantos ira aumentar o skill de Sword local skillaxe = 0 -- quantos ira aumentar o skill de Axe local skillclub = 0 -- quantos ira aumentar o skill de Club local skilldistance = 0 -- quantos ira aumentar o skill de Distance local skillshield = 10 -- quantos ira aumentar o skill de Shield local health = 0 -- A cada 1 segundo quantos aumentar de vida local mana = 55 local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, 42) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield) setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 100) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setConditionParam(condition, CONDITION_PARAM_MANAGAIN, mana) setConditionParam(condition, CONDITION_PARAM_MANATICKS, 1000) setCombatCondition(combat, condition) local sys = createConditionObject(CONDITION_OUTFIT) setConditionParam(sys, CONDITION_PARAM_TICKS, tempo) addOutfitCondition(sys, outfit) setCombatCondition(combat, sys) function onCastSpell(cid, var) return doCombat(cid, combat, var) end
  14. Olá galerinha do xtibia, boa tarde. Tava até com saudades de postar algo hoje (risos). Preciso de mais uma spell segue as condições: - Acho que o proprio tópico ja diz, ela deverá drenar a mana do oponente e transforma-lá em vida(health) para o lançador da magia. - Pode ser em quantidade min e max ou em %, porcentagem ficaria mais show. Obrigado desde já, valendo meu REP. Up
  15. ola!! gostaria de alguem que possa me ajudar sei criar passivas mais nao sei por status nelas. por exemplo eu preciso de uma passiva de gelo que quando ela usar o pokemon que esta batendo tomara o status freeze ou seja ficara congelando e com isso ficara sem atacar por uns segundos. agradeço muito quem possa ajudar vlww.
  16. Pessoal boa noite, Venho pedir a vocês uma spell, normal mas que ela pudesse após tirar o dano, causar um efeito burn A spell \/ quero que ela após a damage cause efeito burn [spoiler]local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 30) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -25.1, 1, -26.2, 1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 30) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -25.2, 1, -26.2, 1) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 30) setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -25.2, 1, -26.1, 1) local combat4 = createCombatObject() setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 30) setCombatFormula(combat4, COMBAT_FORMULA_LEVELMAGIC, -25.2, 1, -26.2, 1) arr1 = { {3} } arr2 = { {3} } arr3 = { {3} } arr4 = { {3} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local area4 = createCombatArea(arr4) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) setCombatArea(combat4, area4) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end local function onCastSpell2(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var) end local function onCastSpell3(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat3, parameters.var) end local function onCastSpell4(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat4, parameters.var) end function onCastSpell(cid, var) local position127 = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 200, parameters) addEvent(onCastSpell2, 600, parameters) addEvent(onCastSpell2, 1000, parameters) addEvent(onCastSpell2, 1400, parameters) doSendMagicEffect(position127, 139) return TRUE end [/spoiler]
  17. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, true) arr = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, } local area = createCombatArea(arr) setCombatArea(combat, area) function spellCallback(param) if param.count > 0 or math.random(0, 1) == 1 then doSendMagicEffect(param.pos, CONST_ME_MORTAREA) doAreaCombatHealth(param.cid, COMBAT_DEATHDAMAGE, param.pos, 0, -3000, -8000, CONST_ME_EXPLOSIONHIT) end if(param.count < 5) then param.count = param.count + 1 addEvent(spellCallback, math.random(1000, 4000), param) end end function onCastSpell(cid, var) doPlayerSetPzLocked(cid) return doCombat(cid, combat, var) end function onTargetTile(cid, pos) local param = {} param.cid = cid param.pos = pos param.count = 0 spellCallback(param) end setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile") function onCastSpell(cid, var) doSetCreatureOutfit(cid,{lookType = 290, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet, lookAddons = getCreatureOutfit(cid).lookAddons}, 18 * 1000) return doCombat(cid, combat, var) end
  18. estou trabalhando em um servidor 8.60 faz alguns anos que não mecho com otserver estou aprendendo tudo denovo a parte de scripts , mapper etc... e não estou conseguindo desagrupar runas e potions , quero deixar como 7.6 alguem ai pode me ajudar ? talvez aqui não seja o lugar certo se não for me avise ou mova o meu topico estou precisando muito
  19. ola novamente. dessa veis gostaria de pedir uma magia passiva aquela que bate no oponente sozinha quando estão atacando o poke . vamos lá. a magia faz uma volta em volta do pokémon dando efeito de water e dano em todos os lados conforme passa o efeito dela e é ativada quando o pokémon esta tomando dano de um outro pokémon. tentei modificar a lava-conter que já existe no meu serve mais não funcionou então vim aq pedir desde já agradeço de coração quem puder ajudar ae vlww. pegando partes de comentarios no forum consegui fazer uma legau aq. em data\spells\scripts\passivas crie uma magia copia uma que ja tenha ae exemplo lava-counter e adiciona a tag da magia em spells.xml em criaturescripts\scripts\exp2.lua em data\lib\pokemonmoves.lua em data\lib\configuration.lua e por fim nos status das magias do monstro poe passive1 = {name = "Ice-Counter", level = 1, cd = 0, dist = 6, target = 0, f = 50, t = "ice"}, espero que possa ajudar ae a quem precisar
  20. Galera, tem como alguem adaptar esse script de spell para a versao 8.6 TFS 0.4? obrigado!
  21. Boa tarde galera, vim aqui pedir a vocês uma spell de área que só aparece efeito no mostro, como o tito já diz tentei fazer mas não obtive resultados, para facilitar vou mandar um video de exemplo, a spell começa em +-3min
  22. Bom gente, eu tava olhando este tutorial aqui> TÓPICO e adorei, mas eu queria fazer esse sistema com QUALQUER SPELL, O sistema é assim: actions/scripts/questspell.lua actions.xml Uma spell de exemplo que eu gostaria de aplicar o sistema de permissão é essa: frozen orb.lua Por favor, apliquem o sistema nessa spell e ME EXPLIQUEM CADA COISA QUE DEVE SER ALTERADA NA SPELL. Outro exemplo de spell, só que ela não usa storage: magic of death.lua POR FAVOR, PRECISO MUITO DISSO!!! Quero colocar o sistema em várias spells!
  23. Bom gente, eu tava vendo o script Frozen Orb do @@Night Wolf eu pedi pra ele editar a spell, pra orb seguir o player que castou a spell, ele disse pra ver o script do Maxwellden, mas não achei nada, então resolvi criar um tópico pedindo pra que alguém possa resolver esse meu pedido, ai vai o tópico do Frozen Orb do xWhiteWolf: Então eu gostaria que os efeitos da magia, seguissem o player que castou a spell, e que retirassem aquele orb em baixo do player, ficou estranho kkkkk. Bom os efeitos continuariam girando em volta do player, e os danos seriam causados ao redor do player, e não no local de onde ele castou. Bom, é isso! Obrigado desde já! #RESOLVIDO Script: Crédito: xWhiteWolf
  24. queria 1 Spell tipo a Spell de Refletir,após o Player ultiliza a Spell éla só ser ativada quando otro Player attacalo ex: Spell Descrição: o Player vai falar "Paralizy Spell" a Paralizy ira ativar,ai quando o Player2 ataca ele a Spell vai ativa e vai deixa o Player2 paralizado durante 10s up up
  25. Ola galera, eu to precisando de ajuda, estou querendo adicionar uma spell Iron defense em um pokemon mas nao sei como colocar a outifit correta Ex: coloco iron defense em metagross porem aparece outfit do iron defense do steelix, como eu faço pra adicionar a correta?
×
×
  • Criar Novo...