Thread Rating:
  • 2 Vote(s) - 3 Average
  • 1
  • 2
  • 3
  • 4
  • 5
My really advanced macro for rings
#1
I made this really complex macro i use on my Demons full afk pall hexera script to switch between 3 different rings.

My macro does:
  • Checks if there are avaiable Prismatic Rings, Ring of healings and Life rings.
  • Checks combat state and PZ state.
  • Checks how many demons bot fights
  • Checks how much mana character have.
  • Puts on Prismatic Ring, if avaiable and when there are more than 3 Demons.
  • Uses Ring of Healings,if they're avaiable, and during a combat.
  • Uses Life Rings, if they are avaiable, when there is no RoH, less than 3 Demons.
  • Uses life rings when there is no Ring of Healings avaible and/or when out of combat
  • Stops using Life ring and RoH when mana is higher than 95%
  • Takes off rings when in protection zone.
  • And YES its all in just ONE macro, of 70+ lines!!!



Variables
PrismHotkey is a Virtual key code of ur prismatic ring hotkey
Code:
PrismHotkey=120

prismonID=16264
prismofID=16114
SecondaryRing=3098
SecondaryRingOn=3100
PrimRing=3052
PrimRingOn=3089


[macro]700 {Ringi}
PeZe:=Status.InPZ()
cmbt:=Status.Battle()
Smana:=Self.Mana%()
pringOFF:=Misc.ItemCountEx(!PrimRing!)
pringON:=Misc.ItemCountEx(!PrimRingOn!)
pring:=!pringON!
VarAdd(pring, !pringOFF!)
sndringOFF:=Misc.ItemCountEx(!SecondaryRing!)
sndringON:=Misc.ItemCountEx(!SecondaryRingOn!)
sndring:=!sndringOFF!
VarAdd(sndring, !sndringON!)
prismringOFF:=Misc.ItemCountEx(!prismofID!)
prismringON:=Misc.ItemCountEx(!prismonID!)
prismring:=!prismringOFF!
VarAdd(prismring, !prismringON!)
coAS:=Self.Inventory.Ring()
QtDem:=Creatures.ByRangeName(2, Demon)
!cmbt!<>1 [cmb]
!PeZe!<>1 [pz]
!Smana!<95 [mana1]
!coAS!<>!PrimRingOn!
Self.Equip.Ring(!PrimRing!)
exit()
{mana1}
Self.UnEquip.Ring(0)
exit()
{pz}
Self.UnEquip.Ring(0)
exit()
{cmb}
!prismring!>=1 [prsm]
!QtDem!>=3 [dem]
Self.Inventory.Ring()<>!prismonID!
Tibia.SendKey(!PrismHotkey!)
exit()
{dem}
!PeZe!<>1 [pz2]
!Smana!<95 [mana2]
!sndring!>=1 [secr]
!coAS!<>!SecondaryRingOn!
Self.Equip.Ring(!SecondaryRing!)
exit()
{secr}
!pring!>=1 [pring]
!coAS!<>!PrimRingOn!
Self.Equip.Ring(!PrimRing!)
exit()
{pring}
Self.UnEquip.Ring(0)
exit()
{mana2}
Self.UnEquip.Ring(0)
exit()
{pz2}
Self.UnEquip.Ring(0)
exit()
{prism}
!PeZe!<>1 [pz2]
!Smana!<95 [mana2]
!sndring!>=1 [secr]
!coAS!<>!SecondaryRingOn!
Self.Equip.Ring(!SecondaryRing!)
exit()
{secr}
!coAS!<>!PrimRingOn!
Self.Equip.Ring(!PrimRing!)
exit()
{mana2}
Self.UnEquip.Ring(0)
exit()
{pz2}
Self.UnEquip.Ring(0)
exit()
[/macro]

I use F9 hotkey as Equip for prismatic ring, because it works with 100% succes, and Self.Equip may sometimes lag,
And having prismatic ring put instant when its needed i s crucial for my macro to keep my pally alive Wink

[Image: 5hiV3Gr.png]
Reply


Messages In This Thread
My really advanced macro for rings - by Catar - 09-08-2016, 04:39 PM

Forum Jump:


Users browsing this thread: 1 Guest(s)