Reagent Pouch handler (gm-rpouch.tf)

This module provides utilities for reagent pouch handling, especially useful for mages and merchants. It also has a reagent pouch mangler/beautifier, which attempts to make the pouch contents more readable.

Example output (uncoloured) of looking at a reagent pouch:

This is a large pouch for the storing of reagents for spells. You can store
reagents over reboots in this. It cannot hold anything else.
Syntax: store <item> in <this>
        extract [amount] <item> from <this> take <power/standard/poor>
        set_default_reagent <this> to <power/standard/poor>
transfer <number> <reagent> from <here> to <there> [take <power level>]
Some commands allow the use of 'all' in places.
It is labeled as 'pussi'.
The label can be set with 'label' command.
  578 | Acid Blast                ( 578,   0,   0) (Olivine powder)
  477 | Acid Storm                ( 477,   0,   0) (Interlocked rings)
  436 | Blast Vacuum              ( 436,   0,   0) (Bronze marble)
  417 | Lightning Shield          ( 417,   0,   0) (Iron rod)
  397 | Armour of Aether          ( 397,   0,   0) (Highsteel disc)
  388 | Magic Eruption            ( 388,   0,   0) (Platinum hammer)
  341 | Lava Blast                ( 341,   0,   0) (Granite sphere)
  272 | Electrocution             ( 272,   0,   0) (Electrum wire)
  263 | Aura of Wind              ( 263,   0,   0) (Leather bag)
   91 | Golden Arrow              (  91,   0,   0) (Copper rod)
   71 | Shield of Detoxification  (  71,   0,   0) (Amethyst crystal)
It is surrounded by a yellow glow.
This item is in superb condition.
It looks very very heavy.

Note

Currently only POWER reagents are handled by the /rpouch commands! Any standard or poor reagents will not be touched by the code in this module.

Macro commands

<> = required argument, [] = optional argument

Table 4.23. Macro commands

Command Description
/rpouch Prints a short help text with basic syntaxes of the commands.
/rpouch check <dst pouch> from <src pouch> [in <container>] Checks and shows a list of reagents to be stocked into "dst pouch" from "src pouch" with current settings. Source pouch can optionally be in container (such as a chest).
/rpouch fill <dst pouch> from <src pouch> [in <container>] Like 'check' but instead of a list, moves reagents to "dst pouch" to match the current settings.
/rpouch move <dst pouch> from <src pouch> [in <container>] Moves ALL power reagents from "src pouch" to "dst pouch".
/rpouch set <spell> <amount> Set amount of reagents to stock for given spell. (Like "rset", but takes spell name instead.)
/rpouch rset <reagent> <amount> Set amount of given reagent to be stocked. (Like "set", but takes reagent name instead.)
/rpouch adjust <amount> ???
/rpouch all <amount> Unconditionally sets number of ALL reagents to be stocked to given amount.
/rpouch list Shows a list of current settings (e.g. how many of each reagent to stock.)