Ir para conteúdo
  • Cadastre-se

Mateus Robeerto

Héroi
  • Total de itens

    335
  • Registro em

  • Última visita

  • Dias Ganhos

    44

Tudo que Mateus Robeerto postou

  1. É possível sim, mas não se preocupe, está aqui pronto para usar. Os sprites são do 13x que foi downgrage para o 8.6 e ainda estão junto com os items.otb e XML. Fique à vontade para usar, aproveite. Na verdade, peguei o link do cara lá da Otland. https://mega.nz/folder/5FQEnT4R#pAbmAAhpBhmcP1jaVkXm8Q Você precisa usar o programa ObjectBuilder na versão mais recente, ele está disponível aqui também. https://github.com/punkice3407/ObjectBuilder/releases/tag/v0.5.5 Espero ter ajudado. Não se esqueça de marcar como solução e deixar uma reputação positiva. Te
  2. local ItemID = 1964 -- ID do papel function PremmyPoints(item) local points = getItemAttribute(item, "points") if points then return tonumber(points) else return 0 end end function Success(fromplayer, toplayer, points) if getPlayerItemCount(toplayer, ItemID) >= 1 and getAccountPointsTrade(fromplayer) >= points then doAccountRemovePointsTrade(fromplayer, points) doPlayerRemoveItem(toplayer, ItemID, 1) doAccountAddPointsTrade(toplayer, points) doPlayerSendTextMessage(toplayer, MESSAGE_STATUS_WARNING, "Transfer successful
  3. Basta dar uma olhada em 'lib/compat/compat.lua'. Lá você encontrará todas as informações sobre as funções. Foi assim que aprendi muito e consegui converter um script do TFS 0.4 para as versões mais recentes do TFS 1x. aqui exemplo: function onUse(cid, item, fromPosition, itemEx, toPosition) local player = Player(cid) -- Obtém o jogador com base no ID passado para a função if player then local itemID = 1234 -- Substitua pelo ID do item que deseja adicionar local quantidade = 1 -- Substitua pela quantidade desejada if player:addItem(i
  4. local npcName = "Mercador Vip" local npc_refiller = Action() function npc_refiller.onUse(player, item, fromPosition, target, toPosition, isHotkey) local spawnPosition = player:getPosition() local npcCode = Game.createNpc(npcName, spawnPosition) if npcCode then local despawnTime = 2 * 60 * 1000 addEvent(removeNpc, despawnTime, npcName) end return true end function removeNpc(npcName) local npcTarget = Npc(npcName) if npcTarget then npcTarget:remove() end end npc_refiller:id(10227) npc_refiller:register()
  5. data/globalevents/efeitos/tps.lua .... Quer saber sobre o XAMPP? É correto usar o XAMPP mais antigo, o 7.x, como o 'xampp-windows-x64-7.4.29-1-VC15-installer', pois é mais compatível apenas com o GESIOR ACC.
  6. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) local area = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat, area) function onCastSpell(cid, var) local pos = getCreaturePosition(cid) local creatures = getSpectators(pos, 3, 3, false) if creatures then local validTargets = {} for _, target in ipairs(creatu
  7. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) local area = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat, area) function onCastSpell(cid, var) local pos = getCreaturePosition(cid) local creatures = getSpectators(pos, 3, 3, false) if creatures then local validTargets = {} for _, target in ipairs(cr
  8. vamos tentar aqui: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) local area = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat, area) function onCastSpell(cid, var) local pos = getCreaturePosition(cid) local creatures = {} for _, target in ipairs(getSpectators(pos, -1, -1, false)) do if isCreature(target) and (is
  9. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) local area = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat, area) function onCastSpell(cid, var) local target = getCreatureTarget(cid) if target and (isPlayer(target) or isMonster(target)) then local first = getCreatureHealth(target) doCreatureSay(cid, "Prepare to be d
  10. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) local area = createCombatArea(AREA_CROSS5X5) setCombatArea(combat, area) function onCastSpell(cid, var) local pos = getCreaturePosition(cid) local targets = getCreaturesInArea(pos, area) for _, target in ipairs(targets) do if isCreature(target) then if isPlayer(targe
  11. function onCastSpell(cid) local target = getCreatureTarget(cid) if target < 1 then doPlayerSendCancel(cid, "You need a target.") return false end local damage = 100 -- Defina aqui o valor do dano que você quer curar, por exemplo, 100 para curar 100% do dano causado. local healthToRestore = (damage / 100) * getCreatureDamage(cid, target) doCreatureAddHealth(cid, healthToRestore) doSendAnimatedText(getThingPos(cid), "+" .. healthToRestore, 25) doSendDistanceShoot(getThingPos(cid), getThingPos(target), 15) doAreaCombatHeal
  12. Baixe o TFS 1.5 8.0 do Nekiro, pois é melhor, mais atualizado e oferece a possibilidade de adicionar um sistema de montarias semelhante ao do Tibia Global.
  13. local potions = { [6542] = {needLevel = 2000, rate = 2.0, duration = 1800}, [6543] = {needLevel = 3000, rate = 3.0, duration = 1800}, [6544] = {needLevel = 4000, rate = 4.0, duration = 1800}, [6545] = {needLevel = 5000, rate = 5.0, duration = 1800}, [2328] = {needLevel = 6000, rate = 6.0, duration = 1800}, [6541] = {needLevel = 7000, rate = 7.0, duration = 1800}, [12599] = {needLevel = 8000, rate = 8.0, duration = 1800}, [8300] = {needLevel = 10000, rate = 10.0, duration = 1800}, } if not expPotions then expPotions = {playerData = {}} end function expPotio
  14. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_WHIRLWINDSWORD) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -5.0, -1000000000, -5.0, -1000000000) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, CONST_ME_PHYSICALDAMAG) setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_WHIRLWINDSWORD) setCombatForm
  15. Hoje em dia, sem a necessidade de sistemas improvisados ou gambiarras, basta descomentar as linhas na source, e pronto, as montarias funcionam. Isso vale para o TFS 1.5 do Nekiro. Fiz um downgrade do 8.0 para o 7.92 e converti todos os sprites do 13x para o 7.92... TUDO ESTÁ LINDO E PERFEITO... hahaha O TFS 1.5 do Nekiro possui três versões diferentes, incluindo 7.7, 8.6 e 8.0. Para quem quer começar um projeto, recomendo pegar essa base do Nekiro, pois ela é um downgrade baseado na versão 12x para 8.0, 7.7 e 8.60. Espero ter ajudado.
  16. TFS 0.4 combat.cpp procure esta linha. bool Combat::CombatHealthFunc(Creature* caster, Creature* target, const CombatParams& params, void* data) Basta substituir todo o código aqui. bool Combat::CombatHealthFunc(Creature* caster, Creature* target, const CombatParams& params, void* data) { int32_t change = 0; if (Combat2Var* var = (Combat2Var*)data) { change = var->change; if (!change) change = random_range(var->minChange, var->maxChange, DISTRO_NORMAL); } if (g_game.combatBlockHit(params.combatType, caster, tar
  17. Bom Dia. finalmente, encontrei uma solução para o aumento de dano por reset, sem precisar de muitas modificações na source ou libs adicionais. É simples de implementar, basta adicionar e usar um comando ou NPC com um storage. foi testado e está funcionando corretamente. OTX 2 ou 3. combat.cpp procure esta linha. bool Combat::CombatHealthFunc(Creature* caster, Creature* target, const CombatParams& params, void* data) Basta substituir todo o código aqui. bool Combat::CombatHealthFunc(Creature* caster, Creature* target, const CombatParams& params, void* da
  18. Já existe um tutorial sobre como compilar essa base. Dê uma olhada no YouTube.
  19. Você só adicionou no 'const.h' e compilou para funcionar? Não, você deve adicionar essa parte no 'const.h' e 'tools.cpp', e talvez seja necessário mexer em 'game.cpp' e 'player.cpp'. Eu recomendo que você baixe um servidor que já tenha esses efeitos. Depois, siga a source e faça uma cópia igual para implementar na sua source. Faça isso um por um.
  20. esses poucos efeitos, porém ele é baseado no Nostalrius (TFS 1.2) downgrage. Quando eu baixei e examinei, notei muitas diferenças significativas em relação às TFS 0.4 e 1.x normais. Há alguns arquivos estranhos e ainda tem uns sistemas top, incluindo auras, wings, mercado e tudo mais... realmente não gostei, haha. Essa libs não existe. Basta verificar na fonte. https://github.com/ErikasKontenis/SabrehavenServer/blob/master/src/const.h @RAJADAO Você só precisa
  21. local config = { minlevel = 500, price = 100000000, newlevel = 20, priceByReset = 100000000, percent = 10, maxresets = 20, levelbyreset = 100, damagePercent = 5, } function getResets(uid) local resets = getPlayerStorageValue(uid, 378378) if resets < 0 then resets = 0 end return resets end local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappea
  22. É só substituir nessa parte e fazer o teste. function addReset(cid) if npcHandler:isFocused(cid) then npcHandler:releaseFocus(cid) end talkState[talkUser] = 0 resets = getResets(cid) setPlayerStorageValue(cid, 378378, resets + 1) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) -- Ajustar HP local hp = getCreatureMaxHealth(cid) local resethp = hp * (config.percent / 100) setCreatureMaxHealth(cid, resethp) local differencehp = hp - resethp doCreatureAddHealth(cid, -differencehp) -- Ajustar MP local mana = getC
  23. Var.woe Var = { woe = {}, Castle = {}, woe_config = {}, stor = {} } --castle name (?) Var.Castle.name = 'Cyber Castle' --aid of entry. Var.Castle.tiles = 3131 --aid for created portals. Var.Castle.portals = 3132 --aid of flags in castle. Var.Castle.banderas = 3133 --aid of empes bases. Var.Castle.bases = 3134 --uids in case you have decorations with info. Var.Castle.decoraciones = {} --where you teleported from temple. Var.Castle.pos = {x = 55, y = 79, z = 7} --where players are teleported when finished or castle owner change. Var.Castle._exit = {x = 1028, y = 1024,
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo