Add Sliders and general helpfiles

main
AreiaAard 4 years ago
parent c10714c04f
commit 97d80c2167

@ -11,7 +11,7 @@
save_state="n" save_state="n"
date_written="2021-01-22 15:00:00" date_written="2021-01-22 15:00:00"
requires="5.07" requires="5.07"
version="1.0" version="1.1"
> >
<description trim="y"> <description trim="y">
<![CDATA[ <![CDATA[
@ -96,6 +96,12 @@ function Sliders.initialize()
"Sliders.check_path" "Sliders.check_path"
) )
AddAlias("Alias_Sliders_Help",
"^viicefall\\s+sliders\\s+help$", "",
alias_flag.Enabled + alias_flag.IgnoreAliasCase + alias_flag.RegularExpression + alias_flag.Temporary,
"Sliders.help"
)
AddTriggerEx("Trigger_Sliders_Entrance", AddTriggerEx("Trigger_Sliders_Entrance",
"^This mysterious figure is shrouded in robes, anticipating your arrival\\.$", "", "^This mysterious figure is shrouded in robes, anticipating your arrival\\.$", "",
trigger_flag.Enabled + trigger_flag.RegularExpression + trigger_flag.Temporary, custom_colour.NoChange, 0, trigger_flag.Enabled + trigger_flag.RegularExpression + trigger_flag.Temporary, custom_colour.NoChange, 0,
@ -170,6 +176,7 @@ function Sliders.initialize()
end end
function Sliders.enter(trigger, line, wc) function Sliders.enter(trigger, line, wc)
Utility.print("Entered Icefall Sliders. Type '@Yvisliders help@w' for commands you can use on this section.")
end end
function Sliders.get_map(alias, line, wc) function Sliders.get_map(alias, line, wc)
@ -473,6 +480,47 @@ function Sliders.in_crank_station()
return Sliders.crankStations[gmcp("room.info.num")] return Sliders.crankStations[gmcp("room.info.num")]
end end
function Sliders.help(alias, line, wc)
Utility.print("@YVI ICEFALL - Sliders")
Utility.print("This plugin attempts to be as transparent as possible in all Icefall sections.")
Utility.print("That is, it does not change any of the default special commands that you can")
Utility.print("use in each section.")
Utility.print("Thus, to begin sliding, type '@Yslide <normal|hard|extreme>@w' in Entrance to Ice")
Utility.print("Sliders in the Icefall area.")
Utility.print("Once you have begun, you'll need to view the map. Type '@Yglance@w' to do so. This")
Utility.print("will initialize the plugin's internal map state and display the map to you in a")
Utility.print("much more screen-reader-friendly format.")
Utility.print("As a general overview, the main map is laid out as a 6x6 grid of rooms. The")
Utility.print("columns are named by letter from A (leftmost column) to F (rightmost column)")
Utility.print("and the rows are named by number from 1 (bottom row) to 6 (top row). Coordinate")
Utility.print("B5, for example, is located one right and four up from the bottom left corner.")
Utility.print("The goal is to rotate statues (represented by directions @Ynorth@w/@Yeast@w/@Ysouth@w/@Ywest")
Utility.print("on the VI map) to allow you to slide from your current position to one of")
Utility.print("Slick's four hiding places. These are located on the edges of the map: north")
Utility.print("from D6, east from F3, south from C1, and west from A4.")
Utility.print("Type '@Y<row>cw@w' to rotate a row clockwise, and '@Y<row>ccw@w' to rotate it counter-")
Utility.print("clockwise. '@Y3cw@w', for example, would rotate row 3 clockwise.")
Utility.print("Type '@Y<col>cw@w' to rotate a column clockwise, and '@Y<col>ccw@w' to rotate it")
Utility.print("counter-clockwise. '@Yeccw@w', for example, would rotate column E counter-clock-")
Utility.print("wise.")
Utility.print("Every time you turn a crank, the full map will be displayed again for you to")
Utility.print("review. (Note: This can admittedly get a little spammy at times. In future it")
Utility.print("might change depending on user input.)")
Utility.print("Type '@Yrotate crank@w' once you reach one of the hiding places to attempt to un-")
Utility.print("cover Slick.")
Utility.print("Finally, there are a few extra commands available to more easily and quickly")
Utility.print("view certain parts of the map. Type '@Ycol <col>@w' (e.g., '@Ycol c@w') to view the")
Utility.print("designated column, '@Yrow <row>@w' (e.g., '@Yrow 2@w') to view the designated row, and")
Utility.print("'@Ycoord <col><row>@w' (e.g., '@Ycoord f6@w') to view the designated coordinate. Once")
Utility.print("you think you have the path right, type '@Ycheck <dir>[ <dir>[ <dir>]]@w' to check")
Utility.print("it. The dirs you enter into this command are the directions you yourself plan")
Utility.print("to move manually to begin the slide. For example, if you are at A1, and you")
Utility.print("wish to get a summary of the path if you were to go east and then north, type")
Utility.print("'@Ycheck e n@w'.")
Utility.print("@YP.S.@w, there is always a horizontal wall between C3 and C4. Take care to avoid")
Utility.print("that!")
end
-------------------------------------------------- --------------------------------------------------
@ -535,6 +583,11 @@ Utility = {}
function Utility.initialize() function Utility.initialize()
-- General aliases -- General aliases
AddAlias("Alias_Utility_Help",
"^viicefall\\s+help$", "",
alias_flag.Enabled + alias_flag.IgnoreAliasCase + alias_flag.RegularExpression + alias_flag.Temporary,
"Utility.help"
)
local initializers = { local initializers = {
Sliders.initialize, Sliders.initialize,
@ -562,6 +615,12 @@ function Utility.deinitialize()
end end
end end
function Utility.help(alias, line, wc)
Utility.print("@YVI ICEFALL - General Help")
Utility.print("@Yviicefall update@w: Check for and install plugin updates.")
Utility.print("@Yviicefall sliders help@w: Show help on Ice Sliders.")
end
function Utility.print(str) function Utility.print(str)
-- Lets us use Aard color codes in our ColourNotes -- Lets us use Aard color codes in our ColourNotes
AnsiNote(stylesToANSI(ColoursToStyles("@w" .. str .. "@w"))) AnsiNote(stylesToANSI(ColoursToStyles("@w" .. str .. "@w")))
@ -575,6 +634,8 @@ end
function OnPluginInstall() function OnPluginInstall()
Utility.initialize() Utility.initialize()
Utility.print("@YVI_Icefall @wplugin installed.")
Utility.print("Type '@Yviicefall help@w' for help on general commands.")
end end
function OnPluginConnect() function OnPluginConnect()

Loading…
Cancel
Save