Module: Lich::Gemstone::Overwatch::Observer::Term

Defined in:
documented/gemstone/overwatch.rb

Constant Summary collapse

HIDING =

Patterns for creatures entering hiding

Regexp.union(
  /<pushBold\/>\w+ <a exist="\d+" noun="\w+">[^<]+<\/a><popBold\/> slips into hiding\./,
  /flies out of the shadows toward you\!/,
  /A faint silvery light flickers from the shadows\./,
  /Suddenly, a tiny shard of jet black crystal flies from the shadows toward you!/,
  /With a barely audible hiss, <pushBold\/>\w+ <a exist="\d+" noun=" ?\w+">[^<]+<\/a><popBold\/> fades into the surroundings\./,
  /With a sibilant exhalation, <pushBold\/>\w+ <a exist="\d+" noun=" ?\w+">[^<]+<\/a><popBold\/> slips into the shadows\./,
  /flies out of the shadows toward <a exist="\-\d+" noun="\w+">[^<]+<\/a>\!/,
  /flies out of the shadows toward <pushBold\/>\w+ <a exist="\d+" noun="\w+">[^<]+<\/a><popBold\/>\!/,
  /<pushBold\/>\w+ <a exist="\d+" noun=" ?\w+">[^<]+<\/a><popBold\/> darts into the shadows\./,
  /As you move to attack <pushBold\/>\w+ <a exist="\d+" noun=" ?\w+">[^<]+<\/a><popBold\/>, <pushBold\/>\w+ <a exist="\d+" noun=" ?\w+">[^<]+<\/a><popBold\/> shrinks away from you, baring sharpened teeth as <pushBold\/><a exist="\d+" noun=" ?\w+">\w+<\/a><popBold\/> darts into the shadows!/,
  /As you move to attack <pushBold\/>\w+ <a exist="\d+" noun=" ?\w+">[^<]+<\/a><popBold\/>, <pushBold\/><a exist="\d+" noun=" ?\w+">\w+<\/a><popBold\/> disperses into roiling shadows!/,
  /Something stirs in the shadows\./,
  /The figure quickly disappears from view\./,
  /<pushBold\/>\w+ <a exist="\d+" noun=" ?\w+">[^<]+<\/a><popBold\/> blends with the shadows, moving too swiftly for the eye to follow\./,
  /You notice the hiding place of <pushBold\/>\w+ <a exist="\d+" noun=" ?\w+">[^<]+<\/a><popBold\/>, but do not reveal your hidden position./
)
REVEALED_DISCOVERY =

Patterns for creatures being revealed from hiding

/<pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> is revealed from hiding\./
REVEALED_FORCED =
/<pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> is forced from hiding\!/
REVEALED_COMES_OUT =
/<pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> comes out of hiding\./
REVEALED_LEAPS_OUT =
/<pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> leaps out of <pushBold\/><a exist="\d+" noun="\w+">\w+<\/a><popBold\/> hiding place\!/
REVEALED_SUDDENLY_LEAPS =
/<pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> suddenly leaps from <pushBold\/><a exist="\d+" noun=" ?\w+">\w+<\/a><popBold\/> hiding place\!/
REVEALED_SHADOWS_MELT =
/The shadows melt away to reveal <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/>!/
REVEALED_YOU_DISCOVER =
/You discover the hiding place of <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/>\!/
REVEALED_YOU_REVEAL =
/You reveal <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> from hiding\!/
REVEALED_WALL_THORNS =
/The thorny barrier surrounding you blocks the attack from the <pushBold\/><a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/>\!/
REVEALED_FLAMING_AURA =
/The flaming aura surrounding you lashes out at <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/>, who is forced into view!/
REVEALED_AC_CAT =

Animal companion reveals

