Ir para conteúdo

Featured Replies

Postado
2 horas atrás, Vodkart disse:

function onStepIn(cid, item, position, fromPosition)
	local time = 30 -- em segundos
	local item_id, wallpos = 1543, {x=186, y=54, z=7} -- id da parede e pos dela
	if not isPlayer(cid) then 
		return true 
	end
	local t = getTileItemById(wallpos, item_id).uid
	if t > 0 then
		doRemoveItem(t)
		doSendMagicEffect(wallpos, CONST_ME_POFF)
		addEvent(doCreateItem, time * 1000, item_id, 1, wallpos)
	end
	return true
end

 

 

Posso por como alavanca ou algo do tipo? Uma Action se isso funcionar vou finaliza uma epica quest no meu mini servidor.

  • Respostas 10
  • Visualizações 1.2k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • function onStepIn(cid, item, position, fromPosition) local time = 30 -- em segundos local item_id, wallpos = 1543, {x=186, y=54, z=7} -- id da parede e pos dela if not isPlayer(cid) then return

  • @Pifafa funciona como action tbm, só usar assim:   function onUse(cid, item, fromPosition, itemEx, toPosition) local time = 30 -- em segundos local item_id, wallpos = 1543, {x=186, y=54, z=

  • Se a parede for outro id cópia e faça com outro id, só seguir esse codigo   function onUse(cid, item, fromPosition, itemEx, toPosition)     local time = 30 -- em segundos     local item_

Postado

@Pifafa funciona como action tbm, só usar assim:

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
	local time = 30 -- em segundos
	local item_id, wallpos = 1543, {x=186, y=54, z=7} -- id da parede e pos dela
	local t = getTileItemById(wallpos, item_id).uid
	if t > 0 then
		doRemoveItem(t)
		doSendMagicEffect(wallpos, CONST_ME_POFF)
		addEvent(doCreateItem, time * 1000, item_id, 1, wallpos)
	end
	return true
end

claro que poderá implementar, colocando função que mande algum texto, efeito no jogador, contagem regressiva da parede, etc...

vodkart_logo.png

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

 

DISCORDvodkart#6090

 

  • 4 years later...
Postado
Em 15/04/2019 em 21:37, Vodkart disse:

@Pifafa funciona como action tbm, só usar assim:

 


function onUse(cid, item, fromPosition, itemEx, toPosition)
	local time = 30 -- em segundos
	local item_id, wallpos = 1543, {x=186, y=54, z=7} -- id da parede e pos dela
	local t = getTileItemById(wallpos, item_id).uid
	if t > 0 then
		doRemoveItem(t)
		doSendMagicEffect(wallpos, CONST_ME_POFF)
		addEvent(doCreateItem, time * 1000, item_id, 1, wallpos)
	end
	return true
end

claro que poderá implementar, colocando função que mande algum texto, efeito no jogador, contagem regressiva da parede, etc...

@Vodkart e se eu precisar remover 6 paredes e também ter 100 itens de um tipo pra usar a alavanca, como ficaria?

Postado
  • Diretor
16 horas atrás, Bruno Rezende disse:

@Vodkart e se eu precisar remover 6 paredes e também ter 100 itens de um tipo pra usar a alavanca, como ficaria?

Se a parede for outro id cópia e faça com outro id, só seguir esse codigo

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local time = 30 -- em segundos
    local item_id = 1543 -- ID da parede
    
    local wallPositions = {
        {x = 186, y = 54, z = 7},
        {x = 187, y = 54, z = 7},
        {x = 186, y = 55, z = 7},
        {x = 187, y = 55, z = 7},
        -- Adicione mais posições de paredes aqui conforme necessário
        {x = 188, y = 55, z = 7},
        {x = 189, y = 55, z = 7},
        -- Adicione mais posições de paredes aqui conforme necessário
        -- Continue adicionando mais 100 posições de paredes
    }
    
    for i = 1, #wallPositions do
        local wallpos = wallPositions[i]
        local tile = getTileItemById(wallpos, item_id)
        
        if tile then
            doRemoveItem(tile.uid)
            doSendMagicEffect(wallpos, CONST_ME_POFF)
            addEvent(doCreateItem, time * 1000, item_id, 1, wallpos)
        end
    end
    
    return true
end
 

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Postado
3 horas atrás, L3K0T disse:

Se a parede for outro id cópia e faça com outro id, só seguir esse codigo

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local time = 30 -- em segundos
    local item_id = 1543 -- ID da parede
    
    local wallPositions = {
        {x = 186, y = 54, z = 7},
        {x = 187, y = 54, z = 7},
        {x = 186, y = 55, z = 7},
        {x = 187, y = 55, z = 7},
        -- Adicione mais posições de paredes aqui conforme necessário
        {x = 188, y = 55, z = 7},
        {x = 189, y = 55, z = 7},
        -- Adicione mais posições de paredes aqui conforme necessário
        -- Continue adicionando mais 100 posições de paredes
    }
    
    for i = 1, #wallPositions do
        local wallpos = wallPositions[i]
        local tile = getTileItemById(wallpos, item_id)
        
        if tile then
            doRemoveItem(tile.uid)
            doSendMagicEffect(wallpos, CONST_ME_POFF)
            addEvent(doCreateItem, time * 1000, item_id, 1, wallpos)
        end
    end
    
    return true
end
 

Funcionou, poderia me ajudar somente no refino do script? Exemplo, ao tentar dar use de novo (se os walls tiverem sumido) da esse erro na console:

2023-06-19 17:04:25 -  [Error - Action Interface]
2023-06-19 17:04:25 -  data/actions/scripts/gatescastle.lua:onUse
2023-06-19 17:04:25 -  Description:
2023-06-19 17:04:25 -  (luaDoRemoveItem) Item not found
 

Outro ponto é, como restringir o uso da alavanca a somente se o player tiver 100 itens do ID 4848 com ele?

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo