closed
p.s. i no longer publish my scripts on uof forum
					p.s. i no longer publish my scripts on uof forum
set %nextss 0
set %blesslength 135000
set %nextbless 0
set %scan_journal_line #jindex
loop:
      if #mana >= 23
      {
         event macro 15 115
         wait 15
      }
      if #systime > %nextss && #mana > 10
      {
        event macro 13 32
        set %nextss #systime + 11000
        wait 20
      }
      if #hits < ( #maxhits - 10 )
      {
        gosub heal
      }
      if #mana < 23
      {
        gosub med
      }
      if #systime > %nextbless && #mana > 10
      {
          event macro 15 16
          target 30
          event macro 23 0
          set %nextbless #systime + %blesslength
      }
goto loop
    
sub heal
    repeat
          if C in #CHARSTATUS
          {
              set #targcurs 0
              event macro 15 10
              target 15
              event macro 23 0
          }
          else
          {
               set #targcurs 0
               event macro 15 3
               target 12
               event macro 23 0
           }
    until #hits > ( #MAXHITS - 3 )
return
sub med
med:
wait 4
if #mana > ( #maxmana - 10 )
{
 set %scan_journal_line #jindex + 1
 return
}
event macro 13 46
wait 20
for %jrnl %scan_journal_line #jindex
{
    scanjournal %jrnl
    if #mana = #maxmana
    {
       return
    }
    if enter in #journal && : notin #journal
    {
                   while #mana < ( #maxmana - 10 )
                   {
                       wait 1
                   }
                   set %scan_journal_line #jindex + 1
                   return
    }
    if peace in #journal && notin #journal
    {
       set %scan_journal_line #jindex + 1
       return
    }
}
set %scan_journal_line #jindex + 1
goto med
set #lpc 1000
set %nextss 0
set %blesslength 135000
set %nextbless 0
set %scan_journal_line #jindex
loop:
      if #mana >= 23
      {
         event macro 15 107
         wait 30
      }
      if #systime > %nextss && #mana > 10
      {
        event macro 13 32
        set %nextss #systime + 11000
        wait 20
      }
      if #hits < ( #maxhits - 10 )
      {
        gosub heal
      }
      if #mana < 23
      {
        gosub med
      }
      if #systime > %nextbless && #mana > 10
      {
          event macro 15 16
          target 30
          event macro 23 0
          set %nextbless #systime + %blesslength
      }
goto loop
    
sub heal
    repeat
          if C in #CHARSTATUS
          {
              set #targcurs 0
              event macro 15 10
              target 15
              event macro 23 0
          }
          else
          {
               set #targcurs 0
               event macro 15 3
               target 12
               event macro 23 0
           }
    until #hits > ( #MAXHITS - 3 )
return
sub med
med:
wait 4
if #mana > ( #maxmana - 10 )
{
 set %scan_journal_line #jindex + 1
 return
}
event macro 13 46
wait 20
for %jrnl %scan_journal_line #jindex
{
    scanjournal %jrnl
    if #mana = #maxmana
    {
       return
    }
    if enter in #journal && : notin #journal
    {
                   while #mana < ( #maxmana - 10 )
                   {
                       wait 1
                   }
                   set %scan_journal_line #jindex + 1
                   return
    }
    if peace in #journal && notin #journal
    {
       set %scan_journal_line #jindex + 1
       return
    }
}
set %scan_journal_line #jindex + 1
goto med
set #lpc 1000
set %nextss 999999999999
set %blesslength 9999999999999
set %nextbless 0
set %scan_journal_line #jindex
loop:
      if #mana >= 23
      {
         event macro 15 113
         wait 35
      }
      if #hits < ( #maxhits - 10 )
      {
        gosub heal
      }
      if #mana < 23
      {
        gosub med
      }
goto loop
    
sub heal
    repeat
          if C in #CHARSTATUS
          {
              set #targcurs 0
              event macro 15 10
              target 15
              event macro 23 0
          }
          else
          {
               set #targcurs 0
               event macro 15 3
               target 12
               event macro 23 0
           }
    until #hits > ( #MAXHITS - 3 )
