Ir para conteúdo
  • Cadastre-se

(Resolvido)Alavanca de sacrifico com storage


Ir para solução Resolvido por Vodkart,

Posts Recomendados

Boa tarde.

 

Estou elaborando a The inquisition quest, porem não estou conseguindo acertar o script..

 

Eu preciso que sacrifique 3 itens em 3 altares diferentes e ao clicar no tumulo (alavanca) os 3 itens sumam e sumone o boss (The Count), porem quero que o player ganhe storage para que nao funcione novamente com ele..

 

Meu script esta sumonando 3 BOSSES e nao está verificando os 3 itens, se tiver so 1 ele some e sumona 1, se tiver 3 ele some e sumona 3...

 

Preciso de ajuda quem puder +REP

 

Aqui vai o codigo...

 

Spoiler

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local removals = -- Local dos altares --
	{
        {x = 32777, y = 31982, z = 9, stackpos = 255},
        {x = 32779, y = 31977, z = 9, stackpos = 255},
        {x = 32781, y = 31982, z = 9, stackpos = 255}
    }
   
ret = false
if getPlayerStorageValue(cid, 92224) == 24 then   
	for i = 1, #removals do
		local amuletos = getThingfromPos(removals[i])
		if amuletos.itemid == 2199 then
			doRemoveItem(getThingfromPos(removals[i]).uid, 1)
			Wave1()
		else
			ret = true
		end
	end
		if ret then 
			doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "You need to put the amulets in the altars.")
		end	
else
	doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "You aren't a member of the inquisition.")
end
    return TRUE
end
function Wave1()
       
doSendMagicEffect(getCreaturePosition(doCreateMonster('the count', {x = 32780, y = 31980, z = 9})), CONST_ME_TELEPORT) -- local e nome do monstro que sera sumonado --
	
	
end

 

 

1857372462_Semttulo.thumb.png.edd243761e9ccf49b91c3c432614043a.png

 

@EddyHavoc

@Vodkart

 

Editado por Everson Miranda (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
function doRemoveItensInPos(items, pos) -- function by vodka
local items = type(items) == "table" and items or {items}  
      for i = 1, table.maxn(items) do 
    doRemoveItem(getThingFromPos({x=pos.x,y=pos.y,z=pos.z,stackpos=1}).uid)
  end
  return nil
end
function getItemsInPos(items, pos) -- function by vodka
         for i = 1,#items do
            local stack = getTileItemById(pos, items[1])
                  if stack.uid > 0 and math.max(1, stack.type) >= items[2] and i == #items then
                    return true
                 end
         end
return false
end
function Wave1() -- vc que fez essa função
doSendMagicEffect(getCreaturePosition(doCreateMonster('the count', {x = 32780, y = 31980, z = 9})), CONST_ME_TELEPORT) -- local e nome do monstro que sera sumonado --		
end
function onUse(cid, item, fromPosition, itemEx, toPosition)
local t = {
	{items = {{2199,1}}, pos = {x = 32777, y = 31982, z = 9}},
	{items = {{2199,1}}, pos = {x = 32779, y = 31977, z = 9}},
	{items = {{2199,1}}, pos = {x = 32781, y = 31982, z = 9}}
}
if getPlayerStorageValue(cid, 875487) > 0  then
doPlayerSendCancel(cid, "voce ja fez esta quest.") return true
end
if getPlayerStorageValue(cid, 92224) == 24 then
	for _, w in ipairs(t) do
		if not getItemsInPos(w.items, w.pos) then
		doPlayerSendCancel(cid, "You need to put the amulets in the altars.") return true
		end
	end   
	for _, v in ipairs(t) do
		doRemoveItensInPos(v.items, v.pos)
	end
	 setPlayerStorageValue(cid, 875487, 1)
	Wave1()	
else
	doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "You aren't a member of the inquisition.")
end
    return true
end

 

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

Deu error @Vodkart2.thumb.png.e0b27a761b4134fe66e955f9951a7b90.png

Link para o post
Compartilhar em outros sites

é esse bb code bugando todo os códigos.

 

testa ai

 

https://pastebin.com/raw/GiCq1izE

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

@Vodkart

 

O bug resolveu, agora mesmo com os itens no altar ele ta pedindo para por os itens

 

2.thumb.png.2ef1449cd87b1520f892091e53acdd76.png

Link para o post
Compartilhar em outros sites

as pos estão certas? se sim, tente usar assim:

 

 

 

 

local t = {
	{items = {{2199,1}}, pos = {x = 32777, y = 31982, z = 9, stackpos = 255}},
	{items = {{2199,1}}, pos = {x = 32779, y = 31977, z = 9, stackpos = 255}},
	{items = {{2199,1}}, pos = {x = 32781, y = 31982, z = 9, stackpos = 255}}
}

 

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

sim as posições estao corretas, acabei de testar da outra forma

 

