Lich:Thaumaturge Tome Script: Difference between revisions

The official GemStone IV encyclopedia.
Jump to navigation Jump to search
No edit summary
m (Added the third-party template to this script page.)
 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{3rd-party}}
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. You will need to
This lich script was written with the help of Tysong. Its 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.


<pre{{log2}}>
<pre{{log2}}>
Line 16: Line 17:
def self.feed
def self.feed
waitrt?
waitrt?
result = dothistimeout "put ##{GameObj.left_hand.id} in my jewel tome", 2, /lurches forward and splays its covers before slapping them shut around the|Apparently the tome is full./
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./
if result =~ /Apparently the tome is full./
fput "put ##{GameObj.left_hand.id} in #{Vars.scrollsack}"
fput "put ##{GameObj.left_hand.id} in #{Vars.scrollsack}"

Latest revision as of 10:56, 11 June 2023

Lich:Thaumaturge Tome Script is a third party script and is not maintained by Simutronics. Simutronics is not responsible for the accuracy of the information presented on this page, nor is it liable for issues stemming from the use of the application on players' personal devices.

This lich script was written with the help of Tysong. Its 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