return
sub med
med:
wait 4
if #mana > ( #maxmana - 10 )
{
 set %scan_journal_line #jindex + 1
 return
}
event macro 13 46
wait 20
for %jrnl %scan_journal_line #jindex
{
    scanjournal %jrnl
    if #mana = #maxmana
    {
       return
    }
    if enter in #journal && : notin #journal
    {
                   while #mana < ( #maxmana - 10 )
                   {
                       wait 1
                   }
                   set %scan_journal_line #jindex + 1
                   return
    }
    if peace in #journal && notin #journal
    {
       set %scan_journal_line #jindex + 1
       return
    }
}
set %scan_journal_line #jindex + 1
goto med
set #lpc 1000
set %ssdelay 10200
set %sscastlenght 1050
set %nextss 0
set %nextcast 0
set %blesslength 145000 ; how often u need to cast bless in milisec
set %nextbless 0
set %scan_journal_line #jindex
loop:
      if #mana >= 23 && #hits >= 40 && #systime > %nextcast
      {
         event macro 15 109
         wait 15
         event macro 23 0
      }
      if #systime > %nextss && #mana > 10 && #hits < ( #maxhits - 20 ) && #systime > %nextcast
      {
        event macro 13 32
        set %nextss #systime + %ssdelay
        set %nextcast #systime + %sscastlenght
      }
      if #hits < 40
      {
        gosub heal
      }
     if #systime > %nextss && #mana < 23 && #hits > 40 && #systime > %nextcast
      {
        gosub med
      }
      if #systime > %nextbless && #mana > 10 && #systime > %nextcast
      {
          event macro 15 16
          target 30
          event macro 23 0
          set %nextbless #systime + %blesslength
      }
sleep 10
goto loop
    
sub heal
    repeat
          if #systime > %nextss && #mana > 10 && #hits < ( #maxhits - 20 ) && #systime > %nextcast
          {
            event macro 13 32
            set %nextss #systime + %ssdelay
            set %nextcast #systime + %sscastlenght
          }
          if C in #CHARSTATUS
          {
              set #targcurs 0
              event macro 15 10
              target 15
              event macro 23 0
          }
          else
          {
               set #targcurs 0
               event macro 15 3
               target 12
               event macro 23 0
           }
    until #hits > ( #MAXHITS  * 2 / 3 )
return
sub med
med:
if #hits < 40
{
  gosub heal
}
if #mana = ( #maxmana - 10 )
{
 set %scan_journal_line #jindex + 1
 return
}
set %scan_journal_line #jindex
event macro 13 46
wait 20
set %jindex #jindex
for %jrnl %scan_journal_line %jindex
{
    scanjournal %jrnl
    if #mana = ( #maxmana - 10 )
    {
       set %scan_journal_line %jindex + 1
       return
    }
    if enter in #journal && : notin #journal
    {
                   set %nextss #systime + %ssdelay
                   while #mana < ( #maxmana - 10 )
                   {
                       if #hits < 40
                       {
                        gosub heal
                        set %scan_journal_line %jindex + 1
                        return
                       }
                       if %scan_journal_line <= %jindex
                       {
                          for %jrnl2 %scan_journal_line %jindex
                          {
                              scanjournal %jrnl2
                              if stop_meditating in #journal && : notin #journal
                              {
                                set %scan_journal_line %jindex + 1
                                return
                              }
                          }
                          set %scan_journal_line %jindex + 1
                          set %jindex #jindex
                       }
                       else
                       {
                           set %jindex #jindex
                       }
                       sleep 10
                   }
                   set %scan_journal_line %jindex + 1
                   return
    }
    if peace in #journal && notin #journal
    {
       set %scan_journal_line %jindex + 1
       return
    }
}
set %scan_journal_line %jindex + 1
goto med
set %lmc 26 ; set your lmc
set %needmanaforcast ( 50 * ( 100 - %lmc ) / 100 )
set %needtimetocast 3000  ; milisec
set %blesslength 145000 ;milisec
set %scan_journal_line #jindex
set %nextbless 0
set %nextcast 0
set #lpc 1000
loop:
if #hits < ( #maxhits - 3 )
{
 gosub heal
}
if #systime > %nextbless && #mana > 10 && #systime > %nextcast
{
   event macro 15 16
   target 30
   event macro 23 0
   set %nextbless #systime + %blesslength
   set %nextcast #systime + 200
}
if #mana >= %needmanaforcast && #systime > %nextcast
{
      event macro 15 56
      set %nextcast #systime + %needtimetocast
}
if #mana < %needmanaforcast
{
 gosub med
}
sleep 10
goto loop
sub med
med:
if #hits < ( #maxhits - 3 )
{
  gosub heal
}
if #mana = ( #maxmana - 10 )
{
 set %scan_journal_line #jindex + 1
 return
}
set %scan_journal_line #jindex
event macro 13 46
wait 20
set %jindex #jindex
for %jrnl %scan_journal_line %jindex
{
    scanjournal %jrnl
    if #mana = ( #maxmana - 10 )
    {
       set %scan_journal_line %jindex + 1
       return
    }
    if enter in #journal && : notin #journal
    {
                   while #mana < ( #maxmana - 10 )
                   {
                       if #hits < ( #maxhits - 20 )
                       {
                        gosub heal
                        set %scan_journal_line %jindex + 1
                        return
                       }
                       if %scan_journal_line <= %jindex
                       {
                          for %jrnl2 %scan_journal_line %jindex
                          {
                              scanjournal %jrnl2
                              if stop_meditating in #journal && : notin #journal
                              {
                                set %scan_journal_line %jindex + 1
                                return
                              }
                          }
                          set %scan_journal_line %jindex + 1
                          set %jindex #jindex
                       }
                       else
                       {
                           set %jindex #jindex
                       }
                       sleep 10
                   }
                   set %scan_journal_line %jindex + 1
                   return
    }
    if peace in #journal && notin #journal
    {
       set %scan_journal_line %jindex + 1
       return
    }
}
set %scan_journal_line %jindex + 1
goto med
sub heal
    repeat
          if C in #CHARSTATUS
          {
              set #targcurs 0
              event macro 15 10
              target 15
              event macro 23 0
          }
          else
          {
               set #targcurs 0
               event macro 15 3
               target 12
               event macro 23 0
           }
    until #hits > ( #MAXHITS - 3 )
