• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

SCRIPTS FOR DRUID 8.60 OTCLIENT -> strongerfusion.servebeer.com

kasgosc

New Member
Joined
Mar 17, 2021
Messages
3
Reaction score
2
-- config
local Spells = {
{name = "new ice age", cast = true, range = 10, buffSpell = false, manaCost = 0, level = 0},}
-- script
macro(100, "Spells Attack", function()
if not g_game.isAttacking() then
return
end
local target = g_game.getAttackingCreature()
local distance = getDistanceBetween(player:getPosition(), target:getPosition())
for _, spell in ipairs(Spells) do
if mana() >= spell.manaCost and lvl() >= spell.level and distance <= spell.range and spell.cast then
if not hasPartyBuff() or not spell.buffSpell then
say(spell.name)
end
end
end
end)









macro(200, "AOE", function()
say("hollyng spectral")
end)









local distance = 15
macro(100, "UE", function() -- editar nome da spell
local playerInScreen = false
if not g_game.isAttacking() then
return
end
for i,mob in ipairs(getSpectators()) do
if (getDistanceBetween(player:getPosition(), mob:getPosition()) <= distance and mob:isPlayer()) and (player:getName() ~= mob:getName()) then
playerInScreen = true
end
end
if not playerInScreen then
say("hollyng spectral") -- editar nome da spell
end
end)









local revidar = true
addSwitch("revidar", "Revidar", function(widget)
revidar = not revidar
widget:setOn(revidar)
end)
onTextMessage(function(mode, text)
if revidar == true and not g_game.getAttackingCreature() and string.find(text, "You lose") then
local targetName = string.sub(text, string.find(text, " [^ ]*$") + 1, #text - 1)
local target = getPlayerByName(targetName)
if target then
g_game.attack(target)
end
end
end)










macro(200, "Attack GERAL", function()
delay(200)
local spectators = g_map.getSpectators(g_game.getLocalPlayer():getPosition(), false)
for k,v in pairs(spectators) do
if not g_game.isAttacking() and not v:isPlayer() and not v:isNpc() and v:getName():lower() ~= 'emberwing'
and getDistanceBetween(pos(), v:getPosition()) <= 5
and player:getLevel() <= 1500000 and v:getHealthPercent()>=5 then
g_game.attack(v)
end
end
end)












local dropItems = { 3035, 3043 }
local maxStackedItems = 4
local dropDelay = 200

gpAntiPushDrop = macro(dropDelay , "Anti-Push", function ()
antiPush()
end)

onPlayerPositionChange(function()
antiPush()
end)

function antiPush()
if gpAntiPushDrop:isOff() then
return
end

local tile = g_map.getTile(pos())
if tile and tile:getThingCount() < maxStackedItems then
local thing = tile:getTopThing()
if thing and not thing:isNotMoveable() then
for i, item in pairs(dropItems) do
if item ~= thing:getId() then
local dropItem = findItem(item)
if dropItem then
g_game.move(dropItem, pos(), 2)
end
end
end
end
end
end









local function openFromEmpty()
containers = getContainers()
if #containers < 1 and containers[0] == nil then
bpItem = getBack()
if bpItem ~= nil then
g_game.open(bpItem)
end
end
end

openFromEmpty()

macro(1000, "Open Main BP", function()
containers = getContainers()
if #containers < 1 and containers[0] == nil then
openFromEmpty()
return
end
end)











macro(2500, "Exp Potion x7", function()
local boost1 = findItem(11588);
if (boost1 and g_game.isAttacking() ) then
usewith(boost1:getId(), player)
end
end)









local healingSpell = 'exura gran sio "kasgosc'
local hpPercent = 99
macro(1, "Heal Health", function()
if (hppercent() <= hpPercent) then
say(healingSpell)
end
end)










local manaId = 3159
local manaPercent = 90
macro(1, "Heal Mana", function()
if (manapercent() <= manaPercent) then
usewith(manaId, player)
end
end)













macro(500, "Stamina", function()
if stamina() < 2400 then
use(9087)
end
end)






macro(9000, "Aura", function()
say("!aura2 on")
end)







macro(1000, "Buff", function()
if not hasPartyBuff() then
saySpell("fusion buff")
end
end)









macro(100, "Utamo Vita", function()
if not hasManaShield() then
say("utamo vita")
end
end)











function newAttackItem(parent)
local panelName = "newAttackItem"
if not parent then
parent = panel
end
local ui = g_ui.createWidget("DualScrollItemPanel", parent)
ui:setId(panelName)
if not storage[panelName] then
storage[panelName] = {
item = 3155,
min = 10,
max = 80
}
end
ui.title:setOn(storage[panelName].enabled)
ui.title.onClick = function(widget)
storage[panelName].enabled = not storage[panelName].enabled
widget:setOn(storage[panelName].enabled)
end
ui.item.onItemChange = function(widget)
storage[panelName].item = widget:getItemId()
end
ui.item:setItemId(storage[panelName].item)
local updateText = function()
ui.title:setText("" .. math.max(100, (storage[panelName].min)*50) .. "ms at " .. storage[panelName].max .. "% hp")
end
local repeatTime
ui.scroll1.onValueChange = function(scroll, value)
storage[panelName].min = value
updateText()
end
ui.scroll2.onValueChange = function(scroll, value)
storage[panelName].max = value
updateText()
end
ui.scroll1:setValue(storage[panelName].min)
ui.scroll2:setValue(storage[panelName].max)
macro(200, function()
local target = g_game.getAttackingCreature()
if not target then
return
end
if storage[panelName].enabled and hppercent() <= storage[panelName].max then
useWith(storage[panelName].item, target)
delay(math.max(200, storage[panelName].min*50)-200)
end
end)
end
newAttackItem()













macro(100, "Sio", function()
local friend = getPlayerByName(storage.friendName)
local friend1 = getPlayerByName(storage.friend1Name)
if friend and friend:getHealthPercent() < 70 then
say("exura gran sio \""..storage.friendName)
delay(100)
elseif friend1 and friend1:getHealthPercent() <= 70 then -- If u need more you can copy this lines
say("exura gran sio \""..storage.friend1Name) --
delay(100) --
end -- And paste them between this end and the delay
end)
addTextEdit("friendName", storage.friendName or "Friend Name", function(widget, text)
storage.friendName = text
end)
addTextEdit("friend1Name", storage.friend1Name or "Friend Name", function(widget, text) -- Also copy this lines
storage.friend1Name = text -- If u add more just rename the Friend1Name to Friend2Name in the lines u paste
end) --

local friendName = "name"
macro(100, "Sio Friend", function()
local friend = getPlayerByName(friendName)
if friend and friend:getHealthPercent() < 50 then
say("exura gran sio \"" .. friendName)
delay(200)
end
end)
 
Back
Top