Ir para conteúdo
  • Cadastre-se

(Resolvido)ERRO no CONSOLE


Ir para solução Resolvido por MaTTch,

Posts Recomendados

bom dia pessoal, quero ajuda de vcs pra arrumarem um erro no console do ot

 

esse eh o erro


 

[03/02/2015 11:02:24] [Error - GlobalEvent Interface] 

[03/02/2015 11:02:24] In a timer event called from: 
[03/02/2015 11:02:24] data/globalevents/scripts/event.lua:onThink
[03/02/2015 11:02:24] Description: 
[03/02/2015 11:02:24] (luaDoRemoveItem) Item not found
 
[03/02/2015 11:02:24] [Error - GlobalEvent Interface] 
[03/02/2015 11:02:24] In a timer event called from: 
[03/02/2015 11:02:24] data/globalevents/scripts/event.lua:onThink
[03/02/2015 11:02:24] Description: 
[03/02/2015 11:02:24] (luaDoRemoveItem) Item not found

 

Script


 

local timeToCreate = 1 -- minutes

local walls = {
{ x = 417, y = 65, z = 7, stackpos = STACKPOS_FIRST_ITEM_ABOVE_GROUNDTILE },
{ x = 417, y = 67, z = 7, stackpos = STACKPOS_FIRST_ITEM_ABOVE_GROUNDTILE }
}
 
function removeWalls(item, position)
doBroadcastMessage("Somente para jogadores experientes.")
addEvent(createWalls, timeToCreate * 100000000)
for i = 1, table.maxn(walls) do
doRemoveItem(getThingfromPos(walls).uid)
doSendMagicEffect(walls, CONST_ME_MAGIC_RED)
end
return TRUE
end
 
function createWalls(item, position)
for i = 1,table.maxn(walls) do
doCreateItem(9485, 1, walls)
doSendMagicEffect(walls, CONST_ME_MAGIC_GREEN)
end
return TRUE
end
 
function onThink(interval, lastExecution)
doBroadcastMessage("Blood castle aberto!.")
addEvent(removeWalls, 1000)
return TRUE
end
 

 

 

OBS: Meu Mapa eh o Alissow 8.60 

 

 

Darei rep+ pra quem me ajudar

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

n35408.gif

Link para o post
Compartilhar em outros sites

No console ele cita que :

[03/02/2015 11:02:24] data/globalevents/scripts/event.lua:onThink
[03/02/2015 11:02:24] Description: 
[03/02/2015 11:02:24] (luaDoRemoveItem) Item not found

na variavel "DoRemoveItem" o item a ser removido nao foi encontrado.

 

que seria essa variavel :

doRemoveItem(getThingfromPos(walls[i]).uid)

Nao sou scripter, mas tenta assim :

doRemoveItem(getThingFromPos(walls[i]).uid)

Lembrando que deves fazer um backup de segurança!

