Ir para conteúdo

Ken Kaneki

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Curtir
    Ken Kaneki deu reputação a joaod123 em Goku Limit Breaker   
    Fala Galera eu estava sem mexer com sprites à alguns anos já e hoje decidi fazer uma sprite só pra ver se ainda lembro como faz kk fiz da nova transformação do goku com base nas imagens reveladas, vou atualizando com o tempo to voltando agora, e o brilho dela é só pra mostrar melhor o cabelo.
    V2:
     
    Se eu estiver na sessão errada por favor alguém mova, vão dando dicas no q melhorar
  2. Gostei
    Ken Kaneki recebeu reputação de Gnomano em [Wono 1.2] World of Naruto Online   
    Créditos: Wono Team, Pozdro
     
    Servidor do WONO (World of Naruto Online) na versão 1.2
     
    O Servidor possui tudo do Wono 1.2 dentre vocações Jutsus e tudo mais, encontrei a datapack em um site polônes, creio que pode haver versões atualizadas espalhadas por ai, enfim, baixem e aproveitem o conteúdo
     
    ______________________________________________________________________________________________
     
    • Info
    • 14 Transformações todos os personagens • Spells de acordo com anime • Jutsus e transformações novas Imagens
     



    ______________________________________________________________________________________________
     
    OBS: Recomendo apenas utilizarem scripts etc, não recomendo por online.
    Download: Mega, Zippyshare
    Scan: Virustotal
     
    Caso não consiga baixar pelo mega baixe pelo zippyshare que o Storm Night disponibilizou.
  3. Gostei
    Ken Kaneki deu reputação a Spriter Draiman em Mega Pinsir Sprite   
    Sprite Feita Por min!!
    Notas e Criticas!!
    Frente: http://prntscr.com/b82ush
    Costas: http://prntscr.com/b82uvj
  4. Gostei
    Ken Kaneki deu reputação a Joshuah em Show OFF   
  5. Gostei
    Ken Kaneki deu reputação a Joshuah em Show OFF   
  6. Gostei
    Ken Kaneki recebeu reputação de Gordo Zikka em [Wono 1.2] World of Naruto Online   
    Créditos: Wono Team, Pozdro
     
    Servidor do WONO (World of Naruto Online) na versão 1.2
     
    O Servidor possui tudo do Wono 1.2 dentre vocações Jutsus e tudo mais, encontrei a datapack em um site polônes, creio que pode haver versões atualizadas espalhadas por ai, enfim, baixem e aproveitem o conteúdo
     
    ______________________________________________________________________________________________
     
    • Info
    • 14 Transformações todos os personagens • Spells de acordo com anime • Jutsus e transformações novas Imagens
     



    ______________________________________________________________________________________________
     
    OBS: Recomendo apenas utilizarem scripts etc, não recomendo por online.
    Download: Mega, Zippyshare
    Scan: Virustotal
     
    Caso não consiga baixar pelo mega baixe pelo zippyshare que o Storm Night disponibilizou.
  7. Gostei
    Ken Kaneki deu reputação a Absolute em [ANTI-CLONE] 100% NOVO [O MELHOR]   
    Fala galera do TK!
     

     
    Trago hoje a vocês um sistema que desenvolvi sob uma base de shop com meu parceiro Thales Valentim do pokemonbr.com.br a alguns meses, pós vários testes e visando que funcionou perfeitamente trago para vocês!
     
    Como funciona?
    Toda vez que um ItemVIP ou qualquer Item comprado no SHOP do seu site, quando ele for entregar ao player, irá ficar; COMPRADOR POR:, ou seja; irá adicionar uma "KEY" algo que realmente saiu direto do seu SHOP, pois quando o item é disparado para o player ele vai entregar normal com a função "doCreateItemEx" e então adicionar a descrição no mesmo com a função "doItemSetAttribute".
    E como evitará os clones Absolute?
    Você terá uma QUERY para executar no seu banco de dados, fazendo uma checagem dos items VIPS que não possuem esse SERIAL KEY (o script também já faz a checagem), ou seja; os que não tiverem a KEY foram clonados (não saíram do SHOP), e então vocês poderão deleta-los manualmente caso necessário.
     
    É muito simples, apenas um script e a QUERY de checagem.

     
     
    Vamos a instalação?
     
    Em data/globalevents/scripts substitua o seu arquivo shop.lua por este:
    -- ### CONFIG ### -- message send to player by script "type" (types you can check in "global.lua") SHOP_MSG_TYPE = 19 -- time (in seconds) between connections to SQL database by shop script SQL_interval = 30 -- ### END OF CONFIG ### function onThink(interval, lastExecution) local result_plr = db.getResult("SELECT * FROM z_ots_comunication WHERE `type` = 'login';") if(result_plr:getID() ~= -1) then while(true) do id = tonumber(result_plr:getDataInt("id")) action = tostring(result_plr:getDataString("action")) delete = tonumber(result_plr:getDataInt("delete_it")) cid = getCreatureByName(tostring(result_plr:getDataString("name"))) if isPlayer(cid) == TRUE then local itemtogive_id = tonumber(result_plr:getDataInt("param1")) local itemtogive_count = tonumber(result_plr:getDataInt("param2")) local container_id = tonumber(result_plr:getDataInt("param3")) local container_count = tonumber(result_plr:getDataInt("param4")) local add_item_type = tostring(result_plr:getDataString("param5")) local add_item_name = tostring(result_plr:getDataString("param6")) local received_item = 0 local full_weight = 0 if add_item_type == 'container' then container_weight = getItemWeightById(container_id, 1) if isItemRune(itemtogive_id) == TRUE then items_weight = container_count * getItemWeightById(itemtogive_id, 1) else items_weight = container_count * getItemWeightById(itemtogive_id, itemtogive_count) end full_weight = items_weight + container_weight else full_weight = getItemWeightById(itemtogive_id, itemtogive_count) if isItemRune(itemtogive_id) == TRUE then full_weight = getItemWeightById(itemtogive_id, 1) else full_weight = getItemWeightById(itemtogive_id, itemtogive_count) end end local free_cap = getPlayerFreeCap(cid) if full_weight <= free_cap then if add_item_type == 'container' then local new_container = doCreateItemEx(container_id, 1) doItemSetAttribute(new_container, "description", 'Bought by ' .. getCreatureName(cid) .. ' [ID:' .. id .. '].') local iter = 0 while iter ~= container_count do local new_item = doCreateItemEx(itemtogive_id, itemtogive_count) doItemSetAttribute(new_item, "description", 'Bought by ' .. getCreatureName(cid) .. ' [ID:' .. id .. '].') doAddContainerItemEx(new_container, new_item) iter = iter + 1 end received_item = doPlayerAddItemEx(cid, new_container) else local new_item = doCreateItemEx(itemtogive_id, itemtogive_count) doItemSetAttribute(new_item, "description", 'Bought by ' .. getCreatureName(cid) .. ' [ID:' .. id .. '].') received_item = doPlayerAddItemEx(cid, new_item) end if received_item == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, 'You received >> '.. add_item_name ..' << from OTS shop.') doPlayerSave(cid) db.executeQuery("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";") db.executeQuery("UPDATE `z_shop_history_item` SET `trans_state`='realized', `trans_real`=" .. os.time() .. " WHERE id = " .. id .. ";") else doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. Please make place for this item in your backpack/hands and wait about '.. SQL_interval ..' seconds to get it.') end else doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. It weight is '.. full_weight ..' oz., you have only '.. free_cap ..' oz. free capacity. Put some items in depot and wait about '.. SQL_interval ..' seconds to get it.') end end if not(result_plr:next()) then break end end result_plr:free() end return TRUE end  
    Confira se no seu globalevents.xml já possui a tag:
    <globalevent name="shop" interval="30000" script="shop.lua"/>  
    PRONTO, VOCÊ ESTÁ LIVRE DE CLONES! TÃO SIMPLES NÃO?

     
     
     
     
    Para fazer a checagem se há items clonados, abra o seu phpmyadmin e execute a seguinte query:
    ------------------- COMANDO SQL BY ABSOLUTE PARA VERIFICAR A TABELA PLAYER_DEPOTITEMS---------------------- SELECT `player_id`,`pid`,`sid`,CONVERT( `attributes` USING latin1 ) FROM `player_depotitems` WHERE CONVERT( `attributes` USING latin1 ) LIKE '%description%' ------------------- COMANDO SQL BY ABSOLUTE PARA VERIFICAR A TABELA PLAYER_ITEMS---------------------- SELECT `player_id`,`pid`,`sid`,CONVERT( `attributes` USING latin1 ) FROM `player_items` WHERE CONVERT( `attributes` USING latin1 ) LIKE '%description%'
     
     
    OBSERVAÇÃO IMPORTANTE: Caso seu servidor já esteja online e já possua vendas no seu SHOP, você terá que adicionar a "KEY" em todos os items ou reseta-los.
    OUTRA OBSERVAÇÃO: Nunca crie items VIP com o ADMIN e de aos jogadores, pois eles ficaram sem a "KEY" e poderão ser deletados.
     
     
    ESTE SCRIPT FUNCIONA PERFEITAMENTE NAS REVS 0.3.6 e 0_4, caso necessário passo para a 1.x. S
    IMPLES, PRATICO E PERFEITO NÃO?
     
     
    Quero vê-los usando, espero ter ajudado. :D
     
     
     
    Até a próxima!
     
     
    Absolute.
     
  8. Gostei
    Ken Kaneki deu reputação a Sematico em [Básico] Telhados Triangulares   
    Básico de Telhados Triangulares
    Tutorial básico de Telhados Triangulares
     
    Bom, sempre vejo muitos telhados desse tipo meio malfeitos. Então decide criar três tutoriais (básico, intermediário e avançado) para tentar ajudar o pessoal. Esse aqui é o básico, que visa ensinar a fazer telhados de 1, 2, 3 e 4 SQMs, sempre utilizando as bordas corretas. Então, vamos lá!
     
    • •
     
    Muitas pessoas apenas sabem desses IDs aqui, que são os mais fáceis de achar no RME:

    Mas, na verdade, tem esses aqui abaixo também, que são MUITO úteis, como vamos ver em seguida.

    • •
     
    Bom, para começar, coloque oo ID 9535 ou 9536 no lugar onde vai ficar o telhado.
    Você precisa fazer isso para que o player consiga ver pela janela da casa, quando estiver na frente da mesma.
    Se você não colocar isso, o player irá ficar na frente da janela (pelo lado de fora), mas não vai conseguir ver dentro da casa.
     
    Em seguida, basta preencher o telhado com as peças corretas. Acho que isso ninguém irá ter problema.
     
    Muita gente já para por aí, e acaba não percebendo que não colocou a borda desse telhado triangular. Então preste bem atenção nisso.

     
    Bem simples, não?
     
    • •
     
    Se quiser deixar mais detalhado que isso, você pode usar esses IDs aqui para detalhar melhor:
     

     
    E decorar o telhado do jeito que achar melhor! Mas essa parte é opcional, fica como sua decisão.
     

     
    • •
    O que acharam? Conseguiram fazer no seu map editor?
    Qualquer dúvidas ou problemas, comente aqui em baixo que o ajudarei assim que conseguir.
     
    Bom, aqui está o link dos tutoriais intermediário e avançado, para quem quiser aprender mais sobre esses telhados!
    Intermediário
    Avançado
     
    Grande abraço!

     
  9. Gostei
    Ken Kaneki recebeu reputação de cliverson em (Resolvido)[Pedido] Frag and Vip Look System   
    Cria um arquivo chamado LookPlayer em Creaturescripts e poem:
    function getPlayerFrags(cid) local time = os.time() local times = {today = (time - 86400), week = (time - (7 * 86400))} local contents, result = {day = {}, week = {}, month = {}}, db.getResult("SELECT `pd`.`date`, `pd`.`level`, `p`.`name` FROM `player_killers` pk LEFT JOIN `killers` k ON `pk`.`kill_id` = `k`.`id` LEFT JOIN `player_deaths` pd ON `k`.`death_id` = `pd`.`id` LEFT JOIN `players` p ON `pd`.`player_id` = `p`.`id` WHERE `pk`.`player_id` = " .. getPlayerGUID(cid) .. " AND `k`.`unjustified` = 1 AND `pd`.`date` >= " .. (time - (30 * 86400)) .. " ORDER BY `pd`.`date` DESC") if(result:getID() ~= -1) then repeat local content = {date = result:getDataInt("date")} if(content.date > times.today) then table.insert(contents.day, content) elseif(content.date > times.week) then table.insert(contents.week, content) else table.insert(contents.month, content) end until not result:next() result:free() end local size = { day = table.maxn(contents.day), week = table.maxn(contents.week), month = table.maxn(contents.month) } return size.day + size.week + size.month end function onLook(cid, thing, position, lookDistance) local string = 'You see yourself.' if isPlayer(thing.uid) and thing.uid ~= cid then if getPlayerPremiumDays(thing.uid) > 0 then doPlayerSetSpecialDescription(thing.uid,'[Frags: '..getPlayerFrags(thing.uid)..'][VIP]') else doPlayerSetSpecialDescription(thing.uid,'[Frags: '..getPlayerFrags(thing.uid)..'][FREE]') end elseif thing.uid == cid then if getPlayerPremiumDays(cid) > 0 then doPlayerSetSpecialDescription(cid,'[Frags: '..getPlayerFrags(cid)..'][VIP]') else doPlayerSetSpecialDescription(cid,'[Frags: '..getPlayerFrags(cid)..'][FREE]') end if getPlayerFlagValue(cid, PLAYERFLAG_SHOWGROUPINSTEADOFVOCATION) then string = string..' You are '.. getPlayerGroupName(cid) ..'.' elseif getPlayerVocation(cid) ~= 0 then string = string..' You are '.. getPlayerVocationName(cid) ..'.' else string = string..' You have no vocation.' end string = string..getPlayerSpecialDescription(cid)..'' if getPlayerNameByGUID(getPlayerPartner(cid), false, false) ~= nil then string = string..' You are '.. (getPlayerSex(cid) == 0 and 'wife' or 'husband') ..' of '.. getPlayerNameByGUID(getPlayerPartner(cid)) ..'.' end if getPlayerGuildId(cid) > 0 then string = string..' You are ' .. (getPlayerGuildRank(cid) == '' and 'a member' or getPlayerGuildRank(cid)) ..' of the '.. getPlayerGuildName(cid) string = getPlayerGuildNick(cid) ~= '' and string..' ('.. getPlayerGuildNick(cid) ..').' or string..'.' end if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEECREATUREDETAILS) then string = string..'\nHealth: ['.. getCreatureHealth(cid) ..' / '.. getCreatureMaxHealth(cid) ..'], Mana: ['.. getCreatureMana(cid) ..' / '.. getCreatureMaxMana(cid) ..'].' string = string..'\nIP: '.. doConvertIntegerToIp(getPlayerIp(cid)) ..'.' end if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEEPOSITION) then string = string..'\nPosition: [X:'.. position.x..'] [Y:'.. position.y..'] [Z:'.. position.z..'].' end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string) return false end return true end CreatureScripts.xml
    <event type="look" name="LookPlayer" event="script" value="lookplayer.lua"/> Registre no Login.lua na Pasta Creaturescripts
    registerCreatureEvent(cid, "LookPlayer")
  10. Gostei
    Ken Kaneki recebeu reputação de Tio Joey em [Wono 1.2] World of Naruto Online   
    Créditos: Wono Team, Pozdro
     
    Servidor do WONO (World of Naruto Online) na versão 1.2
     
    O Servidor possui tudo do Wono 1.2 dentre vocações Jutsus e tudo mais, encontrei a datapack em um site polônes, creio que pode haver versões atualizadas espalhadas por ai, enfim, baixem e aproveitem o conteúdo
     
    ______________________________________________________________________________________________
     
    • Info
    • 14 Transformações todos os personagens • Spells de acordo com anime • Jutsus e transformações novas Imagens
     



    ______________________________________________________________________________________________
     
    OBS: Recomendo apenas utilizarem scripts etc, não recomendo por online.
    Download: Mega, Zippyshare
    Scan: Virustotal
     
    Caso não consiga baixar pelo mega baixe pelo zippyshare que o Storm Night disponibilizou.
  11. Gostei
    Ken Kaneki recebeu reputação de souza11 em [Wono 1.2] World of Naruto Online   
    Créditos: Wono Team, Pozdro
     
    Servidor do WONO (World of Naruto Online) na versão 1.2
     
    O Servidor possui tudo do Wono 1.2 dentre vocações Jutsus e tudo mais, encontrei a datapack em um site polônes, creio que pode haver versões atualizadas espalhadas por ai, enfim, baixem e aproveitem o conteúdo
     
    ______________________________________________________________________________________________
     
    • Info
    • 14 Transformações todos os personagens • Spells de acordo com anime • Jutsus e transformações novas Imagens
     



    ______________________________________________________________________________________________
     
    OBS: Recomendo apenas utilizarem scripts etc, não recomendo por online.
    Download: Mega, Zippyshare
    Scan: Virustotal
     
    Caso não consiga baixar pelo mega baixe pelo zippyshare que o Storm Night disponibilizou.
  12. Gostei
    Ken Kaneki recebeu reputação de akx470 em [Wono 1.2] World of Naruto Online   
    Créditos: Wono Team, Pozdro
     
    Servidor do WONO (World of Naruto Online) na versão 1.2
     
    O Servidor possui tudo do Wono 1.2 dentre vocações Jutsus e tudo mais, encontrei a datapack em um site polônes, creio que pode haver versões atualizadas espalhadas por ai, enfim, baixem e aproveitem o conteúdo
     
    ______________________________________________________________________________________________
     
    • Info
    • 14 Transformações todos os personagens • Spells de acordo com anime • Jutsus e transformações novas Imagens
     



    ______________________________________________________________________________________________
     
    OBS: Recomendo apenas utilizarem scripts etc, não recomendo por online.
    Download: Mega, Zippyshare
    Scan: Virustotal
     
    Caso não consiga baixar pelo mega baixe pelo zippyshare que o Storm Night disponibilizou.
  13. Gostei
    Ken Kaneki recebeu reputação de wallacewts em [Wono 1.2] World of Naruto Online   
    Créditos: Wono Team, Pozdro
     
    Servidor do WONO (World of Naruto Online) na versão 1.2
     
    O Servidor possui tudo do Wono 1.2 dentre vocações Jutsus e tudo mais, encontrei a datapack em um site polônes, creio que pode haver versões atualizadas espalhadas por ai, enfim, baixem e aproveitem o conteúdo
     
    ______________________________________________________________________________________________
     
    • Info
    • 14 Transformações todos os personagens • Spells de acordo com anime • Jutsus e transformações novas Imagens
     



    ______________________________________________________________________________________________
     
    OBS: Recomendo apenas utilizarem scripts etc, não recomendo por online.
    Download: Mega, Zippyshare
    Scan: Virustotal
     
    Caso não consiga baixar pelo mega baixe pelo zippyshare que o Storm Night disponibilizou.
  14. Gostei
    Ken Kaneki recebeu reputação de Zard em [Wono 1.2] World of Naruto Online   
    Créditos: Wono Team, Pozdro
     
    Servidor do WONO (World of Naruto Online) na versão 1.2
     
    O Servidor possui tudo do Wono 1.2 dentre vocações Jutsus e tudo mais, encontrei a datapack em um site polônes, creio que pode haver versões atualizadas espalhadas por ai, enfim, baixem e aproveitem o conteúdo
     
    ______________________________________________________________________________________________
     
    • Info
    • 14 Transformações todos os personagens • Spells de acordo com anime • Jutsus e transformações novas Imagens
     



    ______________________________________________________________________________________________
     
    OBS: Recomendo apenas utilizarem scripts etc, não recomendo por online.
    Download: Mega, Zippyshare
    Scan: Virustotal
     
    Caso não consiga baixar pelo mega baixe pelo zippyshare que o Storm Night disponibilizou.
  15. Gostei
    Ken Kaneki recebeu reputação de Yurim18 em [Wono 1.2] World of Naruto Online   
    Créditos: Wono Team, Pozdro
     
    Servidor do WONO (World of Naruto Online) na versão 1.2
     
    O Servidor possui tudo do Wono 1.2 dentre vocações Jutsus e tudo mais, encontrei a datapack em um site polônes, creio que pode haver versões atualizadas espalhadas por ai, enfim, baixem e aproveitem o conteúdo
     
    ______________________________________________________________________________________________
     
    • Info
    • 14 Transformações todos os personagens • Spells de acordo com anime • Jutsus e transformações novas Imagens
     



    ______________________________________________________________________________________________
     
    OBS: Recomendo apenas utilizarem scripts etc, não recomendo por online.
    Download: Mega, Zippyshare
    Scan: Virustotal
     
    Caso não consiga baixar pelo mega baixe pelo zippyshare que o Storm Night disponibilizou.
  16. Gostei
    Ken Kaneki recebeu reputação de Wakon em [Wono 1.2] World of Naruto Online   
    Créditos: Wono Team, Pozdro
     
    Servidor do WONO (World of Naruto Online) na versão 1.2
     
    O Servidor possui tudo do Wono 1.2 dentre vocações Jutsus e tudo mais, encontrei a datapack em um site polônes, creio que pode haver versões atualizadas espalhadas por ai, enfim, baixem e aproveitem o conteúdo
     
    ______________________________________________________________________________________________
     
    • Info
    • 14 Transformações todos os personagens • Spells de acordo com anime • Jutsus e transformações novas Imagens
     



    ______________________________________________________________________________________________
     
    OBS: Recomendo apenas utilizarem scripts etc, não recomendo por online.
    Download: Mega, Zippyshare
    Scan: Virustotal
     
    Caso não consiga baixar pelo mega baixe pelo zippyshare que o Storm Night disponibilizou.
  17. Gostei
    Ken Kaneki recebeu reputação de ReD NigThMaRe em [Pokemon Kpdo] Pokemon kpdo exaioros By Cater   
    Bugado pra quem não sabe usar.
  18. Gostei
    Ken Kaneki recebeu reputação de GOD Vitor em (Resolvido)[Pedido] Frag and Vip Look System   
    Cria um arquivo chamado LookPlayer em Creaturescripts e poem:
    function getPlayerFrags(cid) local time = os.time() local times = {today = (time - 86400), week = (time - (7 * 86400))} local contents, result = {day = {}, week = {}, month = {}}, db.getResult("SELECT `pd`.`date`, `pd`.`level`, `p`.`name` FROM `player_killers` pk LEFT JOIN `killers` k ON `pk`.`kill_id` = `k`.`id` LEFT JOIN `player_deaths` pd ON `k`.`death_id` = `pd`.`id` LEFT JOIN `players` p ON `pd`.`player_id` = `p`.`id` WHERE `pk`.`player_id` = " .. getPlayerGUID(cid) .. " AND `k`.`unjustified` = 1 AND `pd`.`date` >= " .. (time - (30 * 86400)) .. " ORDER BY `pd`.`date` DESC") if(result:getID() ~= -1) then repeat local content = {date = result:getDataInt("date")} if(content.date > times.today) then table.insert(contents.day, content) elseif(content.date > times.week) then table.insert(contents.week, content) else table.insert(contents.month, content) end until not result:next() result:free() end local size = { day = table.maxn(contents.day), week = table.maxn(contents.week), month = table.maxn(contents.month) } return size.day + size.week + size.month end function onLook(cid, thing, position, lookDistance) local string = 'You see yourself.' if isPlayer(thing.uid) and thing.uid ~= cid then if getPlayerPremiumDays(thing.uid) > 0 then doPlayerSetSpecialDescription(thing.uid,'[Frags: '..getPlayerFrags(thing.uid)..'][VIP]') else doPlayerSetSpecialDescription(thing.uid,'[Frags: '..getPlayerFrags(thing.uid)..'][FREE]') end elseif thing.uid == cid then if getPlayerPremiumDays(cid) > 0 then doPlayerSetSpecialDescription(cid,'[Frags: '..getPlayerFrags(cid)..'][VIP]') else doPlayerSetSpecialDescription(cid,'[Frags: '..getPlayerFrags(cid)..'][FREE]') end if getPlayerFlagValue(cid, PLAYERFLAG_SHOWGROUPINSTEADOFVOCATION) then string = string..' You are '.. getPlayerGroupName(cid) ..'.' elseif getPlayerVocation(cid) ~= 0 then string = string..' You are '.. getPlayerVocationName(cid) ..'.' else string = string..' You have no vocation.' end string = string..getPlayerSpecialDescription(cid)..'' if getPlayerNameByGUID(getPlayerPartner(cid), false, false) ~= nil then string = string..' You are '.. (getPlayerSex(cid) == 0 and 'wife' or 'husband') ..' of '.. getPlayerNameByGUID(getPlayerPartner(cid)) ..'.' end if getPlayerGuildId(cid) > 0 then string = string..' You are ' .. (getPlayerGuildRank(cid) == '' and 'a member' or getPlayerGuildRank(cid)) ..' of the '.. getPlayerGuildName(cid) string = getPlayerGuildNick(cid) ~= '' and string..' ('.. getPlayerGuildNick(cid) ..').' or string..'.' end if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEECREATUREDETAILS) then string = string..'\nHealth: ['.. getCreatureHealth(cid) ..' / '.. getCreatureMaxHealth(cid) ..'], Mana: ['.. getCreatureMana(cid) ..' / '.. getCreatureMaxMana(cid) ..'].' string = string..'\nIP: '.. doConvertIntegerToIp(getPlayerIp(cid)) ..'.' end if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEEPOSITION) then string = string..'\nPosition: [X:'.. position.x..'] [Y:'.. position.y..'] [Z:'.. position.z..'].' end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string) return false end return true end CreatureScripts.xml
    <event type="look" name="LookPlayer" event="script" value="lookplayer.lua"/> Registre no Login.lua na Pasta Creaturescripts
    registerCreatureEvent(cid, "LookPlayer")
  19. Gostei
    Ken Kaneki recebeu reputação de Beto Jr em [Pedido] Limite na Sword Fighting   
    MaxSword.lua
    function onLogin(cid) if getPlayerSkillLevel(cid, 0) >= 35 then doPlayerSetRate(cid, 0, 0) end return true end function onAdvance(cid, skill, oldlevel, newlevel) if getPlayerSkillLevel(cid, 0) >= 35 then doPlayerSetRate(cid, 0, 0) end return true end Tag
    <event type="login" name="MaxSword" event="script" value="MaxSword.lua"/> <event type="advance" name="MaxSwordd" event="script" value="MaxSword.lua"/> Login.lua
    registerCreatureEvent(cid, "MaxSword") registerCreatureEvent(cid, "MaxSwordd") if getPlayerSkillLevel(cid, 0) >= 35 then
     
    0 = ID Da skill
    35 = Skill Maximo.
  20. Gostei
    Ken Kaneki recebeu reputação de lordrai2 em [Pedido] Limite na Sword Fighting   
    SKILL_FIST = 0 SKILL_CLUB = 1 SKILL_SWORD = 2 SKILL_AXE = 3 SKILL_DISTANCE = 4 SKILL_SHIELD = 5 SKILL_FISHING = 6 SKILL__MAGLEVEL = 7 SKILL__LEVEL = 8
  21. Gostei
    Ken Kaneki recebeu reputação de lordrai2 em [Pedido] Limite na Sword Fighting   
    MaxSword.lua
    function onLogin(cid) if getPlayerSkillLevel(cid, 0) >= 35 then doPlayerSetRate(cid, 0, 0) end return true end function onAdvance(cid, skill, oldlevel, newlevel) if getPlayerSkillLevel(cid, 0) >= 35 then doPlayerSetRate(cid, 0, 0) end return true end Tag
    <event type="login" name="MaxSword" event="script" value="MaxSword.lua"/> <event type="advance" name="MaxSwordd" event="script" value="MaxSword.lua"/> Login.lua
    registerCreatureEvent(cid, "MaxSword") registerCreatureEvent(cid, "MaxSwordd") if getPlayerSkillLevel(cid, 0) >= 35 then
     
    0 = ID Da skill
    35 = Skill Maximo.
  22. Gostei
    Ken Kaneki recebeu reputação de Vika em [PEDIDO] NTO PANZER OU NTO UNITED   
    Cara ninguém vai sair passando Servidor assim.
    Pega um Servidor de Tibia 8.6
    Vai passando os Arquivos
    Pra Lá.
  23. Gostei
    Ken Kaneki deu reputação a Yokimaru em [Show-off] Yokimaru Client Edition   
    Não é muita coisa, mas estou aqui pra demostrar meu otclient, a imagem do fundo é uma gif do jogo naruto ultimate ninja revolution

  24. Gostei
    Ken Kaneki recebeu reputação de Thayam em (Resolvido)(Ajuda) Fly somente para VIP's   
    function doPushCreatureTo(uid, direction, distance, speed) --//doPushCreature(creature,getPlayerLookDir(cid)) -- Desenvolvido por Dokmos 30/01/2009 -- Apoio Dinastias local pos = getThingPos(uid) local PARAM = {{1}, {500}} local DIRECTION = { {{0,0},{6,7},{1,3}}, {{1,1},{5,7},{0,2}}, {{2,2},{4,5},{1,3}}, {{3,3},{4,6},{0,2}}, {{4,4},{2,3}}, {{5,5}, {1,2}}, {{6,6},{0,1}}, {{7,7},{0,3}} } table.insert(PARAM[1], distance) table.insert(PARAM[2], speed) for dvar = 1, #DIRECTION[direction+1] do rand = math.random(2) d = DIRECTION[direction+1][dvar][rand] dir = {x = (math.fmod(d,2)*(-(d-2))+math.floor(d/4)*math.fmod(d,2)*d-math.floor(d/4)), y = (((d-1)*(d-1-(d-1)*math.ABS(d-2))*(1-math.floor(d/4)))-(math.floor(d/4)*(math.floor(d/6)*2-1)))} newtile = {x = (pos.x+dir.x), y = (pos.y+dir.y), z = pos.z} if (getTileThingByPos(newtile).uid ~= 0) and (hasProperty(getTileThingByPos(newtile).uid,3) == FALSE) and (queryTileAddThing(uid,newtile) == 1) then break end rand = (math.fmod(rand,2)+1) d = DIRECTION[direction+1][dvar][rand] dir = {x = (math.fmod(d,2)*(-(d-2))+math.floor(d/4)*math.fmod(d,2)*d-math.floor(d/4)), y = (((d-1)*(d-1-(d-1)*math.abs(d-2))*(1-math.floor(d/4)))-(math.floor(d/4)*(math.floor(d/6)*2-1)))} newtile = {x = (pos.x+dir.x), y = (pos.y+dir.y), z = pos.z} if (getTileThingByPos(newtile).uid ~= 0) and (hasProperty(getTileThingByPos(newtile).uid,3) == FALSE) and (queryTileAddThing(uid,newtile) == 1) then break end if (dvar == #DIRECTION[direction+1]) then newtile = pos end end doTeleportThing(uid, newtile, true) if (PARAM[1][#PARAM[1]] > 1) then addEvent(doPushCreature, PARAM[2][#PARAM[2]], uid, direction, (distance-1), speed) end end --///////////////////////////////////////////////////////////////////////////////////////////////////////-- local dirpref = { [1] = {[NORTH] = {[1] = {NORTH}, [2] = {EAST, WEST}, [3] = {NORTHEAST, NORTHWEST}}, [EAST] = {[1] = {EAST}, [2] = {NORTH, SOUTH}, [3] = {NORTHEAST, SOUTHEAST}}, [SOUTH] = {[1] = {SOUTH}, [2] = {EAST, WEST}, [3] = {SOUTHEAST, SOUTHWEST}}, [WEST] = {[1] = {WEST}, [2] = {SOUTH, NORTH}, [3] = {NORTHWEST, SOUTHWEST}}, [NORTHEAST] = {[1] = {NORTH, EAST}, [2] = {NORTHEAST}, [3] = {SOUTH, WEST}}, [SOUTHEAST] = {[1] = {SOUTH, EAST}, [2] = {SOUTHEAST}, [3] = {NORTH, WEST}}, [SOUTHWEST] = {[1] = {SOUTH, WEST}, [2] = {SOUTHWEST}, [3] = {NORTH, EAST}}, [NORTHWEST] = {[1] = {NORTH, WEST}, [2] = {NORTHWEST}, [3] = {EAST, SOUTH}}}, [2] = {[NORTH] = {[1] = {NORTH}, [2] = {WEST, EAST}, [3] = {NORTHWEST, NORTHEAST}}, [EAST] = {[1] = {EAST}, [2] = {SOUTH, NORTH}, [3] = {SOUTHEAST, NORTHEAST}}, [SOUTH] = {[1] = {SOUTH}, [2] = {WEST, EAST}, [3] = {SOUTHWEST, SOUTHEAST}}, [WEST] = {[1] = {WEST}, [2] = {NORTH, SOUTH}, [3] = {SOUTHWEST, NORTHWEST}}, [NORTHEAST] = {[1] = {EAST, NORTH}, [2] = {NORTHEAST}, [3] = {WEST, SOUTH}}, [SOUTHEAST] = {[1] = {EAST, SOUTH}, [2] = {SOUTHEAST}, [3] = {WEST, NORTH}}, [SOUTHWEST] = {[1] = {WEST, SOUTH}, [2] = {SOUTHWEST}, [3] = {EAST, NORTH}}, [NORTHWEST] = {[1] = {WEST, NORTH}, [2] = {NORTHWEST}, [3] = {SOUTH, EAST}}}, } function doPushCreature(uid,direction,distance,time) if isCreature(uid) == TRUE then local rand = (2*math.random(0,1))-1 local rand2 = math.random(-1,0) if direction == 0 then signal = {0,rand,-rand,rand,-rand,0,-1,-1,-1,0,0,0} elseif direction == 1 then signal = {1,1,1,0,0,0,0,rand,-rand,rand,-rand,0} elseif direction == 2 then signal = {0,rand,-rand,rand,-rand,0,1,1,1,0,0,0} elseif direction == 3 then signal = {-1,-1,-1,0,0,0,0,rand,-rand,rand,-rand,0} elseif direction == 4 then signal = {-1,rand2,(-rand2)-1,0,1,rand2+1,rand2,0} elseif direction == 5 then signal = {1,-rand2,-((-rand2)-1),0,1,rand2+1,rand2,0} elseif direction == 6 then signal = {-1,rand2,(-rand2)-1,0,-1,(-rand2)-1,rand2,0} else signal = {1,-rand2,-((-rand2)-1),0,-1,(-rand2)-1,rand2,0} end local pos = getThingPos(uid) nsig = #signal nvar = 0 repeat nvar = nvar+1 newpos = {x=pos.x+(signal[nvar]),y=pos.y+(signal[(nsig/2)+nvar]),z=pos.z} newtile = {x=newpos.x,y=newpos.y,z=newpos.z,stackpos=0} until getTileThingByPos(newtile).uid ~= 0 and hasProperty(getTileThingByPos(newtile).uid,3) == FALSE and canWalkOnPos(newtile, true, false, true, true, false) and queryTileAddThing(uid,newpos) == 1 or nvar == (nsig/2) --alterado v1.5 if distance == nil or distance == 1 then doTeleportThing(uid,newpos,TRUE) else distance = distance-1 doTeleportThing(uid,newpos,TRUE) if time ~= nil then addEvent(doPushCreature,time,uid,direction,distance,time) else addEvent(doPushCreature,500,uid,direction,distance,500) end end end end function doComparePosition(pos1, pos2) if pos1.x == pos2.x and pos1.y == pos2.y and pos1.z == pos2.z then return true end return false end function walkTo(cid, direction, finalp, useExtraMoveOrder) if not isCreature(cid) then return true end doChangeSpeed(cid, 5) local x = getThingPos(cid) local ratedelaywalk = 1 local finalpos = {x = finalp.x, y = finalp.y, z = finalp.z} if not canWalkOnPos(finalpos, false, false, true, true, true) then finalpos = getClosestFreeTile(cid, finalpos) end if not finalpos then return false end local dir = getDirectionToWalk(cid, finalpos, 2, 0, 0, false, true, 300) if dir and tonumber(dir) ~= nil and tonumber(dir) >= 0 and tonumber(dir) <= 7 then if dir >= 4 then ratedelaywalk = 0.4 end doPushCreature(cid, dir, 1, getNextStepDelay(cid, dir) * ratedelaywalk) return getNextStepDelay(cid, dir) * ratedelaywalk elseif useExtraMoveOrder then local random = math.random(1, 2) for ta = 1, 3 do for tb = 1, #dirpref[random][direction][ta] do local y = getPosByDir(getThingPos(cid), dirpref[random][direction][ta][tb]) local w = getCreatureLP(cid) local z = getDirectionTo(y, getThingPos(cid)) -- direção q vai marcar local j = getDirectionTo(getThingPos(cid), y) -- direção q ele vai if canWalkOnPos(y, true, false, true, true, true) and w ~= j then if dirpref[random][direction][ta][tb] >= 4 then ratedelaywalk = 0.5 end doPushCreature(cid, dirpref[random][direction][ta][tb], 1, getNextStepDelay(cid, dirpref[random][direction][ta][tb]) * ratedelaywalk) markLP(cid, z) return getNextStepDelay(cid, dirpref[random][direction][ta][tb]) * ratedelaywalk end end end end return false end function getCreatureLP(cid) return getPlayerStorageValue(cid, 197) end function markLP(cid, dir) setPlayerStorageValue(cid, 197, dir) end function markPos(sid, pos) if not isCreature(sid) then return end setPlayerStorageValue(sid, 145, pos.x) setPlayerStorageValue(sid, 146, pos.y) setPlayerStorageValue(sid, 147, pos.z) end function markFlyingPos(sid, pos) if not isCreature(sid) then return end setPlayerStorageValue(sid, 33145, pos.x) setPlayerStorageValue(sid, 33146, pos.y) setPlayerStorageValue(sid, 33147, pos.z) end function getFlyingMarkedPos(sid) if not isCreature(sid) then return end local xx = getPlayerStorageValue(sid, 33145) local yy = getPlayerStorageValue(sid, 33146) local zz = getPlayerStorageValue(sid, 33147) return {x = xx, y = yy, z = zz, stackpos = 0} end function getMarkedPos(sid) if not isCreature(sid) then return end local xx = getPlayerStorageValue(sid, 145) local yy = getPlayerStorageValue(sid, 146) local zz = getPlayerStorageValue(sid, 147) return {x = xx, y = yy, z = zz} end function getOwnerPos(sid) if not isCreature(sid) then return end local xx = getPlayerStorageValue(sid, 148) local yy = getPlayerStorageValue(sid, 149) local zz = getPlayerStorageValue(sid, 150) return {x = xx, y = yy, z = zz} end function markOwnerPos(sid, pos) if not isCreature(sid) then return end setPlayerStorageValue(sid, 148, pos.x) setPlayerStorageValue(sid, 149, pos.y) setPlayerStorageValue(sid, 150, pos.z) end function recheck(sid, skill, pos) if not isCreature(sid) or not isCreature(getCreatureMaster(sid)) then return end local cid = getCreatureMaster(sid) if skill == "cut" then local item = getTileItemById(pos, 2767) doCreatureSay(sid, "CUT!", TALKTYPE_MONSTER) markPos(sid, {x=1,y=1,z=7}) doFaceCreature(sid, pos) doSendMagicEffect(getThingPos(item.uid), 141) doTransformItem(item.uid, 6216) local function growBush() doTransformItem(getTileItemById(pos, 6216).uid, 2767) end addEvent(growBush, intervalToRegrowBushAndStones * 1000) elseif skill == "rock smash" then local item = getTileItemById(pos, 1285) doCreatureSay(sid, "ROCK SMASH!", TALKTYPE_MONSTER) markPos(sid, {x=1,y=1,z=7}) doFaceCreature(sid, pos) doSendMagicEffect(getThingPos(item.uid), 118) doTransformItem(item.uid, 3610) local function growRock() doTransformItem(getTileItemById(pos, 3610).uid, 1285) end addEvent(growRock, intervalToRegrowBushAndStones * 1000) elseif skill == "headbutt" then --alterado v1.6 local master = getCreatureMaster(sid) local array = {} local lvl = {25, 40, 60, 80, 150, 1000} --lvls for i = 1, #lvl do if getPlayerLevel(master) <= lvl[i] then array = headbutt[lvl[i]] break end end local rand = array[math.random(#array)] for j = 1, rand[2] do local poke = doCreateMonster(rand[1], getClosestFreeTile(sid, pos)) doSetMonsterPassive(poke) doWildAttackPlayer(poke, master) end local item = getTileItemById(pos, 12591) --id do item arvore normal doCreatureSay(sid, "HEADBUTT!", TALKTYPE_MONSTER) markPos(sid, {x=1,y=1,z=7}) doFaceCreature(sid, pos) doSendMagicEffect(getThingPos(item.uid), 118) doTransformItem(item.uid, 12592) --id do item arvore quebrada local function growHead() doTransformItem(getTileItemById(pos, 12592).uid, 12591) --id do item arvore quebrada, arvore normal end addEvent(growHead, choose(5, 10, 20, 30) * 60 * 10) --o tempo pra arvore voltar ao normal varia de 5~30min --mudei jah elseif skill == "dig" then local item = getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}) doCreatureSay(sid, "DIG!", TALKTYPE_MONSTER) markPos(sid, {x=1,y=1,z=7}) doFaceCreature(sid, pos) doSendMagicEffect(getThingPos(item.uid), 3) doTransformItem(item.uid, item.itemid+1) local function closeHole() doTransformItem(getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).uid, item.itemid) end addEvent(closeHole, intervalToRegrowBushAndStones * 1000) elseif skill == "fly" then if not isPremium(cid) then doPlayerSendCancel(cid, "Only PREMIUM MEMBERS are allowed to fly.") return true end local pokemon = flys[getPokemonName(getCreatureSummons(cid)[1])] doPlayerSendTextMessage(cid, 27, "Type \"up\" or \"h1\" to fly/levitate higher and \"down\" or \"h2\" to fly/levitate lower.") --alterado v1.8 doChangeSpeed(cid, -getCreatureSpeed(cid)) local speed = 20 + PlayerSpeed + getSpeed(sid) * speedRate doChangeSpeed(cid, speed) setPlayerStorageValue(cid, 54844, speed) doSetCreatureOutfit(cid, {lookType = pokemon[1] + 351}, -1) doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "hp", getCreatureHealth(getCreatureSummons(cid)[1]) / getCreatureMaxHealth(getCreatureSummons(cid)[1])) doRemoveCreature(getCreatureSummons(cid)[1]) setPlayerStorageValue(cid, 17000, 1) if getCreatureOutfit(cid).lookType == 667 or getCreatureOutfit(cid).lookType == 999 then markPosEff(cid, getThingPos(cid)) sendMovementEffect(cid, 136, getThingPos(cid)) --edited efeito quando anda com o porygon end local item = getPlayerSlotItem(cid, 8) if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) <= 0 then sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8 end if useOTClient then doPlayerSendCancel(cid, '12//,hide') --alterado v1.8 end return true elseif skill == "ride" then local pokemon = rides[getPokemonName(getCreatureSummons(cid)[1])] doChangeSpeed(cid, -getCreatureSpeed(cid)) local speed = 20 + PlayerSpeed + getSpeed(sid) * speedRate doChangeSpeed(cid, speed) setPlayerStorageValue(cid, 54844, speed) doSetCreatureOutfit(cid, {lookType = pokemon[1] + 351}, -1) doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "hp", getCreatureHealth(getCreatureSummons(cid)[1]) / getCreatureMaxHealth(getCreatureSummons(cid)[1])) doRemoveCreature(getCreatureSummons(cid)[1]) setPlayerStorageValue(cid, 17001, 1) local item = getPlayerSlotItem(cid, 8) if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) <= 0 then sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8 end if useOTClient then doPlayerSendCancel(cid, '12//,hide') --alterado v1.8 end return true end if getOwnerPos(sid).x ~= getThingPos(getCreatureMaster(sid)).x or getOwnerPos(sid).y ~= getThingPos(getCreatureMaster(sid)).y or isCreature(getCreatureTarget(getCreatureMaster(sid))) then doRegainSpeed(sid) markPos(sid, {x=1,y=1,z=7}) return true end addEvent(recheck, 120, sid) end function goThere(sid, thepos, skill, target, rept) if not isCreature(sid) or not isCreature(getCreatureMaster(sid)) then return true end if getCreatureNoMove(sid) or isSleeping(sid) or isParalyze(sid) then return true end --alterado v1.6 if thepos.x ~= getMarkedPos(sid).x or thepos.y ~= getMarkedPos(sid).y then return true end if isCreature(getCreatureTarget(getCreatureMaster(sid))) and target == false or (rept and rept <= 0) then doRegainSpeed(sid) markPos(sid, {x=1,y=1,z=7}) return true end if (skill == "ride" or skill == "fly") and getDistanceBetween(getThingPos(sid), getMarkedPos(sid)) <= 1 then local currentPos = getThingPos(getCreatureMaster(sid)) local summonPos = getThingPos(sid) local masterPos = getCreatureLastPosition(sid) if currentPos.x == thepos.x and currentPos.y == thepos.y then if getDirectionTo(getThingPos(sid), getThingPos(getCreatureMaster(sid))) <= 3 then doRegainSpeed(sid) local ndelay = getNextStepDelay(sid, 0) doTeleportThing(sid, thepos, true) doChangeSpeed(sid, -getCreatureSpeed(sid)) markPos(sid, getThingPos(getCreatureMaster(sid))) addEvent(goThere, ndelay, sid, getMarkedPos(sid), skill, target) else doChangeSpeed(sid, - getCreatureSpeed(sid)) doRegainSpeed(sid) markPos(sid, getThingPos(getCreatureMaster(sid))) local x = walkTo(sid, getDirectionTo(getThingPos(sid), getMarkedPos(sid)), getMarkedPos(sid), skill == "ride" or skill == "fly") doChangeSpeed(sid, - getCreatureSpeed(sid)) addEvent(goThere, x, sid, getMarkedPos(sid), skill, target) end return true else markPos(sid, getThingPos(getCreatureMaster(sid))) doChangeSpeed(sid, - getCreatureSpeed(sid)) doRegainSpeed(sid) local ndelay = getNextStepDelay(sid, 0) if getDirectionTo(getThingPos(sid), getMarkedPos(sid)) >= 4 then local x = walkTo(sid, getDirectionTo(getThingPos(sid), getMarkedPos(sid)), getMarkedPos(sid), skill == "ride" or skill == "fly") else doTeleportThing(sid, getPosByDir(getThingPos(sid), getDirectionTo(getThingPos(sid), getMarkedPos(sid)))) end doChangeSpeed(sid, - getCreatureSpeed(sid)) addEvent(goThere, x and x or ndelay, sid, getMarkedPos(sid), skill, target) return true end addEvent(recheck, 350, sid, skill, thepos) return true end if getThingPos(sid).x == getMarkedPos(sid).x and getThingPos(sid).y == getMarkedPos(sid).y then if isCreature(getCreatureTarget(sid)) then doFaceCreature(sid, getThingPos(getCreatureTarget(sid))) end if skill == "blink" then doChangeSpeed(sid, - getCreatureSpeed(sid)) --edited blink end addEvent(recheck, 350, sid, skill, thepos) return true end if (getOwnerPos(sid).x ~= getThingPos(getCreatureMaster(sid)).x or getOwnerPos(sid).y ~= getThingPos(getCreatureMaster(sid)).y) and isCreature(getCreatureTarget(getCreatureMaster(sid))) == false and skill == "move" then doRegainSpeed(sid) markPos(sid, {x=1,y=1,z=7}) return true end doRegainSpeed(sid) local holeid = thepos holeid.stackpos = 0 holeid = getTileThingByPos(holeid).itemid if getDistanceBetween(getThingPos(sid), getMarkedPos(sid)) <= 1 and (not isWalkable(getPosByDir(getThingPos(sid), getDirectionTo(getThingPos(sid), getMarkedPos(sid))), true, false, false, true) or isInArray(specialabilities["digholes"], holeid)) then if isGhostPokemon(sid) and getPlayerStorageValue(getCreatureMaster(sid), 990) <= 0 then local todir = getDirectionTo(getThingPos(sid), getMarkedPos(sid)) if todir <= 3 then doTeleportThing(sid, getMarkedPos(sid), true) else local gotopos = getPosByDir(getThingPos(sid), dirpref[math.random(1, 2)][todir][1][math.random(1, 2)]) doTeleportThing(sid, gotopos, true) addEvent(goThere, getNextStepDelay(sid, 0), sid, getMarkedPos(sid), skill, target) return true end end doFaceCreature(sid, getMarkedPos(sid)) addEvent(recheck, 180, sid, skill, thepos) doChangeSpeed(sid, - getCreatureSpeed(sid)) return true end local ret = 0 if getDistanceBetween(getThingPos(sid), getMarkedPos(sid)) <= 1 then ret = walkTo(sid, getDirectionTo(getThingPos(sid), getMarkedPos(sid)), getMarkedPos(sid), skill == "ride" or skill == "fly" or isGhostPokemon(sid)) if not tonumber(ret) then doFaceCreature(sid, getMarkedPos(sid)) addEvent(recheck, 180, sid, skill, thepos) doChangeSpeed(sid, - getCreatureSpeed(sid)) return true end else --alterado ret = walkTo(sid, getDirectionTo(getThingPos(sid), getMarkedPos(sid)), getMarkedPos(sid), skill == "ride" or skill == "fly" or not isGhostPokemon(sid))-- and isSightClear(getThingPos(sid), getMarkedPos(sid), false))) end -----------------------------DITTO------------------ if (getCreatureName(mysum) == "Ditto") and getItemAttribute(thisball.uid, "ehditto") ~= -1 and isMonster(item2.uid) and pokes[getCreatureName(item2.uid)] then local m = getCreatureMaster(cid) local p = getPlayerSlotItem(m, 8) local proibidossempre = {"Mew_", "Mewtwo_", "Unown Legion", "Ho-oh", "Moltres", "Celebi", "Moltres", "Zapdos", "Suicune", "Entei", "Raikou", "Articuno", "Lugia", "Mewtwo", "Mew", "Shiny Rhydon", "Shiny Ariados", "Shiny Magneton", "Shiny Ninetales", "Shiny Politoed", "Shiny Stantler", "Shiny Dodrio", "Shiny Espeon", "Shiny Umbreon"} -- Nunca permitir local proibidosboost = {"Shiny Dragonite", "Shiny Snorlax", "Shiny Gyarados", "Shiny Scyther"} -- Permitir se ditto for +50 local outpokes = {"Magnet Electabuzz","Elder Tyranitar","Hard Golem","Brute Rhydon","Iron Steelix","Brave Charizard","Elder Charizard","Lava Magmar","Enraged Typhlosion","Capoeira Hitmontop","Boxer Hitmonchan","Taekwondo Hitmonlee","Dragon Machamp","Undefeated Machamp","Wardog Arcanine","Elder Arcanine","Furious Mantine","War Gyarados","Brave Blastoise","Brave Venusaur","Ancient Meganium","Tribal Feraligatr","Elder Dragonite","Elder Pinsir","Elder Raichu","Charged Raichu","Tribal Xatu","Enigmatic Girafarig","Ancient Alakazam","Master Alakazam","Furious Ampharos","Elder Electabuzz","Furious Scyther","Tribal Scyther","War Heracross","Metal Scizor","Brave Nidoking","Brave Nidoqueen","Elder Muk","Dark Crobat","Trickmaster Gengar" ,"Elder Gengar" ,"Banshee Misdreavus","Hungry Snorlax","Brute Ursaring","War Granbull","SINGER Wigglytuff","Aviator Pidgeot","Metal Skarmory","Brave Noctowl","Elder Pidgeot","Ancient Dragonite","Milch-Miltank","Ancient Kingdra","Psy Jynx","Elder Venusaur","Elder Jynx","Evil Cloyster","Freezing Dewgong","Elder Tangela","Furious Sandslash","Roll Donphan","Bone Marowak","Octopus Octillery","Moon Clefable","Heavy Piloswine","Elder Blastoise","Elder Tentacruel","Elder Marowak","Master Stantler"} local boost = getItemAttribute(thisball.uid, "boost") or 0 if getCreatureName(item2.uid) == "Ditto" or getCreatureName(item2.uid) == "Shiny Ditto" then doPlayerSendCancel(cid, "Your ditto can't TRANSFORM into another ditto.") markPos(mysum, unfix) return true end if isInArray(outpokes, getCreatureName(item2.uid)) then doPlayerSendCancel(cid, "Your ditto can't TRANSFORM into this pokemon.") markPos(mysum, unfix) return true end if getPlayerLevel(cid) < pokes[getCreatureName(item2.uid)].level then doPlayerSendCancel(cid, "You haven't level to TRANSFORM into that pokemon.") markPos(mysum, unfix) return true end if isInArray(proibidossempre, getCreatureName(item2.uid)) then --Checa a lista doPlayerSendCancel(cid, "Your ditto can't transform into that pokemon.") markPos(mysum, unfix) return true end if isInArray(proibidosboost, getCreatureName(item2.uid)) and boost < 50 then --Checa a lista doPlayerSendCancel(cid, "Your ditto can't transform into that pokemon.") markPos(mysum, unfix) return true end markPos(mysum, unfix) doFaceCreature(mysum, getThingPos(item2.uid)) doDittoTransform(mysum, getCreatureName(item2.uid)) return true end if not tonumber(ret) then doPlayerSendCancel(getCreatureMaster(sid), "Destination is not reachable.") markPos(sid, {x=1,y=1,z=7}) return true end doChangeSpeed(sid, - getCreatureSpeed(sid)) addEvent(goThere, tonumber(ret), sid, getMarkedPos(sid), skill, target, rept and rept - 1 or 22) end
  25. Gostei
    Ken Kaneki recebeu reputação de wallacewts em (Resolvido)[AJUDA]Erro no Effect da spell   
    Aparece algum erro ?
     
    Tenta esse aqui.
     
    Caso não funcione me mande a tag no spells.xml.
    local tempo = 60 -- tempo em segundos. local effect = {136} -- effect no player, caso queira apenas 1, basta remover os outros numeros.       local ml = 35 -- quantos ira aumentar o skill de ML local skillfist = 35 -- quantos ira aumentar o skill de Fist local skillsword = 35 -- quantos ira aumentar o skill de Sword local skillaxe = 35 -- quantos ira aumentar o skill de Axe local skillclub = 35 -- quantos ira aumentar o skill de Club local skilldistance = 35 -- quantos ira aumentar o skill de Distance local skillshield = 35 -- 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 magicEffect1(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+1, 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(magicEffect1, tempo2, tempo2, tempo*1000, cid)         tempo2 = tempo2 + 300     end     setPlayerStorageValue(cid, 102053,1) -- storage verifica transformado, quando = 1 player esta transformado.     doCreatureSay(cid, "Bijuu Chakra Mode", TALKTYPE_MONSTER) else     doPlayerSendCancel(cid, "Sorry, you are transformed.") end end

Informação Importante

Confirmação de Termo