Ir para conteúdo
Entre para seguir isso  
Dark

¤oº°ºo¤ TelePorTe ¤oº°ºo¤

Recommended Posts

Dark    3
Dark

Neste tutorial irei explicar como você podera criar um lugar que quando o player der use na fonte de energia ele volte para a posição que ele salvo... Vou explicar...

 

Quando o player der use no "ponto de retorno" ira aparecer uma msg assim:

 

§Salvo§. Ele recebera uma Fonte de Energia vazia ( fontedemagiavaziaby6ki4.png ), para ele se teleporta de volta para o lugar aonde ele salvo ele presisara de uma fonte de energia cheia, que sera conseguido quando ele dizer a palavra magia "pokos" , quando ele dizer essas palavras metade da mana dele sera enviada para a fonte de magia, que se transformara em uma Fonte de magia cheia ( fontecheiahb4ou5.png )

 

Mas nem tudo é tão bom, quando você der use para ser teleportado podem acontecer 5 situações:

 

 

Você pode ser teleportado:

Mensagem que aparece: Você foi teleportado

 

Oque acontecera: Você sera teleportado

'

Pode ocorrer um vazamento:

Mensagem que aparece: Ouve um vazamento de magia na fonte, tente novamente

 

Oque acontecera: Nada acontecerá, apenas a fonte de magia ficara vazia novamente, e você ira presisar enche ela novamente

'

A fonte de magia pode se romper:

Mensagem que aparece: A fonte de magia se rompeu

 

Oque acontecera: O player perdera a fonte de magia, podera perde entre 100 e 500 de hp, e a posição salva será perdida

'

Podera acontecer algum erro:

Mensagem que aparece: Aconteceu algum erro na hora de teleporta, mas você foi teleportado

 

Oque acontecera: O player sera teleportado e perdera um pouco de Hp

'

Podera acontecer algum erro grave:

Mensagem que aparece: Ocorreu um erro grave na fonte de magia, mas você foi teleportado

 

Oque acontecera: O player sera teleportado e perdera todo sua mana e ficara com apenas 1 de Hp

 

 

| CRIANDO OS PONTOS DE RETORNO |

 

 

Antes de começar, crie pontos onde o player ira salvar sua posição, para fazer isso coloque um objeto, como por exemplo aquelas estatuas de anjo que geralmente se encontra nos templos, apos escolher uma estatua, ou qualquer outro objeto que não se mova adicione nele 1 ActionId ( aqui no script eu irei usar o ActionId 7005 )

 

| Fazendo o script da palavra magica |

 

 

Va na pasta do seu ot e va até data/talkactions/scripts, copie qualquer arquivo de la e renomei para telepo.lua, apague tudo que estiver la dentro e cole isso:

 

 

function onSay(cid, words, param)

 

estatua = getPlayerStorageValue(cid,9001)

magic = getPlayerStorageValue(cid,9000)

mana = getPlayerMana(cid)

 

if estatua == 1 then

if magic == -1 then

if getPlayerItemCount(cid,4863) > 0 then

if mana > 1 then

 

iten = getPlayerPosition(cid)

 

ob = doPlayerAddItem(cid,4864,1)

doSetItemActionId(ob,7006)

doSetItemSpecialDescription(ob,"Fonte de magia cheia")

doPlayerAddMana(cid,-mana/2)

doPlayerRemoveItem(cid,4863,1)

doPlayerSay(cid,'pokos',16)

doPlayerSendTextMessage(cid, 24,'Você Carregou a fonte de magia')

doSendMagicEffect(iten,29)

doSendMagicEffect(iten,17)

setPlayerStorageValue(cid,9000,1)

 

else

doPlayerSendTextMessage(cid, 21,'Você não tem mana suficiente para carregar a fonte de magia')

 

end

else

doPlayerSendTextMessage(cid, 21,'Você presisa de uma fonte de magia vazia')

 

end

else

doPlayerSendTextMessage(cid, 21,'Você ja encheu com magia')

 

end

 

else

doPlayerSay(cid,'pokos',1)

end

end

 

 

Explicando:

 

 

7006 --> Coloque aqui um ActionId que não esteja em uso ainda

 

| Fazendo o script do Teleport |

 

Abra a pasta do seu ot e va até data/actions/scripts, copie qualquer arquivo de la e renomei para telep.lua, apague tudo que estiver la dentro e cole isso:

 

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

 

estatua = getPlayerStorageValue(cid,9001)

 

if item.actionid == 7005 then

if estatua == -1 then

 

tele = getPlayerPosition(cid)

ob = doPlayerAddItem(cid,4863,1)

doSetItemActionId(ob,7007)

doSetItemSpecialDescription(ob,"Fonte de magia vazia")

doSendAnimatedText(tele,'Salvo',215)

doSendAnimatedText(tele,'§ ---- §',200)

