ScriptUO

Official ScriptUO EasyUO Scripts => Submit your Script => Topic started by: razeial on August 03, 2012, 01:06:19 AM

Title: Raz's Magery Justice Gainer
Post by: razeial on August 03, 2012, 01:06:19 AM
I know there are a few justice gainers out there already, some that do multiple skills, but none of them fit my needs, so I wrote this. This script works with magery only. The Auto-Res script was written by Genesis.

Code: [Select]
;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;
; Script Name: Raz's Magery Justice Gainer                                                  ;
; Author: Razeial                                                                           ;
; Version: 1.0                                                                              ;
; Purpose: Trains Justice on a mage                                                         ;
; Instructions: Press Play!                                                                 ;
;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;
;===========================================================================================;
; SET UP
;===========================================================================================;
set %setup #false
set %PosX #charposx - 1
set %PosY #charposy + 2
;===========================================================================================;
; DO NOT EDIT BELOW THIS LINE                                                               ;
;===========================================================================================;
start:
if %setup = #false
   continue
else
   goto mainloop
menu hideeuo
menu hide
event macro 8 1
event macro 8 2
event macro 8 3
display Target your red.
set #targcurs 1
while #targcurs = 1
      {
       wait 0
      }
set %red #lTargetID
;
mainloop:
finditem %red G_8
if #findcnt < 1
   {
    sound
    display Hey dummy! Where is your red?? Get a red and resume the script!
    pause
    goto mainloop
   }
repeat
if #mana < 23
   {
    repeat
    wait 0
    #enemyhits
    until #mana > 23

   }
set %setup #true
set %jstart #jindex
event macro 15 36
target 5s
event macro 22 0
wait 2s
set %jend #jindex
gosub CheckFizzle1
until #enemyhits = N/A || #enemyhits = < 0
wait 1s
gosub res
wait 420s
goto mainloop
;===================================================================;
;SUB RES                                                            ;
;===================================================================;
SUB res
#enemyhits
wait 5
if #enemyhits <> N/A || #enemyhits >= 0
   goto mainloop
if #mana < 24
   {
    repeat
    wait 0
    until #mana >= 24
   }
set #findid %red
finditem %red
event pathfind #findx #findy #charposz
wait 1s
set %jstart2 #jindex
event macro 15 58
target 5s
event macro 22 0
wait 10
set %jend2 #jindex
wait 10
gosub NoMana
wait 10
gosub CheckFizzle2
wait 10
gosub CheckDead
wait 10
gosub NoGain
wait 10
move %PosX %PosY 0 4s
wait 10
return
;===================================================================;
;SUB NoMana                                                         ;
;===================================================================;
SUB NoMana
scanjournal %NoMana
for %NoMana %jstart2 %jend2
{
 if Insufficient_mana in #journal
    {
      deletejournal
      gosub res
    }
return
;===================================================================;
;SUB NoGain                                                         ;
;===================================================================;
SUB NoGain
for %NoGain %jstart %jend
{
 scanjournal %NoGain
 if You_cannot_gain in #journal
 {
  sound
  display You have reached your maximum level of Justice!
  halt
 }
}
return
;===================================================================;
;SUB CheckFizzle1                                                   ;
;===================================================================;
SUB CheckFizzle1
for %CheckFizzle1 %jstart %jend
{
 scanjournal %CheckFizzle1
 if the_spell_fizzles in #journal
 {
  goto mainloop
 }
}
return
;===================================================================;
;SUB CheckFizzle2                                                   ;
;===================================================================;
SUB CheckFizzle2
for %CheckFizzle2 %jstart2 %jend2
{
 scanjournal %CheckFizzle2
 if the_spell_fizzles in #journal
 {
  gosub res
 }
}
return
;===================================================================;
;SUB CheckDeath                                                 ;
;===================================================================;
SUB CheckDeath
for %CheckDeath %jstart2 %jend2
{
 scanjournal %CheckDeath
 if not_dead in #journal
 {
  goto mainloop
 }
}
return

To use, simply load the auto-res script on to your red, and my script on the character you wish to gain justice, then press play.

If people end up liking this and using it, I may (by request) add other skills to the script. Please rate it!
Title: Re: Raz's Magery Justice Gainer
Post by: alonzo104 on November 21, 2012, 08:54:58 AM
The Auto rez portion of this works fine. 

The Magery Justice Gainer 1.5 - does not. 
After every kill it has troubles re locating the target you selected, so it prompts you to target your red again.  Not a huge deal, but make the script impossible to un-attend. 

I always script when I'm at the pc, so its not that big of a deal.  It just gives me that friendly reminder I can kill the red again. 
Title: Re: Raz's Magery Justice Gainer
Post by: Einstein on November 21, 2012, 01:39:22 PM
Well - it is one that works like a charm

http://www.scriptuo.com/index.php?topic=1748.0 (http://www.scriptuo.com/index.php?topic=1748.0)