Teleport Panel

colex
Por colex
em Actions e Talkactions
  • 1
  • 2

colex

Serviços Prestados a Comunidade
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 03/10/05Posts: 301Gênero: Masculino

O que é o "Teleport Panel"?

Teleport Panel é um sistema de teleporte que interage com um sistema de base de dados (elaborado tambem por mim).

Com este sistema os Gamemasters (jogadores com o acesso permitido) podem adicionar, remover e utilizar pontos de teleporte. A sintaxe do comando é: teleport "[command]. Mais a frente você poderá saber como funciona melhor através de umas screenshots!

 

Quais são os comandos existentes?

Os comandos que este sistema oferece são:

teleport - oferece uma lista de todos os comandos

teleport "list - lista todos os pontos de teleporte existentes

teleport "add [nome] - adiciona um ponto de teleporte com um determinado nome

teleport "remove [nome] - remove um determinado ponto de teleporte

teleport "to [nome] - teleport o char. para um certo ponto de teleporte

(A maioria dos comandos estarão a seguir ilustrados)

 

Imagens do Sistema:

 

Lista dos comandos disponíveis: (comando teleport)

teleporthelpme1.jpg

 

Lista dos Pontos de Teleporte adicionados: (comando teleport "list)

teleportlistnx5.jpg

 

Mensagem de sucesso seguida de uma adição: (comando teleport "add)

teleportaddds6.jpg

 

Mensagem de sucesso depois de remover um Ponto de Teleporte: (comando teleport "remove)

teleportremovejf1.jpg

 

 

Como instalar este sistema?

 

1º Passo: Você deverá instalar o meu sistema de base de dados na lib das talkactions, ou seja, no arquivo data\talkactions\lib\talkactions.lua...Você pode encontrar o sistema no seguinte link:

http://www.xtibia.com/forum/index.php?showtopic=64485

 

2º Passo: No directório data\talkactions\scripts crie um arquivo com o nome teleport.lua e dentro dele guarde o seguinte script:

-----Teleport Panel by Colex-------

 

 

local ACCESS_MIN = 3 --Mude o "3" para o access minimo desejado

local DATABASE = "teleports.ini"

 

 

 

local HELP_TEXT = "Teleport Commands:\nteleport \"list\nteleport \"add [name]\nteleport \"remove [name]\nteleport \"to [name]\n\nSystem by Colex"

 

 

function FileExists(filename)

local file = io.open(filename, "r")

if (file == nil) then return false end

io.close(file)

return true

end

 

function splitWords(str)

local t = {}

local function helper(word) table.insert(t, word) return "" end

if not str:gsub("%w+", helper):find"%S" then return t end

end

 

 

 

function onSay(cid, words, param)

if (getPlayerAccess(cid) >= ACCESS_MIN) then

if (FileExists(DATABASE) == false) then

createDatabase(DATABASE,{},{})

end

words = splitWords(param)

i = 2

place = ""

while words ~= nil do

place = place..words.." "

i = i + 1

end

if (i ~= 2) then

place = string.sub(place, 1, string.len(place)-1)

end

if (words[1] == "list") then

values = {}

values = getAllFieldsValues(DATABASE)

found = 0

text = "Teleport Point's List:\n"

for i in ipairs(values) do

text = text.."- "..values.field.."\n"

found = 1

end

if (found == 0) then

text = "--Empty List--\n\nUse:\nteleport \"add [name]\nto add a new teleport point!"

end

doShowTextDialog(cid, 100, text)

elseif ((words[1] == "add") and (words[2] ~= nil)) then

pos = getPlayerPosition(cid)

result = addField(DATABASE,place,pos.x.." "..pos.y.." "..pos.z)

if (result == false) then

doShowTextDialog(cid, 100, "Couldn't add the new teleport point...\nPlace's name has already been taken!")

else

doShowTextDialog(cid, 100, "Teleport Point ("..place..") successfully added!\nX:"..pos.x.." Y:"..pos.y.." Z:"..pos.z)

end

elseif ((words[1] == "remove") and (words[2] ~= nil)) then

result = removeField(DATABASE,place)

if (result == false) then

doShowTextDialog(cid, 100, "Couldn't remove the teleport point...\nPlace's name does not exist!")

else

doShowTextDialog(cid, 100, "Teleport Point ("..place..") was successfully removed!")

end

elseif ((words[1] == "to") and (words[2] ~= nil)) then

result = getFieldValue(DATABASE,place,false)

if (result == false) then

doShowTextDialog(cid, 100, "The place's name typed does not exist!")

else

pos = splitWords(result)

position = {x=tonumber(pos[1]), y=tonumber(pos[2]), z=tonumber(pos[3])}

doTeleportThing(cid,position)

doPlayerSendTextMessage(cid, 22, "You were teleported to "..place.."!")

end

else

doShowTextDialog(cid, 100, HELP_TEXT)

end

end

return 0

end

 

3º Passo: Agora, por último, adicione no arquivo data\talkactions\talkactions.xml a seguinte linha:

<talkaction words="teleport" script="teleport.lua" />

 

 

Se você fez tudo certo, o sistema deverá estar funcionado...

Se você achar algum bug, ou tiver alguma dúvida, poste aqui.

 

Colex

Nottinghster

Ex-Colaborador de Programação & Scripting
avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 02/09/06Posts: 186

Colex, como sempre fazendo ótimas Actions, sou um admirador do seu trabalho...

 

Boa sorte lá no Empire Server

 

Abração!!!

Tibia World RPG OldSchool Developer!
Jyv3kht.jpg

Sound Of Kill

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 27/06/07Posts: 39

Voce é ninja ne :D!

 

 

MUiTO BOM!!!!!!!

Usuário Suspenso para sempre.
Motivo: Xingamentos/Spam ao fórum.

vita1

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 16/12/07Posts: 6

:confused: n deu certo tipo eu flo o negocio lah[teleport ou os otros comandos] e ele fika mudo

ajuda aew

:D

Por:




Kamikaze Leal

tibiaa4e

Ex amante de Tibia
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 18/12/05Posts: 912Gênero: MasculinoChar no Tibia: Kohzete

Colex never die

 

Sempre quando pensamos q ele sumiu

Ele volta ahuhauuhahu

 

Boa super action...

 

Qdo arrumarem os bugs da 8.1 eu testo

Aposentado de OTserver e Tibia

Meus melhores tutoriais
Enciclopédia Pasta Data
Tutorial de quest

thi

.: Invaders Must Die :.
avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 19/10/05Posts: 119Char no Tibia: (~.~)"

Cara, se eu tirar o comando de Adiciona um ponto de teleport do code e fazer alguns npcs pelo mapa e o NPC adiciona os pontos de teleport funciona?

vision3.png

h3online

.......0.o.......
avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 21/02/07Posts: 137Char no Tibia: GOD Grimrath

pow mt complicada mais ta bem explicada



[X]Camponês
[X]Caçador
[X]Cavaleiro
[X]Baronete
[X]Barão


Tibi4ee e Colex melhores escripters
Mapper e RPG Maker

Icepotter

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 06/10/07Posts: 27Char no Tibia: ADM Cristian

erroteleporteku2.png

 

Deu isso O_o

Agradecimentos




-----

Your post count is NOT your penis size!

Aquac

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 12/12/07Posts: 10

colez me add no msn plz

 

tatianny_f_18@hotmail.com

tttt

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 16/04/06Posts: 28
erroteleporteku2.png

 

Deu isso O_o

 

 

Ajuda ae

Tbm deu isso aqui..

Help pls!








EU vou Jogar =D

Maxi'mus

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/02/07Posts: 44Char no Tibia: Maxi'mus Wizzard

Quando agente qué alguma coisa kem aparece COLEX :D

 

nun era bem isso ke keria ( o seu é melhor :D)

 

mais ta PERFEITO MANOO

 

 

adoreiii

 

vlww

 

 

Atenciosamente

 

// Maxi'mus Wizzard

>> FANBAR BY GM MATTHOR!!! \/
____________________________________________
l_______________
Maxi'mus Wizzard FAN_________l

Vlww Matthor!! ;D


> SING <

> SING <

ph_188

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/07/07Posts: 19Char no Tibia: Katsumoto

Colex você consertesa é ninja muito show a action...

 

Testado e aprovado

ropic

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 14/01/08Posts: 71Char no Tibia: Tom Strup

eeei tem como faze um treko desse pra 7.6 n? :smile_positivo:

gabrielbr

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 07/12/06Posts: 61

nota 10 adorei,sor que nao conseguir instalar

DaNDaNrOxX

oi mosso
avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 18/01/08Posts: 1455Char no Tibia: Saint Claire

MANO TU É FOD.@ D+ PQ.P Q ACTION LOCA JA TA NU MEU SERVER CONSERTEZA!!! VLW!

 

 

Entrada na equipe: 23/10/2008 Cargo: Estagiário

Promoção: 25/11/2008 Cargo: Moderador

Promoção: 21/10/2009 Cargo: Coordenador

Remoção: 09/05/2010 Motivo: Estudos

Retorno: 15/11/2010 Cargo: Moderador

Remoção: 20/12/2012.

 

 

  • 1
  • 2