Tudo que deivaoo postou
-
(Resolvido)Evoluir Pokemon Com Talkaction
Basicamente, o único arquivo a se editar é o da pasta lib, onde pode editar o item a ser cobrado e a quantidade. Aparece algum erro na distro? Ele pega os pokemons da configuração do próprio servidor cyan, que tem uma tabela chamada poevo, onde tem dados de evolução, stone, etc. Pode dizer quais os erros que aparecem na distro?
-
(Resolvido)[Stamina BUG] player morre = stamina full)
exatamente Summ, uma grande gambiarra! Ahuaheuaheu está apenas dando uma volta pelo erro, sem concertá-lo pela raiz... como você disse, provavelmente aparecerão outros erros... "Gambiarras resolvem instantemente, porém podem complicar em problemas futuros." ~David Araujo
-
(Resolvido)[Stamina BUG] player morre = stamina full)
crie um arquivo na pasta creaturescripts chamado 'StaminaBug.lua' e coloque o seguinte código: local storage = 5612 function onPrepareDeath(cid, deathList) if isPlayer(cid) then setPlayerStorageValue(cid, storage, getPlayerStamina(cid)) -- Salva a Stamina atual do player end return true end function onLogin(cid) if isPlayer(cid) then local stamina = getPlayerStorageValue(cid, storage) if not stamina == -1 then local newStamina = stamina-getPlayerStamina(cid) --Pega a stamina salva e calcula a diferença com a atual doPlayerAddStamina(newStamina) -- Adiciona a diferença calculada setPlayerStorageValue(cid, storage, -1) -- Remove o valor da storage end end return true end Agora adicione essas duas tags ao creaturescripts.xml: <event type="login" name="StaminaBugLogin" script="StaminaBug.lua"> <event type="PrepareDeath" name="StaminaBugPrepareDeath" script="StaminaBug.lua">
-
(Resolvido)Evoluir Pokemon Com Talkaction
Vou postar o que eu fiz, se alguém puder completar... Não consegui abrir a base cyan... Bom, dei uma olhada nos scripts do cyan, mas não sei se vai funcionar... Se der algum erro, por favor, diga oq aparece na distro e oq acontece no jogo. Crie um arquivo na pasta 'data/lib', com o nome 'EvoTalkActionSystem.lua' e coloque o seguinte código: EvoTalkActionSystemConfig = { storage = 40029, --Storage da ball item = { id = 3956, --Id do item a ser cobrado (removido) quant = 1 --Quantidade do item a ser cobrado } } function getPokeDevoByName(pokename) for devo,evo in ipairs(poevo) do if evo.evolution == pokename then return devo end end end Agora crie uma pasta em 'mods/scripts' com o nome 'EvoTalkActionSystem' Crie um arquivo com o nome 'talkaction.lua', na pasta criada, e coloque o seguinte código: local config = EvoTalkActionSystemConfig function onSay(cid, words, param) if getPlayerItemCount(cid, config.item.id) < config.item.quant then --Se NÃO tiver o suficiente do item pedido return doPlayerSendCancel(cid, "Você não tem "..config.item.quant.."x - "..getItemNameById(config.item.id)) --Retorna uma mensagem de erro end if #getCreatureSummons(cid) == 0 then --Se não tiver sumonado nenhum pokemon return doPlayerSendCancel(cid, "Você precisa sumonar um pokemon para usar esse comando.") --Retorna uma mensagem de erro end local monster = getCreatureName(getCreatureSummons(cid)[1]) if not isInArray(specialevo, getCreatureName(monster)) then --Se o pokemon não estiver na lista return doPlayerSendCancel(cid, "Esse pokemon não pode ser evoluído.") --Retorna uma mensagem de erro end doPlayerRemoveItem(config.item.quant, config.item.id) -- Aqui varia a cada servidor... Adaptei para base Cyan doEvolvePokemon(cid, getCreatureSummons(cid)[1], poevo[monster].evolution, 0, 0) doItemSetAttribute(ball, "morta", "no") doItemSetAttribute(ball, "Icone", "yes") doTransformItem(ball, icons[getItemAttribute(ball, "poke")].use) ---------------------------------------------------------- setPlayerStorageValue(cid, config.storage.balluid, ball.uid) --Salva o uid da ball na storage return true end Crie um arquivo com o nome 'death.lua', na pasta criada, e coloque o seguinte código: local config = EvoTalkActionSystemConfig function onPrepareDeath(cid,deathlist) if isMonster(cid) then --Se for um pokemon if getCreatureMaster(cid) then --Se não for selvagem local player = getCreatureMaster(cid) local playerball = getPlayerSlotItem(player, 8) if getItemAttribute(playerball.uid,"uid") == config.uid then local ball = getPlayerStorageValue(player, config.storage) if playerball.uid == ball then --Se for a ball e o pokemon corretos local pokename = getPokeDevoByName(getCreatureName(cid)) -- Aqui varia a cada servidor... Adaptei para base Cyan doEvolvePokemon(player, cid, pokename, 0, 0) --"Desevolui" o pokemon doItemSetAttribute(ball.uid, "morta", "yes") --Edita a ball para morto doItemSetAttribute(ball.uid, "Icone", "yes") --Ativa sistema de ícones doTransformItem(ball.uid, icons[getItemAttribute(ball, "poke")].use)-- Edita o ícone ao do pokemon ---------------------------------------------------------- doItemSetAttribute(playerball.uid, "uid", 0) --Remove a uniqueid (edita para 0) setPlayerStorageValue(cid, config.storage, -1) --remove o valor da storage end end end end return true end Agora, na pasta 'mods', crie um arquivo chamado 'EvoTalkActionSystem.xml' e coloque o seguinte código: <?xml version="1.0" encoding="UTF-8"?> <mod name="EvoTalkActionSystem" version="1.0" author="David Araujo (Hopus)" contact="http://www.tibiaking.com/forum/user/43104-david0703/" enabled="yes"> <talkaction words="!evoluir" event="script" value="EvoTalkActionSystem/talkaction.lua"> <event type="PrepareDeath" name="EvoTalkActionSystemDeath" event="script" value="EvoTalkActionSystem/death.lua"> </mod>
- (Resolvido)Evoluir Pokemon Com Talkaction
- (Resolvido)Evoluir Pokemon Com Talkaction
-
(Resolvido)Evoluir Pokemon Com Talkaction
local evo = { ["Abra"] = "kadabra", ["Kadabra"] = "alakazam", ["Drowzee"] = "hypno", ["Slowpoke"] = "slowbro", ["Exeggcute"] = "exeggutor", ["Psyduck"] = "golduck", ["Mime Jr"] = "mr.mime", ["Togepi"] = "togetic", ["Slowbro"] = "slowking", } function onSay(cid, words, param) local monster = getCreatureName(getCreatureSummons(cid)[1]) if evo[monster] then doRemoveCreature(getCreatureSummons(cid)[1]) local summon = doCreateMonster(evo[monster], toPosition) doConvinceCreature(cid, summon) doSendMagicEffect(getThingPos(summon), 18) return TRUE end return FALSE end
-
Mudar IP do Client Compilado
ah sim... aí mexe com código assembly e hexa decimal... me passa apenas exe que eu tento trocar pra vc, se eu ainda me lembrar como faz...
-
Mudar IP do Client Compilado
ele está compactado... procure algum descompactador de moolebox (ou tente abrir manualmente por um SO diferente de windows)... aí vc extrai o dat e o spr e usa com seu client criado no vapus
-
Projeto 7.6 / Qual programa usar para editar o mapa ?
Remare's Map Editor
-
[Pedido]Mostrar numero de quantidades de balls
Bom, creio que esse mod possa ajudar: mod catch window v1.3 Se não, esclareça melhor seu pedido, com mais detalhes.
-
Como fazer para capturar um pokemon novo add no serve
Talvez esse tópico te ajude: tutorial adicionando novos pokemons em seu pda com e sem icon system
-
[CTF] Capture The Flag 2.0(Automático)
Não é necessário dizer que o Max é foda... Ele mostra isso com as atitudes dele... Faz scripts para o povo, sem pedir nada em troca... Merece 1000 rep+ pela dedicação em compartilhar e emprestar seu conhecimento para todos nós... Max, me espelho em ti cara! Sistema bem-elaborado... Não deixe que mal-agradecidos toquem em sua humildade... Você é 10 mano!
-
OTClient - Otui Generator
Apoio a ideia... ele será open source? Pois seria uma grande fonte de estudos!
-
APENAS UMA DUVIDA (AJUDA)
o sistema de montaria seria através de um summon?
-
Evento Assasin
copia o código do arquivo da lib dnv, ele já arrumou...
-
(Resolvido)NPC com restrição
ah sim, não são todos os servidores que tem... essa seria a função- getItemDescriptions(item).name na pasta lib, em algum arquivo, acrescente isso function getItemName(uid) return getItemDescriptions(uid).name end caso não queira adicionar a função na lib, troque getItemName(config.recompensa) por getItemDescriptions(config.recompensa).name e, para ficar organizado, escreva o nome do item apos o id, ex. recompensa = 2493, --Diamond
-
Harry potter tibia online?
Eu deixei meus dados ali acima... Nao coloquei raidcall pq não estou sempre com o pc conectado na internet... apenas meu celular... creio que seria o melhor meio de comunicação, ou até mesmo pelo privado aqui no fórum...
-
Evento Assasin
isso ai eh o calculo que pega todos os quadradinhos dentro dos pontos recebidos pela função... verifica se eh player e adiciona na tabela o creatureid, se for...
-
APENAS UMA DUVIDA (AJUDA)
Exatamente @Caronte, eh assim que funciona em servidores de pokemon 8.54...
-
(Resolvido)NPC com restrição
Acho que vc soh precisava trocar o intens.otb e o itens.xml do seu remare's... Porém eu sempre faço quests via action, mais tranquilo pra editar @Wakon, , não eh necessário pegar o nome do item, pois temos a função ''getItemName(itemid)'', que pega o nome do item pelo itemid... Portanto, pode tirar essa linha nitem = "Item test.", -- Nome da recompensa. e, nessa linha doPlayerSendTextMessage(cid,25,"You have found a "..config.nitem..".") alterar ''config.nitem'' para ''getItemName(config.recompensa)'', ficando assim doPlayerSendTextMessage(cid,25,"You have found a "..getItemName(config.recompensa)..".")
-
APENAS UMA DUVIDA (AJUDA)
pegar como base... teria que fazer ajustes, claro, mas nada tao difícil... nao posso falar com propriedade porque faço scripts apenas pra 8.54, mas ´´e utilizado um sistema de montaria quando se sobe em um pokemon, seja voador ou terrestre... um sistema de montaria, por exemplo, tirado do antigo servidor de poketibia Ownz... Ele eh utilizado em forma de action id...
-
(Resolvido)Teleport caindo de monstros
Bom, acho que ficaria mais dinamico se o teleport aparecesse exatamente onde o monstro morreu... Em 'Teleportz.lua', coloque o seguinte codigo...
-
APENAS UMA DUVIDA (AJUDA)
pode pegar sistemas de montaria em servidores de poketibia...
-
[Harry Potter Online] A procura de uma STAFF
Nome: David Idade: 19 Whats APP: 11 9 7048-5942 Porque você quer fazer parte do projeto? R. Ja tive essa ideia antes e levaria o projeto sozinho... Mas acho que uma corda de 3 fios resiste mais que 1 fio sozinho... Quanto tempo de experiência você tem com OT Servers? R. 3 Anos, aproximadamente. Mapper/Spriter/Scripter/Programador: Scripter.