Ir para conteúdo

Caronte

Membro
  • Registro em

  • Última visita

Tudo que Caronte postou

  1. acho que não. Aqui está o script http://www.tibiaking.com/forum/topic/51178-duvida-creaturescripts/#entry300683
  2. Caronte postou uma resposta no tópico em Suporte Tibia OTServer
    local config = { day = "Sunday", --Dia (em inglês). timeToCreate = 1, -- minutes walls = {{ x = 166, y = 53, z = 7, stackpos = STACKPOS_FIRST_ITEM_ABOVE_GROUNDTILE }},} function removeWalls(item, position) doBroadcastMessage("Area vip aberta, CORRAM! Fechara em 1h:30 minutos.") addEvent(createWalls, config.timeToCreate * 5400000) for i = 1, table.maxn(config.walls) do doRemoveItem(getThingfromPos(config.walls[i]).uid) doSendMagicEffect(config.walls[i],CONST_ME_TUTORIALARROW) end return true end function createWalls(item, position) for i = 1,table.maxn(config.walls) do doCreateItem(11910, 1, config.walls[i]) doBroadcastMessage("Area vip foi fechada!") doSendMagicEffect(config.walls[i], CONST_ME_ASSASSIN) end return true end function onTimer() if os.date("%A") == config.day then doBroadcastMessage("Area Vip sera aberta em 1 minutos!") addEvent(removeWalls, 60000) return true end return false end Foi você quem criou ?
  3. Caronte postou uma resposta no tópico em Suporte Tibia OTServer
    As portas (gate of expertise) no TFS 0.4 podem ser configuradas por padrão do level 0 a 500, o único requisito é colocar action = 1000 + level, onde o level é no máximo 500, se quiser algo maior que 500, tem que fazer um script.
  4. @rafanasser, veja se faz diferença.
  5. @Kynz, os problemas devem ser solucionados dentro do tópico em questão. Como eles estão clonando?
  6. Qual modelo/versão da distro?
  7. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 31) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -1.9, 0, -1.9, 0) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 175) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -1.9, 0, -1.9, 0) arr1 = { {0, 0, 0}, {0, 3, 0}, {0, 0, 0}, } arr2 = { {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, 1, 0, 1, 1, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 1, 1, 2, 1, 1, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 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}, } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) setCombatArea(combat1, area1) setCombatArea(combat2, area2) 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 function onCastSpell(cid, var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 100, parameters) addEvent(onCastSpell2, 200, parameters) return TRUE end
  8. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 31) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -1.9, 0, -1.9, 0) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 175) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -1.9, 0, -1.9, 0) arr1 = { {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, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 3, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } arr2 = { {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, 1, 0, 1, 1, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 1, 1, 2, 1, 1, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 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}, } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) setCombatArea(combat1, area1) setCombatArea(combat2, area2) 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 function onCastSpell(cid, var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 100, parameters) addEvent(onCastSpell2, 200, parameters) return TRUE end Assim seria o certo?
  9. Caronte postou uma resposta no tópico em Suporte Tibia OTServer
    Existem vários tutoriais de como compilar um otserver. e se você quiser, pode baixar a distro, com as dlls necessárias para que ela funcione. Só escolher, baixar o datapack e executável. Downloads OTServers 10.+ / 9.+
  10. Como essa spell está saindo, e como você gostaria que saísse?
  11. function onUse(player, item, fromPosition, target, toPosition, isHotkey) --Reward Chest player = Player(player) if item.itemid == 21584 then if player:getExhaustion(REWARD_CHEST.STORAGE) > 0 then return player:sendCancelMessage('You need to wait ' .. string.diff(player:getStorageValue(REWARD_CHEST.STORAGE)-os.time()) .. ' before using this chest again.') end player:updateRewardChest() --Boss Corpse elseif item:getActionId() == 21584 then local reward = REWARD_CHEST.LOOT[tonumber(item:getAttribute('text'))][player:getGuid()] if reward ~= nil then local rewardBag = Container(doCreateItemEx(REWARD_CHEST.CONTAINER, 1)) addContainerItems(rewardBag, reward) if player:getCapacity() < rewardBag:getCapacity() then return player:sendCancelMessage(RETURNVALUE_NOTENOUGHCAPACITY) end if player:addItemEx(rewardBag, false) == RETURNVALUE_NOERROR then REWARD_CHEST.LOOT[tonumber(item:getAttribute('text'))][player:getGuid()] = nil player:sendCancelMessage('You have picked a reward container.') else player:sendCancelMessage(RETURNVALUE_NOTENOUGHROOM) return true end end end return false end
  12. não funciona assim? function onUse(player, item, fromPosition, target, toPosition, isHotkey) --Reward Chest if item.itemid == 21584 then if player:getExhaustion(REWARD_CHEST.STORAGE) > 0 then return player:sendCancelMessage('You need to wait ' .. string.diff(player:getStorageValue(REWARD_CHEST.STORAGE)-os.time()) .. ' before using this chest again.') end player:updateRewardChest() --Boss Corpse elseif item:getActionId() == 21584 then local reward = REWARD_CHEST.LOOT[tonumber(item:getAttribute('text'))][player:getGuid()] if reward ~= nil then local rewardBag = Container(doCreateItemEx(REWARD_CHEST.CONTAINER, 1)) addContainerItems(rewardBag, reward) if player:getCapacity() < rewardBag:getCapacity() then return player:sendCancelMessage(RETURNVALUE_NOTENOUGHCAPACITY) end if player:addItemEx(rewardBag, false) == RETURNVALUE_NOERROR then REWARD_CHEST.LOOT[tonumber(item:getAttribute('text'))][player:getGuid()] = nil player:sendCancelMessage('You have picked a reward container.') else player:sendCancelMessage(RETURNVALUE_NOTENOUGHROOM) return true end end end return false end ou function onUse(player, item, fromPosition, target, toPosition, isHotkey) --Reward Chest if Item(item):getId() == 21584 then if player:getExhaustion(REWARD_CHEST.STORAGE) > 0 then return player:sendCancelMessage('You need to wait ' .. string.diff(player:getStorageValue(REWARD_CHEST.STORAGE)-os.time()) .. ' before using this chest again.') end player:updateRewardChest() --Boss Corpse elseif item:getActionId() == 21584 then local reward = REWARD_CHEST.LOOT[tonumber(item:getAttribute('text'))][player:getGuid()] if reward ~= nil then local rewardBag = Container(doCreateItemEx(REWARD_CHEST.CONTAINER, 1)) addContainerItems(rewardBag, reward) if player:getCapacity() < rewardBag:getCapacity() then return player:sendCancelMessage(RETURNVALUE_NOTENOUGHCAPACITY) end if player:addItemEx(rewardBag, false) == RETURNVALUE_NOERROR then REWARD_CHEST.LOOT[tonumber(item:getAttribute('text'))][player:getGuid()] = nil player:sendCancelMessage('You have picked a reward container.') else player:sendCancelMessage(RETURNVALUE_NOTENOUGHROOM) return true end end end return false end
  13. Você não alterou, e precisa compilar... Tenta usar esse que eu compilei, coloquei para dar o mesmo efeito que o dos 10.+ , que é o teleport.
  14. A NAZA interviu, até hackeou o TeKa para apagar uma publicação, mas já troquei a minha senha e joguei um keylogger no pc deles... não levem a sério o comentário acima, posso ser processado, fui obrigado a mudar os nomes.
  15. Caronte postou uma resposta no tópico em Suporte Tibia OTServer
    http://www.tibiaking.com/forum/topic/59287-aumentar-limite-de-efeitos/ 2.1 - Pesquise antes de postar: O fórum já está cheio de conteúdo postado por muitos outros membros. Antes de criar um tópico com uma dúvida ou um pedido, faça uma pesquisa para ver se o que você quer já não foi resolvido antes. A caixa de pesquisa fica no topo do fórum e é bem fácil de ser usada. Fazendo isso, você poupa o seu tempo e o nosso. Qualquer coisa só postar... há mais tópicos sobre como aumentar o limite dos efeitos.
  16. Tem certeza? eu testei aqui... Poste seu spawn.cpp... qual seu TFS? (Estou chutando que seja, já que você não falou.)
  17. Caronte postou uma resposta no tópico em Sprites
    Veja como colocar Imgs para aparecer, em vez de por link. Em nome da comunidade do TK, muito obrigado pela contribuição! Seu tópico de conteúdo foi aprovado e será movido para a seção adequada. Você ganhou 1 REP+!
  18. Caronte postou uma resposta no tópico em Sprites
    Em nome da comunidade do TK, muito obrigado pela contribuição! Seu tópico de conteúdo foi aprovado e será movido para a seção adequada. Você ganhou 1 REP+!
  19. Acho que sim, se não, poste. Tem o que você colocou? usa o do Wise, é mais prático.
  20. Isso precisa ser feito nas source, e compilar novamente com o arquivo spawn.cpp editado. Se quiser, siga o tutorial abaixo: Em spawn.cpp Procure por bool Spawn::findPlayer(const Position& pos) E no lugar de: bool Spawn::findPlayer(const Position& pos) { SpectatorVec list; g_game.getSpectators(list, pos); Player* tmpPlayer = NULL; for(SpectatorVec::iterator it = list.begin(); it != list.end(); ++it) { if((tmpPlayer = (*it)->getPlayer()) && !tmpPlayer->hasFlag(PlayerFlag_IgnoredByMonsters)) return true; } return false; } Coloque: bool Spawn::findPlayer(const Position& pos) { SpectatorVec list; g_game.getSpectators(list, pos); Player* tmpPlayer = NULL; for(SpectatorVec::iterator it = list.begin(); it != list.end(); ++it) { if((tmpPlayer = (*it)->getPlayer()) && !tmpPlayer->hasFlag(PlayerFlag_IgnoredByMonsters)) return false; } return false; } Pronto, irá spawnar com ou sem player na tela, já foi testado por mim.
  21. Caronte postou uma resposta no tópico em Playground (Off-topic)
    Feliz niver para nosso moderador mais gay do TK o Snowsz
  22. poste o crashreport.log.
  23. Da onde você está usando o IP Fixo?
  24. Caronte postou uma resposta no tópico em Playground (Off-topic)
    Hehe Eram 2 tópicos. Cara, serião, uma vez, me deu uma ideia de fazer uma coisa, que achei genial, eu pensei em exterminar a raça humana e repovoar, reeducando. porém sempre vai ter umas maçãs podres... Então isso é um fato, infelizmente. Para solucionar eu acho que tinha que existir alguma aula como educação moral, que o objetivo seria facilitar o trabalho das outras disciplinas. É, porem com carnês de 100x com juros, ou em consórcios. Eu acho que está longe do ideal.

Informação Importante

Confirmação de Termo