Ir para conteúdo

Simples Pet Sistema


kttallan

Posts Recomendados

Ola galera venho aqui postar um simples pet sistema que eu fiz pra participar do OMS.

 

Introdução:

O Pet sistema funciona assim você pode ganhar/comprar um item que ao clicar ele sumonarar seu pet com uma certa quantidade de sangue, porem só poderar usar o summon alguns vezes no dia (configuravel).

 

Crie um arquivo chamado Petsystem.lua em data/actions/scripter e coloque.

function onUse(cid, item, frompos, item2, topos)

local monster ={
[12597] = {"Troll", 1, 50, vida = 500, vezes = 5, go = 00, gack = 00},
[12598] = {"Amazon", 50, 100, vida = 1000, vezes = 10, go = 00, back = 00},
[12599] = {"Demon", 100, 150, vida = 1500, vezes = 15, go = 00, back = 00}
}

local summom = getCreatureSummons(cid)
local mst = monster[item.actionid]
local hea = monster.vida

function backMonster(cid, monsters)
if #getCreatureSummons(cid) >= 1 then
monsters = getCreatureSummons(cid)[1]
doRemoveCreature(monsters)
doPlayerSendTextMessage(cid, 13, "Não precio de sua ajuda"..mst[1].."por enquanto")
doSendMagicEffect(getThingPos(monsters), mst.back)
end
end

if getPlayerStorageValue(cid, 18800) >= mst.vezes then
return doPlayerSendCancel(cid, "Seu Summon estar cansado só poderar usar amanhan")
end

if getPlayerLevel(cid) > mst[2] and mst[3] < getPlayerLevel(cid) then
doSummonCreature(mst[1], getThingPos(cid))
doPlayerSendTextMessage(cid, 14, "Venha me ajudar"..mst[1].."nessa batalha")
setCreatureMaxHealth(summom[1], hea)
doPlayerSetStorageValue(cid, 18800, mst.vezes)
doSendMagicEffect(getThingPos(monster), mst.go)
else
backMonster(cid, mst[1])
return true
end
end

Agr va em actions.xml e coloque a seguinte

Tag :

<action actionid="12597;12598;12599" event="script" value="petsystem.lua"/> 

Agr va em globalevents/scripter e crie um arquivo chamado Pet.lua e coloque

function onTimer()

local storage = {5, 10, 15}

setPlayerStorageValue(cid, 18800, storage[1])
setPlayerStorageValue(cid, 18800, storage[2])
setPlayerStorageValue(cid, 18800, storage[3])
end

agr em globalevents.xml coloque o tag

<globalevent name="PetSystem" time="00:00" event="script" value="pet.lua"/>

Explicação

[12597] = {"Troll", 1, 50, vida = 500, vezes = 5, go = 00, gack = 00},
[12598] = {"Amazon", 50, 100, vida = 1000, vezes = 10, go = 00, back = 00},
[12599] = {"Demon", 100, 150, vida = 1500, vezes = 15, go = 00, back = 00}

 

Verde : Oque estar em verde serar o nome do pet(summon) que você vai ter.

Negrito : 1, 50 quer dizer que você pode usar o summon troll so do lvl 1 ao 50.

Vida: É a vida do seu pet sugiro que seja entre 500 a 5000.

Vezes : e quantas vezes você pode usar ele no dia.

Go : e o effeito de invocação do summon caso não deseje deixe e 0.
Back : mesma coisa o efeito de remover o monstro, deixe em 0 caso n queira.

Pronto eu acho que é somente isso se tiver bug vocês avisam aqui em baixo pois meu nivel de scripter não e tão auto e caso o pessoal mais experiente quizer da uma editada nele, estar de boa :).

 

Creditos
Escolinha de scripter do roksas (Ensinar o que eu sei)

Kttallan (Eu mesmo por ser o criador)

Editado por kttallan
Link para o comentário
Compartilhar em outros sites

Cara seu script está completamente errado. Como vc se inscreve no OMS sem nem testar o código??

Pra começar, você esqueceu de um then e um end.

getCreatureSummons(cid) retorna uma tabela, como você quer usar uma tabela como cid??

 

Nessa linha:

if getPlayerLevel(cid) > mst[2] or mst[3] < getPlayerLevel(cid) then

Você deveria usar and e não or, para garantir que o player vai estar entre os leveis definidos.

Link para o comentário
Compartilhar em outros sites

So corrigindo um erro seu que foi postar 2 vezes no OMS, aquele tópico e altamente so para inscrições

 

Você poderia ter editado o 1 post e colocado a sua inscrição lá.

 

Obs: eu comentei lá, mas e pq ainda vo editar e colocar meu código

Link para o comentário
Compartilhar em outros sites

Cara seu script está completamente errado. Como vc se inscreve no OMS sem nem testar o código??

Pra começar, você esqueceu de um then e um end.

getCreatureSummons(cid) retorna uma tabela, como você quer usar uma tabela como cid??

 

Nessa linha:

if getPlayerLevel(cid) > mst[2] or mst[3] < getPlayerLevel(cid) then

Você deveria usar and e não or, para garantir que o player vai estar entre os leveis definidos.

Killua eu não testei pelo fato de não ter nenhum servidor pra poder testar e tbm minha net e 306kbps por minuto ia demorar um bom tempo pra baixar, meu codigo pode estar todo errado poriso pedi ajuda para menbros mais experiente mais kd que alguem ajuda dps de insistir d+ para o roksas ele me colocou na escolinha mais ainda fiquei com muitas duvidas na mente sé me ajudar a corrigir ficaria grato.

 

@Porem erros consertados.

Editado por kttallan
Link para o comentário
Compartilhar em outros sites

  • 1 year later...
×
×
  • Criar Novo...