Jump to content
Close

Nother

Member
  • Content Count

    18
  • Joined

  • Last visited

About Nother

  • Rank
    Baker

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Po cara vlw, mas eu não teria feito isso sem a base que peguei aqui no TK e alguns tutoriais que eu li!
  2. GOSTARIA DE UM SCRIPT QUE AO USAR CERTO BUFF, O PLAYER VAI PERDER UMA QUANTIDADE DE MANA POR SEGUNDO ATÉ O FIM DO BUFF VOU DEIXAR AQUI O SCRIPT QUE PRECISO, ELE JÁ POSSUI GANHO DE VIDA E MANA POR SEGUNDO ACHO QUE E SÓ INVERTER E FAZER PERDER MANA. local outfit = {lookType = 4} -- Roupa que ira transformar no caso seu corpo ficara em choque local tempo = 60 * 1000 -- Tempo, nesse caso esta 60 segundos Lembrando que 1000 = 1 segundo local voc = 2 local ml = 5 -- quantos ira aumentar o skill de ML local skillfist = 10 -- quantos ira aumentar o skill de Fist local skillsword = 0 -- quantos ira aumentar o skill de Sword local skillaxe = 0 -- quantos ira aumentar o skill de Axe local skillclub = 0 -- quantos ira aumentar o skill de Club local skilldistance = 0 -- quantos ira aumentar o skill de Distance local skillshield = 10 -- quantos ira aumentar o skill de Shield local health = 0 -- A cada 1 segundo quantos aumentar de vida local mana = 0 local combat = createCombatObject() local mhealth = VIDA_AUMENTADA local mmana = MANA_AUMENTADA setCombatParam(combat, COMBAT_PARAM_EFFECT, 114) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield) setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setConditionParam(condition, CONDITION_PARAM_STAT_MAXHEALTH, mhealth) setConditionParam(condition, CONDITION_PARAM_STAT_MAXMANA, mmana) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 100) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setConditionParam(condition, CONDITION_PARAM_MANAGAIN, mana) setConditionParam(condition, CONDITION_PARAM_MANATICKS, 1000) setCombatCondition(combat, condition) local sys = createConditionObject(CONDITION_OUTFIT) setConditionParam(sys, CONDITION_PARAM_TICKS, tempo) addOutfitCondition(sys, outfit) setCombatCondition(combat, sys) function onCastSpell(cid, var) registerCreatureEvent(cid, "stordeath") setPlayerStorageValue(cid, voc_stor, getPlayerVocation(cid)) doPlayerSetVocation(cid, voc) addEvent(doPlayerSetVocation,tempo,cid,getPlayerStorageValue(cid, voc_stor)) addEvent(setPlayerStorageValue,tempo,cid,voc_stor,0) return doCombat(cid, combat, var) end Acabei de descobrir, fuçando aqui setConditionParam(condition, CONDITION_PARAM_MANAGAIN, mana) Nessa parte e que estava, apenas troquei o "mana" pela quantidade de mana que eu queria perder colocando - antes ai ficou -1000 Como faço para cancelar tópicos resolvidos por mim mesmo? Esse já é o segundo kkkkkkkkk
  3. Claro! Fique a vontade. local outfit = {lookType = 3} -- outfit local tempo = 30 -- tempo em segundos. local effect = {41} -- effect no player, caso queira apenas 1, basta remover os outros numeros. local config = { storage = 112005, cooldown = 90, --- tempo entre um uso e outro } local ml = 20 -- quantos ira aumentar o skill de ML local skillfist = 20 -- quantos ira aumentar o skill de Fist local skillsword = 20 -- quantos ira aumentar o skill de Sword local skillaxe = 20 -- quantos ira aumentar o skill de Axe local skillclub = 20 -- quantos ira aumentar o skill de Club local skilldistance = 20 -- quantos ira aumentar o skill de Distance local skillshield = 20 -- quantos ira aumentar o skill de Shield local health = 0 -- A cada 1 segundo quantos aumentar de vida local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield) setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 250) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setCombatCondition(combat, condition) local sys = createConditionObject(CONDITION_OUTFIT) setConditionParam(sys, CONDITION_PARAM_TICKS, tempo) addOutfitCondition(sys, outfit) setCombatCondition(combat, sys) function magicEffect41(tempo2,tempo3,cid) if (isCreature(cid)) then if getPlayerStorageValue(cid, 102053) > 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then for i=1, #effect do local position = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(position, effect[i]) end end end end local sys = createConditionObject(CONDITION_OUTFIT) setConditionParam(sys, CONDITION_PARAM_TICKS, tempo*1000) addOutfitCondition(sys, outfit) setCombatCondition(combat, sys) function onCastSpell(cid, var) local pos = getCreaturePosition(cid) if isPlayer(cid) then if os.time() - getPlayerStorageValue(cid, config.storage) >= config.cooldown then setPlayerStorageValue(cid, config.storage, os.time()) else doPlayerSendCancel(cid, "Voce deve aguardar "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, config.storage))).." segundos, para usar o Kaioken novamente!") doSendMagicEffect(pos, 2) return false end end local position129 = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} if getPlayerStorageValue(cid, 102053) ~= 1 or getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(magicEffect41, tempo2, tempo2, tempo*1000, cid) tempo2 = tempo2 + 300 end setPlayerStorageValue(cid, 102053,1) -- storage verifica transformado, quando = 1 player esta transformado. doCreatureSay(cid, "KAIOKEEEEEEN!", TALKTYPE_MONSTER) doSendMagicEffect(position129, 41) -- id do effect que vai aparecer quando usar a habilidade else doPlayerSendCancel(cid, "Desculpe, voce ja esta transformado.") end return true end Testei no dbo que estou editando e funcionou 100% essa, ja em outros tipos de servidores ja não sei, Utilizo o TFS 0.4
  4. Cara até te mandaria, mas e que eu olhei tanto, mas tanto script que não faço ideia de qual topico seja esse kkkk mas e de algum pedido de script para fazer essa função, nem esse script estou usando, consegui editar um para fazer essa mesma função que esta mais funcional!
  5. FALA GALERA, VIM AQUI TRAZER UM SCRIPT QUE EDITEI, É UM BUFF QUE MUDA SUA OUTFIT POR UM CERTO TEMPO COM UM COOLDOWN PARA USAR DE NOVO. NA SCRIPT EDITEI UM KAIOKEN NO DBO NÃO SOU SCRIPTER APENAS FUI PEGANDO VÁRIOS SCRIPTS DO TK E TESTANDO ATÉ ENCONTRAR O ERRO DELES, LEVEI MUITO TEMPO PRA AJUSTAR ISSO NO MEU SERVER, SE CONSEGUIREM USAR ELE TAI AI PARA VOCÊS local outfit = {lookType = 3} -- outfit local tempo = 30 -- tempo em segundos. local effect = {41} -- effect no player, caso queira apenas 1, basta remover os outros numeros. local config = { storage = 112005, cooldown = 90, --- tempo entre um uso e outro } local ml = 20 -- quantos ira aumentar o skill de ML local skillfist = 20 -- quantos ira aumentar o skill de Fist local skillsword = 20 -- quantos ira aumentar o skill de Sword local skillaxe = 20 -- quantos ira aumentar o skill de Axe local skillclub = 20 -- quantos ira aumentar o skill de Club local skilldistance = 20 -- quantos ira aumentar o skill de Distance local skillshield = 20 -- quantos ira aumentar o skill de Shield local health = 0 -- A cada 1 segundo quantos aumentar de vida local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield) setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 250) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setCombatCondition(combat, condition) local sys = createConditionObject(CONDITION_OUTFIT) setConditionParam(sys, CONDITION_PARAM_TICKS, tempo) addOutfitCondition(sys, outfit) setCombatCondition(combat, sys) function magicEffect41(tempo2,tempo3,cid) if (isCreature(cid)) then if getPlayerStorageValue(cid, 102053) > 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then for i=1, #effect do local position = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(position, effect[i]) end end end end local sys = createConditionObject(CONDITION_OUTFIT) setConditionParam(sys, CONDITION_PARAM_TICKS, tempo*1000) addOutfitCondition(sys, outfit) setCombatCondition(combat, sys) function onCastSpell(cid, var) local pos = getCreaturePosition(cid) if isPlayer(cid) then if os.time() - getPlayerStorageValue(cid, config.storage) >= config.cooldown then setPlayerStorageValue(cid, config.storage, os.time()) else doPlayerSendCancel(cid, "Voce deve aguardar "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, config.storage))).." segundos, para usar o Kaioken novamente!") doSendMagicEffect(pos, 2) return false end end local position129 = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} if getPlayerStorageValue(cid, 102053) ~= 1 or getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(magicEffect41, tempo2, tempo2, tempo*1000, cid) tempo2 = tempo2 + 300 end setPlayerStorageValue(cid, 102053,1) -- storage verifica transformado, quando = 1 player esta transformado. doCreatureSay(cid, "KAIOKEEEEEEN!", TALKTYPE_MONSTER) doSendMagicEffect(position129, 41) -- id do effect que vai aparecer quando usar a habilidade else doPlayerSendCancel(cid, "Desculpe, voce ja esta transformado.") end return true end O SEGREDO E SÓ NÃO DESISTIR CASO ENCONTRE UM SCRIPT QUE NÃO FUNCIONE 😉
  6. GOSTARIA DE ADCIONAR UMA OUTFIT DE ID = 4 NESSE SCRIPT DE BUFF, O BUFF PEGA CERTINHO, SO FALTA MESMO MUDAR A OUTFIT OU SPRITE NÃO SEI COMO SE DIZ NO CASO SERIA UM SCRIPT DE KAIOKEN E O GOKU MUDARIA DE SPRITE ASSIM QUE TRANSFORMASSE, DEPOIS DE 1 MINUTO VOLTARIA A SPRITE NORMAL QUE E O ID = 2 local tempo = 60 -- tempo em segundos. local effect = {107} -- effect no player, caso queira apenas 1, basta remover os outros numeros. local ml = 30 -- quantos ira aumentar o skill de ML local skillfist = 30 -- quantos ira aumentar o skill de Fist local skillsword = 30 -- quantos ira aumentar o skill de Sword local skillaxe = 30 -- quantos ira aumentar o skill de Axe local skillclub = 30 -- quantos ira aumentar o skill de Club local skilldistance = 30 -- quantos ira aumentar o skill de Distance local skillshield = 30 -- quantos ira aumentar o skill de Shield local health = 100 -- A cada 1 segundo quantos aumentar de vida local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield) setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 250) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setCombatCondition(combat, condition) function magicEffect1553(tempo2,tempo3,cid) if (isCreature(cid)) then if getPlayerStorageValue(cid, 102053) > 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then for i=1, #effect do local position = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(position, effect[i]) end end end end function onCastSpell(cid, var) local position127 = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} if getPlayerStorageValue(cid, 102053) ~= 1 or getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(magicEffect1553, tempo2, tempo2, tempo*1000, cid) tempo2 = tempo2 + 300 end setPlayerStorageValue(cid, 102053,1) -- storage verifica transformado, quando = 1 player esta transformado. doCreatureSay(cid, "ATIVAR", TALKTYPE_MONSTER) doSendMagicEffect(position127, 4) else doPlayerSendCancel(cid, "Sorry, you are transformed.") end end AE GALERA QUE ESTÁ TENDO O MESMO PROBLEMA QUE O MEU, JÁ RESOLVI, O MEU PROBLEMA ERA QUE TEM UM ARQUIVO CHAMADO OUTIFIT_VOCATION.LUA EM CREATURESCRIPTS/SCRIPTS. ESSE ARQUIVO FAZ COM QUE NENHUMA OUTRA OUTFIT QUE NÃO SEJA A SELECIONADA FUNCIONE NO SEU CHAR, BOM CREIO QUE E ISSO! APENAS EDITEI REMOVENDO A LINHA ONDE ESTA A VOCATION E A OUTFIT. ESPERO QUE VCS CONSIGAM TBM E NÓIS
  7. Opa vlw, poderia me informar se eu utilizo esse script em talkactions ou spells?
  8. OLÁ A TODOS VIM AQUI VER SE CONSIGO UM SCRIPT, JÁ OLHEI NO TK E NÃO ENCONTREI SE PUDEREM ME CRIAR ELE FICARIA GRATO BOM, O SCRIPT SERIA UM SIMPLES TELEPORTE. ESPECIFICAMENTE UMA SPELL DE TELEPORT BASEADO NO GOKU. CREIO QUE COM O SCRIPT /GOTO DE STAFF DE PARA FAZE-LA, A UNICA COISA QUE EU IRIA MUDAR E QUE ELA SOMENTE SERIA USADA EM PLAYERS AO INVÉS DA /GOTO QUE FUNCIONA TANTO EM PLAYER COMO MOBS EM GERAL E TAMBÉM PRECISARIA QUE ELA TIVESSE UM COOLDOWN DE 10 MINUTOS PARA NÃO SER ABUSIVO. AQUI O SCRIPT DO /GOTO function onSay(cid, words, param, channel) if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.") return true end local creature = getCreatureByName(param) local player = getPlayerByNameWildcard(param) local waypoint = getWaypointPosition(param) local tile = string.explode(param, ",") local pos = {x = 0, y = 0, z = 0} if(player ~= nil and (not isPlayerGhost(player) or getPlayerGhostAccess(player) <= getPlayerGhostAccess(cid))) then pos = getCreaturePosition(player) elseif(creature ~= nil and (not isPlayer(creature) or (not isPlayerGhost(creature) or getPlayerGhostAccess(creature) <= getPlayerGhostAccess(cid)))) then pos = getCreaturePosition(creature) elseif(type(waypoint) == 'table' and waypoint.x ~= 0 and waypoint.y ~= 0) then pos = waypoint elseif(tile[2] and tile[3]) then pos = {x = tile[1], y = tile[2], z = tile[3]} else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end if(not pos or isInArray({pos.x, pos.y}, 0)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Destination not reachable.") return true end pos = getClosestFreeTile(cid, pos, true, false) if(not pos or isInArray({pos.x, pos.y}, 0)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Cannot perform action.") return true end local tmp = getCreaturePosition(cid) if(doTeleportThing(cid, pos, true) and not isPlayerGhost(cid)) then doSendMagicEffect(tmp, CONST_ME_POFF) doSendMagicEffect(pos, CONST_ME_TELEPORT) end return true end OBRIGADO AOS QUE ENTRARAM NESSE TÓPICO
  9. Bom peguei esse script aqui do meu server é 8.60 mas creio que pode funcionar tenta ai, para substituir eu deixei as coisas que precisa fazer no script Para falar a verdade acho que vc ja deve ter esse script no seu server, se tiver adcione só o novo id como esta nesse script ou use tudo se tiver igual ao seu Fica em data/actions/scripts em alguma pasta ou na propria scripts! testa ai! local coins = { [2148] = {to = 2152}, -- 2148 id da moeda(coloca o seu). 2152 id da nota (coloca a sua). 2160 id do gold bar (coloca o seu). -- [2152] = {to = 2160, from = 2148}, -- 13539 aqui fica o gold acima do seu gold, quando tiver 100 barras de gold vai virar 1 gold novo. -- [2160] = {to = 13539, from = 2152}, -- so substituir os ids que provavelmente vai pegar. -- [13539] = {from = 2160}, } function onUse(cid, item, fromPosition, itemEx, toPosition) if(getPlayerFlagValue(cid, PLAYERFLAG_CANNOTPICKUPITEM)) then return false end local coin = coins[item.itemid] if(not coin) then return false end if(coin.to ~= nil and item.type == ITEMCOUNT_MAX) then doChangeTypeItem(item.uid, item.type - item.type) doPlayerAddItem(cid, coin.to, 1) elseif(coin.from ~= nil) then doChangeTypeItem(item.uid, item.type - 1) doPlayerAddItem(cid, coin.from, ITEMCOUNT_MAX) end return true end
  10. Olá pessoal, sou novo nesse negocio de otclient, bom meu problema ate o momento e que meu otclient não abre o minimapa, mesmo clicando no minimapa ele não aparece de nenhuma forma, se puderem me dar uma força ficaria grato! Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.
  11. GOSTARIA DE PEDIR AJUDA, JÁ QUEBREI A CABEÇA E NÃO CONSEGUI FAZER UMA FORMA DA LOOKTYPE APARECER NO SERVIDOR. O BUFF E OS MAGICEFFECTS APARECEM CERTINHOS MAS A SPRITE NÃO TA INDO DE FORMA ALGUMA, JÁ TENTEI DE QUASE TUDO, SE PUDEREM ME AJUDAR FICARIA GRATO. AQUI ESTA O ATUAL SCRIPT QUE ESTOU USANDO. local outfit = {lookType = 3} -- outfit local tempo = 60 -- tempo em segundos. local effect = {41} -- effect no player, caso queira apenas 1, basta remover os outros numeros. local ml = 50 -- quantos ira aumentar o skill de ML local skillfist = 50 -- quantos ira aumentar o skill de Fist local skillsword = 50 -- quantos ira aumentar o skill de Sword local skillaxe = 50 -- quantos ira aumentar o skill de Axe local skillclub = 50 -- quantos ira aumentar o skill de Club local skilldistance = 50 -- quantos ira aumentar o skill de Distance local skillshield = 50 -- quantos ira aumentar o skill de Shield local health = 100 -- A cada 1 segundo quantos aumentar de vida local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield) setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 300) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setCombatCondition(combat, condition) local sys = createConditionObject(CONDITION_OUTFIT) setConditionParam(sys, CONDITION_PARAM_TICKS, tempo) addOutfitCondition(sys, outfit) setCombatCondition(combat, sys) function magicEffect3(tempo2,tempo3,cid) if (isCreature(cid)) then if getPlayerStorageValue(cid, 102053) > 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then local position = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} for i=1, #effect do doSendMagicEffect(position, effect[i]) end end end end local sys = createConditionObject(CONDITION_OUTFIT) setConditionParam(sys, CONDITION_PARAM_TICKS, tempo*1000) addOutfitCondition(sys, outfit) setCombatCondition(combat, sys) function onCastSpell(cid, var) local position129 = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} if getPlayerStorageValue(cid, 102053) ~= 1 or getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(magicEffect3, tempo2, tempo2, tempo*1000, cid) tempo2 = tempo2 + 300 end setPlayerStorageValue(cid, 102053,1) -- storage verifica transformado, quando = 1 player esta transformado. doCreatureSay(cid, "Kaiokeeeen!", TALKTYPE_MONSTER) doSendMagicEffect(position129, 80) else doPlayerSendCancel(cid, "Desculpa, já está transformado.") end end
  12. TFS 0.4 8.60 Bem poderiam me ajudar? é simples, apenas queria que trocassem o dano dessa Spell que esta dano minimo e maximo, por dano baseado em lvl e ml. Aqui o código, é o Chidori do Sasuke. local config = { efeitoTele = 3, -- efeito q ira aparacer a cada teleport. efeitoDamage = 134, -- efeito q ira aparecer ao hitar no alvo hits = 1, -- quantos hits vai dar delay = 500, -- intervalo de tempo a cada hit min = 2000, -- dano minimo max = 2400, -- dano maximo damage = COMBAT_PHYSICALDAMAGE -- tipo do dano } function isWalkable(pos, creature, pz, proj) -- nord if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end if getTopCreature(pos).uid > 0 and creature then return false end if getTileInfo(pos).protection and not pz then return false end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end function getPosDirs(p, dir) -- mkalo return dir == 1 and {x=p.x-1, y=p.y, z=p.z} or dir == 2 and {x=p.x-1, y=p.y+1, z=p.z} or dir == 3 and {x=p.x, y=p.y+1, z=p.z} or dir == 4 and {x=p.x+1, y=p.y+1, z=p.z} or dir == 5 and {x=p.x+1, y=p.y, z=p.z} or dir == 6 and {x=p.x+1, y=p.y-1, z=p.z} or dir == 7 and {x=p.x, y=p.y-1, z=p.z} or dir == 8 and {x=p.x-1, y=p.y-1, z=p.z} end function validPos(pos) tb = {} for i = 1, 8 do newpos = getPosDirs(pos, i) if isWalkable(newpos) then table.insert(tb, newpos) end end table.insert(tb, pos) return tb end spell = { start = function (cid, target, markpos, hits) if not isCreature(cid) then return true end if not isCreature(target) or hits < 1 then doTeleportThing(cid, markpos) doSendMagicEffect(getThingPos(cid), config.efeitoTele) return true end posAv = validPos(getThingPos(target)) rand = #posAv == 1 and 1 or #posAv - 1 doSendMagicEffect(getThingPos(cid), config.efeitoTele) doTeleportThing(cid, posAv[math.random(1, rand)]) doAreaCombatHealth(cid, config.damage, getThingPos(target), 0, -config.min, -config.max, config.efeitoDamage) addEvent(spell.start, config.delay, cid, target, markpos, hits - 1) end } function onCastSpell(cid) local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z} target = getCreatureTarget(cid) if target then spell.start(cid, target, getThingPos(cid), config.hits) doSendMagicEffect(position1, 138) end return true end Ja tentei de tudo, mas não consigo, não estou apto para essa simples tarefa, apenas sei mudar os id, dos efects kk.
  13. O erro ta na sua Spells.xml, manda uma print dela na linha 65!
  14. Bem eu tenho esse script, não testei ainda mas creio que deve funcionar, se quiser testar ta ae! local remove_time = 10 -- tempo em segundos para remover as magic wall local item_id = 2778 -- id da magic wall function onCastSpell(cid, var) local waittime = 10 -- Tempo de exhaustion local storage = 1529988 if exhaustion.check(cid, storage) then return false end exhaustion.set(cid, storage, waittime) local pos = getThingPosition(getCreatureTarget(cid)) posTile1 = {x=pos.x+1,y=pos.y+1,z=pos.z,stackpos=1} posTile2 = {x=pos.x+1,y=pos.y,z=pos.z,stackpos=1} posTile3 = {x=pos.x+1,y=pos.y-1,z=pos.z,stackpos=1} posTile4 = {x=pos.x,y=pos.y-1,z=pos.z,stackpos=1} posTile5 = {x=pos.x-1,y=pos.y-1,z=pos.z,stackpos=1} posTile6 = {x=pos.x-1,y=pos.y,z=pos.z,stackpos=1} posTile7 = {x=pos.x-1,y=pos.y+1,z=pos.z,stackpos=1} posTile8 = {x=pos.x,y=pos.y+1,z=pos.z,stackpos=1} posAll = {posTile1,posTile2,posTile3,posTile4,posTile5,posTile6,posTile7,posTile8} for i=1, #posAll do if isWalkable(posAll[i]) then doCreateItem(item_id, 1, posAll[i]) end end addEvent(removeItem, remove_time*1000, posAll) return true end function isWalkable(pos, creature, pz, proj) if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end local creature = getTopCreature(pos) if creature.type > 0 then return false end if getTilePzInfo(pos) and not pz then return false end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end function removeItem(posAll) for i=1, #posAll do for j=0, 255 do pos_stack = {x=posAll[i].x,y=posAll[i].y,z=posAll[i].z,stackpos=j} removeTile = getThingfromPos(pos_stack) if removeTile.itemid == item_id then doRemoveItem(removeTile.uid) end end end end Aqui fica no spells.xml se vc precisar <instant name="nome da spell" words="nome da spell" lvl="175" mana="4000" aggressive="1" range="5" blockwalls="1" needtarget="1" exhaustion="1700" needlearn="0" event="script" value="kakashi/prision.lua">

Open Tibia Server

Quer aprender a criar seu próprio servidor de Tibia? Então está no lugar certo, aqui você encontrará milhares de tutorias, scripts, códigos, mapas e utilitários para que você possa fazer o seu próprio servidor de Tibia partindo do zero.

Redes Sociais

Anuncie no Tibia King

Precisa de mais visibilidade em seus projetos? Quer publicidade para o seu servidor? Anuncie no Tibia King e faça sua divulgação, possuímos centenas de acessos simultâneos e milhares diários, com certeza será a sua solução! A publicação do seu anuncio é instantânea!

×
×
  • Create New...