Editado por EnzzoCaaue (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

@EnzzoCaaue, irei testar, depois edito aqui

 

Ediit : o erro ainda persiste

 

 

[03/02/2015 13:21:12] [Error - GlobalEvent Interface] 

[03/02/2015 13:21:12] In a timer event called from: 
[03/02/2015 13:21:12] data/globalevents/scripts/event.lua:onThink
[03/02/2015 13:21:12] Description: 
[03/02/2015 13:21:12] (luaDoRemoveItem) Item not found
 
[03/02/2015 13:21:12] [Error - GlobalEvent Interface] 
[03/02/2015 13:21:12] In a timer event called from: 
[03/02/2015 13:21:12] data/globalevents/scripts/event.lua:onThink
[03/02/2015 13:21:12] Description: 
[03/02/2015 13:21:12] (luaDoRemoveItem) Item not found

 

pelo que eu vi, ele remove o item pra entrar no castle, mais acho que depois ele nao coloka de novo, pq quando ele vai abrir de novo, aparece esse erro ai, dizendo que nao tem o item pra remover

 

o castle funciona assim, a cada 3 horas o castle abre, mais o script tah abrindo 1 vez e nao fecha mais

 

teria como fazer o castle fechar depois de um certo tempo ?? 

eu acho que assim resolveria o meu problema ;x

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

n35408.gif

Link para o post
Compartilhar em outros sites

Me passa o ID dos itens que ele remove, irei fazer uma adaptação.

Te ajudei?
Se você achar que eu mereço, me dê uma "rep+" e selecione meu post como "melhor resposta"

 

Skype: JoadsonAion

Link para o post
Compartilhar em outros sites

Me passa o ID dos itens que ele remove, irei fazer uma adaptação.

ID é este

9485

 

quero que quando ele remova, depois de 30 minutos ou 1 hora, (configuravel)

ele crie o item de novo, assim fechando o castle

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

n35408.gif

Link para o post
Compartilhar em outros sites

Tente assim

local timeToCreate = 1 -- minutes
local walls = {
{9485,{x=417, y=65, z=7, stackpos = 1}},
{9485,{x=417, y=67, z=7, stackpos = 1}}
}

function removeWalls(item, position)
doBroadcastMessage("Somente para jogadores experientes.")
addEvent(createWalls, timeToCreate * 100000000)
for i = 1, #walls do
if getTileItemById(B[i][2], walls[i][1]).uid == 0 then
doCreateItem(walls[i][1], 1, walls[i][2])
else
doRemoveItem(getThingfromPos(walls[i][2]).uid,1)
doSendMagicEffect(walls[i], CONST_ME_MAGIC_RED)
end
end
return TRUE
end
 
function createWalls(item, position)
for i = 1,table.maxn(walls) do
doCreateItem(9485, 1, walls[i])
doSendMagicEffect(walls[i], CONST_ME_MAGIC_GREEN)
end
return TRUE
end
 
function onThink(interval, lastExecution)
doBroadcastMessage("Blood castle aberto!.")
addEvent(removeWalls, 1000)
return TRUE
end

Te ajudei?
Se você achar que eu mereço, me dê uma "rep+" e selecione meu post como "melhor resposta"

 

Skype: JoadsonAion

Link para o post
Compartilhar em outros sites

 

Tente assim

local timeToCreate = 1 -- minutes
local walls = {
{9485,{x=417, y=65, z=7, stackpos = 1}},
{9485,{x=417, y=67, z=7, stackpos = 1}}
}

function removeWalls(item, position)
doBroadcastMessage("Somente para jogadores experientes.")
addEvent(createWalls, timeToCreate * 100000000)
for i = 1, #walls do
if getTileItemById(B[i][2], walls[i][1]).uid == 0 then
doCreateItem(walls[i][1], 1, walls[i][2])
else
doRemoveItem(getThingfromPos(walls[i][2]).uid,1)
doSendMagicEffect(walls[i], CONST_ME_MAGIC_RED)
end
end
return TRUE
end
 
function createWalls(item, position)
for i = 1,table.maxn(walls) do
doCreateItem(9485, 1, walls[i])
doSendMagicEffect(walls[i], CONST_ME_MAGIC_GREEN)
end
return TRUE
end
 
function onThink(interval, lastExecution)
doBroadcastMessage("Blood castle aberto!.")
addEvent(removeWalls, 1000)
return TRUE
end

 irei testar jaja edito

 

uma coisa, esse 

local timeToCreate = 1 -- minutes

 

eh o tempo que leva pra criar o item novamente neh ?

 

Ediit: está dando erro

antes o erro dava, na segunda vez que abria o evento

 

agora está dando na primeira vez que abre

 

[07/02/2015 13:45:57] [Error - GlobalEvent Interface] 

[07/02/2015 13:45:57] In a timer event called from: 
[07/02/2015 13:45:57] data/globalevents/scripts/event.lua:onThink
[07/02/2015 13:45:57] Description: 
[07/02/2015 13:45:57] data/globalevents/scripts/event.lua:11: attempt to index global 'B' (a nil value)
[07/02/2015 13:45:57] stack traceback:
[07/02/2015 13:45:57] data/globalevents/scripts/event.lua:11: in function <data/globalevents/scripts/event.lua:7>
Editado por subhe (veja o histórico de edições)

n35408.gif

Link para o post
Compartilhar em outros sites

Errei numa parte.

tente assim agora.

local timeToCreate = 1 -- minutes
local walls = {
{9485,{x=417, y=65, z=7, stackpos = 1}},
{9485,{x=417, y=67, z=7, stackpos = 1}}
}

function removeWalls(item, position)
doBroadcastMessage("Somente para jogadores experientes.")
addEvent(createWalls, timeToCreate * 100000000)
for i = 1, #walls do
if getTileItemById(walls[i][2], walls[i][1]).uid == 0 then
doCreateItem(walls[i][1], 1, walls[i][2])
else
doRemoveItem(getThingfromPos(walls[i][2]).uid,1)
doSendMagicEffect(walls[i], CONST_ME_MAGIC_RED)
end
end
return TRUE
end
 
function createWalls(item, position)
for i = 1,table.maxn(walls) do
doCreateItem(9485, 1, walls[i])
doSendMagicEffect(walls[i], CONST_ME_MAGIC_GREEN)
end
return TRUE
end
 
function onThink(interval, lastExecution)
doBroadcastMessage("Blood castle aberto!.")
addEvent(removeWalls, 1000)
return TRUE
end

Te ajudei?
Se você achar que eu mereço, me dê uma "rep+" e selecione meu post como "melhor resposta"

 

Skype: JoadsonAion

Link para o post
Compartilhar em outros sites

 

Errei numa parte.

tente assim agora.

local timeToCreate = 1 -- minutes
local walls = {
{9485,{x=417, y=65, z=7, stackpos = 1}},
{9485,{x=417, y=67, z=7, stackpos = 1}}
}

function removeWalls(item, position)
doBroadcastMessage("Somente para jogadores experientes.")
addEvent(createWalls, timeToCreate * 100000000)
for i = 1, #walls do
if getTileItemById(walls[i][2], walls[i][1]).uid == 0 then
doCreateItem(walls[i][1], 1, walls[i][2])
else
doRemoveItem(getThingfromPos(walls[i][2]).uid,1)
doSendMagicEffect(walls[i], CONST_ME_MAGIC_RED)
end
end
return TRUE
end
 
function createWalls(item, position)
for i = 1,table.maxn(walls) do
doCreateItem(9485, 1, walls[i])
doSendMagicEffect(walls[i], CONST_ME_MAGIC_GREEN)
end
return TRUE
end
 
function onThink(interval, lastExecution)
doBroadcastMessage("Blood castle aberto!.")
addEvent(removeWalls, 1000)
return TRUE
end

 

 

O erro parou, só tem um problema agora

botei pro evento começar de 5 em 5 minutos pra testar

entao, o que acontece é que o evento abre quando passa 5 minutos

mais ele nao fecha... ai quando passa mais 5 minutos, aparece que o evento abriu de novo, (por causa da minha configuração) ai ele fecha

 

no caso... toda vez que o evento anucia, ele faz uma coisa

 

primeira vez, ele abre, já na segunda vez, ele fecha

 

ele deveria funcionar na seguinte forma

 

ele abrir, dps de alguns minutos, ele fechar

ai quando o evento começar de novo, ele abrir de novo e dps fechar, e assim vai....

n35408.gif

Link para o post
Compartilhar em outros sites

Vou modificar seu script então, porque só fiz mudar a parte que remove os itens.
Breve edito aqui.

Te ajudei?
Se você achar que eu mereço, me dê uma "rep+" e selecione meu post como "melhor resposta"

 

Skype: JoadsonAion

Link para o post
Compartilhar em outros sites
  • Solução
local config = {
	timeToCreate = 1, -- minutes
	wallId = 9485,
	wallPos = {
		{x = 417, y = 65, z = 7},
		{x = 417, y = 67, z = 7}
	}
}
 
function removeWalls()
	doBroadcastMessage("Somente para jogadores experientes.")
	addEvent(createWalls, config.timeToCreate * 60 * 1000)
	for _, pos in pairs(config.wallPos) do
		local a = getTileItemById(pos, config.wallId).uid
		if(a ~= 0) then
			doRemoveItem(a)
			doSendMagicEffect(pos, CONST_ME_MAGIC_RED)
		end
	end
	return true
end
 
function createWalls()
	for _, pos in pairs(config.wallPos) do
		local a = getTileItemById(pos, config.wallId).uid
		if(a == 0) then
			doCreateItem(config.wallId, 1, pos)
			doSendMagicEffect(pos, CONST_ME_MAGIC_GREEN)
		end
	end
	return true
end
 
function onThink(interval, lastExecution)
	doBroadcastMessage("Blood castle aberto!.")
	addEvent(removeWalls, 1000)
	return true
end
Link para o post
Compartilhar em outros sites
local config = {
	timeToCreate = 1, -- minutes
	wallId = 9485,
	wallPos = {
		{x = 417, y = 65, z = 7},
		{x = 417, y = 67, z = 7}
	}
}
 
function removeWalls()
	doBroadcastMessage("Somente para jogadores experientes.")
	addEvent(createWalls, config.timeToCreate * 60 * 1000)
	for _, pos in pairs(config.wallPos) do
		local a = getTileItemById(pos, config.wallId).uid
		if(a ~= 0) then
			doRemoveItem(a)
			doSendMagicEffect(pos, CONST_ME_MAGIC_RED)
		end
	end
	return true
end
 
function createWalls()
	for _, pos in pairs(config.wallPos) do
		local a = getTileItemById(pos, config.wallId).uid
		if(a == 0) then
			doCreateItem(config.wallId, 1, pos)
			doSendMagicEffect(pos, CONST_ME_MAGIC_GREEN)
		end
	end
	return true
end
 
function onThink(interval, lastExecution)
	doBroadcastMessage("Blood castle aberto!.")
	addEvent(removeWalls, 1000)
	return true
end

 

@MaTTch  funcionou direitinho, do jeito que eu queria :D  vlw mesmo ><  

 

Reputado  :accept:

 

@Joadson, obrigado por tentar ajudar

 

Reputado  :accept:

n35408.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