Lich:Thaumaturge Tome Script

The official GemStone IV encyclopedia.
Revision as of 16:11, 27 March 2023 by ALLENM20 (talk | contribs)
Jump to navigation Jump to search

This lich script was written with the help of Tysong. It's purpose is to automate the feeding of various types of scrolls to the Thaumature Tome. You will need to have a SCROLLSACK set in variables.

module ThaumaturgeTome
  def self.scroll
    scroll_types = ['scroll', 'parchment', 'paper', 'papyrus', 'vellum', 'palimpsest']
    
    scroll_types.each { |type|
      waitrt?
      result = dothistimeout "get #{type} from #{Vars.scrollsack}", 2, /You slip|Get what/
      return true if result =~ /You slip/
    }
    return false
  end

  def self.feed
    waitrt?
    result = dothistimeout "put ##{GameObj.left_hand.id} in ##{GameObj.right_hand.id}", 2, /lurches forward and splays its covers before slapping them shut around the|Apparently the tome is full./
    if result =~ /Apparently the tome is full./
      fput "put ##{GameObj.left_hand.id} in #{Vars.scrollsack}"
      return false
    elsif result =~ /lurches forward and splays its covers before slapping them shut around the/
      return true
    end
    return false
  end

  def self.main
    loop do
fput "store all" if ( !righthand.nil? ) or ( !lefthand.nil? )
fput "stow all" if ( !righthand.nil? ) or ( !lefthand.nil? )
fput "get jewel tome"
      exit unless self.scroll
      exit unless self.feed
    end
  end
  
  self.main
end

See Also