avatar
Untitled

Guest 11 21st Jan, 2025

MARKUP 2.67 KB
                                           
                         -- Lista potworów do sprawdzania
local targetMonsters = {"cannibal", "epic cannibal", "godly cannibal"}

-- Id przedmiotów 
local ringBattle = 3048 
local ringDefault = 3052
local amuletSsa = 3081
local amuletJohns = 3013

-- Nazwy plecaków, gdzie mają trafić przedmioty
local amuletBpName = "backpack" -- Plecak na amulet
local ringBpName = "backpack" -- Plecak na ring

-- Funkcja do sprawdzania, czy na ekranie jest potwór z listy
local function isMonsterNearby(monsterList)
  for _, creature in ipairs(getSpectators() or {}) do
    if creature and creature:isMonster() then
      if table.contains(monsterList, creature:getName():lower()) then
        return true
      end
    end
  end
  return false
end

local function equipRing(id)
  if not getFinger() or getFinger():getId() ~= id then
    moveToSlot(id, SlotFinger)
  end
end

local function unequipRing()
    -- Znajdź plecak docelowy
    local ringBp = nil
    for _, container in pairs(getContainers()) do
        if container:getName() == ringBpName and container:getItemsCount() < container:getCapacity() then
            ringBp = container
            break
        end
    end

    if not ringBp then
        print("No suitable backpack found for unequipping the ring!")
        return
    end

    -- Sprawdź, czy pierścień jest na palcu
    local ring = getFinger()
    if not ring then
        print("No ring equipped!")
        return
    end

    -- Przenieś pierścień do plecaka
    local success = g_game.move(ring, ringBp:getSlotPosition(ringBp:getItemsCount()), ring:getCount())
    if success then
        print("Ring unequipped and moved to backpack.")
    else
        print("Failed to move the ring to the backpack.")
    end
end

local function equipSsa()
	local currentAmulet = getNeck()
	if not currentAmulet or currentAmulet:getId() ~= amuletSsa then
		local amulet = findItem(amuletSsa)
		if amulet then
			moveToSlot(amulet, SlotNeck)
		end
	end
end	

local function equipJohns()
	local currentAmulet = getNeck()
	if not currentAmulet or currentAmulet:getId() ~= amuletJohns then
		local amulet = findItem(amuletJohns)
		if amulet then
			moveToSlot(amulet, SlotNeck)
		end
	end
end


-- Makro do automatycznego zakładania i zdejmowania przedmiotów
macro(100, "Auto SSA|MRING - MONSTERS", function()
  if isMonsterNearby(targetMonsters) then
	equipSsa()
    equipRing(ringBattle)
  else
    equipJohns()
    equipRing(ringDefault)
  end
end)
                      
                                       
To share this paste please copy this url and send to your friends
RAW Paste Data
Recent Pastes
Ta strona używa plików cookie w celu usprawnienia i ułatwienia dostępu do serwisu oraz prowadzenia danych statystycznych. Dalsze korzystanie z tej witryny oznacza akceptację tego stanu rzeczy.
Wykorzystywanie plików Cookie
Jak wyłączyć cookies?
ROZUMIEM