setPlayerStorageValue(cid,9001,1)

 

else

doPlayerSendTextMessage(cid, 24,'Você ja tem uma posição salva')

 

end

end

 

pos = getPlayerPosition(cid)

rand = math.random(1, 5)

hp = math.random(100, 500)

mana = getPlayerMana(cid)

hp1 = getPlayerHealth(cid)

 

if item.actionid == 7007 then

doPlayerSendTextMessage(cid, 24,'Para você ser teleportado, você presisa carregar isto com magia')

end

 

if item.actionid == 7006 then

if rand == 1 then

 

setPlayerStorageValue(cid,9001,-1)

setPlayerStorageValue(cid,9000,-1)

doSendMagicEffect(topos,2)

doRemoveItem(item.uid,1)

doTeleportThing(cid,tele)

doSendMagicEffect(tele,10)

doPlayerSendTextMessage(cid, 24,'Você foi teleportado')

 

elseif rand == 2 then

 

setPlayerStorageValue(cid,9000,-1)

doSendMagicEffect(topos,2)

doRemoveItem(item.uid,1)

ob = doPlayerAddItem(cid,4863,1)

doSetItemActionId(ob,7007)

 

doSetItemSpecialDescription(ob,"Fonte de magia vazia")

doPlayerSendTextMessage(cid, 24,'Ouve um vazamento de magia na fonte, tente novamente')

 

elseif rand == 3 then

 

setPlayerStorageValue(cid,9001,-1)

setPlayerStorageValue(cid,9000,-1)

doSendAnimatedText(pos, hp, 180)

doSendMagicEffect(pos,13)

doPlayerAddHealth(cid,-hp)

doSendMagicEffect(topos,2)

doRemoveItem(item.uid,1)

doPlayerSendTextMessage(cid, 24,'A fonte de magia se rompeu')

 

 

elseif rand == 4 then

 

setPlayerStorageValue(cid,9001,-1)

setPlayerStorageValue(cid,9000,-1)

doSendMagicEffect(topos,2)

doRemoveItem(item.uid,1)

doTeleportThing(cid,tele)

doSendAnimatedText(tele, hp/2, 180)

doSendMagicEffect(tele,10)

doPlayerAddHealth(cid,-hp/2)

doPlayerSendTextMessage(cid, 24,'Aconteceu algum erro na hora de teleporta, mas você foi teleportado')

 

elseif rand == 5 then

 

setPlayerStorageValue(cid,9001,-1)

setPlayerStorageValue(cid,9000,-1)

doSendMagicEffect(topos,2)

doRemoveItem(item.uid,1)

doTeleportThing(cid,tele)

doSendAnimatedText(tele, hp1-1, 180)

doSendMagicEffect(tele,10)

doPlayerAddMana(cid,-mana)

doPlayerAddHealth(cid,(-hp1)+1)

doPlayerSendTextMessage(cid, 24,'Ocorreu um erro grave na fonte de magia, mas você foi teleportado')

 

end

 

end

end

 

 

Explicando:

 

7005 --> Coloque o ActionId que você colocou nos pontos de retorno

 

7007 --> Coloque aqui outro ActionId que ainda não esteja em uso

 

7006 --> Coloque aqui o ActionId que nós colocamos no script da palavra magica, que aqui no caso foi 7006

 

100 --> Aqui é o minimo de hp que ira tirar do player em caso de erro

 

500 --> Aqui é o maximo de hp que ira tirar do player

 

| Adicionando as Tags |

 

Abra a pasta do seu ot e va em data/actions/ e abra o arquivo actions.xml e adicione isso:

 

 

<action actionid="7007" script="telep.lua" />

<action actionid="7006" script="telep.lua" />

<action actionid="7005" script="telep.lua" />

 

 

Explicando:

 

Em Azul --> São os ActionIds que nos usamos nos 2 scripts

'

telep.lua --> Nome do arquivo que nos criamos (o script do teleporte)

 

 

agora abra a pasta do seu ot e va em data/talkactions/ e abra o arquivo talkactions.xml e adicione isso:

 

 

<talkaction words="pokos" script="telepo.lua" />

 

 

telepo.lua --> Nome do script que nos criamos (o script da palavra magica)

 

O tutorial fica por aqui, postem ideias, duvidas e sugestões

 

T+

 

D@rK

Compartilhar este post


Link para o post
Compartilhar em outros sites
Razor    1
Razor

Aprovado e movido.

 

esK~

Compartilhar este post


Link para o post
Compartilhar em outros sites
GdNp    0
GdNp

Muito bom darck..parabéns por mais um de seus tutoriais maravilhosos..^^

Compartilhar este post


Link para o post
Compartilhar em outros sites
knd    0
knd

Caramba, fonte de criatividade você, jovem !!!1

Meus parabens pelo tutorial..

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites
Reading    0
Reading

Tutorial criativo e muito bom

 

