Author Topic: Magery Trainer  (Read 5112 times)

0 Members and 1 Guest are viewing this topic.

Offline The ReaperTopic starter

  • Jr. Member
  • **
  • Posts: 42
  • Activity:
    0%
  • Reputation Power: 1
  • The Reaper has no influence.
  • Respect: +14
  • Referrals: 1
    • View Profile
Magery Trainer
« on: February 27, 2011, 07:53:18 AM »
0
As promised, a magery trainer. It doesn't train anything else, maybe Eval Int a little bit.

Does exactly as it says on the tin. FCR to a minimum of 4 is advisable. FC is not necessary, but is coded into the script.

I have given 2 user editted variables. The first one solves an issue where it tries to cast one spell while out of mana, small amounts of lag cause this issue. Set to 0 and try it.

The second variable is your faster casting speed as I do not wish to write an FC/FCR checker into the script.

Code: [Select]
;==================================
; Script Name: Reaper's Magery Trainer
; Author: The Reaper
; Version: 1.1
: Change Noes: Added a minimum skill check
; Client Tested with: 7.0.10.3
; EUO version tested with: 1.5.186
; Purpose: Train magery for freeshards.
; Should work on OSI servers also.
;==================================

;==================================
; Set this value to 5 if you are eperiencing
; "Insufficient mana for this spell" Issues
set %setwait 5
; Set this value to your faster casting reduction
; 1FC = 2    2FC = 5  (2FC is magery cap)
set %fc 5
; DO NOT alter below this line
;==================================

initevents
set %skilltraining mage
chooseskill %skilltraining
set %startingskill #skill
set %currentskill #skill
if #skill < 300
{
display You need to train with an NPC to 30.0 before running this script
halt
}
gosub showmenu

Loop:
gosub Choosespell
gosub Cast
gosub Checkskill
gosub Checkmana
goto Loop



sub showmenu
  menu clear
  menu window title Magery Trainer
  menu window size 180 95
  menu window color black
  menu font name arial
  menu font size 12
  menu font color Red
  menu font bgcolor black
  menu text title 5 5 MAGERY TRAINER.
  menu font size 8
  menu font color lime
  menu text mageryskill 5 25 Current skill:
  menu text gains 5 40 Total gains:
  menu text casting 5 55 Casting:
  menu font color yellow
    str len %currentskill
    str ins %currentskill #dot #strRes
    menu delete currentskill
    menu text currentskill 68 25 #strRes
    set %totalgains %currentskill - %startingskill
    str len %totalgains
    str ins %totalgains #dot #strRes
    menu delete totalgains
    menu text totalgains 68 40 #strRes
  menu font align right
  menu text credit 176 80 by The Reaper
  menu font align left
  menu show
return

sub Choosespell
if #skill = #skillcap
   {
   display You have reached your Magery Skill cap of #skill
   halt
   }
  
if #skill < 450
   {
   set %spell 16
   set %manatocast 9
   set %castdelay 10
   set %masochistic 1
   menu delete currentspell
   menu text currentspell 68 55 Bless
   return
   }

if #skill < 550
   {
   set %spell 28
   set %manatocast 11
   set %castdelay 13
   set %masochistic 1
   menu delete currentspell
   menu text currentspell 68 55 Greater Heal
   return
   }

if #skill < 650
   {
   set %spell 35
   set %manatocast 14
   set %castdelay 15
   set %masochistic 0
   menu delete currentspell
   menu text currentspell 68 55 Magic Reflection
   return
   }

if #skill < 750
   {
   set %spell 43
   set %manatocast 20
   set %castdelay 18
   set %masochistic 1
   menu delete currentspell
   menu text currentspell 68 55 Invisibility
   return
   }

if #skill < 900
   {
   set %spell 53
   set %manatocast 40
   set %castdelay 20
   set %masochistic 1
   menu delete currentspell
   menu text currentspell 68 55 Mass Dispel
   return
   }

if #skill < 1200
   {
   set %spell 56
   set %manatocast 50
   set %castdelay 23
   set %masochistic 0
   menu delete currentspell
   menu text currentspell 68 55 Earthquake
   return
   }
return

sub Cast
    event macro 15 %spell
    if %masochistic = 1
       {
       target 2s
       wait 5
       event macro 23 0
       return
       }
    wait %castdelay - %FCR
    wait 5
    return

return

sub Checkskill
  chooseskill %skilltraining
  if #skill > %currentskill
  {
    set %currentskill #skill
    sound
    str len %currentskill
    str ins %currentskill #dot #strRes
    menu delete currentskill
    menu text currentskill 68 25 #strRes
    set %totalgains %currentskill - %startingskill
    str len %totalgains
    str ins %totalgains #dot #strRes
    menu delete totalgains
    menu text totalgains 68 40 #strRes
  }
return

sub Checkmana
wait %setwait
if #mana < %manatocast
    {
    event macro 13 46
          loop2:
          if #mana < #maxmana
          {
          goto loop2
          }
    }
return

« Last Edit: March 02, 2011, 02:15:02 AM by The Reaper »