Ir para conteúdo

Featured Replies

Postado

.Bom dia, então eu queria um scrit que assim que o player sai da sala todos os montros no local fossem removidos, eu tenho esse script mas ele so funcio X hora e tenho que colocar o nome de todas as criaturas.

 

Qual o motivo deste tópico? Ajuda com Script

 

Está surgindo algum erro? Se sim coloque-o aqui. 

Citar

local config = {
 fromPos = {x=630,y=58,z=7}, -- posição superior esquerda do mapa, da area em que esta mapeado a area.
 toPos = {x=649,y=71,z=7}, -- posição inferior direita do mapa, da area em que esta mapeado a area.
 boss = "grim reaper" -- Aqui você bota o nome do monstro que você quer remover
}

function onTime()
removeMonsterInArea(fromPos, toPos)
return true
end

function removeMonsterInArea()
  local positionsCheck = {}
  for i = config.fromPos.x, config.toPos.x do
   positionsCheck[#positionsCheck+1] = {x=i, y = config.fromPos.y, z = config.fromPos.z, stackpos = 0}
   for j = config.fromPos.y+1, config.toPos.y do
    positionsCheck[#positionsCheck+1] = {x=i, y = j, z = config.fromPos.z, stackpos = 0}
   end
  end
  for j=1, #positionsCheck do
   for i = 0, 255 do
    positionsCheck[j].stackpos = i
    local tile = getTileThingByPos(positionsCheck[j])
    if isMonster(tile.uid) then
    if getCreatureName(tile.uid) == config.boss then
      doRemoveCreature(tile.uid)
     end
    end
   end 
  end
end

 

Você tem o código disponível? Se tiver publique-o aqui: 

 

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

Postado

Para ser ativado ao pisar em um sqm (sair da sala), é só mudar o tipo de função para moveevent.


Para remover todos os monstros (sem especificar nome) é só remover um end do final e a checagem name:

if getCreatureName(tile.uid) == config.boss then

 

Postado
  • Autor

 

 

17 horas atrás, Toruk disse:

Legal agora Funciona, eu so ñ entendi da parte do (função para moveevent.) hoje ele esta em Global Event, so que so limpa a sala as 04:30, como limpar quando pisar no SQM?

 

<globalevent name="removemonster" time="04:30" event="script" value="removemonster.lua"/>

Postado
local area = {{x=630,y=58,z=7}, {x=649,y=71,z=7}}
function onStepIn(cid, item, position, fromPosition)
	if not isPlayer(cid) then return true end
	for x = area[1].x - 1, area[2].x + 1 do
		for y = area[1].y - 1, area[2].y + 1 do
			local pos = {x=x, y=y, z=area[1].z}
			local m = getTopCreature(pos).uid
			if m ~= 0 and isMonster(m) then 
				doRemoveCreature(m) 
			end
		end
	end
	return true
end

 

 

tag

 

<movevent type="StepIn" actionid="45120" event="script" value="nome do seu script.lua"/>

 

vodkart_logo.png

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

 

DISCORDvodkart#6090

 

Postado
  • Autor
Em 03/09/2021 em 10:33, Vodkart disse:

local area = {{x=630,y=58,z=7}, {x=649,y=71,z=7}}
function onStepIn(cid, item, position, fromPosition)
	if not isPlayer(cid) then return true end
	for x = area[1].x - 1, area[2].x + 1 do
		for y = area[1].y - 1, area[2].y + 1 do
			local pos = {x=x, y=y, z=area[1].z}
			local m = getTopCreature(pos).uid
			if m ~= 0 and isMonster(m) then 
				doRemoveCreature(m) 
			end
		end
	end
	return true
end

 

 

tag

 


<movevent type="StepIn" actionid="45120" event="script" value="nome do seu script.lua"/>

 

Muito Obrigado!

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.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.9k

Informação Importante

Confirmação de Termo