/<pushBold\/>\w+ <a exist="\d+" noun="\w+">[^<]+<\/a><popBold\/> leaps suddenly forward, uncovering <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/>, who was hidden\!/
REVEALED_AC_CANINE =
/<pushBold\/>\w+ <a exist="\d+" noun="\w+">[^<]+<\/a><popBold\/> takes a pointed step forward, revealing <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/>, who was hidden\!/
REVEALED_AC_AVIAN =
/<pushBold\/>\w+ <a exist="\d+" noun=" ?\w+">[^<]+<\/a><popBold\/> dives ahead while flapping <pushBold\/><a exist="\d+" noun="\w+">\w+<\/a><popBold\/> wings, exposing <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/>, who was hidden\!/
REVEALED_STALKER_BITE =

Kiramon stalker specific reveals

/Without warning, <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> glides from the shadows and aims a preternaturally swift bite at you\!/
REVEALED_STALKER_STINGER =
/<pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> twists fluidly to spear you with <pushBold\/><a exist="\d+" noun=" ?\w+">\w+<\/a><popBold\/> barbed stinger\!/
REVEALED_STALKER_SLASH =
/Without warning, <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> glides from the shadows and skitters mercilessly forward to slash at you with a razor-sharp foreleg\!/
REVEALED_STALKER_INTERPOSE =
/As you attempt to hide, <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> glides past you in a single fluid motion, interposing between you and the safety of the shadows\./
REVEALED_STALKER_MISS =
/Caught unaware, you can only stare in fascination as <pushBold\/><a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">\w+<\/a><popBold\/> manages to completely miss you while nearly dropping <pushBold\/><a exist="\d+" noun=" ?\w+">\w+<\/a><popBold\/>  in the process\./
SILENT_CUTTHROAT =

Silent strike patterns - attacks that may result in immediate rehiding

/<pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> springs upon you from behind and attempts to grasp you by the chin while bringing <pushBold\/><a exist="\d+" noun=" ?\w+">\w+<\/a><popBold\/> <a exist="\d+" noun="[^"]+">[^<]+<\/a> up to slit your throat\!/
SILENT_CANNIBAL_SWING =
/With an ululating shriek, <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> leaps from the shadows and hurtles at you, swinging wildly with a <a exist="\d+" noun="[^"]+">[^<]+<\/a>!/
SILENT_CANNIBAL_GRAPPLE =
/With an ululating shriek, <pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> leaps from the shadows and throws <pushBold\/><a exist="\d+" noun="[^"]+">(?:his|her)<\/a><popBold\/> wiry arms around you, fueled by panicked hunger!/
SILENT_LEAP_ATTACK =
/<pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> leaps from hiding to attack\!/
SILENT_SUBDUE =
/<pushBold\/>\w+ <a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">(?<name>[^<]+)<\/a><popBold\/> springs upon you from behind and aims a blow to your head\!/
SILENT_STALKER_SAVAGE =
/Catching you unaware, <pushBold\/><a exist="(?<id>\d+)" noun=" ?(?<noun>\w+)">\w+<\/a><popBold\/> carves into you with cruel and ruthless savagery\!/
ANY_REVEALED =

Combined patterns for efficient matching

Regexp.union(
  REVEALED_DISCOVERY,
  REVEALED_FORCED,
  REVEALED_COMES_OUT,
  REVEALED_LEAPS_OUT,
  REVEALED_SUDDENLY_LEAPS,
  REVEALED_SHADOWS_MELT,
  REVEALED_YOU_DISCOVER,
  REVEALED_YOU_REVEAL,
  REVEALED_WALL_THORNS,
  REVEALED_FLAMING_AURA,
  REVEALED_AC_CAT,
  REVEALED_AC_CANINE,
  REVEALED_AC_AVIAN,
  REVEALED_STALKER_BITE,
  REVEALED_STALKER_STINGER,
  REVEALED_STALKER_SLASH,
  REVEALED_STALKER_INTERPOSE,
  REVEALED_STALKER_MISS
)
ANY_SILENT_STRIKE =
Regexp.union(
  SILENT_CUTTHROAT,
  SILENT_CANNIBAL_SWING,
  SILENT_CANNIBAL_GRAPPLE,
  SILENT_LEAP_ATTACK,
  SILENT_SUBDUE,
  SILENT_STALKER_SAVAGE
)
ANY =
Regexp.union(HIDING, ANY_REVEALED, ANY_SILENT_STRIKE)