Ir para conteúdo
  • Cadastre-se

(Resolvido)Remove tal Monster


Ir para solução Resolvido por Vodkart,

Posts Recomendados

Bom galera queria sabe como eu modifico essa parte do script

 

Spoiler

function removeCreature(cid)
local pos = {fromPosition = {x = 238, y = 132, z = 7},toPosition = {x = 244, y = 137, z = 7}}
for x = ((pos.fromPosition.x)-10), ((pos.toPosition.x)+10) do
for y = ((pos.fromPosition.y)-10), ((pos.toPosition.y)+10) do
local m = getTopCreature({x=x, y=y, z= pos.fromPosition.z}).uid
if m ~= 0 and isMonster(m) then
doRemoveCreature(m)
end
end
end
end

 

o que eu quero fazer é que verifice se tal monster esta nessa area, se estive remove.

 

tipo, o script esta funcionando. mais só que ele remover todos os monster que estao dentro dessa area.

 

eu queria que remove-se somente o monster citado, exemplo demon. se demon estive dentro da area junto com alguns monster(dragon, rat, fire devil etc...) só vai remove somente o demon o resto fica.

Link para o post
Compartilhar em outros sites
  • 2 weeks later...
  • Respostas 23
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Sei lá se vai funcionar nem testei, que código feio em carai identa   function onThink(interval, lastExecution) local pos = {fromPosition = {x=533, y=222, z=7},toPosition = {x=544, y=230, z=7}} local posrem = getSpectators({x=523, y=212, z=7}, 21, 18) monster = {"Demon", "Ferumbras"} time = 60 function removeCreature(cid) if posrem ~= nil then for _, s in pairs(posrem) do if isMonster(s) then doRemoveCreature(s) broadcastMessage("Para tod

mas está errado porque ele não declarou o número no código... ele copio de uma parte do script e tirou a quantidade que é pra ser sumonada... o certo é assim a tabela:   local pos = {fromPosition = {x=533, y=222, z=7},toPosition = {x=544, y=230, z=7}} local time = 5 -- minutes local monsters = {"7 Hydra", "4 Demon"} function removeCreature() for x = ((pos.fromPosition.x)-10), ((pos.toPosition.x)+10) do for y = ((pos.fromPosition.y)-10), ((pos.toPosition.y)+10) do local m = getTopC

local pos = {fromPosition = {x=533, y=222, z=7},toPosition = {x=544, y=230, z=7}} local time = 1 -- minutes local monsters = {"7 Hydra", "4 Demon"} function removeCreature(table) for x = ((pos.fromPosition.x)-10), ((pos.toPosition.x)+10) do for y = ((pos.fromPosition.y)-10), ((pos.toPosition.y)+10) do local m = getTopCreature({x=x, y=y, z= pos.fromPosition.z}).uid if m ~= 0 and isMonster(m) and isInArray(table, getCreatureName(m)) then doRemoveCreature(m) end end end end function sta

Spoiler

function onThink(interval, lastExecution)
 
local pos = {fromPosition = {x=533, y=222, z=7},toPosition = {x=544, y=230, z=7}}
monster = {"Demon", "ferumbras}
time = 60

function removeCreature(cid)
for x = ((pos.fromPosition.x)-10), ((pos.toPosition.x)+10) do
for y = ((pos.fromPosition.y)-10), ((pos.toPosition.y)+10) do
local m = getTopCreature({x=x, y=y, z= pos.fromPosition.z}).uid
if m ~= 0 and isMonster(m) then
doRemoveCreature(m)
end
end
end
end

function um(cid)
broadcastMessage("Bosses nasce em frente ao templo ajude a protege a cidade!", MESSAGE_STATUS_WARNING)
end

function startinvasion(cid)
for _,x in pairs(monster) do
for s = 1, tonumber(x:match("%d+")) do
pos2 = {x = math.random(pos.fromPosition.x, pos.toPosition.x), y = math.random(pos.fromPosition.y, pos.toPosition.y), z = pos.fromPosition.z}
doSummonCreature(x:match("%s(.+)"), pos2)
broadcastMessage("Acaba de nasce os bosses!", MESSAGE_STATUS_WARNING)
end
end
addEvent(removeCreature, 120000)
end

if os.date("%A") == "Monday" then
if (os.date("%X") == "00:10:00") or (os.date("%X") == "00:15:00") then
addEvent(um, 10000)
addEvent(startinvasion, 80000)
end
end
return TRUE
end

 

 

Queria dizer que uso tfs 0.4

Editado por BangxD (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
function onThink(interval, lastExecution)
 
local pos = {fromPosition = {x=533, y=222, z=7},toPosition = {x=544, y=230, z=7}}
monster = "Demon"
time = 60

function removeMonsterInArea() -- by Daaniel Gay
local positionsCheck = {}
for i = pos.fromPosition.x, pos.toPosition.x do
positionsCheck[#positionsCheck+1] = {x=i, y = pos.fromPosition.y, z = pos.toPosition.z, stackpos = 0}
for j = pos.fromPosition.y+1, pos.toPosition.y do
positionsCheck[#positionsCheck+1] = {x=i, y = j, z = pos.fromPosition.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) == monster then
doRemoveCreature(tile.uid)
end
end
end
end
end

function um(cid)
broadcastMessage("Bosses nasce em frente ao templo ajude a protege a cidade!", MESSAGE_STATUS_WARNING)
end
function startinvasion(cid)
for _,x in pairs(monster) do
for s = 1, tonumber(x:match("%d+")) do
pos2 = {x = math.random(pos.fromPosition.x, pos.toPosition.x), y = math.random(pos.fromPosition.y, pos.toPosition.y), z = pos.fromPosition.z}
doSummonCreature(x:match("%s(.+)"), pos2)
broadcastMessage("Acaba de nasce os bosses!", MESSAGE_STATUS_WARNING)
end
end
addEvent(removeMonsterInArea, 120000)
end
if os.date("%A") == "Monday" then
if (os.date("%X") == "00:10:00") or (os.date("%X") == "00:15:00") then
addEvent(um, 10000)
addEvent(startinvasion, 80000)
end
end
return TRUE
end

 

Link para o post
Compartilhar em outros sites

Sei lá se vai funcionar nem testei, que código feio em carai identa

 

function onThink(interval, lastExecution)

  local pos = {fromPosition = {x=533, y=222, z=7},toPosition = {x=544, y=230, z=7}}
  local posrem = getSpectators({x=523, y=212, z=7}, 21, 18)
  monster = {"Demon", "Ferumbras"}
  time = 60
  function removeCreature(cid)
    if posrem ~= nil then
      for _, s in pairs(posrem) do
        if isMonster(s) then
          doRemoveCreature(s)
          broadcastMessage("Para todos as que vos falo, sou homossexual", MESSAGE_STATUS_WARNING)
        end
      end
    end
  end

  function um(cid)
    broadcastMessage("Bosses nasce em frente ao templo ajude a protege a cidade!", MESSAGE_STATUS_WARNING)
  end
  function startinvasion(cid)
    for _,x in pairs(monster) do
      for s = 1, tonumber(x:match("%d+")) do
        pos2 = {x = math.random(pos.fromPosition.x, pos.toPosition.x), y = math.random(pos.fromPosition.y, pos.toPosition.y), z = pos.fromPosition.z}
        doSummonCreature(x:match("%s(.+)"), pos2)
        broadcastMessage("Acaba de nasce os bosses!", MESSAGE_STATUS_WARNING)
      end
    end
    addEvent(removeCreature, 120000)
  end
  if os.date("%A") == "Monday" then
    if (os.date("%X") == "00:10:00") or (os.date("%X") == "00:15:00") then
      addEvent(um, 10000)
      addEvent(startinvasion, 80000)
    end
  end
  return TRUE
end

 

Na msm hora mano que isso kkkkkkkkkkkkkkkkkkkk

Tomara que o seu de errado

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

Life is so meaningless, there is nothing worth a smile
So goodbye, I'll miss you

 

 

sugestões?

 

 

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.

  • Estatísticas dos Fóruns

    96844
    Tópicos
    519608
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo