rendered paste body;THIS SCRIPT IS THE ORIGINAL WORK OF GLAVE.
;Edited by [xero].
;Items added:
;Mana Management toggle
;Pet Attacking toggle
;There is no aggro checks for anything, but its not designed to be a bot! Deal with aggro yourself ^_^
variable(global) bool stopped
variable(global) string pauseText="Paused"
variable(global) string petText="Pet ON"
variable(global) string manaText="Mana ON"
function atexit()
{
ui -unload singledot.xml
echo Singledot exiting...
}
function manacheck()
{
if ${Me.PctHPs} > 85 && ${Me.PctMana} < 60 && ${Spell[Life Tap](exists)} && ${Me.Action[Life Tap].Usable}
{
Cast "Life Tap"
wait 10
return
}
if ${Me.Pet(exists)} && ${Spell[Dark Pact](exists)} && ${Me.Action[Dark Pact].Usable} && ${Me.PctMana} < 55 && ${Me.Pet.PctMana} > 10
{
Cast "Dark Pact"
wait 10
}
}
function sanity(string sanitySpell)
{
if ${Target(exists)} && !${Target.Dead}
{
Cast "${sanitySpell}"
waitframe
}
while (${Me.Casting} || ${Me.GlobalCooldown}) && !${Target.Dead} && !${Me.Dead}
{
waitframe
}
}
function boltcheck()
{
if ${Me.Buff["Shadow Trance"](exists)} && ${Me.Action["Shadow Bolt"].Usable} && ${Target(exists)} && !${Target.Dead}
{
call sanity "Shadow Bolt"
waitframe
}
}
function demonarmor()
{
if !${Me.Buff[Demon Skin](exists)} && !${Me.Buff[Demon Armor](exists)}
{
if ${Me.Level} < 20
{
Cast "Demon Skin"
wait 15
}
elseif ${Me.Level} >= 20
{
Cast "Demon Armor"
wait 15
}
}
}
function pet()
{
if ${Target(exists)} && !${Target.Dead} && ${Target.Distance} < 30 && ${Target.Attackable}
{
if ${Me.Pet(exists)}
{
wowscript PetAttack()
}
}
}
function dots()
{
declare ShardList guidlist local
if ${Target(exists)} && !${Target.Dead} && ${Target.Distance} < 30 && ${Target.Attackable}
{
if !${Target.Buff[Immolate](exists)} && ${Spell[Immolate](exists)} && ${Me.Action[Immolate].Usable} && ${Target.PctHPs} > 40
{
call sanity "Immolate"
wait 4
return
}
if !${Target.Buff[Corruption](exists)} && ${Spell[Corruption](exists)} && ${Me.Action[Corruption].Usable}
{
call sanity "Corruption"
return
}
if !${Target.Buff[Curse of Agony](exists)} && ${Spell[Curse of Agony](exists)} && ${Me.Action[Curse of Agony].Usable}
{
if ${Spell[Amplify Curse](exists)} && ${Me.Action[Amplify Curse].Usable}
{
call sanity "Amplify Curse"
}
call sanity "Curse of Agony"
return
}
;if !${Target.Buff[Siphon Life](exists)}&${Spell[Siphon Life](exists)}&&${Me.Action[Siphon Life].Usable}
;{
; call sanity "Siphon Life"
; return
;}
if ${Me.PctHPs} > 98 && ${Me.PctMana} < 95 && ${Spell[Life Tap](exists)} && ${Me.Action[Life Tap].Usable}
{
Cast "Life Tap"
wait 10
return
}
ShardList:Search[-items,-inventory,Soul Shard]
if ${ShardList.Count} < 10 && ${Target.PctHPs} < 30
{
call sanity "Drain Soul"
return
}
if ${Spell[Drain Life](exists)} && ${Me.Action[Drain Life].Usable} && ${Me.PctHPs} < 98
{
call sanity "Drain Life"
}
if ${Me.PctHPs} > 98 && ${Me.PctMana} < 95 && ${Spell[Life Tap](exists)} && ${Me.Action[Life Tap].Usable}
{
Cast "Life Tap"
wait 10
return
}
}
}
function main()
{
declare AutoFace bool script TRUE
declare onOff bool script TRUE
declare Pet bool script TRUE
declare mana bool script TRUE
UI -load wowskin/wowskin.xml
UI -load -skin wowskin "singledot.xml"
stopped:Set[0]
echo SingleDot by glave
echo Edited by [xero], Industrial.
while !${stopped}
{
while !${Me.Mount(exists)} && !${Me.Sitting} && !${Me.Dead}
{
if ${mana} && ${onOff} || !${onOff}
{
manaText:Set["Mana ON"]
call manacheck
call boltcheck
call demonarmor
}
elseif !${mana} && ${onOff} || !${onOff}
{
manaText:Set["Mana OFF"]
call boltcheck
call demonarmor
}
if !${onOff} && ${Pet}
{
pauseText:Set["Running"]
petText:Set["Pet ON"]
call pet
call dots
wait 4
}
elseif !${onOff} && !${Pet}
{
pauseText:Set["Running"]
petText:Set["Pet OFF"]
call dots
wait 4
}
else
{
pauseText:Set["Paused"]
}
}
}
}