local t = {
	{items = {{2199,1}}, pos = {x = 32777, y = 31982, z = 9, stackpos = 255}},
	{items = {{2199,1}}, pos = {x = 32779, y = 31977, z = 9, stackpos = 255}},
	{items = {{2199,1}}, pos = {x = 32781, y = 31982, z = 9, stackpos = 255}}
}

e apareceu a mesma coisa

2.thumb.png.ac2f4aed3ad99a5b177c19f7cc83cc8e.png

Mano fiz uma cagada mas "Funcionou" porem removeu até os altares kkkkkk

 

Eu removi os coxetes 

 

local t = {
	{items = {{2199,1}}, pos = {x = 32777, y = 31982, z = 9, stackpos = 255}},
	{items = {{2199,1}}, pos = {x = 32779, y = 31977, z = 9, stackpos = 255}},
	{items = {{2199,1}}, pos = {x = 32781, y = 31982, z = 9, stackpos = 255}}
}

esses por esse \/

 

local t = {
	{items = {2199,1}, pos = {x = 32777, y = 31982, z = 9, stackpos = 255}},
	{items = {2199,1}, pos = {x = 32779, y = 31977, z = 9, stackpos = 255}},
	{items = {2199,1}, pos = {x = 32781, y = 31982, z = 9, stackpos = 255}}
}

 

e aconteceu isso

 

2.thumb.png.76331cc6fa804ec7e9bb2ad73db7ddc7.png

Porem se eu coloco os coxetes novamente manda eu colocar os itens no local

Link para o post
Compartilhar em outros sites
  • Solução

ta ai tenta assim:

 

https://pastebin.com/raw/B8ZS1rnx

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

@Vodkart

 

Muito obrigado pela sua atenção!

 

Funcionou, porem eu tive que remover somente 1 script que bugou o caixão que e esse

 

doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945)

mas funfou perfeitamente obrigado!!

 

 

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

@Vodkart

Se tiver disponivel me quebra mais uma arvore...

 

Na missão 4 da inq no exorcism 

 

dentro da casa eu quero usar o item 7488 no tile que tem a aid 18899 e nasce um pirate ghost e a porta fecha durante 2m porem meu script nao esta muito legal..

 

 

Spoiler

local function Eliminar()
local piedra2 = {x = 32256, y = 32791, z = 7, stackpos = 1} -- local da porta que ira aparecer -- 
local piedrapos = getThingfromPos(piedra2)
	doRemoveItem(piedrapos.uid, 1)
end

function onUse(cid, item, fromPosition, itemEx, toPosition)
local piedra = {x = 32256, y = 32791, z = 7} -- local da porta -- 
	if item.itemid == 7488 and item.actionid == 18899 then -- item e action do tile -- 
		if getPlayerStorageValue(cid, 90000) == 8 then -- storage necessaria para executar -- 
			if fromPosition.x == CONTAINER_POSITION then -- não sei oqe é mas ja veio no script -- 
				doSendMagicEffect(getCreaturePosition(cid), CONST_ME_EXPLOSIONHIT)
				doSummonCreature("Pirate Ghost", { x =32257, y =32791, z =7}) -- local que o pirata vai nascer --
				setPlayerStorageValue(cid, 100078, 15) -- storage que ira ganhar -- 
				doPlayerRemoveItem(cid, 7488, 1) -- item a ser removido -- 
				doCreateItem(8696, 1, piedra) -- criar a pedra --
				addEvent(Eliminar, 20*1000) -- tempo para pedra sumir --
			else
				doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You need hold the item on you.")
			end
		else
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You arent a inquisition member")
		end
	end
    return TRUE
end

 

 

2.thumb.png.f1d4ce805e0e0b5c76810a31978cb367.png

Link para o post
Compartilhar em outros sites

qual problema do seu script?

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
local time = 2 -- tempo que ela vai ficar fechada
local id,pos = 8696, {x = 32256, y = 32791, z = 7} -- id e pos da porta
function Eliminar()
	local t = getTileItemById(pos, id).uid
	return t > 0 and doRemoveItem(t) and doSendMagicEffect(pos, CONST_ME_POFF)
end
function onUse(cid, item, fromPosition, itemEx, toPosition)
	if item.itemid == 7488 and itemEx.actionid == 18899 then
		if getPlayerStorageValue(cid, 90000) == 8 then -- storage necessaria para executar -- 
			local t = getTileItemById(pos, id).uid
			if t > 0 then -- caso a porta já esteja fechada 
				doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You need hold the item on you.") return true
			end
			doSendMagicEffect(getCreaturePosition(cid), CONST_ME_EXPLOSIONHIT)
			doSummonCreature("Pirate Ghost", { x =32257, y =32791, z =7})
			setPlayerStorageValue(cid, 100078, 15)
			doPlayerRemoveItem(cid, 7488, 1)
			doCreateItem(id, 1, pos)
			addEvent(Eliminar, time*60*1000)
		else
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You arent a inquisition member")
		end
	end
	return true
end

 

n testei

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

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