return
							
						set %scan_journal_line #jindex
loop:
repeat
      event macro 15 26
      target
      event macro 23 0
      if #systime > %nextss
      {
      event macro 13 32
      set %nextss #systime + 11000
      }
until #mana < 10 || #hits < 40
if #mana < 10
{
 gosub med
}
if #hits < 40
{
 gosub heal
}
goto loop
sub med
med:
if #mana = #maxmana
{
 set %scan_journal_line #jindex + 1
 return
}
event macro 13 46
wait 20
for %jrnl %scan_journal_line #jindex
{
    scanjournal %jrnl
    if #mana = #maxmana
    {
       return
    }
    if enter in #journal && : notin #journal
    {
                   while #mana < #maxmana
                   {
                       wait 2
                   }
                   set %scan_journal_line #jindex + 1
                   return
    }
    if peace in #journal && notin #journal
    {
       set %scan_journal_line #jindex + 1
       return
    }
}
set %scan_journal_line #jindex + 1
goto med
set %scan_journal_line #jindex
set %nextss 0
loop:
repeat
      event macro 15 26
      target
      event macro 23 0
      if #systime > %nextss
      {
      event macro 13 32
      set %nextss #systime + 11000
      }
until #mana < 10 || #hits < 40
if #mana < 10
{
 gosub med
}
if #hits < 40
{
 gosub heal
}
goto loop
sub med
med:
if #mana = #maxmana
{
 set %scan_journal_line #jindex + 1
 return
}
event macro 13 46
wait 20
for %jrnl %scan_journal_line #jindex
{
    scanjournal %jrnl
    if #mana = #maxmana
    {
       return
    }
    if enter in #journal && : notin #journal
    {
                   while #mana < #maxmana
                   {
                       wait 2
                   }
                   set %scan_journal_line #jindex + 1
                   return
    }
    if peace in #journal && notin #journal
    {
       set %scan_journal_line #jindex + 1
       return
    }
}
set %scan_journal_line #jindex + 1
goto med
set %scan_journal_line #jindex
loop:
repeat
      event macro 15 35
      wait 25
until #mana < 10 || #hits < 40
if #mana < 10
{
 gosub med
}
if #hits < 40
{
 gosub heal
}
goto loop
sub med
med:
if #mana = #maxmana
{
 set %scan_journal_line #jindex + 1
 return
}
event macro 13 46
wait 20
for %jrnl %scan_journal_line #jindex
{
    scanjournal %jrnl
    if #mana = #maxmana
    {
       return
    }
    if enter in #journal && : notin #journal
    {
                   while #mana < #maxmana
                   {
                       wait 2
                   }
                   set %scan_journal_line #jindex + 1
                   return
    }
    if peace in #journal && notin #journal
    {
       set %scan_journal_line #jindex + 1
       return
    }
}
set %scan_journal_line #jindex + 1
goto med
set %scan_journal_line #jindex
set %nextss 0
loop:
repeat
      event macro 15 43
      target 3s
      event macro 23 0
until #mana < 20 || #hits < 40
if #mana < 20
{
 gosub med
}
if #hits < 40
{
 gosub heal
}
goto loop
sub med
med:
if #mana = #maxmana - 5
{
 set %scan_journal_line #jindex + 1
 return
}
set %scan_journal_line #jindex
event macro 13 46
wait 20
set %jindex #jindex
for %jrnl %scan_journal_line %jindex
{
    scanjournal %jrnl
    if #mana = #maxmana
    {
       set %scan_journal_line %jindex + 1
       return
    }
    if enter in #journal && : notin #journal
    {
                   while #mana < #maxmana
                   {
                       wait 2
                   }
                   set %scan_journal_line %jindex + 1
                   return
    }
    if peace in #journal && : notin #journal
    {
       set %scan_journal_line %jindex + 1
       return
    }
}
set %scan_journal_line %jindex + 1
goto med
set %scan_journal_line #jindex
set %nextss 0
loop:
repeat
      event macro 15 53
      target 3s
      event macro 23 0
