Ir para conteúdo
  • Cadastre-se

(Resolvido)[Pedido] Player Pegar Level 200 Ser Teleportado


Ir para solução Resolvido por Summ,

Posts Recomendados

Galera, gostaria de um Script, que quando um jogador pegar level 200, ele é teleportado para: {x = 10474, y = 10807, z = 7}

 

 

[progress=green]50[/progress]

 

Link para o post
Compartilhar em outros sites
function onAdvance(cid, newlevel)

local pos  = {x=10474, y=10807, z=7}

             if  newlevel == 200 then
            doTeleportThing(cid, Position)
    end
return true
end
        <event type="advance" name="Level200" script="nomedoscript.lua" /> 

                                                                     Ajudei? De nada \o/                                            Att Rusherzin

Link para o post
Compartilhar em outros sites

Por exemplo, ele pega level 200, dai é teleportado, dai ele morre e volta pro level 199, dai ele upa 200 ele será teleportado de novo?

[progress=green]50[/progress]

 

Link para o post
Compartilhar em outros sites

@Rusherzin

Já deixo claro que não estou tentando ser superior a ninguém rsrs.

 

Seu script iria teleportar o cara, se ele pega-se qualquer tipo de skill ex: SKILL_LEVEL 200, MAGIC_LEVEL 200, SKILL_SWORD 200, etc ...

e tu esqueceu de colocar a variável "pos" no "doTeleportThing(cid, Position)", logo daria erro e não seria teleportado.

local level = 200 -- Level
local pos = {x = 10474, y = 10807, z = 7} -- Posição

function onAdvance(cid, skill, oldLevel, newLevel)

	if skill == SKILL__LEVEL and newLevel == level then
		doTeleportThing(cid, pos)
		doPlayerSendTextMessage(cid, 19, "Você acabar de pegar level " .. level .. " e foi teleportado!!")
	end
	return true
and

abrçs

 

@ Farathor sim se tu quiser que isso não aconteça só falar ...

Editado por Summ (veja o histórico de edições)

EQD4Qy4.gif

Link para o post
Compartilhar em outros sites
  • Solução
local level = 200 -- Level
local pos = {x = 10474, y = 10807, z = 7} -- Posição
local storage = 78945

function onAdvance(cid, skill, oldLevel, newLevel)

	if skill == 8 and newLevel == level and getPlayerStorageValue(cid, storage) < 1 then
		doTeleportThing(cid, pos)
		doPlayerSendTextMessage(cid, 19, "Você acabar de pegar level " .. level .. " e foi teleportado!!")
		setPlayerStorageValue(cid, storage, 1)
	end
	return true
end
Editado por Summ (veja o histórico de edições)

EQD4Qy4.gif

Link para o post
Compartilhar em outros sites

@Summ, obrigado por explicar, eu não sabia como funcionava..
@Farathor
 

local level = 200 -- Level
local pos = {x = 10474, y = 10807, z = 7} -- Posição
local storage = 6661
function onAdvance(cid, skill, oldLevel, newLevel)

	if skill == SKILL_LEVEL and newLevel == level and getPlayerStorage(cid, storage) < 1 then
		doTeleportThing(cid, pos)
		doPlayerSendTextMessage(cid, 19, "Você acabar de pegar level " .. level .. " e foi teleportado!!")
		setPlayerStorageValue(cid, storage, 1)
	end
	return true
end

                                                                     Ajudei? De nada \o/                                            Att Rusherzin

Link para o post
Compartilhar em outros sites

Obrigado, @Rusherzin e @Summ  Rep+

 

@EDIT:

[4/4/2015 15:41:24] [Error - LuaInterface::loadFile] data/creaturescripts/scripts/StarItems.lua:13: unexpected symbol near '<eof>'
[4/4/2015 15:41:24] [Error - Event::checkScript] Cannot load script (data/creaturescripts/scripts/StarItems.lua)
[4/4/2015 15:41:24] data/creaturescripts/scripts/StarItems.lua:13: unexpected symbol near '<eof>'
Editado por Farathor (veja o histórico de edições)

[progress=green]50[/progress]

 

Link para o post
Compartilhar em outros sites

Acho que foi erro meu:
 

