Ir para conteúdo

Mount System v1.0


Roksas

Posts Recomendados

Mount System v1.0

 

 

divisor.png

 

Saudações usuários XTibianos, hoje tive uma simples ideia e vim trazer para vocês! É o Mount System, mas como funciona?

 

Você usa o "Item Capturador" no corpo do monstro e tem chances de conseguir montar nele, ou chances dele escapar.

 

 

 

Instalação:

 

divisor.png

Vá em data/actions/scripts, copie algum arquivo da pasta e cole, renomeie para mount_system e adicione dentro:

 

 

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

local mounts = {
[6009] = {name = "War Wolf", chance = 30, mountOutfit = "Orc Rider", mountSpeed = 50, mountTime = 5},
[2969] = {name = "War Wolf", chance = 30, mountOutfit = "Orc Rider", mountSpeed = 50, mountTime = 5},
}
local mount = mounts[item2.itemid] -- Não mexa
local timeTo = 3 -- Time to mount
local rand = math.random(1, 100)

if rand < mount.chance then
addEvent(doPlayerSendTextMessage, timeTo*1000, cid, 27, "You failed to capture his mount, try again.")
doSendMagicEffect(getThingPos(item2.uid), 2)
doRemoveItem(item2.uid, 1)
return false
end

if rand >= mount.chance and math.random(1, 100) < 50 then
doSendMagicEffect(getThingPos(item2.uid), 2)
doRemoveItem(item2.uid, 1)
addEvent(doPlayerSendTextMessage, timeTo*1000, cid, 27, "You captured his mount: ["..mount.name.."].")
addEvent(doPlayerSendTextMessage, timeTo*1000, cid, 27, "Now you have "..mount.mountTime.." minutes of riding, enjoy..")
addEvent(doSetMonsterOutfit, timeTo*1000, cid, mount.mountOutfit, -1)
addEvent(doChangeSpeed, timeTo*1000, cid, getCreatureSpeed(cid) + mount.mountSpeed)
addEvent(doRemoveCondition, mount.mountTime*60*1000, CONDITION_OUTFIT)
addEvent(doChangeSpeed, mount.mountTime*60*1000, cid, getCreatureSpeed(cid) - mount.mountSpeed)
addEvent(doPlayerSendTextMessage, mount.mountTime*60*1000, cid, 27, "Your time just riding, reuse the item to be riding back.")
end
return true
end

 

 

Em actions.xml adicione essa tag:

 

<action itemid="2403" event="script" value="mount_system.lua"/>

 

Em ItemID aonde está o número 2403 você coloca o ID do Item Capturador.

 

 

 

 

Configuração:

 

 

divisor.png

local mounts = {
[6009] = {name = "War Wolf", chance = 30, mountOutfit = "Orc Rider", mountSpeed = 50, mountTime = 5},
[2969] = {name = "War Wolf", chance = 30, mountOutfit = "Orc Rider", mountSpeed = 50, mountTime = 5},
}

 

Nessa parte iremos adicionar as montarias, pode adicionar quantas quiser!

Entre [ e ] você coloca o Item ID do corpo do monstro em que vai montar.

 

Aonde está name coloca o nome da montaria, chance você coloca a chance que tem de montar nele, mountOutfit você coloca o nome do monstro que tem a Outfit da sua montaria, mountSpeed é a velocidade que você fica após montar e em mountTime você coloca por quantos minutos você pode ficar montado!

 

Demonstração:

 

 

divisor.png

16atitu.jpg

 

 

Finalizações:

 

 

divisor.png

Obrigado galerinha, espero que tenham gostado, achei que o código ficou grande, mas estou aceito críticas e sugestões a respeito para eu melhorar em futuras versões, é isso, beijo grande :)

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

Ficou bom cara, mas o math.random acho que você deveria declarar numa variável, pois a cada vez que usa ele, vai gerar uma nova chance (no caso, de 1 a 100).

Rep+

Link para o comentário
Compartilhar em outros sites

Gostei Roksas Rep + ai mais tenho uma duvida ele só permiti montar nesses 2 bixo não pode ser em um exemplo "Wyrm" é quando

ele montar no bixo ele não pode ficar com o outift dele mesmo tem que mudar pro do orc toda vez se eu montar no war wolf ? Sé tive-se como ficar com o addon normal do player ia ficar da hora !

 

Abraços!

Link para o comentário
Compartilhar em outros sites

Foi o que eu expliquei cara, só adicionar mais uma linha:

 

 

 

local mounts = {
[6009] = {name = "War Wolf", chance = 30, mountOutfit = "Orc Rider", mountSpeed = 50, mountTime = 5},
[2969] = {name = "War Wolf", chance = 30, mountOutfit = "Orc Rider", mountSpeed = 50, mountTime = 5},
}

 

Oque está entre [ e ] é o Item ID do corpse do monstro, e dentro você configura que nem expliquei.

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

Foi o que eu expliquei cara, só adicionar mais uma linha:

 

 

 

local mounts = {
[6009] = {name = "War Wolf", chance = 30, mountOutfit = "Orc Rider", mountSpeed = 50, mountTime = 5},
[2969] = {name = "War Wolf", chance = 30, mountOutfit = "Orc Rider", mountSpeed = 50, mountTime = 5},
}

 

Oque está entre [ e ] é o Item ID do corpse do monstro, e dentro você configura que nem expliquei.

 

 

Isto Eu Entendi Mano , oque eu quero sabe é como vc mostrou ali você esta com a roupa do god quando monta na montaria fica com a roupa do orc queria sabe se tem como quando ele montar ficar com a mesma roupa do god !

Link para o comentário
Compartilhar em outros sites

Obrigado cara, muito bom, só acho que esqueceu de declarar 'mount', rsrs.

Pensei em criar um onLogout com stopEvent para evitar erros.

Link para o comentário
Compartilhar em outros sites

Obrigado cara, muito bom, só acho que esqueceu de declarar 'mount', rsrs.

Pensei em criar um onLogout com stopEvent para evitar erros.

 

Não xD, não esqueci de declarar mount. Ele foi declarado na definição da função. Dá uma olhada:

 

function catch(uid, mount)

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...