Teleportar para A com X Level e para B com Y Level

1579091
em Scripts

1579091

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 06/11/11Posts: 1088Char no Tibia: Stroked

Gostaria de um movement, que quando o player subisse level 65 menos, ele teleportava pra uma pos,

e se ele foce level 65+ ele telportasse pra outra poss..

 

Se possivel nenhum efeito, quero dar a aparencia de desser um buraco...

 

Só isso VLW!

SkyLigh

User X
avatar
Lorde
Lorde

INFOS

Grupo: LordeRegistrado: 23/07/12Posts: 2183Char no Tibia: Kissy

Script .

 

Vá em data/movements/scripts/renome algum arquivopara poslvl.lua é adicione .

 

function onStepIn(cid, item, pos)
local config = {
pos = {x=120, y=190, z=7}, -- a pos que será teleportdo quando ganhar for o lvl 65 +
poss = {x=158, y=190, z=7}, -- a pos que será teleportdo quando ganhar for o lvl 65 -
s = 38102, -- nao mexa
level = 65, -- o level que precisa pra ir na pos
levell = 64 -- aki ponha o 1 level antes que será o level maior
}

if getPlayerStorageValue(cid,config.s) then
if getPlayerLevel(cid,config.level) then
doTeleportThing(cid,config.pos)
setPlayerStorageValue(cod,config.s,1)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Seja bem vindo ao o templo dos deuses")
return true
end
if getPlayerLevel(cid,config.levell) then
doTeleportThing(cid,config.poss)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Você não é um level 65 por isso você não foi para o templo")
end
return true
end
end

 

em movements.xml

 

<movevent type="StepIn" uniqueid="38102" event="script" value="poslvl.lua"/>

Att,
Kissy

Slicer

Insanity
avatar
Príncipe
Príncipe

INFOS

Grupo: PríncipeRegistrado: 19/08/10Posts: 4014Gênero: Masculino

mano em q versao tu testa teus scripts? pq pelo q sei, pelo menos na 854 isso ta errado.. o.O

if getPlayerLevel(cid,config.levell) then

 

o certoo seria..

if getPlayerLevel(cid) <= config.levell then

"Só a beira do abismo que os seres humanos acham forças para mudar."... E isso me da nojo... ¬¬

"Insanity is doing the exact... same fucking thing... over and over again expecting... shit to change... That. Is. Crazy." -Vass/Einstein

 

1579091

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 06/11/11Posts: 1088Char no Tibia: Stroked

Deu o seguinte erro:

[07/03/2013 22:20:42] [Error - MoveEvents Interface]

[07/03/2013 22:20:42] data/movements/scripts/poslvl.lua:onStepIn

[07/03/2013 22:20:42] Description:

[07/03/2013 22:20:42] (internalGetPlayerInfo) Player not found when requesting player info #3

Já tentei fazer a substituição que o Slicer recomendo e mesmo assim não funcionou!

 

Alguém poderia concertar?

Slicer

Insanity
avatar
Príncipe
Príncipe

INFOS

Grupo: PríncipeRegistrado: 19/08/10Posts: 4014Gênero: Masculino

tenta assim..

 

local config = {
pos = {x=120, y=190, z=7}, -- a pos que será teleportdo quando ganhar for o lvl 65 +
pos2 = {x=158, y=190, z=7}, -- a pos que será teleportdo quando ganhar for o lvl 65 -
level = 65, -- o level que precisa pra ir na pos
}
function onStepIn(cid, item, pos)
if not isPlayer(cid) then return true end

if getPlayerLevel(cid) >= config.level then
  doTeleportThing(cid, config.pos, false)
  doPlayerSendTextMessage(cid, 27, "Seja bem vindo ao o templo dos deuses")
  return true
end
doTeleportThing(cid, config.pos2, false)
doPlayerSendTextMessage(cid, 27, "Você não é um level 65 por isso você não foi para o templo")
return true
end

 

"Só a beira do abismo que os seres humanos acham forças para mudar."... E isso me da nojo... ¬¬

"Insanity is doing the exact... same fucking thing... over and over again expecting... shit to change... That. Is. Crazy." -Vass/Einstein

 

SkyLigh

User X
avatar
Lorde
Lorde

INFOS

Grupo: LordeRegistrado: 23/07/12Posts: 2183Char no Tibia: Kissy

@stack na programação lua não é permitido símbolos nas variaveis .

 

corrigindo o seu .

 

local config = {
pos65 = {x=120, y=190, z=7}, -- a pos que será teleportdo quando for lvl 65 +
pos655 = {x=158, y=190, z=7}, -- a pos que será teleportdo quando for lvl 65-
s = 38102, -- nao mexa
level1 = 65 -- o level que precisa pra ir na pos
}
-- End configs --
function onAdvance(cid, newLevel, oldLevel)
if getPlayerStorageValue(cid,config.s) then
if getPlayerLevel(cid) >= config.level1 then
doTeleportThing(cid,config.pos65)
setPlayerStorageValue(cid,config.s,1)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Seja bem vindo ao o templo dos deuses")
return true
end
if getPlayerLevel(cid) <= config.lvl1 then
doTeleportThing(cid,config.pos655)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Você não é um level 65 por isso você não foi para o templo")
end
return true
end
end

Att,
Kissy

Slicer

Insanity
avatar
Príncipe
Príncipe

INFOS

Grupo: PríncipeRegistrado: 19/08/10Posts: 4014Gênero: Masculino

@sky

serio, da onde tu tiro isso?

if getPlayerLevel(cid,config.levell) then

e isso... ;x

if getPlayerStorageValue(cid,config.s) then

/\ isso sempre vai ser true...

"Só a beira do abismo que os seres humanos acham forças para mudar."... E isso me da nojo... ¬¬

"Insanity is doing the exact... same fucking thing... over and over again expecting... shit to change... That. Is. Crazy." -Vass/Einstein

 

1579091

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 06/11/11Posts: 1088Char no Tibia: Stroked

o primeiro que o slicer posto ja funfo...

pedido sanado :D

Demonbholder

avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 13/10/08Posts: 1551Char no Tibia: Demonbholder

Tópico movido para a seção de dúvidas e pedidos resolvidos.

Oie :D