until #mana < 23 || #hits < 40
if #mana < 23
{
 gosub med
}
if #hits < 40
{
 gosub heal
}
goto loop
sub med
med:
if #mana = #maxmana - 5
{
 set %scan_journal_line #jindex + 1
 return
}
set %scan_journal_line #jindex
event macro 13 46
wait 20
set %jindex #jindex
for %jrnl %scan_journal_line %jindex
{
    scanjournal %jrnl
    if #mana = #maxmana - 10
    {
       set %scan_journal_line %jindex + 1
       return
    }
    if enter in #journal && : notin #journal
    {
                   while #mana < #maxmana - 10
                   {
                       wait 2
                   }
                   set %scan_journal_line %jindex + 1
                   return
    }
    if peace in #journal && notin #journal
    {
       set %scan_journal_line %jindex + 1
       return
    }
}
set %scan_journal_line %jindex + 1
goto med
set #lpc 1000
set %lmc 26 ; set your lmc
set %needmanaforcast 50 * ( 100 - %lmc ) / 100 + 1
set %blesslength 145000 ; how often u need to cast bless in milisec
set %nextbless 0
set %scan_journal_line #jindex
loop:
      if #hits < ( 4 / 5 * #maxhits )
      {
        gosub heal
      }
      if #mana >= %needmanaforcast
      {
         set %delay #systime + 4000
         set %line #jindex
         set %linen #jindex
         set %fl 0
         event macro 15 614
         repeat
           sleep 10
           if %line <> %linen
           {
              for %i %line %linen
              {
                if %fl = 0
                {
                  scanjournal %i
                  if mana in #journal && ( #charname , : ) in #journal
                  {
                    str count #journal :
                    if #strres = 1
                    {
                      set %fl 1
                    }
                  }
                }
              }
              set %line %linen + 1
            {
            else
            {
               set %linen #jindex
            }
         until %fl = 1 || #targcurs = 1 || #systime >= %delay
         if #targcurs = 1
         {
           event macro 23 0
         }
      }
     if #mana < %needmanaforcast
      {
        gosub med
      }
     if #systime > %nextbless && #mana > 10
      {
          event macro 15 16
          target 30
          event macro 23 0
          set %nextbless #systime + %blesslength
      }
sleep 10
goto loop
    
sub med
set %scan_journal_line #jindex
med:
if #hits < ( #maxhits - 3 )
{
  gosub heal
}
if #mana = ( #maxmana - 10 )
{
 set %scan_journal_line #jindex + 1
 return
}
event macro 13 46
wait 20
set %jindex #jindex
if %scan_journal_line <= %jindex
{
  for %jrnl %scan_journal_line %jindex
  {
    scanjournal %jrnl
    if #mana = ( #maxmana - 10 )
    {
       set %scan_journal_line %jindex + 1
       return
    }
    if enter in #journal && : notin #journal
    {
                   while #mana < ( #maxmana - 10 )
                   {
                       if #hits < ( 4 / 5 * #maxhits )
                       {
                        gosub heal
                        set %scan_journal_line %jindex + 1
                        return
                       }
                       if %scan_journal_line <= %jindex
                       {
                          for %jrnl2 %scan_journal_line %jindex
                          {
                              scanjournal %jrnl2
                              if stop_meditating in #journal && : notin #journal
                              {
                                set %scan_journal_line %jindex + 1
                                return
                              }
                          }
                          set %scan_journal_line %jindex + 1
                          set %jindex #jindex
                       }
                       else
                       {
                           set %jindex #jindex
                       }
                       sleep 10
                   }
                   set %scan_journal_line %jindex + 1
                   return
    }
    if peace in #journal && notin #journal
    {
       set %scan_journal_line %jindex + 1
       return
    }
    set %scan_journal_line %jindex + 1
    set %jindex #jindex
  }
}
else
{
  set %jindex #jindex
}
goto med
sub heal
    repeat
          if C in #CHARSTATUS
          {
              set #targcurs 0
              event macro 15 10
              target 15
              event macro 23 0
          }
          else
          {
               set #targcurs 0
               event macro 15 3
               target 12
               event macro 23 0
           }
    until #hits > ( #MAXHITS - 3 )
return

Commenta