
Tudo que Bolex postou
-
O que tem de errado neste arquivo?
Recentemente fiz umas mudanças no meu servidor e estava indo tudo bem, até que ao abrir o TFS, fechou sozinho sem mostrar erros. O que há de errado? movements.xml
-
Spell que ricocheteia
fiz essa spell e cheguei até o ponto dela tirar dano do primeiro alvo, alcançar mais 2 alvos, mas o dano nas criaturas subsequentes e a animação da arma ricocheteando não aparece. O que pode ser? Se alguém tiver o script da magia "Executioner's Throw" talvez ajude. Grato. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, true) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_WEAPONTYPE) setCombatParam(combat, COMBAT_PARAM_USECHARGES, true) -- Função para calcular o dano function onGetFormulaValues(cid, level, skill, attack, element, factor) local levelTotal, formula = level / 5, 0.0332 local normal, elemental = -(skill * attack * formula + levelTotal), math.ceil((skill * element * formula + levelTotal)) return normal / 2, normal, -math.random(elemental / 2, elemental) end -- Função para aplicar o dano com intervalo de tempo function aplicarDanoComIntervalo(cid, targets, damage) local delay = 500 -- Meio segundo de atraso entre os ataques (500 milissegundos) for i, target in ipairs(targets) do -- Adiciona um evento para aplicar o dano com intervalo de tempo addEvent(function() -- Aplica a animação do projetil doSendDistanceShoot(getCreaturePosition(cid), getCreaturePosition(target), CONST_ANI_WEAPONTYPE) -- Aplica o dano doTargetCombatHealth(cid, target, COMBAT_PHYSICALDAMAGE, damage, damage, CONST_ME_HITAREA) end, i * delay) -- Atraso aumenta com cada ricochete (i * delay) end end -- Função para ricochetear a magia em até 2 alvos a 2 SQMs de distância function ricochetear(cid, firstTarget, var, damage) local position = getCreaturePosition(firstTarget) local ricochetTargets = {} -- Verificar até 2 alvos próximos a 2 SQMs de distância (em todas as direções) for _, direction in ipairs({{x=1, y=0}, {x=-1, y=0}, {x=0, y=1}, {x=0, y=-1}}) do -- A cada direção, verifica até 2 SQMs de distância for dist = 1, 2 do local newPos = {x=position.x + direction.x * dist, y=position.y + direction.y * dist, z=position.z} local creature = getTopCreature(newPos).uid if isCreature(creature) and creature ~= firstTarget then table.insert(ricochetTargets, creature) end end end -- Aplica o dano com intervalo de tempo nos alvos aplicarDanoComIntervalo(cid, {firstTarget, unpack(ricochetTargets)}, damage) end -- Função para o efeito de cast da magia function onCastSpell(cid, var) -- Inicializa a magia local target = getCreatureTarget(cid) local damage = doCombat(cid, combat, var) -- Aplica o dano inicial ao alvo principal -- Aplica o dano inicial e animação no alvo principal if target then -- Animação do projetil do jogador até o alvo doSendDistanceShoot(getCreaturePosition(cid), getCreaturePosition(target), CONST_ANI_WEAPONTYPE) -- Aplica o dano ao alvo inicial doTargetCombatHealth(cid, target, COMBAT_PHYSICALDAMAGE, damage, damage, CONST_ME_HITAREA) -- Aplica o ricochete se houver um alvo ricochetear(cid, target, var, damage) -- Chama a função de ricochete para outros alvos end return damage end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")
-
Centralização e efeito visual da magia
Meu script esta soltando a magia na frente do personagem. Eu queria que saísse como um exori e gostaria que o assassin só aparecesse no centro não na área 3x3. CODIGO: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_POFF) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ASSASSIN) local area = createCombatArea(AREA_SQUARE1X1) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end
-
(Resolvido)Magia de roubo de vida ou função de roubo de vida para uma vocação (não consegui achar aqui no forum, desculpe a ignorância)
Valeu cara, realmente eu sou bem ignorante aqui no forum. Posso te pedir mais uma coisinha? Se não for incômodo me diz onde eu coloco esses códigos. Não sei se é um spell script ou o que. Me guiando dessa forma, o resto eu sei fazer. EDIT: Ja descobri, vou dar como resolvido parça. Valeu
-
(Resolvido)Magia de roubo de vida ou função de roubo de vida para uma vocação (não consegui achar aqui no forum, desculpe a ignorância)
Então cara, mas eu não acho nada pela pesquisa padrão aqui do forum.
-
(Resolvido)Magia de roubo de vida ou função de roubo de vida para uma vocação (não consegui achar aqui no forum, desculpe a ignorância)
Preciso que uma classe do meu servidor tenha roubo de vida/vampirismo/lifesteal (como quiserem chamar). Sou grato desde já.
-
Proibir vocação de usar escudo.
Como faço para impedir que uma vocation use shields e spellbooks e coisa do gênero?
-
(Resolvido)Por que não remove a assassin star do inventario
Eu sei, mas eu quero que gaste uma unidade assim que eu usar uma magia. Seria um exori con que gasta assassin star pra ficar mais claro.
-
(Resolvido)Por que não remove a assassin star do inventario
meu items.xml ta assim: <item id="7368" article="an" name="assassin star" plural="assassin stars"> <attribute key="weight" value="200"/> <attribute key="attack" value="34"/> <attribute key="shootType" value="redstar"/> <attribute key="range" value="4"/> <attribute key="slotType" value="ammo"/> <attribute key="ammoAction" value="removecount"/> </item> Resolvi transformar a assassin star em munição que é usada ao pronunciar uma spell
-
(Resolvido)Por que não remove a assassin star do inventario
Alissow 5.0 Falta remover a "munição" local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, true) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_REDSTAR) setCombatParam(combat, COMBAT_PARAM_REMOVECOUNT, 7368) function onGetFormulaValues(cid, level, skill) return -(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5)), 0 end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues") function onCastSpell(cid, var) return doCombat(cid, combat, var) end
-
Auto atack com roubo de vida
@GabrielSv Já serve brow, vlw
-
como criar novo item
@penisagudo Vlew pela dica. Vou testar.
-
como criar novo item
Eu gostaria de criar um item novo que tenha a função de um shield. Registrei um item no items.xml tudo certinho, mas quando fui testar com /i, diz que o item não existe
-
Como por defense nos Bows
@penisagudo Só ficou de uma mão, mas ao dar look só aparece a range. Deixa quieto eu vou usar o paladin da forma que ele já está. As principais mudanças eu já fiz. Valeu pelo intenção de ajudar.
-
erros no tfs 0.3.7
@LeoTK Abri o remeres normalmente, localizei o mapa, mas a house parece que não existe. O id é 479. Eu vasculhei no house pallete por todas as cities e nenhuma tem a house com esse numero.
-
erros no tfs 0.3.7
@LeoTK Farei isso. Obrigado. Como faço para localizar uma house que está dando problema aqui no meu server?? @LeoTK Achei o mapa agora preciso arrumar a house (479) e eu não sei como buscar isso.
-
Auto atack com roubo de vida
Uso TFS 0.3.7 Gostaria que alguém esboçasse uma função que da roubo de vida para os knights para cada ataque physical que ele desfira
-
O que tem de errado?
@esnio12 Valeu cara
-
O que tem de errado?
@esnio12 Caramba funcionou. Tem como me explicar o que eu fiz de errado?
-
erros no tfs 0.3.7
@Lyu Entrei na pasta monster e vi que tem o arquivo tanjis.xml. Sabe me dizer que tipo de monstro é este para que eu possa registrar ele. @Lyu Ja consegui arrumar. O nome do monstro estava errado em monsters.xml. Mas continuo com o problema da house, pois eu tento abrir o mapa no remeres 2.2 e fica tudo preto.
-
erros no tfs 0.3.7
falta arrumar esses dois erros pro meu ot ficar zero. O que eu faço? A proposito, eu presumi que TFS fosse the forgotten server, mas não tenho certeza. [20:50:35.866] [Spawn::addMonster] Cannot find "Tanjis" [20:50:36.020] [Warning - Houses::loadFromXml] House entry not set for: (479)
-
Firstitems com nova classe
@JoviM Entendi. Obrigadão rapaz. Essa parte não funcionou, então eu puis os itens em cada classe e ta de boa. commonItems = { {itemid=2152, count=25, inContainer = true}, -- 25 platinum coins {itemid=2643}, -- leather boots {itemid=2173} -- aol }
-
Firstitems com nova classe
@JoviM Funcionou. Obrigado pelo pela ajuda.
-
Firstitems com nova classe
@JoviM não funciona. Meu servidor é 9.60
-
O que tem de errado?
fica retornando esse erro: (luaSetCombatCondition) Combat not found. E a condition fire não funciona. Você tem o código disponível? Se tiver publique-o aqui: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, true) setCombatParam(combat, COMBAT_PARAM_EFFECT, 6) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_THROWINGKNIFE) setCombatParam(combat, COMBAT_PARAM_USECHARGES, true) local condition = createConditionObject(CONDITION_FIRE) setConditionParam(condition, CONDITION_PARAM_DELAYED, 1) addDamageCondition(condition, 10, 2000, -10) setCombatCondition(xCombat, condition) function onGetFormulaValues(cid, level, skill, attack, element, factor) local levelTotal, formula = level / 5, 0.0332 local normal, elemental = -(skill * attack * formula + levelTotal), math.ceil((skill * element * formula + levelTotal)) return normal/2, normal, -math.random(elemental/2, elemental) end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues") function onCastSpell(cid, var) return doCombat(cid, combat, var) end