<event type="advance" name="Level" event="script" value="nomedoscript.lua"/>

                                                                     Ajudei? De nada \o/                                            Att Rusherzin

Link para o post
Compartilhar em outros sites

Se mesmo trocando a tag não funcionar, tente esse script e me fale o que printa na distro :

function onAdvance(cid, skill, oldLevel, newLevel)

local level = 200 -- Level
local pos = {x = 10474, y = 10807, z = 7} -- Posição
local storage = 78975

	if skill == 8 then
		if newLevel == level then
			if getPlayerStorageValue(cid, storage) < 1 then
				doTeleportThing(cid, pos)
				print('FUNCIONA ATE AQUI MAS NAO TELEPORTA')
				doPlayerSendTextMessage(cid, 19, "Você acabar de pegar level " .. level .. " e foi teleportado!!")
				setPlayerStorageValue(cid, storage, 1)
			else
				print('ERROR STORAGE')
			end
		else
			print('ERROR LEVEL')
		end
	else
		print('ERROR SKILL')
	end
	return true
end
Editado por Summ (veja o histórico de edições)

EQD4Qy4.gif

Link para o post
Compartilhar em outros sites

Olha, reiniciei o ot, fui upar, upei level 200 e nao apareceu nada

 

[4/4/2015 16:28:14] Pepekinha has logged out.


[4/4/2015 16:28:15] Pepekinha has logged in.
[4/4/2015 16:28:15] sqlite3_prepare_v2(): SQLITE ERROR: no such table: account_storage (SELECT "value" FROM "account_storage" WHERE "account_id" = 18 and "key" = 612845 LIMIT 1;)
[4/4/2015 16:28:15] sqlite3_prepare_v2(): SQLITE ERROR: no such table: account_storage (SELECT "value" FROM "account_storage" WHERE "account_id" = 18 and "key" = 612845 LIMIT 1;)
[4/4/2015 16:28:15] sqlite3_prepare_v2(): SQLITE ERROR: no such table: account_storage (INSERT INTO "account_storage" ("account_id", "key", "value") VALUES (18, 612845, '1') ;)
[4/4/2015 16:28:39] sqlite3_prepare_v2(): SQLITE ERROR: no such table: z_ots_comunication (SELECT * FROM z_ots_comunication WHERE "type" = 'login' ;)
[4/4/2015 16:29:9] sqlite3_prepare_v2(): SQLITE ERROR: no such table: z_ots_comunication (SELECT * FROM z_ots_comunication WHERE "type" = 'login' ;)
[4/4/2015 16:29:39] sqlite3_prepare_v2(): SQLITE ERROR: no such table: z_ots_comunication (SELECT * FROM z_ots_comunication WHERE "type" = 'login' ;)
[4/4/2015 16:30:9] sqlite3_prepare_v2(): SQLITE ERROR: no such table: z_ots_comunication (SELECT * FROM z_ots_comunication WHERE "type" = 'login' ;)
[4/4/2015 16:30:39] sqlite3_prepare_v2(): SQLITE ERROR: no such table: z_ots_comunication (SELECT * FROM z_ots_comunication WHERE "type" = 'login' ;)

<event type="advance" name="UpStar" event="script" value="TesteLua.lua"/> 

Editado por Farathor (veja o histórico de edições)

[progress=green]50[/progress]

 

Link para o post
Compartilhar em outros sites

que burrice a minha  :facepalm:

 

vai no seu login.lua e antes do ultimo return true

 

coloca

	registerCreatureEvent(cid, "UpStar")

EQD4Qy4.gif

Link para o post
Compartilhar em outros sites

Mais uma coisinha, no meu servidor o XP vai estar meio alto, e vai ter casos que o jogador vai estar level 199 e irá direto para 201, ele irá ser teleportado do mesmo jeito?

[progress=green]50[/progress]

 

Link para o post
Compartilhar em outros sites

nessa parte só trocar o "==" por ">="

 

newLevel == level
 
newLevel >= level

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

Se sua dúvida/pedido foi sanada peço que marque o post que mais te ajudou como melhor resposta pro tópico ficar como resolvido.

 

abrçs

EQD4Qy4.gif

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo