-- Follow
addLabel("texto", "Follow"):setColor("#2AFC05")
addLabel("texto", " ")
addLabel("texto", "Player:")
addTextEdit("followLeader", storage.followLeader or "Nome", function(widget, text)
storage.followLeader = text
target2 = tostring(text)
end)
local jogadorParaSeguir = storage.followLeader
local jogadorParaSeguir2 = storage.followLeader
local jogadorParaSeguir3 = storage.followLeader
-- Macro de Follow
macroParaSeguir2 = macro(1000,"Follow",function()
jogadorParaSeguir3 = storage.followLeader
end)
jogadorParaSeguir3 = storage.followLeader
pos_p = player:getPosition()
p = getCreatureByName(jogadorParaSeguir3)
onCreaturePositionChange(function(creature, newPos, oldPos)
if macroParaSeguir2.isOn() then
if creature:getName()==player:getName() and
getCreatureByName(jogadorParaSeguir3) == nil and newPos.z>oldPos.z then
say('exani tera')
for i = -1,1 do
for j = -1,1 do
local useTile = g_map.getTile({x=posx()+i,y=posy()
+j,z=posz()})
g_game.use(useTile:getTopUseThing())
end
end
end
if creature:getName()==jogadorParaSeguir3 then
if newPos==nil then
lastPos = oldPos
schedule(200,function()
autoWalk(oldPos)
end)
schedule(1000,function()
for i = -1,1 do
for j = -1,1 do
local useTile = g_map.getTile({x=posx()+i,y=posy()
+j,z=posz()})
g_game.use(useTile:getTopUseThing())
end
end
end)
end
if oldPos.z == newPos.z then
schedule(300,function()
local useTile =
g_map.getTile({x=oldPos.x,y=oldPos.y,z=oldPos.z})
topThing = useTile:getTopThing()
if not useTile:isWalkable() then
use(topThing)
end
end)
autoWalk({x=oldPos.x,y=oldPos.y,z=oldPos.z})
else
lastPos = oldPos
autoWalk(oldPos)
for i = 1,6 do
schedule(i*200,function()
autoWalk(oldPos)
if getDistanceBetween(pos(), oldPos) == 0 and
(posz()>newPos.z and getCreatureByName(jogadorParaSeguir3) == nil) then
say('exani tera')
end
end)
end
local useTile = g_map.getTile({x=newPos.x,y=newPos.y-
1,z=oldPos.z})
g_game.use(useTile:getTopUseThing())
end
end
end
end)
-- FICAR NO MSM SQM DO LÍDER
local toFollowPos = {}
local macroParaSeguir = macro(1, "Sqm do Líder", function()
local target2 = getCreatureByName(storage.followLeader)
if target2 then
local tpos = target2:getPosition()
toFollowPos[tpos.z] = tpos
end
if player:isWalking() then return end
local p = toFollowPos[posz()]
if not p then return end
if autoWalk(p, 13, {ignoreNonPathable=true, precision=1}) then
delay(1)
end
end)
onCreaturePositionChange(function(creature, oldPos, newPos)
if creature:getName() == storage.followLeader then
toFollowPos[newPos.z] = newPos
end
end)
addLabel("texto", " ")
-- COMBO PT
UI.Separator()
-- Friend Healer
addLabel("texto", "Friend Healer"):setColor("#00F2FF")
addLabel("texto", " ")
local nomePainel = "curarAmigo"
local curarAmigoui = setupUI([[
Panel
height: 10
Button
id: editPlayerList
anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
height: 18
text: Abrir Lista de Amigos
]], parent)
if not storage[nomePainel] then
storage[nomePainel] = {
enabled = true,
}
end
curarAmigoui.editPlayerList.onClick = function(widget)
UI.MultilineEditorWindow(storage.nomeAmigo or "", {title="Lista de Amigos",
description="Insira em cada linha o nome do jogador:\n(Pressione ENTER para pular
uma linha)"}, function(text)
storage.nomeAmigo = text
end)
end
local nomePainel = "curarTodos"
local curarTodosUI = setupUI([[
Panel
height: 35
margin-top: 10
CheckBox
id: statusCurarTodos
anchors.left: parent.left
anchors.right: parent.right
anchors.top: parent.top
margin-top: 6
margin-left: 3
font: verdana-11px-rounded
text: Curar Todos na Tela
tooltip: Ative este campo para curar todos os jogadores por perto (3 sqm)
]], parent)
if not storage[nomePainel] then
storage[nomePainel] = {
verificar = false
}
end
curarTodosUI.statusCurarTodos:setChecked(storage[nomePainel].verificar)
curarTodosUI.statusCurarTodos.onClick = function()
storage[nomePainel].verificar = not storage[nomePainel].verificar
curarTodosUI.statusCurarTodos:setChecked(storage[nomePainel].verificar)
end
if type(storage.scrollCura01) ~= "table" then
storage.scrollCura01 = {on=false, title="HP%", text="exura sio", min=0, max=90}
end
-- create 2 healing widgets
for _, infoPorcHP in ipairs({storage.scrollCura01}) do
local macroPorcHP = macro(100, function()
-- aqui fica a execucao do codigo
local HPmin = infoPorcHP.min
local HPmax = infoPorcHP.max
local curarTodos = storage[nomePainel].verificar
local nomeAmigoEdit = string.split(storage.nomeAmigo, "\n")
local jogadorCurando = g_game.getLocalPlayer():getName():lower()
if storage[nomePainel].verificar == true then
for i, spec in pairs(getSpectators()) do
if spec:getHealthPercent() <= HPmax and spec:getHealthPercent() >= HPmin
and spec:getName():lower() ~= jogadorCurando then -- checa a porcentagem do HP
if getDistanceBetween(player:getPosition(), spec:getPosition()) <= 3
then -- checa a distancia do player
say(infoPorcHP.text .. " \"" .. spec:getName())
delay(200)
end
end
end
else
for i, spec in pairs(getSpectators()) do
if table.contains(nomeAmigoEdit, spec:getName(), true) then
if spec:getHealthPercent() <= HPmax and spec:getHealthPercent() >=
HPmin then -- checa a porcentagem do HP
if getDistanceBetween(player:getPosition(), spec:getPosition()) <= 3
then -- checa a distancia do player
say(infoPorcHP.text .. " \"" .. spec:getName())
delay(200)
end
end
end
end
end
end)
macroPorcHP.setOn(infoPorcHP.on)
UI.DualScrollPanel(infoPorcHP, function(widget, newParams)
infoPorcHP = newParams
macroPorcHP.setOn(infoPorcHP.on)
end)
end
UI.Separator()
-- UH Friend Healer
addLabel("texto", "UH Friend Healer"):setColor("#00F2FF")
addLabel("texto", " ")
macro(100, "Enable", function()
for _, creature in pairs(getSpectators(posz())) do
local heal_player = creature:getName();
if (heal_player == storage.uhFriend) then
if (creature:getHealthPercent() < tonumber(storage.uhFriendPercent)) then
useWith(3160, creature);
return;
end
end
end
end)
addLabel("uhname", "Player:")
addTextEdit("uhfriend", storage.uhFriend or "", function(widget, text)
storage.uhFriend = text
end)
addLabel("uhpercent", "HP%:")
addTextEdit("uhfriendpercent", storage.uhFriendPercent or "", function(widget,
text)
storage.uhFriendPercent = text
end)
UI.Separator()