Ring Of The Skies Teleport Back

FoReVeR
em Actions e Talkactions

FoReVeR

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 18/02/07Posts: 12

Ring of the skies teleport back

 

aqui eu tenho uma action que voce vai ligar ao ring of the skies

 

oq ela faz? voce pode gravar uma posição ao ring e quando tu usar ele denovo ele vai te teleportar pra essa posição

 

em que isso vai ser util? pense em quando voce vai entrar em um teleport ou buraco e não tem bem certeza do que vai encontrar lá, com essa action é só você gravar sua posição, entrar no teleport, e dar um simples clique se não gostar do que viu

 

bom, sem mais delongas vamos as instruções

 

crie um arquivo.lua em data/actions/scripts de nome telback, e escreva no arquivo:

function onUse(cid, item, frompos, item2, topos) 
queststatus = getPlayerStorageValue(cid,4000) 
if queststatus == -1 and item.actionid == 0 or item.actionid == 100 then 
telpos = getPlayerPosition(cid) 
doSendMagicEffect(frompos,12) 
doPlayerSendTextMessage(cid, 22, "The ring has recorded your position.") 
doSetItemActionId(item.uid, 200) 
setPlayerStorageValue(cid,4000,1) 
elseif queststatus == -1 and item.actionid < 300 and item.actionid > 101 then 
telpos = getPlayerPosition(cid) 
doSendMagicEffect(frompos,12) 
doPlayerSendTextMessage(cid, 22, "The ring has recorded your position.") 
doSetItemActionId(item.uid, item.actionid-1) 
setPlayerStorageValue(cid,4000,1) 
elseif queststatus == -1 and item.actionid == 101 then 
doPlayerSendTextMessage(cid, 22, "The ring has lost his power, life crystals can recharge it.") 
elseif queststatus == 1 then 
doSendMagicEffect(frompos,2) 
doTeleportThing(cid,telpos) 
doSendMagicEffect(frompos,10) 
setPlayerStorageValue(cid,4000,-1) 
end 
return 1 
end

 

feito isso crie outro arquivo, agora de nome rechargetel e escreva o seguinte

function onUse(cid, item, frompos, item2, topos) 
queststatus = getPlayerStorageValue(cid,4001) 

if queststatus == -1 then 
if item2.itemid == 2177 then 
setPlayerStorageValue(cid,4001,1) 
doSetItemSpecialDescription(item.uid, "it is full.") 
doRemoveItem(item2.uid,1) 
doSendMagicEffect(topos,12) 
end 

elseif queststatus == 1 then 
if item2.itemid == 2357 then 
setPlayerStorageValue(cid,4001,-1) 
doSetItemSpecialDescription(item.uid, "it is empty.") 
doSetItemActionId(item2.uid,0) 
doSendMagicEffect(topos,12) 
end 
end 
return 1 
end

 

esse script é pra poder recarregar o ring of the skies gastando um life crystal, porque se ele não gastasse nada pra usar seria ainda mais cabuloso do que já é, e ficaria sem graça.

 

Obs: pros servers que vão querer adotar essa action, façam a raridade do ring of the skies ainda maior do que já é, pra poder equilibrar e o serv não desvalorizar, se quiserem botem ele ao acesso apenas de gms, ou apenas possível de se adquirir fazendo uma quest, não sei, to só dando idéia porque eu sei que o impacto de um item desses na mão dos lowlevel de um serv pode ser considerávelmente grande

 

ok, pra ele estar pronto e funcionando não se esqueçam de adicionar no actions.xml as seguintes tags:

<action itemid="2357" script="telback.lua" /> 
<action itemid="4869" script="rechargetel.lua" />

Obs2: eu baseei os ids no client 7.81 ao fazer esses scripts, só pra não botarem numa versão 7.6 e depois bugar tudo

 

Missão ring of the skies topic: Concluída

 

Downloads:

-TelbackArquivo-

-Recharge Tel-

 

Creditos: CapaVerde.

[Assinatura irregular, consulte as regras]
Addict

Ventura

Felipe Venturini
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 12/10/05Posts: 340Char no Tibia: Tweets

#FoReVeR

Isso não é download!

Poste na seção correta por favor!

 

-----edit-----

Agora sim com os downlods ^.-

mt bom...

 

//Ventura

Atenciosamente,

Felipe Venturini

contato@fventurini.com.br

www.felipeventurini.com.br

Celular: +55 11 8249.0045

HeNnet

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 01/09/05Posts: 114Char no Tibia: Tiduji

Nossa ficou muito bom.. ainda não testei mas concerteza irei testa.. a idéia está ótima :)

 

 

Parabéns :p

 

 

 

Abraços HeNnEt :cool:

wizardwarriorvr8.jpg

HenneT

nostrafanso6.png

Capaverde

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/08/06Posts: 12Gênero: Masculino

O prob é que ele usa uma variável global pra armazenar a posição, aí se tiver mais de um player com ring of the skies um vai sobreescrever o outro.

Eu corrigi isso usando doSetItemText e getItemText

Administrador

xTibia 2017
avatar
Administrador
Administrador

INFOS

Grupo: AdministradorRegistrado: 09/07/05Posts: 5780Gênero: Outro

O prob é que ele usa uma variável global pra armazenar a posição, aí se tiver mais de um player com ring of the skies um vai sobreescrever o outro.

Eu corrigi isso usando doSetItemText e getItemText

 

@@Capaverde

Este tópico é de 2007, você reviveu. Preste atenção nas datas =)

DICA

Utilize botão @UP, no início de seu tópico, para atualizar o destaque de seu tópico em "Tópicos Recentes" na index, fará com que mais pessoas o vejam.