Ir para conteúdo

Frenesy

Membro
  • Registro em

  • Última visita

Tudo que Frenesy postou

  1. Tem como uma missão só aparecer no Quest Log apenas quando o Player alcança-se determinado nível?
  2. Frenesy postou uma resposta no tópico em Outros Clients
    Link Off
  3. Tem um local específico nas source onde eu poderia encontrar a informação que quero?
  4. Tenho conhecimento de que quando ocorre a transição de uma versão do Tibia para outra versão (Ex: 8.60 para 8.70), há mudanças nos scripts - ao menos em alguns comandos. Alguns scripts que pegam em 8.60, pode não pegar em 8.70, devido a alguma mudança que ocorreu. Minha dúvida é: Onde posso verificar as Mudanças que ocorrerão de uma transição para outra. Como posso verificar que tag, comando ou algo do gênero mudou da versão 8.60 para 8.70, por exemplo. O que foi substituído, o que permanece, essas coisas. Não sei se entenderam. Mas qualquer coisa avisa que tentarei ser ainda mais claro. No Aguardo.
  5. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    As áreas onde eu coloco o NoLogout Tool pelo RME não está funcionando. Os Players continuam relogando nessas áreas. Alguma dica de como resolver?
  6. Essa combinação aqui deu certo @White: function onStepIn(cid) for posx = 490,496 do -- checar posição X, começo e final da sala for posy = 498,503 do -- checar posicao Y, começo e final da sala local pos = {x=posx, y=posy, z=5} local limpar = getTileItemById(pos, 1903) if limpar.uid > 0 then doRemoveItem(limpar.uid) end end end return TRUE end Mas acabei de perceber um detalhe adicional. Como faço para remover vários itens selecionado. Ex: Em uma sala tenho Itens 1, 2, 3, 4 e 5. Quero remover apenas os Itens 1, 2, 3 e 5. Queria uma tabela, onde eu possa adicionar os IDs dos itens que eu quero remover.
  7. Poxa, seria bom uma ajudinha agora. Tentei fazer mas não deu muito certo: function onStepIn(cid) for posx = 490,496 do -- checar posição X, começo e final da sala for posy = 498,503 do -- checar posicao Y, começo e final da sala local pos = {x=posx, y=posy, z=5, stackpos=255} local limpar = getTileItemById(pos, 1739) doRemoveItem(limpar.uid) end end return TRUE end Assim que passo pelo Tile, o objeto some, mas antes de sumir, aparece vários erros no servidor: 24/12/2014 17:18:36] [Error - MoveEvents Interface] [24/12/2014 17:18:36] data/movements/scripts/Quests/Teste.lua:onStepIn [24/12/2014 17:18:36] Description: [24/12/2014 17:18:36] (luaDoRemoveItem) Item not found
  8. Valeu pela dica.
  9. Meu Brother @Suicide, eu consegui fazer um aqui. Usei como base o seu Script e o do @Orochi Elf. juntei os dois e deu no que deu. Pra quem quiser, vou disponibilizar logo abaixo. Valeu realmente pela ajuda. REP+ pra quem deu atenção ao meu problema. function onTarget(cid, target) if(attacker and isMonster(target) and isSummon(attacker) and (type == STATSCHANGE_HEALTHLOSS)) then return false end return true end function onStatsChange(cid, attacker, type, combat, value) if(attacker and isMonster(target) and isSummon(attacker) and (type == STATSCHANGE_HEALTHLOSS)) then if combat ~= COMBAT_HEALING then return false end end return true end function onCast(cid, target) if(attacker and isMonster(target) and isSummon(attacker) and (type == STATSCHANGE_HEALTHLOSS)) then if combat ~= COMBAT_HEALING then return false end end return true end
  10. Obrigado a todos. Irei testar assim que chegar em casa. #Edit[1] @Orochi Elf Desculpe, mas qual seria mesmo a tag para se adicionar seu script no creaturescript? @Suicide O Seu ficou ótimo. No entanto, quando uso magia de área acaba matando o Summon. E isso não pode ocorrer. #Edit[2] @Orochi Elf O Seu Script está fechando meu servidor. Assim que eu ataco, o OT para de funcionar. Pessoal, qual é a tag para se usar esse script? function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS then if isSummon(cid) and getCreatureMaster(cid) == attacker then return false end end return true end Não estou conseguindo instalar.
  11. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    Talvez seja seu Potion.lua que esteja com algum problema. Pegue esse: local config = { removeOnUse = "no", usableOnTarget = "yes", -- can be used on target? (fe. healing friend) splashable = "no", range = -1, realAnimation = "no", -- make text effect visible only for players in range 1x1 multiplier = { health = 1.0, mana = 1.0 } } config.removeOnUse = getBooleanFromString(config.removeOnUse) config.usableOnTarget = getBooleanFromString(config.usableOnTarget) config.splashable = getBooleanFromString(config.splashable) config.realAnimation = getBooleanFromString(config.realAnimation) local POTIONS = { [8704] = {empty = 7636, splash = 42, health = {50, 100}}, -- small health potion [7618] = {empty = 7636, splash = 42, health = {100, 200}}, -- health potion [7588] = {empty = 7634, splash = 42, health = {200, 400}, level = 50, vocations = {3, 4, 7, 8}, vocStr = "knights and paladins"}, -- strong health potion [7591] = {empty = 7635, splash = 42, health = {500, 700}, level = 80, vocations = {4, 8}, vocStr = "knights"}, -- great health potion [8473] = {empty = 7635, splash = 42, health = {800, 1000}, level = 130, vocations = {4, 8}, vocStr = "knights"}, -- ultimate health potion [7620] = {empty = 7636, splash = 47, mana = {70, 130}}, -- mana potion [7589] = {empty = 7634, splash = 47, mana = {110, 190}, level = 50, vocations = {1, 2, 3, 5, 6, 7}, vocStr = "sorcerers, druids and paladins"}, -- strong mana potion [7590] = {empty = 7635, splash = 47, mana = {200, 300}, level = 80, vocations = {1, 2, 5, 6}, vocStr = "sorcerers and druids"}, -- great mana potion [8472] = {empty = 7635, splash = 43, health = {200, 400}, mana = {110, 190}, level = 80, vocations = {3, 7}, vocStr = "paladins"} -- great spirit potion } local exhaust = createConditionObject(CONDITION_EXHAUST) setConditionParam(exhaust, CONDITION_PARAM_TICKS, (getConfigInfo('timeBetweenExActions') - 100)) function onUse(cid, item, fromPosition, itemEx, toPosition) local potion = POTIONS[item.itemid] if(not potion) then return false end if(not isPlayer(itemEx.uid) or (not config.usableOnTarget and cid ~= itemEx.uid)) then if(not config.splashable) then return false end if(toPosition.x == CONTAINER_POSITION) then toPosition = getThingPosition(item.uid) end doDecayItem(doCreateItem(POOL, potion.splash, toPosition)) doRemoveItem(item.uid, 1) if(not potion.empty or config.removeOnUse) then return true end if(fromPosition.x ~= CONTAINER_POSITION) then doCreateItem(potion.empty, fromPosition) else doPlayerAddItem(cid, potion.empty, 1) end return true end if(hasCondition(cid, CONDITION_EXHAUST)) then doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED) return true end if(((potion.level and getPlayerLevel(itemEx.uid) < potion.level) or (potion.vocations and not isInArray(potion.vocations, getPlayerVocation(itemEx.uid)))) and not getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_GAMEMASTERPRIVILEGES)) then doCreatureSay(itemEx.uid, "Only " .. potion.vocStr .. (potion.level and (" of level " .. potion.level) or "") .. " or above may drink this fluid.", TALKTYPE_ORANGE_1) return true end if(config.range > 0 and cid ~= itemEx.uid and getDistanceBetween(getThingPosition(cid), getThingPosition(itemEx.uid)) > config.range) then return false end local health = potion.health if(health and not doCreatureAddHealth(itemEx.uid, math.ceil(math.random(health[1], health[2]) * config.multiplier.health))) then return false end local mana = potion.mana if(mana and not doPlayerAddMana(itemEx.uid, math.ceil(math.random(mana[1], mana[2]) * config.multiplier.mana))) then return false end doSendMagicEffect(getThingPosition(itemEx.uid), CONST_ME_MAGIC_BLUE) if(not config.realAnimation) then doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_ORANGE_1) else for i, tid in ipairs(getSpectators(getThingPosition(itemEx.uid), 1, 1)) do if(isPlayer(tid)) then doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_ORANGE_1, false, tid) end end end doAddCondition(cid, exhaust) doRemoveItem(item.uid, 1) if(not potion.empty or config.removeOnUse) then return true end if(fromPosition.x ~= CONTAINER_POSITION) then doCreateItem(potion.empty, fromPosition) else doPlayerAddItem(cid, potion.empty, 1) end return true end
  12. Queria um Script que não me deixe atacar meu Summon - igual aos do PokeTibia. No entanto, eu queria também que minhas magias de área não atingisse ele. No Aguardo!
  13. Seção Errada amigo. Reportado!
  14. Ele remove sangue no chão? Como faço para remover de uma sala apenas um Item específico?
  15. Tenho uma sala cheio de Corpos de Monstros mortos e sangue. Como faço para o Player, ao passar pelo Tile, remove os Corpos e o Sangue do chão. Deixar tudo limpo para outro jogador usar?
  16. Aquele isPlayer(cid) eu coloquei depois que percebi o erro. E aquele MagicEffect era apenas pra verificar se o Script reconhecia o Player e o Summon. Mas testei seu Script e deu a mesma coisa. Só pra avisa. Reparei que quando eu não tenho a Storage (1508) e passo pelo Tile, tambem aparece o mesmo erro. Será que o erro aparece porque o Summon não tem a Storage? #Edit O Problema é essa parte aqui: local Summ = getCreaturePosition(getCreatureSummons(cid)[1]) local NPC = getTopCreature(Summ).uid Quando a tirei, o erro sumiu. No entanto, como posso usar o: addEvent(doCreatureSay, 6000, NPC, "Teste.") Sem essas funções? #Edit[2] Resolvi: addEvent(doCreatureSay, 6000, getTopCreature(getCreaturePosition(getCreatureSummons(cid)[1])).uid, "Teste.")
  17. #danihcv O que foi que mudou aí mesmo?
  18. Tenho um Moviments em determinado Tile do Mapa. É pra ser ativado quando o Player passar por ela. E isso realmente acontece. No entanto, quando o Summon tambem passa pelo Tile aparece esse Erro: [21/12/2014 14:32:56] [Error - MoveEvents Interface] [21/12/2014 14:32:56] data/movements/scripts/Quests/Teste.lua:onStepIn [21/12/2014 14:32:56] Description: [21/12/2014 14:32:56] (luaGetThingPosition) Thing not found O Script é Esse: function onStepIn(cid, item, position, fromPosition) local Summ = getCreaturePosition(getCreatureSummons(cid)[1]) local NPC = getTopCreature(Summ).uid if isPlayer(cid) then if getPlayerStorageValue(cid, 1508) == 1 then addEvent(doCreatureSay, 6000, NPC, "Teste.") setPlayerStorageValue(cid, 1508, -1) setPlayerStorageValue(cid, 1508, 2) doSendMagicEffect(getPlayerPosition(cid), 13) end else doSendMagicEffect(getPlayerPosition(cid), 2) end return TRUE end #Edit Só pra avisa. Reparei que quando eu não tenho a Storage (1508) e passo pelo Tile, tambem aparece o mesmo erro. Será que o erro aparece porque o Summon não tem a Storage?
  19. Deu certo. Valeu! Mas só pra complementar, pra o que serve aquele "[1]" no final? é indicando que é o Summon 1 ou algo assim?
  20. Não deu certo =/ #Edit To tentando mas não da certo: function onStepIn(cid) local summons = getCreatureSummons(cid) for _, pid in ipairs(summons) do doSendMagicEffect(pid, 49) end end
  21. Quero saber como reconhecer a posição do Summon. Ex: Tentei adicionar um efeito no Summon ao pisar em certo tile: function onStepIn(cid) local Summ = getThingPos((getCreatureSummons(cid))).uid doSendMagicEffect(Summ, 49) end Mas o Scrpt não reconhece o Summon. Como faço para reconhecer a posição do Summon?
  22. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    É uma ajuda rapida. Quero apenas saber como fazer algum efeito na posição do Summon. Tipo, quero que ao passar pelo Tile aconteça o Efeito 49 no meu Summon, por exemplo: function onStepIn(cid) local Summ = getThingPos((getCreatureSummons(cid))).uid doSendMagicEffect(Summ, 49) end Mas o script não reconhece o Summon. Como faço para reconhecer?
  23. Não tenho quase nada em GlobalEvents. è mais em movements e Actions. Meu Caso! Sem chance disso acontecer. Mas entendi o que quis dizer. Pegue seu REP+

Informação Importante

Confirmação de Termo