Continue trazendo esses maravilhosos trabalhos seus pra cá

 

@ queria saber se dá pra balancear os erros?

qntos % pode aconteceu cada erro, algo assim..

Compartilhar este post


Link para o post
Compartilhar em outros sites
GdNp    0
GdNp

@Reading

Ae cara tipo..a script sorteia de 1 a 5 números..

rand = math.random(1, 5)[/b]
...a sorte seria intão no caso 20% para cada um ou 1/5..você pode colocar por exemplo de 1 a 7 e colocar 2 números em algum deles..dai você usa sua criatividade..flws^^

Compartilhar este post


Link para o post
Compartilhar em outros sites
XplosioN    0
XplosioN

aHEUheuaHEUAheu

 

Erro grave...

 

É isso aí,

Vc comeu comida estragada,

Sua mana não tem 100% de qualidade

E aí já sabe né...[/b]

 

---

 

edited

 

 

q bugado...

 

travou o server e eu cliquei atualizar...

 

apareceu 2 msgs iguais, só que no mesmo post

 

tpw:

 

<div class='quotetop'>QUOTE
aheuahUEHUEh[/b]

 

 

aheuahUEHUEh[/b]
[/b]

Compartilhar este post


Link para o post
Compartilhar em outros sites
Griloh    0
Griloh

Preciso dizer algo?!

 

Esse minino me impressiona o.o'

Você vai longe, continue assim.. x]

Compartilhar este post


Link para o post
Compartilhar em outros sites
Azuth    0
Azuth

bom mesmo seu tuto, por mim aprovadissimo

Compartilhar este post


Link para o post
Compartilhar em outros sites
Loopback    0
Loopback

Manow parabéns sempre fazendo novos tutos AJUDANDO MUITO A GALERA XDDD

 

Vlw pela criatividade espero que continue assim ^^

 

Òtimo Tuto~~

 

 

 

 

 

|| APROVADO ||</span>

 

 

 

 

 

 

<span style="color:#0000FF">Ed.

Compartilhar este post


Link para o post
Compartilhar em outros sites
deluxe.    0
deluxe.

Criatividade heeeim o.o...

 

Cip vai te contrata ;X

 

parabéns otimo tutorial só meio inutil para server dedicados

 

servidores*

Compartilhar este post


Link para o post
Compartilhar em outros sites
Mindigo    0
Mindigo

Mto bom em...

vo bota nu meu OT.

;D

Compartilhar este post


Link para o post
Compartilhar em outros sites
Azuth    0
Azuth

otimo tuto, parabéns mermu, aprovado

Compartilhar este post


Link para o post
Compartilhar em outros sites
DonDiz    0
DonDiz

Mto Bom Lek..

 

Aprovado..

 

 

 

<div align="center">~ C y a ~</div>

Compartilhar este post


Link para o post
Compartilhar em outros sites
_RIBEIRO_    0
_RIBEIRO_

Muito legal cara ! =)

Compartilhar este post


Link para o post
Compartilhar em outros sites
Wardenn    0
Wardenn

aew caraa...

tpw adorei e concerteza vo por no meu ot galera vai gosta mtu ;D

porem, tenho uma duvida...

eh pra que versao ? 8.0 ?

vo testar lah ;X

vlw cara otimo tuto =)

 

Edit -> Aee aqui funfo tudo certinho ;]

vlws ae adorei[/b]

Compartilhar este post


Link para o post
Compartilhar em outros sites
Rayshin    0
Rayshin

Pena que você não pensou em uma coisa :/

 

se a pessoa morrer com a carga,já era.

se ela for querer pega outro,diz que tá cheio.

e no caso,está cheio mais não com ela.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Zero the Reployd    0
Zero the Reployd

dark como vc consegue vei vc é o melhor scripter que eu já vi

Compartilhar este post


Link para o post
Compartilhar em outros sites
guidj    0
guidj

lol lol

muito rox issu ai dark

agora me fala ai issu serv pra q msm e pq eu to comesando no ramo de ot agora faz 2 dia xD

issu ai teleporta pra onde pro templo ? como alguem poderia me responder esta questao :D vlw

Dark vc e bem criativo eu ja li uns negosio seu ai lol vc e foda Oo

Compartilhar este post


Link para o post
Compartilhar em outros sites
RicardoEu    4
RicardoEu

Dark, primeiramente eu uso TFS 8.2x, coloquei tudo certo i talz ai quando eu do use no objeto pra ele teleporta não acontece nada e aparece esse erro no executavel:

 

data/actions/scripts/telep.lua:26: attempt to call global 'getPlayerHealth' (a nil value)

stack traceback:

data/actions/scripts/telep.lua:26: in function <data/actions/scripts/telep.lua:1>

 

o que poderia ser? me ajude plx, gostei bastante do seu script, gostaria de colocar no meu ot

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
Entre para seguir isso  

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×