Postado Maio 8, 2013 12 anos Este é um post popular. Sistema de Pet V1.0 E ai Galera, suave? Hoje venho trazer pra vocês, meu sistema de pet. É bem do tipo pokemon, mas tenho certeza que irão gostar. Vou liberá-lo porque gosto de compartilhar as coisas, e sei que alguém esta querendo um sistema desses. Assim como eu quis um dia e nunca encontrei um que funcionasse. O sistema está na versão 1.0, mas em em breve trarei um npc para healar o pet e algumas talks para o pet soltar spells. Vamos lá! Primeiramente, vá em data/action/scripts, crie um arquivo com o nome de CatchPet.lua e adicione: local mtrs = { ["Rat"] = {hp = 1000, maxhp = 1000, corpse = 2813, chance = 100}, ["Rotworm"] = {hp = 1000, maxhp = 1000, corpse = 5967, chance = 100}, ["Skeleton"] = {hp = 1000, maxhp = 1000, corpse = 5972, chance = 100}, ["Dragon"] = {hp = 1000, maxhp = 1000, corpse = 3104, chance = 100}, ["Dragon Lord"] = {hp = 1000, maxhp = 1000, corpse = 5984, chance = 100}, } function onUse(cid, item, frompos, item2, topos) for pet_name, v in pairs(mtrs) do if item2.itemid == v.corpse then if math.random(0,100) <= v.chance then doPlayerSendTextMessage(cid, 27, "Você capturou um ".. pet_name .. ".") doRemoveItem(item2.uid, 1) doRemoveItem(item.uid, 1) local itemcatch = doPlayerAddItem(cid, 7632, 1) doItemSetAttribute(itemcatch, "namepet", pet_name) doItemSetAttribute(itemcatch, "description", "Contém um ".. pet_name ..".") doItemSetAttribute(itemcatch, "lifepet", v.hp) doItemSetAttribute(itemcatch, "maxlifepet", v.maxhp) else doPlayerSendTextMessage(cid, 27, "Falhou.") end end end return true end Em seguida, duplique o arquivo, renomeie para VaiVolta e adicione: function onUse(cid, item, frompos, item2, topos) local health = tonumber(getItemAttribute(item.uid, "lifepet")) local mhp = tonumber(getItemAttribute(item.uid, "maxlifepet")) if health <= 0 then return doPlayerSendCancel(cid, "Esse pet esta morto.") end local pet_name = getItemAttribute(item.uid, "namepet") if item.itemid == 7632 then if not getTilePzInfo(getPlayerPosition(cid)) then if #getCreatureSummons(cid) < 1 then doTransformItem(item.uid, 7633) local summon = doSummonCreature(pet_name, getThingPos(cid)) doConvinceCreature(cid, summon) setCreatureMaxHealth(summon, mhp) doCreatureAddHealth(summon, mhp) doCreatureAddHealth(summon, health - mhp) doSendMagicEffect(getCreaturePosition(summon), 67) doCreatureSay(cid, "Vai, ".. pet_name .. "!", TALKTYPE_SAY) else doPlayerSendCancel(cid, "Você já sumonou um Pet.") end else doPlayerSendCancel(cid, "Você não pode estar em Protection Zone para sumonar seu Pet.") end elseif item.itemid == 7633 then local hp, maxhp = getCreatureHealth(getCreatureSummons(cid)[1]), getCreatureMaxHealth(getCreatureSummons(cid)[1]) if #getCreatureSummons(cid) >= 1 then doSendMagicEffect(getCreaturePosition(getCreatureSummons(cid)[1]), 67) doRemoveCreature(getCreatureSummons(cid)[1]) doTransformItem(item.uid, 7632) doItemSetAttribute(item.uid, "lifepet", hp) doItemSetAttribute(item.uid, "maxlifepet", maxhp) doCreatureSay(cid, "Volta, " .. pet_name .. ".", TALKTYPE_SAY) end end return true end Agora em Actions.xml, adicione as tags: <action itemid="2149" event="script" value="CatchPet.lua"/> <action itemid="7632;7633" event="script" value="VaiVolta.lua"/> Configurando Nesta parte você irá editar: Quote ["Rat"] = {hp = 1000, maxhp = 1000, corpse = 2813, chance = 100}, ["Rotworm"] = {hp = 1000, maxhp = 1000, corpse = 5967, chance = 100}, ["Skeleton"] = {hp = 1000, maxhp = 1000, corpse = 5972, chance = 100}, ["Dragon"] = {hp = 1000, maxhp = 1000, corpse = 3104, chance = 100}, ["Dragon Lord"] = {hp = 1000, maxhp = 1000, corpse = 5984, chance = 100}, NOME DO PET / HP / HP MÁXIMO / CORPSE ID ( AQUELE QUE FICA QUANDO O MONSTRO MORRE) / CHANCE DE CAPTURA DO PET.Esse são os id's das "pokeballs": Quote if item.itemid == 7632 then elseif item.itemid == 7633 then Caso queira mudar, troque no script e na tag no actions.xml.Este é o item de captura: <action itemid="2149" event="script" value="CatchPet.lua"/> Bom, é isso galera, espero que gostem e que façam um bom uso do sistema! Aproveitem! Dúvidas? Sugestões? Criticas? Comentem!! Créditos/Agradecimentos: BananaFightLuckOakeMaXwElldEnGears Editado Maio 8, 2013 12 anos por PsyMcKenzie (veja o histórico de edições)
Postado Maio 8, 2013 12 anos Bem dahora Psy. Mas, é como eu disse, coloca algo novo, que torne o seu diferente dos outros. -"Supra Omnes Lux Lucis" - Acima de todos brilha a Luz -
Postado Maio 23, 2013 12 anos Hello when i click right on empty pokeball(7632) or destroyed pokeball(7633) i got error [23/05/2013 16:29:09] [Error - Action Interface] [23/05/2013 16:29:09] data/actions/scripts/inne/pet_system.lua:onUse [23/05/2013 16:29:09] Description: [23/05/2013 16:29:09] (luaGetCreatureHealth) Creature not found how i can fix it?
Postado Novembro 30, 2013 11 anos Cara você nao tem 1 que o sistema seja diferente por exemplo ia em 1 npc comprasse o pet e exeplo lvl 50 era 1 e lvl 100 ele evoluisse e lvl 200 evoluia denovo e se morrese era so ir nesse npc e reviver er ele nao teria 1 sistema assim?
Postado Dezembro 24, 2013 11 anos é cara mt bom mas tem um porem ;/ qndo o pet morre e vc o tenta trazer de volta acontece isso na distro [17:1:02.182] [Error - Action Interface] [17:1:02.183] data/actions/scripts/VaiVolta.lua:onUse [17:1:02.185] Description: [17:1:02.186] (luaGetCreatureMaxHealth) Creature not found e se o player tentar trazer ele de volta mts vezes a distro fecha teria como caso ele morre-se aparecer uma mensagem dizendo q ele esta morto ou sei la so pra nao ter esse erro ae e cair o serv agrade-ço desde jah
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.