Teach Room (script): Difference between revisions

From Elanthipedia
Jump to navigation Jump to search
No edit summary
mNo edit summary
Line 5: Line 5:
}}
}}


{{RTOC}}
{{LTOC}}


This script offers to teach your ongoing class to everyone in the room. It will not work without the triggers that set the class variable.
This script offers to teach your ongoing class to everyone in the room. It will not work without the triggers that set the class variable.

Revision as of 16:57, 16 May 2016

Teach Room (script)
Category utility
Front-end Genie
Author Isharon



This script offers to teach your ongoing class to everyone in the room. It will not work without the triggers that set the class variable.

Triggers

#trigger {begins to listen to you teach the (.*) skill} {#statusbar 3 Teaching $1;#var class $1}
#trigger {^(\w+) is teaching a class on (extremely advanced|advanced|intermediate|basic|simplistic|extremely simplistic) \(compared to what you already know\) (.*)( which|, but).+You are in this class!$} {#statusbar 3 Listening to $1 teach $3}
#trigger {^(\w+) is teaching a class on(?! (extremely advanced|advanced|intermediate|basic|simplistic|extremely simplistic)) (.*)( which|, but).+You are in this class!$} {#statusbar 3 Listening to $1 teach $3}
#trigger {^(\w+) just tried to teach you\.$} {#echo >log $1 tries to teach you.}
#trigger {^All of your students have left, so you stop teaching|^Because you have no more students, your class ends|^Being unconscious, you make a lousy student, so \w+ stops teaching you|^But you aren't listening to anyone|^But you aren't teaching anyone|^No one seems to be teaching|^You stop listening to|^You stop teaching so as not to disturb the aura of quiet here|^You stop teaching\.|^Your teacher (has left|is not here), so you are no longer learning anything|cannot concentrate to teach .+ in combat\.|stops teaching and looks around quietly} {#statusbar 3 ""}
#trigger {^You are teaching a class on (.*) which} {#statusbar 3 Teaching $1;#var class $1}
#trigger {^You begin to listen to (\w+) teach the (.*) skill} {#statusbar 3 Listening to $1 teach $2}
#trigger {^You continue to instruct your students? on (.*)\.$} {#statusbar 3 Teaching $1;#var class $1}
#trigger {^You decide to take things as they come} {#send teach open}

Script (Teaches Class to Everyone)

eval players replace("$roomplayers", "Also here: ", ", ")
eval players replace("%players", " and", ",")
eval players replace("%players", ".", ", ")
eval players replacere("%players", " who is kneeling,", ",")
eval players replacere("%players", " who is lying down,", ",")
eval players replacere("%players", " who is sitting,", ",")
eval players replacere("%players", " who has a fiery visage,", ",")
eval players replacere("%players", " who has a stony visage,", ",")
eval players replacere("%players", " who is bathed in pale golden sunlight,", ",")
eval players replacere("%players", " who is behind a plexus of azure lines,", ",")
eval players replacere("%players", " who is emanating a benevolent holy aura,", ",")
eval players replacere("%players", " who is emanating a bright holy aura,", ",")
eval players replacere("%players", " who is emanating a malevolent holy aura,", ",")
eval players replacere("%players", " who is in a fiery crimson cage,", ",")
eval players replacere("%players", " who is in a geometric azure cage,", ",")
eval players replacere("%players", " who is radiating a glowing aura,", ",")
eval players replacere("%players", " who is shining with a dark golden glow,", ",")
eval players replacere("%players", " who is shrouded in ghostly flames,", ",")
eval players replacere("%players", " who is surrounded by a fiery mantle,", ",")
eval players replacere("%players", " who is surrounded by a shimmering shield,", ",")
eval players replacere("%players", " who is surrounded by a.+shimmering shield,", ",")
eval players replacere("%players", " who is who is mounted on .+ horse,", ",")
eval players replacere("%players", " who is surrounded by one circling blade of ice,", ",")
eval players replacere("%players", " who is surrounded by two circling blades of ice,", ",")
eval players replacere("%players", " who is surrounded by three circling blades of ice,", ",")
eval players replacere("%players", " who is surrounded by four circling blades of ice,", ",")
eval players replacere("%players", " who is surrounded by five circling blades of ice,", ",")
eval players replacere("%players", ", [\w'-]+ ", ", ")
eval players replacere("%players", ", [\w'-]+ ", ", ")
eval players replacere("%players", ", [\w'-]+ ", ", ")
eval players replace("%players", ", ", "|")
var players %players
echo players: %players
eval total count("%players", "|")

Loop:
eval player element("%players", 1)
eval number count("%players", "|%player")
var count 0
gosub RemoveLoop
action setvariable player $1 when ^@.* (\S+)$
put #parse @%player
counter set %count
gosub teach
if %players != "|" then goto Loop
exit

RemoveLoop:
eval number count("%players", "|%player|")
eval players replace("%players", "|%player|", "|")
eval players replace("%players", "||" "|")
evalmath count %count + %number
if !contains("%players", "|%player|") then return
goto RemoveLoop

teach:
counter subtract 1
put teach $class to %player
waitforre ^I could not find who you were referring to|^That person is too busy teaching|^You begin to lecture|^You have already offered to teach|does not have the necessary training to learn Empathy\.$|is already listening to you|is already trying to teach someone else|is listening to someone else|is not paying attention to you
if %c = 0 then return
goto teach