Lich:Thaumaturge Tome Script

The official GemStone IV encyclopedia.
Revision as of 07:15, 30 May 2023 by HOST-GSKEBECHET (talk | contribs) (HOST-GSKEBECHET moved page Thaumaturge Tome Script to Lich:Thaumaturge Tome Script: Renaming article to conform with updated guidelines for articles associated with Lich scripts.)
Jump to navigation Jump to search
This page has been recommended for deletion.

See its talk page for reasons why. If the page obviously does not meet the criteria for deletion, or if you intend on fixing this article, please remove this template from the article. Of course, all discussions should take place in the page's talk page.

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