Lach (script)

From Elanthipedia
Jump to navigation Jump to search
Lach (script)
Category travel
Front-end StormFront
Author AF


###########################################################################
# LACH SCRIPT
#
# Modified from another script by AF, Original Author Unknown
# Last Modified 4/10/2014
#
# SF Script used for entering/exiting Lanky Grey Lach hunting area.
# http://elanthipedia.org/w/index.php/RanikMap64d
#
# WILL SOLVE THE PUZZLE, DO NOT RUN IF YOU WANT TO SOLVE IT ON YOUR OWN
#
# Valid starting locations:
#   - End of Kraelyst Travel Script to Shard (.travel shard)
#   - Bier for start of the puzzle
#   - Armoire for exiting lach area
#   - At the exit of the armoire
# 
# Variables created and deleted:
#   symbolLach - stores the stellar symbol for the puzzle
#   lightMatch - string match for the light aspect
#   darkMatch - string match for the dark aspect
#   return - label to return after completing a portion of the puzzle
#
# NOTE: Script does not retreat in case you run into issues
# at the entrance and/or exit of the Church
#
# If any errors are found, please note it in the discussion page of this
# wiki page and a correction will be implemented.
#
########################################################################### 
if_1 goto %1

look:
  match shard2church_1 [Southern Trade Route, Road to Shard]
  match church2shard [Country Church, Cloakroom]
  match openArmoire [Abyssal Seed, Hierophant's Chamber]
  match turnCrank [Mausoleum, Biers]
  match look /(\.\.\.wait|Sorry\,\syou\smay)/
  put l
matchwait

###########################################################################

### GOING TO THE CHAPEL ###

shard2church_1:
  move ne
  move nw
  move nw
  move n
  move n
  move e
  move e
  move ne
  move e
  move e
  move n
  move ne
  move ne
  move ne
  move n
  move ne
  move ne
  move n
  move go bridg
  move e
goto searchPath

searchPath:
  match goPath You find a
  matchre searchPath /(\.\.\.wait|Sorry\,\syou\smay)/
  put sear
matchwait
  
goPath:
  match shard2church_2 [Darkmist Moor]
  matchre goPath /(\.\.\.wait|Sorry\,\syou\smay)/
  put go path
matchwait

shard2church_2:
  move se
  move se
  move se
  move sw
  move e
  move ne
  move se
  move e
  move ne
  move nw
  move ne
  move se
  move e
  move climb tree
goto peerChurch

peerChurch:
  match treeNE northeast
  match treeSE southeast
  matchre treeE /\seast(,|\.|\sand)/
  matchre peerChurch /(\.\.\.wait|Sorry\,\syou\smay)/
  put peer church
matchwait

treeNE:
  save ne
goto climbTrunk

treeSE:
  save se
goto climbTrunk

treeE:
  save e
goto climbTrunk

climbTrunk:
  match shard2church_3 [Darkmist Moor, Tamsine's Sorrow]
  matchre climbTrunk /(\.\.\.wait|Sorry\,\syou\smay)/
  put climb trunk
matchwait

shard2church_3:
  move %s
  move ne
  move go chur
  move n
  move go hall
  move go door
  move go path
  move ne
  move ne
  move e
  move se
  move sw
  move w
  move go door
  move n
  move n
goto turnCrank

### AND WE'RE GONNA DO SOME KILLING ###

###########################################################################

### START OF THE PUZZLE ###

turnCrank:
  match lookSymbol Roundtime:
  match lookSymbol but it won't budge
  match turnCrank /(\.\.\.wait|Sorry\,\syou\smay)/
  put turn crank
matchwait

lookSymbol:
  match DOLPHIN dolphin
  match PANTHER panther
  match CAT cat
  match RAM ram
  match COBRA cobra
  match WOLF wolf
  match BOAR boar
  match RAVEN raven
  match LION lion
  match WREN wren
  matchre lookSymbol /(\.\.\.wait|Sorry\,\syou\smay)/
  put l sun
  put l star
matchwait
  
RAM:
  setvariable symbolLach ram
  setvariable lightMatch flourishing rose garden
  setvariable darkMatch jagged crystalline blade
goto southCoffin

COBRA:
  setvariable symbolLach cobra
  setvariable lightMatch shattered egg
  setvariable darkMatch erupting volcano
goto southCoffin

LION:
  setvariable symbolLach lion
  setvariable lightMatch battle hounds
  setvariable darkMatch bloodstained stiletto
goto southCoffin

DOLPHIN:
  setvariable symbolLach dolphin
  setvariable lightMatch deer drinking from a flowing stream
  setvariable darkMatch great tidal wave
goto southCoffin

BOAR:
  setvariable symbolLach boar
  setvariable lightMatch image of a longbow
  setvariable darkMatch berserking barbarian
goto southCoffin

WOLF:
  setvariable symbolLach wolf
  setvariable lightMatch charred black stave
  setvariable darkMatch long flowing skirt
goto southCoffin

PANTHER:
  setvariable symbolLach panther
  setvariable lightMatch cluster of twinkling stars
  setvariable darkMatch child shivering fearfully
goto southCoffin

CAT: 
  setvariable symbolLach cat
  setvariable lightMatch grimacing woman in the throes
  setvariable darkMatch twin crossed swords
goto southCoffin

RAVEN:
  setvariable symbolLach raven
  setvariable lightMatch bowl of striped peppermint
  setvariable darkMatch shattered caravan wheel
goto southCoffin

WREN:
  setvariable symbolLach wren
  setvariable lightMatch plump opera singer
  setvariable darkMatch cracked mirror
goto southCoffin

southCoffin:
  match coffin2light Obvious
  matchre southCoffin /(\.\.\.wait|Sorry\,\syou\smay)/
  put s
matchwait

coffin2light:
  move go white tap
  setvariable return lookWheelLight
goto %return

lookWheelLight:
  match light2dark %lightMatch
  matchre pullRope /\./
  match lookWheelLight ...wait
  match lookWheelLight Sorry, you may
  put l wheel
matchwait

pullRope:
  match %return Roundtime:
  match pullRope ...wait
  match pullRope Sorry, you may
  put pull rope
matchwait

light2dark:
  move se
  move go black tap
  setvariable return lookWheelDark
goto %return

lookWheelDark:
  match dark2coffin %darkMatch
  matchre pullRope /\./
  match lookWheelLight ...wait
  match lookWheelLight Sorry, you may
  put l wheel
matchwait

pullRope:
  match %return Roundtime:
  match pullRope ...wait
  match pullRope Sorry, you may
  put pull rope
matchwait

dark2coffin:
  move sw
  move n
  put pull lever
goto lookCoffin

lookCoffin:
  match openCoffin image of the %symbolLach
  match turnCrank currently closed
  matchre lookCoffin /(\.\.\.wait|Sorry\,\syou\smay)/
  put l coffin
matchwait

openCoffin:
  matchre goCoffin /(You open|is already)/
  matchre openCoffin /(\.\.\.wait|Sorry\,\syou\smay)/
  put open coffin
matchwait

goCoffin:
  matchre arrivedCoffin /(You clamber|You must be)/
  matchre goCoffin /(\.\.\.wait|Sorry\,\syou\smay)/
  put go coffin
matchwait

### END OF THE PUZZLE ###

###########################################################################

### LEAVING THE AREA ###

openArmoire:
  matchre searchArmoire /(You open|is already)/
  matchre openArmoire /(\.\.\.wait|Sorry\,\syou\smay)/
  put open armoire
matchwait

searchArmoire:
  match goArmoire tunnel
  matchre searchArmoire /(\.\.\.wait|Sorry\,\syou\smay)/
  put search armoire
matchwait

goArmoire:
  match east2shard [Country Church, Cloakroom]
  matchre goArmoire /(\.\.\.wait|Sorry\,\syou\smay)/
  put go armoire
matchwait

east2shard:
 match church2shard Obvious
 matchre east2shard /(\.\.\.wait|Sorry\,\syou\smay)/
 put e
matchwait

church2shard:
  move go door
  move s
  move s
  move out
  move sw
  move w
  move w
  move nw
  move sw
  move se
  move sw
  move w
  move nw
  move sw
  move w
  move ne
  move nw
  move nw
  move nw
  move go path
  move w
  move go bri
  move s
  move sw
  move sw
  move s
  move sw
  move sw
  move sw
  move s
  move w
  move w
  move sw
  move w
  move w
  move s
  move s
  move se
  move se
  move sw
goto arrivedTravel

###########################################################################

arrivedCoffin:
  deleteVariable symbolLach
  deleteVariable lightMatch
  deleteVariable darkMatch
  deleteVariable return
  echo ###########################
  echo #
  echo # YOU ARE IN THE COFFIN
  echo # YOU WILL BE STUNNED AND
  echo # PRONE IN A SAFE ROOM
  echo # AT THE BOTTOM
  echo #
  echo ###########################
  waitfor crumple to the ground
  echo ############################
  echo #
  echo # YOU ARE STUNNED AND PRONE
  echo # IN A SAFE ROOM SO RELAX
  echo #
  echo ############################
exit

arrivedTravel:
  echo ###########################
  echo #
  echo # ARRIVED AT START OF
  echo # KRAELYST'S TRAVEL SCRIPT
  echo #
  echo ###########################
exit