Ir para conteúdo

Lyu

Membro
  • Registro em

  • Última visita

Tudo que Lyu postou

  1. troca para statschange em creaturescripts.xml
  2. se quer algo pronto na mão, desembolse. Ninguém tem tempo pra ajudar mais não, principalmente com essa atitude aí.
  3. Lyu postou uma resposta no tópico em Suporte Tibia OTServer
    @Kevin Araujo local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 553) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -80.2, -40, -1.5, 0) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 553) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -80.2, -40, -1.5, 0) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, 553) setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -80.2, -40, -1.5, 0) local combat4 = createCombatObject() setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat4, COMBAT_PARAM_EFFECT, 553) setCombatFormula(combat4, COMBAT_FORMULA_LEVELMAGIC, -80.2, -40, -1.5, 0) local arr1 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } local arr2 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } local arr3 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } local arr4 = { {0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0}, } 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) if isCreature(parameters.cid) then doCombat(parameters.cid, combat1, parameters.var) end end local function onCastSpell2(parameters) if isCreature(parameters.cid) then doCombat(parameters.cid, combat2, parameters.var) end end local function onCastSpell3(parameters) if isCreature(parameters.cid) then doCombat(parameters.cid, combat3, parameters.var) end end local function onCastSpell4(parameters) if isCreature(parameters.cid) then doCombat(parameters.cid, combat4, parameters.var) end end function onCastSpell(cid, var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 100, parameters) addEvent(onCastSpell2, 300, parameters) addEvent(onCastSpell3, 400, parameters) addEvent(onCastSpell4, 600, parameters) return TRUE end apenas utilizei isCreature(cid) para verificar se o player existe.
  4. source manin, só fazer uma verificação nas funções addSpectator e removeSpectator, evitando assim que envie as mensagens de join e left caso seja God.
  5. Lyu postou uma resposta no tópico em Suporte Tibia OTServer
    manda a spell para resolvermos.
  6. Lyu postou uma resposta no tópico em Suporte Tibia OTServer
    tfs 0.4 = return true tfs 1.x = return false se não me engano.
  7. Não, mas lá já está incluso. No caso se você fosse usar em outra source, teria que pegar de lá e adaptar à sua.
  8. A cor azul e healar somente o que falta você pode encontrar no OTX Server. Essas alterações são feitas nas sources.
  9. O XML do monstro não foi encontrado na pasta monsters.
  10. Lyu postou uma resposta no tópico em Suporte OTServer Derivados
    qual a versão do seu TFS?
  11. Lyu postou uma resposta no tópico em Suporte & Pedidos
    Realmente todos os baiaks são praticamente iguals. Sempre tive vontade de abrir um servidor totalmente inovador, sem tanta frescura mas com coisas novas, principalmente quests com enigmas. Mas tudo isso leva muito tempo para uma só pessoa e não estou com todo esse ânimo. Mas respondendo a sua pergunta: Acho que vira sim! Mas seria melhor ainda se houvesse uma enquete para que jogadores votassem, assim teríamos mais confiança.
  12. Configure corretamente a ID da cidade. Verifique no remere's apertando CTRL + T e depois verifique no config.lua se está batendo. Para corrigir manualmente caso queira ter certeza de que o erro é na townid, vá em sua database, tabela players, e edite a town_id do player que está com o problema.
  13. Por nada! Sempre que possível, estarei trazendo bons conteúdos
  14. Fala rapeize, hoje venho trazer um sisteminha que fiz há alguns meses para um servidor. E como estou com tempo livre, decidi publicar este sistema. Como funciona? Quando uma criatura morre(configurável, seu loot se espalha pelo chão. OBS : Caso a primeira versão não funcione, utilize a segunda. Versão 1 : Versão 2 : Só isso, valeu!
  15. tem sim amigo, testa e me diz : -- Coded by Zoom.. local info, win, lose = "%s [Level: %s] foi mort%s pelo player %s%s", "%s obteve %s frags seguidos após derrotar %s.", "%s acabou de impedir que %s fizesse uma sequência de %s frags seguidos." local frags, storage = {10, 15, 20, 25, 30, 35, 40, 45, 50}, 30045 function onDeath(cid, corpse, deathList) local target = deathList[1] if(not isPlayer(cid) or not isPlayer(target)) then return true end doCreatureSetStorage(target, storage, getCreatureStorage(target, storage) + (getCreatureStorage(target, storage) == -1 and 2 or 1)) for _, pid in ipairs(getPlayersOnline()) do doPlayerSendChannelMessage(pid, '', info:format(getCreatureName(cid), getPlayerLevel(cid), getPlayerSex(cid) == 1 and "o" or "a", getCreatureName(target)," [Level: "..getPlayerLevel(target).."]."), TALKTYPE_CHANNEL_ORANGE, 0xF) for _, frag in ipairs(frags) do if(getCreatureStorage(target, storage) == frag) then doPlayerSendChannelMessage(pid, '', win:format(getCreatureName(target), frag, getCreatureName(cid)), TALKTYPE_CHANNEL_MANAGEMENT, 0xF) end if(getCreatureStorage(cid, storage) >= frag) then doPlayerSendChannelMessage(pid, '', lose:format(getCreatureName(target), getCreatureName(cid), getCreatureStorage(cid, storage)+1), TALKTYPE_GAMEMASTER_CHANNEL, 0xF) end end end doCreatureSetStorage(cid, storage, 0) return true end
  16. Que estranho! um amigo meu no privado me disse que estava com o mesmo problema que o seu, então eu mandei para ele essa modificação que fiz para você e lá funcionou normal. Veja no login.lua se o registerCreatureEvent(cid, "deathchannel") está correto, sei la.
  17. @Leozincorsair, eu respondi a outra pessoa com o mesmo problema que você. Dá uma olhada ai nas respostas e utilize o script modificado.
  18. Fala pessoal, hoje eu venho trazer uma segunda versão desse meu sisteminha que é o Send Coins System. Para quem não chegou a ver o primeiro, Clique Aqui! PS : Testado em OTX Server 8.60, porém creio que funcione em qualquer servidor 8.60 Bom, mas o que esse sistema faz? O que há de novo? Vamos ao sistema : em data/talkactions/talkactions.xml, adicione isso : <talkaction words="!sendcoins;/sendcoins" event="script" value="sendcoins.lua"/> em data/talkactions/scripts, crie um arquivo sendcoins.lua e cole isso dentro : --[[ Send Coins System developed by Zoom in 04/02/2016 21:27. For more scripts, please contact me on skype : halls.santos Enjoy! ]] local info = [[Olá %s, Este comando serve para o envio de gold coin(s). Caso você queira enviar para um amigo, é necessário informar o nome do jogador e em seguida a quantia em gold coin(s). ex : /sendcoins Magezin 3500 PS : Será descontado do seu balance no banco caso você não tenha coin(s) em sua mochila. Este processo é automático.]] local SEND_COINS_LIMIT = 100000000 local SEND_YOURSELF = false function onSay(cid, words, param) local tmp = param.explode(param, ' ') if not tmp[1] then return doPlayerPopupFYI(cid, info:format(getCreatureName(cid))) elseif not tmp[2] then return doPlayerSendCancel(cid,'Você precisa especificar um valor.') end if(not SEND_YOURSELF and getCreatureByName(tmp[1]) == cid) then return doPlayerSendCancel(cid, 'Não é possível enviar para si mesmo(a).') end if isPlayer(getCreatureByName(tmp[1])) then if(getPlayerBalance(cid) >= tonumber(tmp[2]) and setPlayerBalance(cid, getPlayerBalance(cid) - tmp[2]) or doPlayerRemoveMoney(cid, tmp[2])) or getPlayerAccess(cid) >= 3 then if(tonumber(tmp[2]) <= SEND_COINS_LIMIT) then doPlayerAddMoney(getCreatureByName(tmp[1]), tmp[2]) else return doPlayerSendCancel(cid, "Você tentou enviar muitos coins, tente novamente e ver se não exagera.") end else return doPlayerSendCancel(cid, "Você não possui "..tmp[2].." gold coin(s).") end else return doPlayerSendCancel(cid, 'Este player não está on-line ou não existe.') end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Envio de '..tmp[2]..' gold coin(s) realizada.') doSendMagicEffect(getThingPos(getCreatureByName(tmp[1])), 13) return doPlayerSendTextMessage(getCreatureByName(tmp[1]), MESSAGE_STATUS_DEFAULT, 'Você recebeu '..tmp[2]..' gold coin(s) enviado(s) pelo jogador '..getCreatureName(cid)..'.') end Pronto! Após instalado, utilize o comando /sendcoins para ver um exemplo detalhado de como usar o sistema. Créditos : EU
  19. Bom, teste agora e me diz : -- Coded by Zoom.. local info, win, lose = "%s [Level: %s] foi mort%s pelo %s %s%s", "%s obteve %s frags seguidos após derrotar %s.", "%s acabou de impedir que %s fizesse uma sequência de %s frags seguidos." local frags, storage = {10, 15, 20, 25, 30, 35, 40, 45, 50}, 30045 function onDeath(cid, corpse, deathList) if(not isPlayer(cid)) then return true end local target = deathList[1] doCreatureSetStorage(target, storage, getCreatureStorage(target, storage) + (getCreatureStorage(target, storage) == -1 and 2 or 1)) for _, pid in ipairs(getPlayersOnline()) do doPlayerSendChannelMessage(pid, '', info:format(getCreatureName(cid), getPlayerLevel(cid), getPlayerSex(cid) == 1 and "o" or "a", isPlayer(target) and "player" or "monstro", getCreatureName(target), isPlayer(target) and " [Level: "..getPlayerLevel(target).."]." or "."), TALKTYPE_CHANNEL_O, 0xF) for _, frag in ipairs(frags) do if(getCreatureStorage(target, storage) == frag) then doPlayerSendChannelMessage(pid, '', win:format(getCreatureName(target), frag, getCreatureName(cid)), TALKTYPE_CHANNEL_W, 0xF) end if(getCreatureStorage(cid, storage) >= frag) then doPlayerSendChannelMessage(pid, '', lose:format(getCreatureName(target), getCreatureName(cid), getCreatureStorage(cid, storage)+1), TALKTYPE_CHANNEL_RN, 0xF) end end end doCreatureSetStorage(cid, storage, 0) return true end
  20. em data/libs, abra o arquivo 000-constant.lua e me mande o que tem dentro.
  21. De nada amigo, espero que funcione! Qualquer erro ou bug, me relate

Informação Importante

Confirmação de Termo