Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0" encoding="ISO-8859-1" ?>
- <cmud>
- <class name="UI">
- <class name="ResearchPlugin">
- <notes>This script originally written by Seyalas. Modified by @zareth to properly catch skills with names including numbers, underscore character, or hyphen character, as well as clean up unnecessary commands sent to the mud. Also makes the interface more readable in my opinion.</notes>
- <alias name="rese">
- <value>research %-1
- #VA rese %-1 {researchscript}</value>
- </alias>
- <var name="rese" usedef="true">
- <value>dig</value>
- <default>researchscript</default>
- </var>
- <trigger priority="400">
- <pattern>^You study for hours on end, but fail to gather any knowledge.</pattern>
- <value>rese @rese</value>
- <notes>used in continuing research</notes>
- </trigger>
- <trigger priority="410">
- <pattern>^You finish your studies and feel much more skilled.</pattern>
- <value>rese @rese</value>
- <notes>used in continuing research</notes>
- </trigger>
- <alias name="enq">
- <value>#ADDITEM reslist %-1
- #PRINT {%-1 added to research list.}
- #PRINT {Current research list: @reslist}</value>
- </alias>
- <trigger priority="470">
- <pattern>^You can't learn about that in books. Go find a teacher.</pattern>
- <value>#VAR newres %item(@reslist,1)
- #DELITEM reslist @newres
- #IF %if(@newres =~ %x, 1, 0)
- {#PRINT Now researching: @newres
- #PRINT Remaining research: @reslist
- rese @newres}</value>
- <notes>trigger used in continuing research</notes>
- </trigger>
- <trigger priority="490">
- <pattern>^You can't learn any more about that from books!</pattern>
- <value>#VAR newres %item(@reslist,1)
- #DELITEM reslist @newres
- #IF %if(@newres =~ %x, 1, 0)
- {#PRINT Now researching: @newres
- #PRINT Remaining research: @reslist
- rese @newres}</value>
- <notes>used in continuing research</notes>
- </trigger>
- <var name="newres"/>
- <class name="linker" enabled="false">
- <notes>This hold the trigger that turns the skill names in the practice list into links and changes color of the link depending on skill percentage.</notes>
- <trigger priority="340" trigontrig="false" repeat="true">
- <pattern>({%w|%w %w|%w%s%w%s%d|%w-%w|%w_%w})(%s)(%d)~%</pattern>
- <value><![CDATA[#switch (%3 = 0) {#SUB {{<color red><send 'rese %1|enq %1|prac %1' 'Research %1|Enqueue %1|Practice %1'>%1</send>%2%3~%</color>}}} (0 < %3 && %3 < 100) {#SUB {{<color orange><send 'rese %1|enq %1|prac %1' 'Research %1|Enqueue %1|Practice %1'>%1</send>%2%3~%</color>}}} (%3 = 100) {#SUB {{<color green>%1%2%3~%</color>}}}
- ]]></value>
- </trigger>
- </class>
- <trigger priority="520">
- <pattern>^---------------------------------Skills-----------------------------------</pattern>
- <value>#T+ linker
- #SUB {---------------------------------Skills-------------------------------------------}</value>
- <notes>used for formatting and to trigger the linker</notes>
- </trigger>
- <trigger priority="530">
- <pattern>^To see a shorter practice list, type PRACTICE <class name>.</pattern>
- <value>#T- linker</value>
- <notes>used to disable the linker</notes>
- </trigger>
- <trigger priority="550">
- <pattern>^---------------------------------Weapons-----------------------------------</pattern>
- <value>#SUB {---------------------------------Weapons------------------------------------------}</value>
- <notes>used for formatting</notes>
- </trigger>
- <trigger priority="560">
- <pattern>^---------------------------------Feats-----------------------------------</pattern>
- <value>#SUB {---------------------------------Feats--------------------------------------------}</value>
- <notes>Used for formatting</notes>
- </trigger>
- <trigger priority="620">
- <pattern>^You can't learn bounty hunting skills from a book!</pattern>
- <value>#VAR newres %item(@reslist,1)
- #DELITEM reslist @newres
- #IF %if(@newres =~ %x, 1, 0)
- {#PRINT Now researching: @newres
- #PRINT Remaining research: @reslist
- rese @newres}</value>
- <notes>used in continuing research</notes>
- </trigger>
- <trigger priority="630">
- <pattern>^You can't learn smuggling skills from a book!</pattern>
- <value>#VAR newres %item(@reslist,1)
- #DELITEM reslist @newres
- #IF %if(@newres =~ %x, 1, 0)
- {#PRINT Now researching: @newres
- #PRINT Remaining research: @reslist
- rese @newres}</value>
- <notes>used in continuing research</notes>
- </trigger>
- <var name="reslist" type="StringList">
- <json>[]</json>
- </var>
- <trigger priority="620">
- <pattern>Go learn it the hard way, sissy.</pattern>
- <value>#VAR newres %item(@reslist,1)
- #DELITEM reslist @newres
- #IF %if(@newres =~ %x, 1, 0)
- {#PRINT Now researching: @newres
- #PRINT Remaining research: @reslist
- rese @newres}</value>
- <notes>used in continuing research</notes>
- </trigger>
- </class>
- <class name="MSDP">
- <trigger type="Telnet" param="69" priority="20" trigontrig="false" newline="false" prompt="true">
- <pattern><![CDATA[<IAC><WILL><69>]]></pattern>
- <value>// Opens MSDP dialog with TELNET.
- #SENDRAW %char(255)%char(253)%char(69)</value>
- </trigger>
- <trigger type="Telnet" param="69" priority="5920">
- <pattern>(@MSDPVAR)([%w|_])(@MSDPVAL)(*)</pattern>
- <value>// Captures the MSDP data sent by the MUD.
- #VAR {%trim(%2)} {%trim(%delete(%4,1,1))}
- // Converts Health for a percentage. Not currently in any gauge or printout.
- #MATH HEALTH_PCT ((@HEALTH * 100)/@HEALTHMAX)
- // Toggles Force Points gauge.
- #IF (@MANA = 0) {#T- ForceGauge;#T- ForceLabel} {#T+ ForceGauge;#T+ ForceLabel}
- // Updates the status window with pulled MSDP.
- #CALL @updatestatuswindow()</value>
- </trigger>
- <alias name="vreport">
- <value>// Initial command to force-pull MSDP data from the MUD. Use this command anytime you fill your data is inaccurate, then follow it up with SCORE to fill out bank data.
- #SENDSB 69 %CHAR(1)REPORT%CHAR(2)CHARACTERNAME%CHAR(2)LEVEL%CHAR(2)CLASS%CHAR(2)HEALTH%CHAR(2)HEALTHMAX%CHAR(2)MANA%CHAR(2)MANAMAX%CHAR(2)MOVEMENT%CHAR(2)MOVEMENTMAX%CHAR(2)MONEY%CHAR(2)STR%CHAR(2)CON%CHAR(2)DEX%CHAR(2)WIS%CHAR(2)INT%CHAR(2)CHA%CHAR(2)STRPERM%CHAR(2)DEXPERM%CHAR(2)CONPERM%CHAR(2)WISPERM%CHAR(2)INTPERM%CHAR(2)CHAPERM%CHAR(2)HITROLL%CHAR(2)DAMROLL%CHAR(2)OPPONENTHEALTH%CHAR(2)OPPONENTHEALTHMAX%CHAR(2)OPPONENTLEVEL%CHAR(2)OPPONENTNAME%CHAR(2)TOPLEVEL%CHAR(2)LEVELCOMBAT%CHAR(2)LEVELPILOTING%CHAR(2)LEVELENGINEERING%CHAR(2)LEVELHUNTING%CHAR(2)LEVELSMUGGLING%CHAR(2)LEVELDIPLOMACY%CHAR(2)LEVELLEADERSHIP%CHAR(2)LEVELFORCE%CHAR(2)LEVELESPIONAGE%CHAR(2)LEVELSLICER%CHAR(2)LEVELMEDIC%CHAR(2)LEVELSCIENCE%CHAR(2)COMMCHANNEL%CHAR(2)COMMENCRYPT%CHAR(2)OOCLIMIT%CHAR(2)OOCBREAK%CHAR(2)PLANET%CHAR(2)CLAN%CHAR(2)PILOTING%CHAR(2)SHIPSPEED%CHAR(2)SHIPMAXSPEED%CHAR(2)SHIPHULL%CHAR(2)SHIPMAXHULL%CHAR(2)SHIPENERGY%CHAR(2)SHIPMAXENERGY%CHAR(2)SHIPSHIELD%CHAR(2)SHIPMAXSHIELD%CHAR(2)SHIPGALX%CHAR(2)SHIPGALY%CHAR(2)SHIPSYSX%CHAR(2)SHIPSYSY%CHAR(2)SHIPSYSZ%CHAR(2)SHIPHEADX%CHAR(2)SHIPHEADY%CHAR(2)SHIPHEADZ%CHAR(2)SHIPSYSNAME%CHAR(2)MONEYTOTAL%CHAR(2)MONEYINV%CHAR(2)MONEYBANK%CHAR(2)BOTTINGDELAY%CHAR(2)CURRENTAMMO%CHAR(2)MAXAMMO%CHAR(2)SHIELDENERGY%CHAR(2)LIGHTTIME%CHAR(2)MEDPACPOWER%CHAR(2)GRENADEROUNDS%CHAR(2)BLADEPOWER%CHAR(2)BOTTINGTIME%CHAR(2)BOTTINGCOOLDOWN%CHAR(2)CONTINENT</value>
- </alias>
- <trigger priority="10460">
- <pattern>Copyover recovery complete.</pattern>
- <value>// Force-fills the initial MSDP variables after a copyover.
- vreport
- // Fill out credits data.
- score</value>
- </trigger>
- <class name="Vars">
- <var name="HITROLL" type="String"></var>
- <var name="DAMROLL" type="String"></var>
- <var name="STR" type="String"></var>
- <var name="INT" type="String"></var>
- <var name="WIS" type="String"></var>
- <var name="DEX" type="String"></var>
- <var name="CON" type="String"></var>
- <var name="CHA" type="String"></var>
- <var name="CLASS" type="String"></var>
- <var name="HEALTH" type="String"></var>
- <var name="LEVEL" type="String"></var>
- <var name="MANA" type="String"></var>
- <var name="MOVEMENT" type="String"></var>
- <var name="TOPLEVEL" type="String"></var>
- <var name="PLANET" type="String"/>
- <var name="CLAN" type="String"></var>
- <var name="CHARACTERNAME" type="String"></var>
- <var name="HEALTHMAX" type="String"></var>
- <var name="LEVELCOMBAT" type="String"></var>
- <var name="LEVELPILOTING" type="String"></var>
- <var name="LEVELENGINEERING" type="String"></var>
- <var name="LEVELHUNTING" type="String"></var>
- <var name="LEVELSMUGGLING" type="String"></var>
- <var name="LEVELDIPLOMACY" type="String"></var>
- <var name="LEVELLEADERSHIP" type="String"></var>
- <var name="LEVELFORCE" type="String"></var>
- <var name="LEVELESPIONAGE" type="String"></var>
- <var name="LEVELSLICER" type="String"></var>
- <var name="LEVELMEDIC" type="String"></var>
- <var name="LEVELSCIENCE" type="String"></var>
- <var name="COMMCHANNEL" type="String"></var>
- <var name="COMMENCRYPT" type="String"></var>
- <var name="OOCLIMIT" type="String"></var>
- <var name="OOCBREAK" type="String"></var>
- <var name="SHIPSPEED" type="String"></var>
- <var name="SHIPMAXSPEED" type="String"></var>
- <var name="SHIPHULL" type="String"></var>
- <var name="SHIPMAXHULL" type="String"></var>
- <var name="SHIPENERGY" type="String"></var>
- <var name="SHIPMAXENERGY" type="String"></var>
- <var name="SHIPSHIELD" type="String"></var>
- <var name="SHIPMAXSHIELD" type="String"></var>
- <var name="SHIPGALX" type="String"></var>
- <var name="SHIPGALY" type="String"></var>
- <var name="SHIPSYSX" type="String"></var>
- <var name="SHIPSYSY" type="String"></var>
- <var name="SHIPSYSZ" type="String"></var>
- <var name="SHIPHEADX" type="String"></var>
- <var name="SHIPHEADY" type="String"></var>
- <var name="SHIPHEADZ" type="String"></var>
- <var name="SHIPSYSNAME" type="String">/var>
- <var name="MANAMAX" type="String"></var>
- <var name="MONEYTOTAL"></var>
- <var name="MONEYINV"></var>
- <var name="MONEYBANK" type="String"></var>
- <var name="MOVEMENTMAX" type="String"></var>
- <var name="STRPERM" type="String"></var>
- <var name="INTPERM" type="String"></var>
- <var name="WISPERM" type="String"></var>
- <var name="DEXPERM" type="String"></var>
- <var name="CONPERM" type="String"></var>
- <var name="CHAPERM" type="String"></var>
- <var name="OPPONENTHEALTH" type="String"></var>
- <var name="OPPONENTHEALTHMAX" type="String"></var>
- <var name="OPPONENTNAME" type="String"></var>
- <var name="HEALTH_PCT"></var>
- <var name="PILOTING" type="String"></var>
- <var name="SERVERID" type="String"></var>
- <var name="BOTTINGDELAY" type="String"></var>
- <var name="CURRENTAMMO" type="String"></var>
- <var name="MAXAMMO" type="String"></var>
- <var name="SHIELDENERGY" type="String"></var>
- <var name="LIGHTTIME" type="String"></var>
- <var name="MEDPACPOWER" type="String"></var>
- <var name="GRENADEROUNDS" type="String"></var>
- <var name="BLADEPOWER" type="String"></var>
- <var name="BOTTINGCOOLDOWN" type="String"></var>
- <var name="BOTTINGTIME" type="String"></var>
- </class>
- <func name="updatestatuswindow">
- <value><![CDATA[// This function fills the status window. If you need to manually refresh it, use the VREPORT command.
- // Function originally created by @Ixt___something___. Modified by @Xerakon to fit purposes.
- // Added in for testing purposes.
- #IF (@OPPONENTHEALTHMAX = 0) {#T- TopBar} {#T+ TopBar}
- // Clears the Status window to receive the new information.
- #CLR Status
- // Line 1: Displays Hitroll, Damroll, Strength, Dexterity, Constitution, Intelligence, Wisdom, and Charisma. The major stats will be in a nn (nn) format. The left set are your stats after all modifiers. Inside parenthesis are permanent stats, which are affected only by training and cybernetics.
- #LOCAL $line1
- $line1 = %format("<color red>HIT: <color lightgrey>&s</color> <color red>DAM:</color> <color lightgrey>&s</color> <color red>STR:</color> <color lightgrey>&s</color> <color red>(</color><color lightgrey>&s</color><color red>)</color> <color red>DEX:</color> <color lightgrey>&s</color> <color red>(</color><color lightgrey>&s</color><color red>)</color> <color red>CON:</color> <color lightgrey>&s</color> <color red>(</color><color lightgrey>&s</color><color red>)</color> <color red>INT:</color> <color lightgrey>&s</color> <color red>(</color><color lightgrey>&s</color><color red>)</color> <color red>WIS:</color> <color lightgrey>&s</color> <color red>(</color><color lightgrey>&s</color><color red>)</color> <color red>CHA:</color> <color lightgrey>&s</color> <color red>(</color><color lightgrey>&s</color><color red>)</color>", @HITROLL, @DAMROLL, @STR, @STRPERM, @DEX, @DEXPERM, @CON, @CONPERM, @INT, @INTPERM, @WIS, @WISPERM, @CHA, @CHAPERM)
- // Line 2: Total, Inventory, and Bank Credits. Comlink Frequency and Encryption.
- #LOCAL $line2
- $line2 = %format("<color red>Total Credits:</color> <color lightgrey>&s</color> <color red>Inventory:</color> <color lightgrey>&s</color> <color red>Bank:</color> <color lightgrey>&s</color> <color red>Frequency:</color> <color lightgrey>&s</color> <color red>Encryption:</color> <color lightgrey>&s</color>", @MONEYTOTAL, @MONEYINV, @MONEYBANK, @COMMCHANNEL, @COMMENCRYPT)
- // Line 3: Reserved for equipment data when MSDP is fixxed.
- #LOCAL $line3
- $line3 = %format("<color red>Reserved for equipment data when the MSDP is fixxed.</color>")
- // Line 4: Reserved for botting plugin I'm working on.
- #LOCAL $line4
- $line4 = %format("<color red>Reserved for botting plugin when finished developing.</color>")
- //$line4 = %format("<color red>"["</color><color lightgrey>Botting</color><color red>"]" Time Remaining:</color><color lightgrey> &d:&02d:&02d</color><color red> Botting Activity: %s", (@BOTTINGTIME / 3600), %mod(@BOTTINGTIME / 60, 60), %mod(@BOTTINGTIME, 60),@BottingActivity)
- //$line4 = %format("<color red>Reserved for botting plugin.</color>")
- // Line 5: Displays cargo plugin variables, if enabled.
- #LOCAL $line5
- $line5 = %format("<color red>Reserved for cargo plugin when finished developing.</color>")
- //#IF (%class("CargoPlugin") = 1) {
- // $line5 = %format("<color red>Ship:</color><color lightgrey> &s </color><color red> Planet 1:</color><color lightgrey> &s </color><color red> Planet 2:</color><color lightgrey> &s </color><color red> Cargo 1:</color><color lightgrey> &s </color><color red> Cargo 2:</color><color lightgrey> &s</color>", @CargoShip, @CargoPlanet1, @CargoPlanet2, @Cargo1, @Cargo2)
- // } {
- // $line5 = %format("<color red>Cargo plugin disabled.</color>")}
- // Line 3: Reserved.
- //#LOCAL $line3
- //$line3 = %format("<color red>Reserved.</color>")
- // Line 6: Sublight information. Star System, Star Coordinates, Current XYZ, Coursing XYZ.
- #LOCAL $line6
- $line6 = %format("<color red>Star System:</color> <color lightgrey>%s</color> <color red>Coordinates:</color> <color lightgrey>%s %s</color> <color red>Current Position:</color> <color lightgrey>%s %s %s</color> <color red>Heading:</color> <color lightgrey>%s %s %s</color>", @SHIPSYSNAME, @SHIPGALX, @SHIPGALY, @SHIPSYSX, @SHIPSYSY, @SHIPSYSZ, @SHIPHEADX, @SHIPHEADY, @SHIPHEADZ)
- // Adds the lines to the window.
- #WIN Status {$line1}
- #WIN Status {$line2}
- #WIN Status {$line3}
- #WIN Status {$line4}
- #WIN Status {$line5}
- #WIN Status {$line6}]]></value>
- </func>
- <trigger priority="12380">
- <pattern>~(W~)elcome to ~[S~]tar ~[W~]ars: Legend of the Jedi...</pattern>
- <value>// Force-fills the initial MSDP variables on login.
- vreport
- // Fill out credits data.
- score</value>
- </trigger>
- </class>
- <class name="BottomBar">
- <button name="ForceGauge" type="Gauge" variable="@MANA" autosize="false" width="267" height="50" autopos="false" left="536" top="0" toolbar="2" color="purple" textcolor="white" border="black" gaugelowcol="red" gaugebackcol="gray" priority="59" enabled="false">
- <caption>@MANA/@MANAMAX</caption>
- <expr>@MANA</expr>
- <gaugemax>@MANAMAX</gaugemax>
- <gaugelow>@MANAMAX/4</gaugelow>
- </button>
- <button name="Health Gauge" type="Gauge" variable="@HEALTH" autosize="false" width="267" height="50" autopos="false" left="0" top="0" toolbar="2" color="green" textcolor="white" border="black" gaugelowcol="red" gaugebackcol="gray" priority="18">
- <caption>@HEALTH/@HEALTHMAX</caption>
- <expr>@HEALTH</expr>
- <gaugemax>@HEALTHMAX</gaugemax>
- <gaugelow>@HEALTHMAX/4</gaugelow>
- </button>
- <button name="Movement Gauge" type="Gauge" variable="@MOVEMENT" autosize="false" width="267" height="50" autopos="false" left="268" top="0" toolbar="2" color="navy" textcolor="white" border="black" gaugelowcol="red" gaugebackcol="gray" priority="40">
- <caption>@MOVEMENT/@MOVEMENTMAX</caption>
- <expr>@MOVEMENT</expr>
- <gaugemax>@MOVEMENTMAX</gaugemax>
- <gaugelow>@MOVEMENTMAX/4</gaugelow>
- </button>
- <class name="ShipStatus">
- <button name="Hull Variable" type="Gauge" variable="@SHIPHULL" autosize="false" width="200" height="20" autopos="false" left="201" top="72" toolbar="2" color="green" textcolor="white" gaugelowcol="maroon" gaugebackcol="gray" priority="6406">
- <caption>@SHIPHULL/@SHIPMAXHULL</caption>
- <expr>@SHIPHULL</expr>
- <gaugemax>@SHIPMAXHULL</gaugemax>
- <gaugelow>@SHIPMAXHULL/4</gaugelow>
- </button>
- <button name="Shields Variable" type="Gauge" variable="@SHIPSHIELD" autosize="false" width="200" height="20" autopos="false" left="402" top="72" toolbar="2" color="green" textcolor="white" gaugelowcol="maroon" gaugebackcol="gray" priority="6374">
- <caption>@SHIPSHIELD/@SHIPMAXSHIELD</caption>
- <expr>@SHIPSHIELD</expr>
- <gaugemax>@SHIPMAXSHIELD</gaugemax>
- <gaugelow>@SHIPMAXSHIELD/4</gaugelow>
- </button>
- <button name="Hull Label" type="Separator" autosize="false" width="200" height="20" autopos="false" left="201" top="51" toolbar="2" color="black" textcolor="white" priority="6398">
- <caption>Hull</caption>
- </button>
- <button name="Shields Label" type="Separator" autosize="false" width="200" height="20" autopos="false" left="402" top="51" toolbar="2" color="black" textcolor="white" priority="6394">
- <caption>Shields</caption>
- </button>
- <button name="Energy Variable" type="Gauge" variable="@SHIPENERGY" autosize="false" width="200" height="20" autopos="false" left="603" top="72" toolbar="2" color="green" textcolor="white" border="black" gaugelowcol="maroon" gaugebackcol="gray" priority="6371">
- <caption>@SHIPENERGY/@SHIPMAXENERGY</caption>
- <expr>@SHIPENERGY</expr>
- <gaugemax>@SHIPMAXENERGY</gaugemax>
- <gaugelow>@SHIPMAXENERGY/4</gaugelow>
- </button>
- <button name="Energy Label" type="Separator" autosize="false" width="200" height="20" autopos="false" left="603" top="51" toolbar="2" color="black" textcolor="white" priority="6392">
- <caption>Energy</caption>
- </button>
- <button name="Speed Variable" type="Gauge" variable="@SHIPSPEED" autosize="false" width="200" height="20" autopos="false" left="0" top="72" toolbar="2" color="green" textcolor="white" gaugelowcol="maroon" gaugebackcol="gray" priority="6404">
- <caption>@SHIPSPEED/@SHIPMAXSPEED</caption>
- <expr>@SHIPSPEED</expr>
- <gaugemax>@SHIPMAXSPEED</gaugemax>
- </button>
- <button name="Speed Label" type="Separator" autosize="false" width="200" height="20" autopos="false" left="0" top="51" toolbar="2" color="black" textcolor="white" priority="6396">
- <caption>Speed</caption>
- </button>
- <button name="Star System Label" type="Separator" autosize="false" width="300" height="20" autopos="false" left="0" top="93" toolbar="2" color="black" textcolor="white" priority="6390" enabled="false">
- <caption>Star System</caption>
- </button>
- <button name="Star System Variable" type="Separator" autosize="false" width="300" height="20" autopos="false" left="0" top="114" toolbar="2" color="black" textcolor="white" priority="6376" enabled="false">
- <caption>@SHIPSYSNAME</caption>
- </button>
- <button name="Current Position Label" type="Separator" autosize="false" width="200" height="20" autopos="false" left="402" top="93" toolbar="2" color="black" textcolor="white" priority="6384" enabled="false">
- <caption>Current Position</caption>
- </button>
- <button name="Current Position Variable" type="Separator" autosize="false" width="200" height="20" autopos="false" left="402" top="114" toolbar="2" color="black" textcolor="white" priority="6378" enabled="false">
- <caption>@SHIPSYSX @SHIPSYSY @SHIPSYSZ</caption>
- </button>
- <button name="Heading Label" type="Separator" autosize="false" width="200" height="20" autopos="false" left="603" top="93" toolbar="2" color="black" textcolor="white" priority="6382" enabled="false">
- <caption>Heading</caption>
- </button>
- <button name="Heading Variable" type="Separator" autosize="false" width="200" height="20" autopos="false" left="603" top="114" toolbar="2" color="black" textcolor="white" priority="6380" enabled="false">
- <caption>@SHIPHEADX @SHIPHEADY @SHIPHEADZ</caption>
- </button>
- <button name="Star System Coordinates Label" type="Separator" autosize="false" width="100" height="20" autopos="false" left="301" top="93" toolbar="2" color="black" textcolor="white" priority="6388" enabled="false">
- <caption>Coordinates</caption>
- </button>
- <button name="Star System Coordinates Variable" type="Separator" autosize="false" width="100" height="20" autopos="false" left="301" top="114" toolbar="2" color="black" textcolor="white" priority="6386" enabled="false">
- <caption>@SHIPGALX @SHIPGALY</caption>
- </button>
- </class>
- <class name="Toggling">
- <trigger priority="14400">
- <pattern>^You enter (*).</pattern>
- <value>// Determines when to pull up the gauges contained in ShipStatus. Added in the EnteringWhat variable to ensure that entering a building doesn't confuse the trigger.
- #VAR EnteringWhat (%1)
- #IF (@EnteringWhat = the building) {#T- ShipStatus} {#T+ ShipStatus}
- #IF (@EnteringWhat = the control codes for the autopilot) {#T+ ShipStatus}</value>
- </trigger>
- <trigger priority="14410">
- <pattern>^You exit the ship.</pattern>
- <value>#T- ShipStatus</value>
- </trigger>
- <var name="EnteringWhat">the control codes for the autopilot</var>
- </class>
- </class>
- <class name="Credit Captures">
- <trigger priority="10530">
- <pattern>You earned (%d) credits from the sale and pay (%d) in taxes.</pattern>
- <value>MONEYINV = @MONEYINV + %1
- MONEYINV = @MONEYINV - %2
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10540">
- <pattern>It cost you (%d) credits total, (%d) credits in tax.</pattern>
- <value>MONEYINV = @MONEYINV - %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10550">
- <pattern>You pay (%d) credits to refuel the ship.</pattern>
- <value>MONEYINV = @MONEYINV - %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10580">
- <pattern>You get (%d) credits</pattern>
- <value>MONEYINV = @MONEYINV + %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10590">
- <pattern>You have (%d) credits.</pattern>
- <value>#VAR MONEYINV (%1)
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10600">
- <pattern>* puts some credits into a large safe.</pattern>
- <value>gold
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10610">
- <pattern>You are paid (%d) credits, courtesy of (*).</pattern>
- <value>MONEYINV = @MONEYINV + %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10620">
- <pattern>You pay (%d) credits to register an account.</pattern>
- <value>MONEYINV = @MONEYINV - %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10940">
- <pattern>You sell (*) for (%d) credits.</pattern>
- <value>MONEYINV = @MONEYINV + %2
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10950">
- <pattern>You pay (%d) credits in taxes to (*).</pattern>
- <value>MONEYINV = @MONEYINV - %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10960">
- <pattern>Account (%d) earned (%d) credits this month.</pattern>
- <value>MONEYBANK = @MONEYBANK + %2
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10990">
- <pattern>Your gain is: (%d)/(%d) mv and (%d) credits.</pattern>
- <value>MONEYINV = @MONEYINV + %3
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="11000">
- <pattern>Your gain is: (%d) credits.</pattern>
- <value>MONEYINV = @MONEYINV + %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="11010">
- <pattern>You pay (%d) credits to access a room and begin your training.</pattern>
- <value>MONEYINV = @MONEYINV - %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="12000">
- <pattern>You deposit (%d) credits into the account.</pattern>
- <value>MONEYBANK = @MONEYBANK + %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="10580">
- <pattern>(*) gives you (%d) credits</pattern>
- <value>MONEYINV = @MONEYINV + %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="14450">
- <pattern>You collect (%d) credits for killing a wanted criminal.</pattern>
- <value>MONEYINV = @MONEYINV + %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- <trigger priority="18750">
- <pattern>^You pay (%d) credits to purchase the ship.</pattern>
- <value>MONEYINV = @MONEYINV - %1
- MONEYTOTAL = @MONEYINV + @MONEYBANK
- #CALL @updatestatuswindow()</value>
- </trigger>
- </class>
- <class name="Comms">
- <class name="Logs" enabled="false">
- <trigger priority="3640">
- <pattern>~(*~) (*) tells you '(*)'</pattern>
- <value>$name = %1
- $message = %2
- $timedtells = {}
- #ADDKEY $timedtells time %time("yyyy/mm/dd hh:mm:ss")
- #ADDKEY $timedtells name $name
- #ADDKEY $timedtells message $message
- #ADDITEM tellslog $timedtells</value>
- </trigger>
- <alias name="tellsfrom">
- <value><![CDATA[#PRINT
- $wantedname = %params
- #PRINT <color lightgrey>Tells from: $wantedname</color>
- #PRINT <color darkred>---------------------</color>
- #FORALL @tellslog {
- #IF (%upper(%i.name) = %upper($wantedname)) {#SHOW %format("&s: &s", %i.name, %i.message)}
- }
- #PRINT]]></value>
- </alias>
- <alias name="tellhist">
- <value><![CDATA[#PRINT
- #PRINT <color lightgrey>Tell History</color>
- #PRINT <color darkred>------------</color>
- $numitems = %numitems(@tellslog)
- #LOOP %max(($numitems-10),1),$numitems {
- $item = %item(@tellslog, %i)
- #SHOW %format("&s: &20s", $item.name, $item.message)
- //#SHOW %format("&s : &20s : &s", $item.time, $item.name, $item.message)
- }
- #PRINT]]></value>
- </alias>
- <alias name="commshist">
- <value><![CDATA[#WIN Comms <color lightgrey> </color>
- #WIN Comms <color darkred>-------------</color>
- #WIN Comms <color lightgrey>Comms History</color>
- #WIN Comms <color darkred>-------------</color>
- $numitems = %numitems(@//LotJShared/Comms/commslog)
- #LOOP %max(($numitems-10),1),$numitems {
- $item = %item(@//LotJShared/Comms/commslog, %i)
- #WIN Comms %format("&s: &s: &s", $item.name, $item.channel, $item.message)
- // #SHOW %format("&s: &s: &s", $item.name, $item.channel, $item.message)
- }
- #WIN Comms <color darkred>-------------</color>
- #WIN Comms <color lightgrey> </color>]]></value>
- </alias>
- <alias name="commsfrom">
- <value><![CDATA[#WIN Comms <color lightgrey> </color>
- $wantedname = %params
- #WIN Comms <color darkred>---------------------</color>
- #WIN Comms <color lightgrey>Comms from: $wantedname</color>
- #WIN Comms <color darkred>---------------------</color>
- #FORALL @//LotJShared/Comms/commslog {
- #IF (%upper(%i.name) = %upper($wantedname)) {#WIN Comms %format("&s: &s", %i.name, %i.message)}
- }
- #WIN Comms <color darkred>---------------------</color>
- #WIN Comms <color lightgrey> </color>]]></value>
- </alias>
- <trigger priority="11100" enabled="false">
- <pattern>(*) says '(*)'</pattern>
- <value>$name = %1
- $message = %2
- $timedcomms = {}
- #ADDKEY $timedcomms time %time("yyyy/mm/dd hh:mm:ss")
- #ADDKEY $timedcomms name $name
- #ADDKEY $timedcomms message $message
- #ADDITEM commslog $timedcomms
- //~(*~) (*) tells you '(*)'</value>
- </trigger>
- <var name="tones" type="StringList">
- <value>abashedlylily|abruptlylily|absent mindedlylily|accusinglylily|aggravatedlylily|aggressivelylily|amusedlylily|angrylylily|annoyedlylily|annoyinglylily|anxiouslylily|apologeticlylily|appreciativelylily|approvinglylily|argumentativelylily|arrogantlylily|ashamedlylily|audaciouslylily|awedlylily|awkwardlylily|bashfullylily|belligerentlylily|bickeringlylily|bitterlylily|bluntlylily|boredlylily|boyishlylily|brashlylily|bravelylily|breathlesslylily|boldlylily|brisklylily|brokenlylily|calmlylily|carefullylily|casuallylily|causticlylily|cautiouslylily|cheerfullylily|clearlylily|cleverlylily|coarselylily|coldlylily|commandinglylily|competitivelylily|concernedlylily|condescendinglylily|confidentlylily|confusedlylily|cordiallylily|coughinglylily|courageouslylily|coylylily|curiouslylily|cursinglylily|curtlylily|cravenlylily|crisplylily|cruellylily|crypticlylily|cynicallylily|darklylily|dazedlylily|deeplylily|defensivelylily|defiantlylily|dejectedlylily|demurelylily|dimlylily|disappointedlylily|disapprovinglylily|disenchantedlylily|disgustedlylily|dismissivelylily|disrespectfullylily|distractedlylily|distantlylily|dizzylylily|dominantlylily|domineeringlylily|dreamylylily|droninglylily|drunkenlylily|drylylyly|dubiouslylily|dulllylily|embarrassedlylily|emphaticlylily|encouraginglylily|enragedlylily|enviouslylily|exasperatedlylily|excitedlylily|expectantlylily|exuberantlylily|faintlylily|fearfullylily|firmlylily|flatlylily|flirtatiouslylily|foolishlylily|forlornlylily|franklylily|fretfullylily|frustratedlylily|fuminglylily|furiouslylily|gaspinglylily|gentlylily|girlishlylily|gleefullylily|glumlylily|grufflylily|grandlylily|gratefullylily|gravelylily|greedylylily|grimlylily|growlinglylily|grumpylylily|gruntinglylily|gutturallylily|happylylily|haltinglylily|harshlylily|haughtylylily|heartlesslylily|heroicallylily|hesitantlylily|hissinglylily|hopefullylily|humourouslylily|hurriedlylily|hushedlylily|hyperlylily|impatientlylily|incoherentlylily|incredulouslylily|indistinctivelylily|innocentlylily|inquisitivelylily|insistentlylily|insolentlylily|irritatedlylily|jealouslylily|jitterlylily|jokinglylily|jubilantlylily|knowinglylily|laconiclylily|laughinglylily|lazylylily|lewdlylily|lightlylily|lithelylily|lividlylily|loudlylily|lovinglylily|lustfullylily|madlylily|majesticlylily|maniacallylily|mechanicallylily|meeklylily|melodicallylily|menacinglylily|merrylylily|messylylily|mindlesslylily|mischievouslylily|miserablelylily|mockinglylily|monotonouslylily|moodylylily|mournfullylily|mutedlylily|mysteriouslylily|nasallylily|negativelylily|nervouslylily|nonchalantlylily|obnoxiouslylily|obscuredlylily|obstinatelylily|ominouslylily|passionatelylily|passivelylily|patheticlylily|patientlylily|pausinglylily|peacefullylily|pedanticlylily|persistentlylily|piouslylily|placidlylily|playfullylily|pointedlylily|politelylily|pompouslylily|poshlylily|positivelylily|preeminentlylily|proudlylily|psychoticlylily|questioninglylily|quicklylily|quietlylily|rabidlylily|recklesslylily|regretfullylily|remorsefullylily|resentfullylily|resignedlylily|respectfullylily|rudelylily|sadlylily|sarcasticlylily|scaredlylily|scoffinglylily|scornfullylily|seductivelylily|serenelylily|seriouslylily|sexylylily|shamedlylily|sharplylily|sheepishlylily|shrewdlylily|shylylyly|sighinglylily|sinisterlylily|skepticallylily|sleazylylily|sleepylylily|slicklylily|slimylylily|slowlylily|slylylyly|smoothlylily|smuglylily|snarkylylily|snidelylily|snipinglylily|snottylylily|sobbinglylily|softlylily|solemnlylily|somberlylily|soothinglylily|sorrowfullylily|sourlylily|spinelesslylily|spitefullylily|squeakylylily|stubbornlylily|submissivelylily|suggestivelylily|surprisedlylily|suspiciouslylily|staggeringlylily|stammeringlylily|sternlylily|stupidlylily|stutteringlylily|suavelylily|suddenlylily|sweetlylily|sympatheticlylily|tactfullylily|tearfullylily|teasinglylily|tenderlylily|tentativelylily|tepidlylily|terselylily|thicklylily|thinlylily|thoughtfullylily|threateninglylily|timidlylily|tiredlylily|triumphantlylily|undecipherablelylily|understandinglylily|uneasylylily|unhappylylily|vacantlylily|warmlylily|warylylily|weaklylily|wearylylily|wheezinglylily|whininglylily|wiselylily|wistfullylily|worriedlylily|wrylylyly|aggravatedlily|aggressivelily|amusedlily|angrylily|annoyedlily|annoyinglily|anxiouslily|apologeticlily|appreciativelily|approvinglily|argumentativelily|arrogantlily|ashamedlily|audaciouslily|awedlily|awkwardlily|bashfullily|belligerentlily|bickeringlily|bitterlily|bluntlily|boredlily|boyishlily|brashlily|bravelily|breathlesslily|boldlily|brisklily|brokenlily|calmlily|carefullily|casuallily|causticlily|cautiouslily|cheerfullily|clearlily|cleverlily|coarselily|coldlily|commandinglily|competitivelily|concernedlily|condescendinglily|confidentlily|confusedlily|cordiallily|coughinglily|courageouslily|coylily|curiouslily|cursinglily|curtlily|cravenlily|crisplily|cruellily|crypticlily|cynicallily|darklily|dazedlily|deeplily|defensivelily|defiantlily|dejectedlily|demurelily|dimlily|disappointedlily|disapprovinglily|disenchantedlily|disgustedlily|dismissivelily|disrespectfullily|distractedlily|distantlily|dizzylily|dominantlily|domineeringlily|dreamylily|droninglily|drunkenlily|drylyly|dubiouslily|dulllily|embarrassedlily|emphaticlily|encouraginglily|enragedlily|enviouslily|exasperatedlily|excitedlily|expectantlily|exuberantlily|faintlily|fearfullily|firmlily|flatlily|flirtatiouslily|foolishlily|forlornlily|franklily|fretfullily|frustratedlily|fuminglily|furiouslily|gaspinglily|gentlily|girlishlily|gleefullily|glumlily|grufflily|grandlily|gratefullily|gravelily|greedylily|grimlily|growlinglily|grumpylily|gruntinglily|gutturallily|happylily|haltinglily|harshlily|haughtylily|heartlesslily|heroicallily|hesitantlily|hissinglily|hopefullily|humourouslily|hurriedlily|hushedlily|hyperlily|impatientlily|incoherentlily|incredulouslily|indistinctivelily|innocentlily|inquisitivelily|insistentlily|insolentlily|irritatedlily|jealouslily|jitterlily|jokinglily|jubilantlily|knowinglily|laconiclily|laughinglily|lazylily|lewdlily|lightlily|lithelily|lividlily|loudlily|lovinglily|lustfullily|madlily|majesticlily|maniacallily|mechanicallily|meeklily|melodicallily|menacinglily|merrylily|messylily|mindlesslily|mischievouslily|miserablelily|mockinglily|monotonouslily|moodylily|mournfullily|mutedlily|mysteriouslily|nasallily|negativelily|nervouslily|nonchalantlily|obnoxiouslily|obscuredlily|obstinatelily|ominouslily|passionatelily|passivelily|patheticlily|patientlily|pausinglily|peacefullily|pedanticlily|persistentlily|piouslily|placidlily|playfullily|pointedlily|politelily|pompouslily|poshlily|positivelily|preeminentlily|proudlily|psychoticlily|questioninglily|quicklily|quietlily|rabidlily|recklesslily|regretfullily|remorsefullily|resentfullily|resignedlily|respectfullily|rudelily|sadlily|sarcasticlily|scaredlily|scoffinglily|scornfullily|seductivelily|serenelily|seriouslily|sexylily|shamedlily|sharplily|sheepishlily|shrewdlily|shylyly|sighinglily|sinisterlily|skepticallily|sleazylily|sleepylily|slicklily|slimylily|slowlily|slylyly|smoothlily|smuglily|snarkylily|snidelily|snipinglily|snottylily|sobbinglily|softlily|solemnlily|somberlily|soothinglily|sorrowfullily|sourlily|spinelesslily|spitefullily|squeakylily|stubbornlily|submissivelily|suggestivelily|surprisedlily|suspiciouslily|staggeringlily|stammeringlily|sternlily|stupidlily|stutteringlily|suavelily|suddenlily|sweetlily|sympatheticlily|tactfullily|tearfullily|teasinglily|tenderlily|tentativelily|tepidlily|terselily|thicklily|thinlily|thoughtfullily|threateninglily|timidlily|tiredlily|triumphantlily|undecipherablelily|understandinglily|uneasylily|unhappylily|vacantlily|warmlily|warylily|weaklily|wearylily|wheezinglily|whininglily|wiselily|wistfullily|worriedlily|aggravatedly|aggressively|amusedly|angrily|annoyedly|annoyingly|anxiously|apologetically|appreciatively|approvingly|argumentatively|arrogantly|ashamedly|audaciously|awedly|awkwardly|bashfully|belligerently|bickeringly|bitterly|bluntly|boredly|boyishly|brashly|bravely|breathlessly|boldly|briskly|brokenly|calmly|carefully|casually|caustically|cautiously|cheerfully|clearly|cleverly|coarsely|coldly|commandingly|competitively|concernedly|condescendingly|confidently|confusedly|cordially|coughingly|courageously|coyly|curiously|cursingly|curtly|cravenly|crisply|cruelly|cryptically|cynically|darkly|dazedly|deeply|defensively|defiantly|dejectedly|demurely|dimly|disappointedly|disapprovingly|disenchantedly|disgustedly|dismissively|disrespectfully|distractedly|distantly|dizzily|dominantly|domineeringly|dreamily|droningly|drunkenly|dryly|dubiously|dully|embarrassedly|emphatically|encouragingly|enragedly|enviously|exasperatedly|excitedly|expectantly|exuberantly|faintly|fearfully|firmly|flatly|flirtatiously|foolishly|forlornly|frankly|fretfully|frustratedly|fumingly|furiously|gaspingly|gently|girlishly|gleefully|glumly|gruffly|grandly|gratefully|gravely|greedily|grimly|growlingly|grumpily|gruntingly|gutturally|happily|haltingly|harshly|haughtily|heartlessly|heroically|hesitantly|hissingly|hopefully|humourously|hurriedly|hushedly|hyperly|impatiently|incoherently|incredulously|indistinctively|innocently|inquisitively|insistently|insolently|irritatedly|jealously|jitterly|jokingly|jubilantly|knowingly|laconically|laughingly|lazily|lewdly|lightly|lithely|lividly|loudly|lovingly|lustfully|madly|majestically|maniacally|mechanically|meekly|melodically|menacingly|merrily|messily|mindlessly|mischievously|miserably|mockingly|monotonously|moodily|mournfully|mutedly|mysteriously|nasally|negatively|nervously|nonchalantly|obnoxiously|obscuredly|obstinately|ominously|passionately|passively|pathetically|patiently|pausingly|peacefully|pedantically|persistently|piously|placidly|playfully|pointedly|politely|pompously|poshly|positively|preeminently|proudly|psychotically|questioningly|quickly|quietly|rabidly|recklessly|regretfully|remorsefully|resentfully|resignedly|respectfully|rudely|sadly|sarcastically|scaredly|scoffingly|scornfully|seductively|serenely|seriously|sexily|shamedly|sharply|sheepishly|shrewdly|shyly|sighingly|sinisterly|skeptically|sleazily|sleepily|slickly|slimily|slowly|slyly|smoothly|smugly|snarkily|snidely|snipingly|snottily|sobbingly|softly|solemnly|somberly|soothingly|sorrowfully|sourly|spinelessly|spitefully|squeakily|stubbornly|submissively|suggestively|surprisedly|suspiciously|staggeringly|stammeringly|sternly|stupidly|stutteringly|suavely|suddenly|sweetly|sympathetically|tactfully|tearfully|teasingly|tenderly|tentatively|tepidly|tersely|thickly|thinly|thoughtfully|threateningly|timidly|tiredly|triumphantly|undecipherably|understandingly|uneasily|unhappily|vacantly|warmly|warily|weakly|wearily|wheezingly|whiningly|wisely|wistfully|worriedly</value>
- <json>["abashedlylily","abruptlylily","absent mindedlylily","accusinglylily","aggravatedlylily","aggressivelylily","amusedlylily","angrylylily","annoyedlylily","annoyinglylily","anxiouslylily","apologeticlylily","appreciativelylily","approvinglylily","argumentativelylily","arrogantlylily","ashamedlylily","audaciouslylily","awedlylily","awkwardlylily","bashfullylily","belligerentlylily","bickeringlylily","bitterlylily","bluntlylily","boredlylily","boyishlylily","brashlylily","bravelylily","breathlesslylily","boldlylily","brisklylily","brokenlylily","calmlylily","carefullylily","casuallylily","causticlylily","cautiouslylily","cheerfullylily","clearlylily","cleverlylily","coarselylily","coldlylily","commandinglylily","competitivelylily","concernedlylily","condescendinglylily","confidentlylily","confusedlylily","cordiallylily","coughinglylily","courageouslylily","coylylily","curiouslylily","cursinglylily","curtlylily","cravenlylily","crisplylily","cruellylily","crypticlylily","cynicallylily","darklylily","dazedlylily","deeplylily","defensivelylily","defiantlylily","dejectedlylily","demurelylily","dimlylily","disappointedlylily","disapprovinglylily","disenchantedlylily","disgustedlylily","dismissivelylily","disrespectfullylily","distractedlylily","distantlylily","dizzylylily","dominantlylily","domineeringlylily","dreamylylily","droninglylily","drunkenlylily","drylylyly","dubiouslylily","dulllylily","embarrassedlylily","emphaticlylily","encouraginglylily","enragedlylily","enviouslylily","exasperatedlylily","excitedlylily","expectantlylily","exuberantlylily","faintlylily","fearfullylily","firmlylily","flatlylily","flirtatiouslylily","foolishlylily","forlornlylily","franklylily","fretfullylily","frustratedlylily","fuminglylily","furiouslylily","gaspinglylily","gentlylily","girlishlylily","gleefullylily","glumlylily","grufflylily","grandlylily","gratefullylily","gravelylily","greedylylily","grimlylily","growlinglylily","grumpylylily","gruntinglylily","gutturallylily","happylylily","haltinglylily","harshlylily","haughtylylily","heartlesslylily","heroicallylily","hesitantlylily","hissinglylily","hopefullylily","humourouslylily","hurriedlylily","hushedlylily","hyperlylily","impatientlylily","incoherentlylily","incredulouslylily","indistinctivelylily","innocentlylily","inquisitivelylily","insistentlylily","insolentlylily","irritatedlylily","jealouslylily","jitterlylily","jokinglylily","jubilantlylily","knowinglylily","laconiclylily","laughinglylily","lazylylily","lewdlylily","lightlylily","lithelylily","lividlylily","loudlylily","lovinglylily","lustfullylily","madlylily","majesticlylily","maniacallylily","mechanicallylily","meeklylily","melodicallylily","menacinglylily","merrylylily","messylylily","mindlesslylily","mischievouslylily","miserablelylily","mockinglylily","monotonouslylily","moodylylily","mournfullylily","mutedlylily","mysteriouslylily","nasallylily","negativelylily","nervouslylily","nonchalantlylily","obnoxiouslylily","obscuredlylily","obstinatelylily","ominouslylily","passionatelylily","passivelylily","patheticlylily","patientlylily","pausinglylily","peacefullylily","pedanticlylily","persistentlylily","piouslylily","placidlylily","playfullylily","pointedlylily","politelylily","pompouslylily","poshlylily","positivelylily","preeminentlylily","proudlylily","psychoticlylily","questioninglylily","quicklylily","quietlylily","rabidlylily","recklesslylily","regretfullylily","remorsefullylily","resentfullylily","resignedlylily","respectfullylily","rudelylily","sadlylily","sarcasticlylily","scaredlylily","scoffinglylily","scornfullylily","seductivelylily","serenelylily","seriouslylily","sexylylily","shamedlylily","sharplylily","sheepishlylily","shrewdlylily","shylylyly","sighinglylily","sinisterlylily","skepticallylily","sleazylylily","sleepylylily","slicklylily","slimylylily","slowlylily","slylylyly","smoothlylily","smuglylily","snarkylylily","snidelylily","snipinglylily","snottylylily","sobbinglylily","softlylily","solemnlylily","somberlylily","soothinglylily","sorrowfullylily","sourlylily","spinelesslylily","spitefullylily","squeakylylily","stubbornlylily","submissivelylily","suggestivelylily","surprisedlylily","suspiciouslylily","staggeringlylily","stammeringlylily","sternlylily","stupidlylily","stutteringlylily","suavelylily","suddenlylily","sweetlylily","sympatheticlylily","tactfullylily","tearfullylily","teasinglylily","tenderlylily","tentativelylily","tepidlylily","terselylily","thicklylily","thinlylily","thoughtfullylily","threateninglylily","timidlylily","tiredlylily","triumphantlylily","undecipherablelylily","understandinglylily","uneasylylily","unhappylylily","vacantlylily","warmlylily","warylylily","weaklylily","wearylylily","wheezinglylily","whininglylily","wiselylily","wistfullylily","worriedlylily","wrylylyly","aggravatedlily","aggressivelily","amusedlily","angrylily","annoyedlily","annoyinglily","anxiouslily","apologeticlily","appreciativelily","approvinglily","argumentativelily","arrogantlily","ashamedlily","audaciouslily","awedlily","awkwardlily","bashfullily","belligerentlily","bickeringlily","bitterlily","bluntlily","boredlily","boyishlily","brashlily","bravelily","breathlesslily","boldlily","brisklily","brokenlily","calmlily","carefullily","casuallily","causticlily","cautiouslily","cheerfullily","clearlily","cleverlily","coarselily","coldlily","commandinglily","competitivelily","concernedlily","condescendinglily","confidentlily","confusedlily","cordiallily","coughinglily","courageouslily","coylily","curiouslily","cursinglily","curtlily","cravenlily","crisplily","cruellily","crypticlily","cynicallily","darklily","dazedlily","deeplily","defensivelily","defiantlily","dejectedlily","demurelily","dimlily","disappointedlily","disapprovinglily","disenchantedlily","disgustedlily","dismissivelily","disrespectfullily","distractedlily","distantlily","dizzylily","dominantlily","domineeringlily","dreamylily","droninglily","drunkenlily","drylyly","dubiouslily","dulllily","embarrassedlily","emphaticlily","encouraginglily","enragedlily","enviouslily","exasperatedlily","excitedlily","expectantlily","exuberantlily","faintlily","fearfullily","firmlily","flatlily","flirtatiouslily","foolishlily","forlornlily","franklily","fretfullily","frustratedlily","fuminglily","furiouslily","gaspinglily","gentlily","girlishlily","gleefullily","glumlily","grufflily","grandlily","gratefullily","gravelily","greedylily","grimlily","growlinglily","grumpylily","gruntinglily","gutturallily","happylily","haltinglily","harshlily","haughtylily","heartlesslily","heroicallily","hesitantlily","hissinglily","hopefullily","humourouslily","hurriedlily","hushedlily","hyperlily","impatientlily","incoherentlily","incredulouslily","indistinctivelily","innocentlily","inquisitivelily","insistentlily","insolentlily","irritatedlily","jealouslily","jitterlily","jokinglily","jubilantlily","knowinglily","laconiclily","laughinglily","lazylily","lewdlily","lightlily","lithelily","lividlily","loudlily","lovinglily","lustfullily","madlily","majesticlily","maniacallily","mechanicallily","meeklily","melodicallily","menacinglily","merrylily","messylily","mindlesslily","mischievouslily","miserablelily","mockinglily","monotonouslily","moodylily","mournfullily","mutedlily","mysteriouslily","nasallily","negativelily","nervouslily","nonchalantlily","obnoxiouslily","obscuredlily","obstinatelily","ominouslily","passionatelily","passivelily","patheticlily","patientlily","pausinglily","peacefullily","pedanticlily","persistentlily","piouslily","placidlily","playfullily","pointedlily","politelily","pompouslily","poshlily","positivelily","preeminentlily","proudlily","psychoticlily","questioninglily","quicklily","quietlily","rabidlily","recklesslily","regretfullily","remorsefullily","resentfullily","resignedlily","respectfullily","rudelily","sadlily","sarcasticlily","scaredlily","scoffinglily","scornfullily","seductivelily","serenelily","seriouslily","sexylily","shamedlily","sharplily","sheepishlily","shrewdlily","shylyly","sighinglily","sinisterlily","skepticallily","sleazylily","sleepylily","slicklily","slimylily","slowlily","slylyly","smoothlily","smuglily","snarkylily","snidelily","snipinglily","snottylily","sobbinglily","softlily","solemnlily","somberlily","soothinglily","sorrowfullily","sourlily","spinelesslily","spitefullily","squeakylily","stubbornlily","submissivelily","suggestivelily","surprisedlily","suspiciouslily","staggeringlily","stammeringlily","sternlily","stupidlily","stutteringlily","suavelily","suddenlily","sweetlily","sympatheticlily","tactfullily","tearfullily","teasinglily","tenderlily","tentativelily","tepidlily","terselily","thicklily","thinlily","thoughtfullily","threateninglily","timidlily","tiredlily","triumphantlily","undecipherablelily","understandinglily","uneasylily","unhappylily","vacantlily","warmlily","warylily","weaklily","wearylily","wheezinglily","whininglily","wiselily","wistfullily","worriedlily","aggravatedly","aggressively","amusedly","angrily","annoyedly","annoyingly","anxiously","apologetically","appreciatively","approvingly","argumentatively","arrogantly","ashamedly","audaciously","awedly","awkwardly","bashfully","belligerently","bickeringly","bitterly","bluntly","boredly","boyishly","brashly","bravely","breathlessly","boldly","briskly","brokenly","calmly","carefully","casually","caustically","cautiously","cheerfully","clearly","cleverly","coarsely","coldly","commandingly","competitively","concernedly","condescendingly","confidently","confusedly","cordially","coughingly","courageously","coyly","curiously","cursingly","curtly","cravenly","crisply","cruelly","cryptically","cynically","darkly","dazedly","deeply","defensively","defiantly","dejectedly","demurely","dimly","disappointedly","disapprovingly","disenchantedly","disgustedly","dismissively","disrespectfully","distractedly","distantly","dizzily","dominantly","domineeringly","dreamily","droningly","drunkenly","dryly","dubiously","dully","embarrassedly","emphatically","encouragingly","enragedly","enviously","exasperatedly","excitedly","expectantly","exuberantly","faintly","fearfully","firmly","flatly","flirtatiously","foolishly","forlornly","frankly","fretfully","frustratedly","fumingly","furiously","gaspingly","gently","girlishly","gleefully","glumly","gruffly","grandly","gratefully","gravely","greedily","grimly","growlingly","grumpily","gruntingly","gutturally","happily","haltingly","harshly","haughtily","heartlessly","heroically","hesitantly","hissingly","hopefully","humourously","hurriedly","hushedly","hyperly","impatiently","incoherently","incredulously","indistinctively","innocently","inquisitively","insistently","insolently","irritatedly","jealously","jitterly","jokingly","jubilantly","knowingly","laconically","laughingly","lazily","lewdly","lightly","lithely","lividly","loudly","lovingly","lustfully","madly","majestically","maniacally","mechanically","meekly","melodically","menacingly","merrily","messily","mindlessly","mischievously","miserably","mockingly","monotonously","moodily","mournfully","mutedly","mysteriously","nasally","negatively","nervously","nonchalantly","obnoxiously","obscuredly","obstinately","ominously","passionately","passively","pathetically","patiently","pausingly","peacefully","pedantically","persistently","piously","placidly","playfully","pointedly","politely","pompously","poshly","positively","preeminently","proudly","psychotically","questioningly","quickly","quietly","rabidly","recklessly","regretfully","remorsefully","resentfully","resignedly","respectfully","rudely","sadly","sarcastically","scaredly","scoffingly","scornfully","seductively","serenely","seriously","sexily","shamedly","sharply","sheepishly","shrewdly","shyly","sighingly","sinisterly","skeptically","sleazily","sleepily","slickly","slimily","slowly","slyly","smoothly","smugly","snarkily","snidely","snipingly","snottily","sobbingly","softly","solemnly","somberly","soothingly","sorrowfully","sourly","spinelessly","spitefully","squeakily","stubbornly","submissively","suggestively","surprisedly","suspiciously","staggeringly","stammeringly","sternly","stupidly","stutteringly","suavely","suddenly","sweetly","sympathetically","tactfully","tearfully","teasingly","tenderly","tentatively","tepidly","tersely","thickly","thinly","thoughtfully","threateningly","timidly","tiredly","triumphantly","undecipherably","understandingly","uneasily","unhappily","vacantly","warmly","warily","weakly","wearily","wheezingly","whiningly","wisely","wistfully","worriedly"]</json>
- </var>
- <class name="TonesClass" enabled="false">
- <trigger priority="11310">
- <pattern>^(%d)~.(%s)(%w)(%s)(%d)~.(%s)(%w)(%s)(%d)~.(%s)(%w)(%s)(%d)~.(%s)(%w)(%s)</pattern>
- <value>#ADDITEM @//LotJShared/Comms/tones %3
- #ADDITEM @//LotJShared/Comms/tones %7
- #ADDITEM @//LotJShared/Comms/tones %11
- #ADDITEM @//LotJShared/Comms/tones %15</value>
- </trigger>
- <trigger priority="11350">
- <pattern>^~[H: (%d)/(%d)~] ~[M: (%d)/(%d)~] ~[OOC: (%d)~] ~[T: (*)~] ~[A: (*)~] ~[N: (*)~] ~[(*)~]$</pattern>
- <value>$adverbs = ""
- #FORALL @//LotjShared/Comms/tones {
- $adj = %i
- $adv = ""
- #SWITCH (%ends($adj, "le")) {$adv = %concat(%leftback($adj, 2), "ly")}
- (%ends($adj, "ll")) {$adv = %concat($adj, "y")}
- (%ends($adj, "ic")) {$adv = %concat($adj, "ally")}
- (%ends($adj,"y") AND !%match($adj, "*{a|e|i|o|u}y$") AND %match($adj, "*{a|e|i|o|u}*")) {$adv = %concat(%leftback($adj, 1), "ily")}
- {$adv = %concat($adj, "ly")}
- #T- TonesClass
- #ADDITEM $adverbs $adv
- }
- #VAR //LotjShared/Comms/tones $adverbs
- </value>
- </trigger>
- </class>
- <trigger priority="11340">
- <pattern>Complete list of speaking tones:</pattern>
- <value>#T+ TonesClass
- #VAR @//LotJShared/Comms/tones ""</value>
- </trigger>
- </class>
- <class name="IC">
- <class name="CommNet">
- <trigger priority="11190">
- <pattern>^CommNet (%d) ~[(*)~]: (*)</pattern>
- <value>// Sends commnet data to the Talk window.
- #CAPTURE Talk
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %2
- //$message = %3
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //CommNet Line [Name]: Message
- //Line: %1
- //Name: %2
- //Message: %3</value>
- </trigger>
- <trigger priority="11190">
- <pattern>^CommNet (%d) ~[(*)~]~( (*) ~): (*)</pattern>
- <value>// Sends commnet data to the Talk window.
- #CAPTURE Talk
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %2
- //$message = %4
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //CommNet Line [Name]( Tone ): Message
- //Line: %1
- //Name: %2
- //Tone: %3
- //Message: %4</value>
- </trigger>
- <trigger priority="11190">
- <pattern>^CommNet (%d) ~[(*)~]~( (*) ~)~<(*)~>: (*)</pattern>
- <value>// Sends commnet data to the Talk window.
- #CAPTURE Talk
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %2
- //$message = %5
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //CommNet Line [Name]( Tone )<Language>: Message
- //Line: %1
- //Name: %2
- //Tone: %3
- //Language: %4
- //Message: %5</value>
- </trigger>
- <trigger priority="11190">
- <pattern>^CommNet (%d) ~[(*)~]~<(*)~>: (*)</pattern>
- <value>// Sends commnet data to the Talk window.
- #CAPTURE Talk
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %2
- //$message = %4
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //CommNet Line [Name]<Language>: Message
- //Line: %1
- //Name: %2
- //Language: %3
- //Message: %4</value>
- </trigger>
- </class>
- <class name="Broadcast">
- <trigger priority="12680">
- <pattern>^Broadcasting Network ~[*~(*~)~]: *</pattern>
- <value>// Sends broadcast data to the Talk window.
- #CAPTURE Talk</value>
- </trigger>
- <trigger priority="12930">
- <pattern>^(*) has been captured by (*)!</pattern>
- <value>// Sends planetary capture information to the Talk window.
- #CAPTURE Talk</value>
- </trigger>
- </class>
- <class name="Clan">
- <trigger priority="11110">
- <pattern>^~(~[(*)~]~)~{(*)~}~<(*)~>~[(*)~]~( (*) ~): (*)</pattern>
- <value>// Sends clan data to the Clan window.
- #CAPTURE Clan
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %4
- //$message = %6
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //([Clan]){Branch}<Rank>[Name]( Tone ): Message
- //Line: %1
- //Branch: %2
- //Rank: %3
- //Name: %4
- //Tone: %5
- //Message: %6</value>
- </trigger>
- <trigger priority="11110">
- <pattern>^~(~[(*)~]~)~{(*)~}~<(*)~>~[(*)~]: (*)</pattern>
- <value>// Sends clan data to the Clan window.
- #CAPTURE Clan
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %4
- //$message = %5
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //([Clan]){Branch}<Rank>[Name]: Message
- //Line: %1
- //Branch: %2
- //Rank: %3
- //Name: %4
- //Message: %5</value>
- </trigger>
- <trigger priority="12770">
- <pattern>^~{(*)-~{(*)~}~<(*)~>~[(*)~]~( (*) ~)~<(*)~>: (*)</pattern>
- <value>// Sends clan data to the Clan window.
- #CAPTURE Clan
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %4
- //$message = %7
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //{Clan-{Branch}<Rank>[Name]( Tone )<Language>: Message
- //Line: %1
- //Branch: %2
- //Rank: %3
- //Name: %4
- //Tone: %5
- //Language: %6
- //Message: %7</value>
- </trigger>
- <trigger priority="12770">
- <pattern>^~{(*)-~{(*)~}~<(*)~>~[(*)~]~( (*) ~): (*)</pattern>
- <value>// Sends clan data to the Clan window.
- #CAPTURE Clan
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %4
- //$message = %6
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //{Clan-{Branch}<Rank>[Name]( Tone ): Message
- //Line: %1
- //Branch: %2
- //Rank: %3
- //Name: %4
- //Tone: %5
- //Message: %6</value>
- </trigger>
- <trigger priority="12770">
- <pattern>^~{(*)-~{(*)~}~<(*)~>~[(*)~]~<(*)~>: (*)</pattern>
- <value>// Sends clan data to the Clan window.
- #CAPTURE Clan
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %4
- //$message = %6
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //{Clan-{Branch}<Rank>[Name]<Language>: Message
- //Line: %1
- //Branch: %2
- //Rank: %3
- //Name: %4
- //Language: %5
- //Message: %6</value>
- </trigger>
- <trigger priority="12770">
- <pattern>^~{(*)-~{(*)~}~<(*)~>~[(*)~]: (*)</pattern>
- <value>// Sends clan data to the Clan window.
- #CAPTURE Clan
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %4
- //$message = %5
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //{Clan-{Branch}<Rank>[Name]: Message
- //Line: %1
- //Branch: %2
- //Rank: %3
- //Name: %4
- //Message: %5</value>
- </trigger>
- <class name="ClanTo">
- <trigger priority="11170">
- <pattern>^~[(*)~]$~{(*)~}~<(*)~>~[(*)~]~( (*) ~): (*)</pattern>
- <value>// Sends clanmessage data to the Clan window.
- #CAPTURE Clan
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %4
- //$message = %6
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //[Incoming/Outgoing Transmission from/to Clan]
- //{Branch}<Rank>[Name]( Tone ): Message
- //Line: %1
- //Branch: %2
- //Rank: %3
- //Name: %4
- //Tone: %5
- //Message: %6</value>
- </trigger>
- <trigger priority="11170">
- <pattern>^~[(*)~]$~{(*)~}~<(*)~>~[(*)~]: (*)</pattern>
- <value>// Sends clanmessage data to the Clan window.
- #CAPTURE Clan
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %4
- //$message = %5
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //[Incoming/Outgoing Transmission from/to Clan]
- //{Branch}<Rank>[Name]: Message
- //Line: %1
- //Branch: %2
- //Rank: %3
- //Name: %4
- //Message: %5</value>
- </trigger>
- <trigger priority="11170">
- <pattern>^~[(*)~]$~{(*)~}~<(*)~>~[(*)~]~( (*) ~)~<(*)~>: (*)</pattern>
- <value>// Sends clanmessage data to the Clan window.
- #CAPTURE Clan
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %4
- //$message = %7
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //[Incoming/Outgoing Transmission from/to Clan]
- //{Branch}<Rank>[Name]( Tone )<Language>: Message
- //Line: %1
- //Branch: %2
- //Rank: %3
- //Name: %4
- //Tone: %5
- //Language: %6
- //Message: %7</value>
- </trigger>
- <trigger priority="11170">
- <pattern>^~[(*)~]$~{(*)~}~<(*)~>~[(*)~]~<(*)~>: (*)</pattern>
- <value>// Sends clanmessage data to the Clan window.
- #CAPTURE Clan
- // Data below is for a comm database I'm working on... slowly.
- //$line = %1
- //$name = %4
- //$message = %6
- //$timedcomms = {}
- //#ADDKEY $timedcomms time %time("mm-dd hh:nn:ss")
- //#ADDKEY $timedcomms channel $line
- //#ADDKEY $timedcomms name $name
- //#ADDKEY $timedcomms message $message
- //#ADDITEM @//LotJShared/Comms/commslog $timedcomms
- //#ADDITEM @//LotJShared/Comms/lognames $name
- //[Incoming/Outgoing Transmission from/to Clan]
- //{Branch}<Rank>[Name]( Tone )<Language>: Message
- //Line: %1
- //Branch: %2
- //Rank: %3
- //Name: %4
- //Language: %5
- //Message: %6</value>
- </trigger>
- <trigger priority="12950">
- <pattern>^~[Incoming Transmission from (*)~]</pattern>
- <value>// Sends clanmessage data to the Clan window.
- #CAPTURE Clan</value>
- </trigger>
- <trigger priority="12950">
- <pattern>^~[Outgoing Transmission to (*)~]</pattern>
- <value>// Sends clanmessage data to the Clan window.
- #CAPTURE Clan</value>
- </trigger>
- </class>
- </class>
- </class>
- <class name="OOC">
- <class name="IMM">
- <trigger priority="12540">
- <pattern>^~( IMM | CHAT ~)~[*~]: '*'</pattern>
- <value>// Sends your IMMCHAT data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- <trigger priority="12550">
- <pattern>^~( IMM | CHAT ~) * mortchats to you '*'</pattern>
- <value>// Sends IMMCHAT data to the OOC window.
- #CAPTURE OOC
- // Audible loud beep and bright message display on main screen in the event you are cargo botting or scrolling or whatnot.
- #BEEP 25
- #PRINT YOU ARE RECEIVING A MESSAGE FROM AN IMMORTAL!</value>
- </trigger>
- </class>
- <class name="RPC">
- <trigger priority="12580">
- <pattern>^~(R|P|C~) * says to you '*'</pattern>
- <value>// Sends RPC data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- <trigger priority="12590">
- <pattern>^~(R|P|C~) ~[*~]: *</pattern>
- <value>// Sends RPC data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- </class>
- <class name="OSay">
- <trigger priority="12560">
- <pattern>^~(OOC~) * says '*'</pattern>
- <value>// Sends Osay data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- <trigger priority="12560">
- <pattern>^~(OOC~) You say '*'</pattern>
- <value>// Sends Osay data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- </class>
- <class name="Tells">
- <trigger priority="70">
- <pattern>^~(*~) You tell %w '*'</pattern>
- <value>// Sends Tell data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- <trigger priority="80">
- <pattern>^~(*~) ~@%w tells you '*'</pattern>
- <value>// Sends Tell data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- <trigger priority="90">
- <pattern>^~(*~) %w tells you '*'</pattern>
- <value>// Sends Tell data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- </class>
- <trigger priority="90">
- <pattern>^~(OOC~) (*): (*)</pattern>
- <value>// Sends OOC data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- <trigger priority="90">
- <pattern>^~(NEWBIE~) (*): (*)</pattern>
- <value>// Sends OOC data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- <trigger priority="90">
- <pattern>^~(IMM~) (*): (*)</pattern>
- <value>// Sends OOC data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- <trigger priority="90">
- <pattern>^~(RPC~) (*): (*)</pattern>
- <value>// Sends OOC data to the OOC window.
- #CAPTURE OOC</value>
- </trigger>
- </class>
- <class name="Maintenance">
- <alias name="clearooc">
- <value>// Clears the buffer out of the OOC capture window.
- :OOC:clear</value>
- </alias>
- <alias name="cleartalk">
- <value>// Clears the buffer out of the Talk capture window.
- :Talk:clear</value>
- </alias>
- <alias name="clearclan">
- <value>// Clears the buffer out of the Clan capture window.
- :Clan:clear</value>
- </alias>
- <alias name="clearall">
- <value>// Clears the buffer out of all capture windows.
- :Clan:clear
- :Talk:clear
- :OOC:clear</value>
- </alias>
- </class>
- </class>
- <class name="CharacterSpecific">
- <trigger priority="14990">
- <pattern>~(C~)haracters associated with account:</pattern>
- <value>// Opens up the folder that will capture your character names.
- #T+ CharactersCapture</value>
- </trigger>
- <class name="CharactersCapture" enabled="false">
- <trigger priority="15010">
- <pattern>^~(1~) - (*)</pattern>
- <value>// Captures your character name depending on which slot they occupy. Up to 9 characters are supported.
- #VAR Character1 (%1)</value>
- </trigger>
- <trigger priority="15010">
- <pattern>^~(2~) - (*)</pattern>
- <value>// Captures your character name depending on which slot they occupy. Up to 9 characters are supported.
- #VAR Character2 (%1)</value>
- </trigger>
- <trigger priority="15010">
- <pattern>^~(3~) - (*)</pattern>
- <value>// Captures your character name depending on which slot they occupy. Up to 9 characters are supported.
- #VAR Character3 (%1)</value>
- </trigger>
- <trigger priority="15010">
- <pattern>^~(4~) - (*)</pattern>
- <value>// Captures your character name depending on which slot they occupy. Up to 9 characters are supported.
- #VAR Character4 (%1)</value>
- </trigger>
- <trigger priority="15010">
- <pattern>^~(5~) - (*)</pattern>
- <value>// Captures your character name depending on which slot they occupy. Up to 9 characters are supported.
- #VAR Character5 (%1)</value>
- </trigger>
- <trigger priority="15010">
- <pattern>^~(6~) - (*)</pattern>
- <value>// Captures your character name depending on which slot they occupy. Up to 9 characters are supported.
- #VAR Character6 (%1)</value>
- </trigger>
- <trigger priority="15010">
- <pattern>^~(7~) - (*)</pattern>
- <value>// Captures your character name depending on which slot they occupy. Up to 9 characters are supported.
- #VAR Character7 (%1)</value>
- </trigger>
- <trigger priority="15010">
- <pattern>^~(8~) - (*)</pattern>
- <value>// Captures your character name depending on which slot they occupy. Up to 9 characters are supported.
- #VAR Character8 (%1)</value>
- </trigger>
- <trigger priority="15010">
- <pattern>^~(9~) - (*)</pattern>
- <value>// Captures your character name depending on which slot they occupy. Up to 9 characters are supported.
- #VAR Character9 (%1)</value>
- </trigger>
- </class>
- <class name="CharacterSelector">
- <var name="Character1Active">0</var>
- <var name="Character1"></var>
- <var name="Character2"></var>
- <var name="Character3"></var>
- <var name="Character4"/>
- <var name="Character5"/>
- <var name="Character6"/>
- <var name="Character7"/>
- <var name="Character8"/>
- <var name="Character9"/>
- <var name="Character2Active">0</var>
- <var name="Character3Active">1</var>
- <var name="Character4Active">0</var>
- <var name="Character5Active">0</var>
- <var name="Character6Active">0</var>
- <var name="Character7Active">0</var>
- <var name="Character8Active">0</var>
- <var name="Character9Active">0</var>
- </class>
- <trigger priority="16320">
- <pattern>~(R~)econnecting.</pattern>
- <value>// Turns off capturing character names.
- #T- CharactersCapture
- // Waits 3 seconds, then determines which character number is active.
- #WA 3000
- #IF (@CHARACTERNAME = @CHARACTER1) {#VAR CHARACTER1ACTIVE (1)} {#VAR CHARACTER1ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER2) {#VAR CHARACTER2ACTIVE (1)} {#VAR CHARACTER2ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER3) {#VAR CHARACTER3ACTIVE (1)} {#VAR CHARACTER3ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER4) {#VAR CHARACTER4ACTIVE (1)} {#VAR CHARACTER4ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER5) {#VAR CHARACTER5ACTIVE (1)} {#VAR CHARACTER5ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER6) {#VAR CHARACTER6ACTIVE (1)} {#VAR CHARACTER6ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER7) {#VAR CHARACTER7ACTIVE (1)} {#VAR CHARACTER7ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER8) {#VAR CHARACTER8ACTIVE (1)} {#VAR CHARACTER8ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER9) {#VAR CHARACTER9ACTIVE (1)} {#VAR CHARACTER9ACTIVE (0)}
- bot start
- //study @currentlystudying
- group all
- refresh
- buildship @FocusFrame @FocusComponent
- #T- autolog</value>
- </trigger>
- <trigger priority="16320">
- <pattern>~(L~)ast connected from:</pattern>
- <value>// Turns off capturing character names.
- #T- CharactersCapture
- // Waits 3 seconds, then determines which character number is active.
- #WA 3000
- #IF (@CHARACTERNAME = @CHARACTER1) {#VAR CHARACTER1ACTIVE (1)} {#VAR CHARACTER1ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER2) {#VAR CHARACTER2ACTIVE (1)} {#VAR CHARACTER2ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER3) {#VAR CHARACTER3ACTIVE (1)} {#VAR CHARACTER3ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER4) {#VAR CHARACTER4ACTIVE (1)} {#VAR CHARACTER4ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER5) {#VAR CHARACTER5ACTIVE (1)} {#VAR CHARACTER5ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER6) {#VAR CHARACTER6ACTIVE (1)} {#VAR CHARACTER6ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER7) {#VAR CHARACTER7ACTIVE (1)} {#VAR CHARACTER7ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER8) {#VAR CHARACTER8ACTIVE (1)} {#VAR CHARACTER8ACTIVE (0)}
- #IF (@CHARACTERNAME = @CHARACTER9) {#VAR CHARACTER9ACTIVE (1)} {#VAR CHARACTER9ACTIVE (0)}
- bot start
- //study @currentlystudying
- group all
- refresh
- buildship @FocusFrame @FocusComponent
- #T- autolog</value>
- </trigger>
- </class>
- <class name="CargoPlugin">
- <notes>Script written by @Xerakon.</notes>
- <class name="CargoTransactions">
- <trigger priority="3100">
- <pattern>^You sell 2000 units of (*).</pattern>
- <value>// Waits a standard amount of time for planetary funds to refresh, then sells the next 2000 units of cargo.
- #WAIT 30000
- sellcargo @CargoShip @SellCargo 2000</value>
- </trigger>
- <trigger priority="3120">
- <pattern>^The planets funds can't support such a sale!</pattern>
- <value>// If there are no planet funds, waits 30 seconds, then tries to sell again.
- #WAIT 30000
- sellcargo @CargoShip @SellCargo 2000</value>
- </trigger>
- <trigger priority="3140">
- <pattern>^You're not carrying any of the resource onboard!</pattern>
- <value>// Determines when your cargo pods are empty, and buys your next cargo to full amount, depending on which ship you're using.
- #IF (@CargoShipType = yg) {buycargo @CargoShip @BuyCargo 3000}
- #IF (@CargoShipType = gr) {buycargo @CargoShip @BuyCargo 13000}</value>
- </trigger>
- <trigger priority="4020">
- <pattern>^You dont have that much onboard your ship!</pattern>
- <value>// Drops amount from 2000 to 1000 to help complete selling.
- sellcargo @CargoShip @SellCargo 1000</value>
- </trigger>
- <trigger priority="3100">
- <pattern>^You sell 1000 units of (*).</pattern>
- <value>// Once you've sold the last 1000 units aboard your ship, this determines which ship you're using and buys the next cargo.
- #IF (@CargoShipType = yg) {buycargo @CargoShip @BuyCargo 3000}
- #IF (@CargoShipType = gr) {buycargo @CargoShip @BuyCargo 13000}</value>
- </trigger>
- <trigger priority="3160">
- <pattern>^You purchased (%d) units of (*).</pattern>
- <value>// Takes what is purchased and corrects it to meet lotj two-word requirements.
- #VAR SellCargo (@CargoConverter.%2)
- // Change out the cargo variables
- #IF (@SellCargo = @Cargo1) {#VAR BuyCargo (@Cargo2)} {#VAR BuyCargo (@Cargo1)}
- // Opening, entering, and launching the ship.
- openship
- #IF (@CargoShipType = yg) {yglaunchship}
- #IF (@CargoShipType = gr) {grlaunchship}</value>
- </trigger>
- <trigger priority="10530">
- <pattern>^You earned (%d) credits from the sale and pay (%d) in taxes.</pattern>
- <value>// Calculates Sell and Tax totals from selling cargo, then updates the total amount.
- CargoSellTotal = @CargoSellTotal + %1
- CargoTaxTotal = @CargoTaxTotal + %2
- CargoTotal = @CargoSellTotal - @CargoBuyTotal - @CargoTaxTotal</value>
- </trigger>
- <trigger priority="10540">
- <pattern>^It cost you (%d) credits total, (%d) credits in tax.</pattern>
- <value>// This trigger is messed up on the MUD. Taxes does not warrant a separate variable, so we're just calculating the sale and total.
- CargoBuyTotal = @CargoBuyTotal + %1
- CargoTotal = @CargoSellTotal - @CargoBuyTotal - @CargoTaxTotal</value>
- </trigger>
- </class>
- <class name="CargoVariables">
- <var name="CargoShip"></var>
- <var name="LandingPads" type="Record">
- <value>ord=land ord ord|nim=land nim bagsho|nal=land nal glor|nal hutta=land nal glor|alderaan=land alderaan garage|naboo=land naboo theed|dantooine=land dantooine enclave|ord mantell=land ord ord|nim drovis=land nim bagsho|lorrd=land lorrd what|wroona=land wroona trade|arkania=land arkania ada|corellia=land corellia alpha|coruscant=land coruscant cargo|ryloth=land ryloth space|kashyyyk=land kashyyyk rwook|kuat=land kuat kuat|bespin=land bespin platform|tatooine=land tatooine mos</value>
- <json>{"ord":"land ord ord","nim":"land nim bagsho","nal":"land nal glor","nal hutta":"land nal glor","alderaan":"land alderaan garage","naboo":"land naboo theed","dantooine":"land dantooine enclave","ord mantell":"land ord ord","nim drovis":"land nim bagsho","lorrd":"land lorrd what","wroona":"land wroona trade","arkania":"land arkania ada","corellia":"land corellia alpha","coruscant":"land coruscant cargo","ryloth":"land ryloth space","kashyyyk":"land kashyyyk rwook","kuat":"land kuat kuat","bespin":"land bespin platform","tatooine":"land tatooine mos"}</json>
- </var>
- <var name="CargoPlanet1"></var>
- <var name="CargoPlanet2"></var>
- <var name="Cargo1"></var>
- <var name="Cargo2"></var>
- <var name="SellCargo"></var>
- <var name="BuyCargo"></var>
- <var name="PlanetCheck" type="Record">
- <value>Kamino System=Kamino|Khomm System=Khomm|Kuat System=Kuat|Chommell Sector=Naboo|Coruscant Sector=Coruscant|Tatoo System=Tatooine|Perave System=Arkania|Kanz Sector=Lorrd|Raioballo Sector=Dantooine|Ryloth System=Ryloth|Wroona System=Wroona|Bright Jewel System=Ord|Hutt Space=Nal|Anoat Sector=Bespin|Mytaranor Sector=Kashyyyk|Meridian Sector=Nim|Alderaan System=Alderaan|Corellian System=Corellia</value>
- <json>{"Kamino System":"Kamino","Khomm System":"Khomm","Kuat System":"Kuat","Chommell Sector":"Naboo","Coruscant Sector":"Coruscant","Tatoo System":"Tatooine","Perave System":"Arkania","Kanz Sector":"Lorrd","Raioballo Sector":"Dantooine","Ryloth System":"Ryloth","Wroona System":"Wroona","Bright Jewel System":"Ord","Hutt Space":"Nal","Anoat Sector":"Bespin","Mytaranor Sector":"Kashyyyk","Meridian Sector":"Nim","Alderaan System":"Alderaan","Corellian System":"Corellia"}</json>
- </var>
- <var name="CargoConverter" type="Record">
- <value>precious metals='precious metals'|weapons=weapons|livestock=livestock|tibanna gas='tibanna gas'|medical supplies='medical supplies'|water=water|goods=goods|lumber=lumber|food=food|spice=spice|electronics=electronics</value>
- <json>{"precious metals":"'precious metals'","weapons":"weapons","livestock":"livestock","tibanna gas":"'tibanna gas'","medical supplies":"'medical supplies'","water":"water","goods":"goods","lumber":"lumber","food":"food","spice":"spice","electronics":"electronics"}</json>
- </var>
- <var name="CargoShipType"></var>
- <var name="CargoSellTotal"></var>
- <var name="CargoBuyTotal"></var>
- <var name="CargoTaxTotal"></var>
- <var name="CargoTotal"></var>
- </class>
- <class name="CargoShortcuts">
- <alias name="openship">
- <value>// Refuels and enters your ship.
- refuel @CargoShip full
- open @CargoShip
- enter @CargoShip
- close</value>
- </alias>
- <alias name="yglaunchship">
- <value>// Determines standard pathing for entering and launching a YG-4210.
- e
- u
- n
- pilot
- autop
- launch</value>
- </alias>
- <alias name="ygexitship">
- <value>// Determines standard pathing for exitting and closing a YG-4210.
- s
- d
- w
- open
- leave
- close @CargoShip</value>
- </alias>
- <alias name="grexitship">
- <value>// Determines standard pathing for exitting and closing a GR-75.
- s
- 1
- open
- leave
- close @CargoShip</value>
- </alias>
- <alias name="grlaunchship">
- <value>// Determines standard pathing for entering and launching a GR-75.
- n
- 5
- pilot
- autop
- launch</value>
- </alias>
- </class>
- <class name="CargoFlying">
- <trigger priority="1360">
- <pattern>^Landing sequence complete.</pattern>
- <value>// Selects ship type to determine exit pathing, then exits.
- #IF (@CargoShipType = yg) {ygexitship}
- #IF (@CargoShipType = gr) {grexitship}
- // Begins cargo selling process.
- sellcargo @CargoShip @SellCargo 2000</value>
- </trigger>
- <trigger priority="1370">
- <pattern>^The ship lurches slightly as it comes out of hyperspace.</pattern>
- <value>// Vectors you towards the planet in the system (determined by MSDP) you have entered. I've had no issues with the MUD not updating MSDP quickly enough, but I've added in a 1 second wait in the event that there is some system lag. You can remove or modify this in the event that you always have no lag, or have a lot of it. The planet vector database can be altered in CargoVariables/PlanetCheck. The only current exception is Nar Shaddaa. Exitting into Hutt Space will bring you to Nal Hutta, as Nar Shaddaa has no resources anyways. The IF check was added in to do 2 things: Remind you if you are not piloting, or, if you have left the cargo scripting running while aboard another person's ship.
- #WAIT 1000
- #IF (@PILOTING = 1) {vector @PlanetCheck.@SHIPSYSNAME} {save}</value>
- </trigger>
- <trigger priority="1410">
- <pattern>^Launch complete.</pattern>
- <value>// Waits for 60 seconds once launched to initiate hyperspace. If you wish, you can put a skill on line 2, such as study or whatever so that you're not wasting a minute.
- #WAIT 60000
- hyp</value>
- </trigger>
- <trigger priority="3190">
- <pattern>^You are too close to</pattern>
- <value>// Waits 15 seconds in the event of being too close to another ship to go to hyperspeed.
- #WAIT 15000
- hyp</value>
- </trigger>
- <trigger priority="8140">
- <pattern>^You can't figure out which lever to use.</pattern>
- <value>// Added as a general failure feature.
- hyp</value>
- </trigger>
- <trigger priority="1400">
- <pattern>^You begin orbitting (*).</pattern>
- <value>// Lands at a pad pre-selected in the CargoVariables/LandingPads variable by determining which planet you are orbitting. If you wish to change pads to land at each time, go into the file and change the pad name only.
- @LandingPads.%1
- // This calculates your return trip by determining which planet you are orbitting and comparing it to your two destinations.
- #IF (%upper(@CargoPlanet1) = %upper(%1)) {oc @CargoPlanet2} {oc @CargoPlanet1}
- // General safety features.
- shields
- recharge
- recharge
- autop</value>
- </trigger>
- <class name="CargoFirstLaunch" enabled="false">
- <trigger priority="17000">
- <pattern>^Launch complete.</pattern>
- <value>oc @CargoPlanet1
- #T- CargoFirstLaunch</value>
- </trigger>
- </class>
- </class>
- <class name="CargoSetupInfo">
- <alias name="cplanet1">
- <value><![CDATA[// Determines the first planet that you will move to. For example, if you are running cargo from Coruscant to Corellia, and you are beginning the script with an empty cargo on Coruscant, your first planet will be Corellia, and your second planet will be Coruscant. Planets must be specified as 1-word. If the planet is 2-words, use only the 1st word of it.
- #VAR CargoPlanet1 (%1)
- // Confirms your variable change.
- #PRINT
- #PRINT <color red>First planet set to:</color><color lightgrey> @CargoPlanet1</color>
- #PRINT]]></value>
- </alias>
- <alias name="cplanet2">
- <value><![CDATA[// Determines the second planet that you will move to. For example, if you are running cargo from Coruscant to Corellia, and you are beginning the script with an empty cargo on Coruscant, your first planet will be Coruscant, and your second planet will be Corellia. Planets must be specified as 1-word. If the planet is 2-words, use only the 1st word of it.
- #VAR CargoPlanet2 (%1)
- // Confirms your variable change.
- #PRINT
- #PRINT <color red>Second planet set to:</color><color lightgrey> @CargoPlanet2</color>
- #PRINT]]></value>
- </alias>
- <alias name="cargo1">
- <value><![CDATA[// Determines the cargo you will sell on your first planet. For example, if you are running cargo from Coruscant to Corellia, and you want to sell Tibanna gas on Coruscant and Goods on Corellia, and you are beginning the script with an empty cargo on Coruscant, your first planet will be Corellia, and your first cargo will be Goods. Cargo must be specified as 1-word. If the resource is 2-words, use only the 1st word of them.
- #VAR Cargo1 (%1)
- // These convert entries into their two-word equivalents, if necessary.
- #IF (%1 = tibanna) {#VAR Cargo1 ('tibanna gas')}
- #IF (%1 = medical) {#VAR Cargo1 ('medical supplies')}
- #IF (%1 = precious) {#VAR Cargo1 ('precious metals')}
- // Sets your variable to be correct when you buy cargo and launch for the first time.
- #VAR BuyCargo (@Cargo1)
- // Confirms your variable change.
- #PRINT
- #PRINT <color red>First cargo set to:</color><color lightgrey> @Cargo1</color>
- #PRINT]]></value>
- </alias>
- <alias name="cargo2">
- <value><![CDATA[// Determines the cargo you will sell on your second planet. For example, if you are running cargo from Coruscant to Corellia, and you want to sell Tibanna gas on Coruscant and Goods on Corellia, and you are beginning the script with an empty cargo on Coruscant, your second planet will be Coruscant, and your second cargo will be Tibanna. Cargo must be specified as 1-word. If the resource is 2-words, use only the 1st word of them.
- #VAR Cargo2 (%1)
- // These convert entries into their two-word equivalents, if necessary.
- #IF (%1 = tibanna) {#VAR Cargo2 ('tibanna gas')}
- #IF (%1 = medical) {#VAR Cargo2 ('medical supplies')}
- #IF (%1 = precious) {#VAR Cargo2 ('precious metals')}
- // Sets your variable to be correct when you buy cargo and launch for the first time.
- #VAR SellCargo (@Cargo2)
- // Confirms your variable change.
- #PRINT
- #PRINT <color red>Second cargo set to:</color><color lightgrey> @Cargo2</color>
- #PRINT]]></value>
- </alias>
- <alias name="cshipname">
- <value><![CDATA[// Sets the name of the ship you will be using for your cargo running.
- #VAR CargoShip (%1)
- // Confirms your variable change.
- #PRINT
- #PRINT <color red>Ship name set to:</color><color lightgrey> @CargoShip</color>
- #PRINT]]></value>
- </alias>
- <alias name="cshiptype">
- <value><![CDATA[// Sets the type of ship you will be using for your cargo running in order to determine entry and exit pathing and cargo values. Use only the letter designation of the ship (IE: YG-4210 will be yg).
- #VAR CargoShipType (%1)
- // In the event that people don't understand directions, this will help to convert typical designations. However, this will not work in the future when ships are changed and I add more functionality.
- #IF (%1 = YG-4210) {#VAR CargoShipType (yg)}
- #IF (%1 = YG4210) {#VAR CargoShipType (yg)}
- #IF (%1 = GR-75) {#VAR CargoShipType (gr)}
- #IF (%1 = GR75) {#VAR CargoShipType (gr)}
- // Confirms your variable change.
- #PRINT
- #PRINT <color red>Ship type set to:</color><color lightgrey> @CargoShipType</color>
- #PRINT]]></value>
- </alias>
- <alias name="cstart">
- <value>// Displays start. Will be used to turn on more options in later versions.
- #PRINT
- #PRINT <color red>Starting cargo session.</color>
- #PRINT
- // Enables the CargoFirstLaunch folder, which ensures to calculate your jump to your first planet destination upon launch.
- #T+ CargoFirstLaunch
- // Buys your first cargo to full amount, depending on which ship you're using.
- #IF (@CargoShipType = yg) {buycargo @CargoShip @BuyCargo 3000}
- #IF (@CargoShipType = gr) {buycargo @CargoShip @BuyCargo 13000}</value>
- </alias>
- <alias name="csetup">
- <value><![CDATA[#PRINT
- #PRINT
- #PRINT <color red>Xerakon's Cargo Script v1.0</color>
- #PRINT <color lightgrey>---------------------------</color>
- #PRINT
- #PRINT <color red>All of the commands below must be input to ensure a profitable cargo session.</color>
- #PRINT <color red>Sessions must be started on pad, next to your ship, with the cargo holds empty.</color>
- #PRINT <color red>NOTE: All entries MUST be ONE word. No punctuation either!</color>
- #PRINT
- #PRINT <color red>EXAMPLE:</color>
- #PRINT <color red>You have a GR-75 Medium Transport 'CargoPimp'.</color>
- #PRINT <color red>You wish to run cargo between Coruscant and Corellia.</color>
- #PRINT <color red>You will sell Tibanna Gas on Coruscant, and Goods on Corellia.</color>
- #PRINT <color red>You are standing on Coruscant, next to your ship, with its cargo pods empty.</color>
- #PRINT
- #PRINT <color lightgrey>csetup</color>
- #PRINT <color red>Brings up this dialog and shows variable settings once entered.</color>
- #PRINT
- #PRINT <color lightgrey>cshiptype</color><color red> ~(<color lightgrey>type~</color><color red>)</color>
- #PRINT <color red>Currently: [</color><color lightgrey>@CargoShipType</color><color red>]</color>
- #PRINT <color red>Determines the type of the cargo ship you are using.</color>
- #PRINT <color red>In the example, this entry will be </color><color lightgrey>GR.</color>
- #PRINT
- #PRINT <color lightgrey>cshipname</color><color red> ~(<color lightgrey>name~</color><color red>)</color>
- #PRINT <color red>Currently: [</color><color lightgrey>@CargoShip</color><color red>]</color>
- #PRINT <color red>Determines the name of the cargo ship you are using.</color>
- #PRINT <color red>In the example, this entry will be </color><color lightgrey>CargoPimp.</color>
- #PRINT
- #PRINT <color lightgrey>cplanet1</color><color red> ~(<color lightgrey>planet~</color><color red>)</color>
- #PRINT <color red>Currently: [</color><color lightgrey>@CargoPlanet1</color><color red>]</color>
- #PRINT <color red>Determines the first planet of your session.</color>
- #PRINT <color red>In the example, this entry will be </color><color lightgrey>Corellia.</color>
- #PRINT
- #PRINT <color lightgrey>cplanet2</color><color red> ~(<color lightgrey>planet~</color><color red>)</color>
- #PRINT <color red>Currently: [</color><color lightgrey>@CargoPlanet2</color><color red>]</color>
- #PRINT <color red>Determines the second planet of your session.</color>
- #PRINT <color red>In the example, this entry will be </color><color lightgrey>Coruscant.</color>
- #PRINT
- #PRINT <color lightgrey>cargo1</color><color red> ~(<color lightgrey>resource~</color><color red>)</color>
- #PRINT <color red>Currently: [</color><color lightgrey>@Cargo1</color><color red>]</color>
- #PRINT <color red>Determines the resource to sell on the first planet of your session.</color>
- #PRINT <color red>In the example, this entry will be </color><color lightgrey>Goods.</color>
- #PRINT
- #PRINT <color lightgrey>cargo2</color><color red> ~(<color lightgrey>resource~</color><color red>)</color>
- #PRINT <color red>Currently: [</color><color lightgrey>@Cargo2</color><color red>]</color>
- #PRINT <color red>Determines the resource to sell on the second planet of your session.</color>
- #PRINT <color red>In the example, this entry will be </color><color lightgrey>Tibanna.</color>
- #PRINT
- #PRINT <color lightgrey>cstart</color>
- #PRINT <color red>Begins your cargo session if all variables are entered.</color>
- #PRINT
- #PRINT]]></value>
- </alias>
- <alias name="cclearroute">
- <value>#VAR CargoPlanet1 (0)
- #VAR CargoPlanet2 (0)
- #VAR Cargo1 (0)
- #VAR Cargo2 (0)
- #VAR BuyCargo (0)
- #VAR SellCargo (0)
- #VAR CargoShipType (0)
- #VAR CargoShip (0)
- #PRINT
- #PRINT <color red>All cargo variables cleared. Please input new data.</color>
- #PRINT</value>
- </alias>
- <alias name="cmoney">
- <value><![CDATA[#PRINT
- #PRINT <color red>Your cargo payout:</color>
- #PRINT
- #PRINT <color red>Sold:</color><color lightgrey> @CargoSellTotal</color>
- #PRINT <color red>Bought:</color><color lightgrey> @CargoBuyTotal</color>
- #PRINT <color red>Taxes:</color><color lightgrey> @CargoTaxTotal</color>
- #PRINT <color lightgrey>---------------------</color>
- #PRINT <color red>Total:</color><color lightgrey> @CargoTotal</color>
- #PRINT]]></value>
- </alias>
- <alias name="coweclan">
- <value><![CDATA[#PRINT
- #PRINT <color red>Using a 50% margin, you owe</color><color lightgrey> (@CargoTotal/2) </color><color red>credits to your clan.</color>
- #PRINT]]></value>
- </alias>
- <alias name="ccommands">
- <value><![CDATA[#PRINT
- #PRINT <color red>Available commands:</color>
- #PRINT
- #PRINT <color lightgrey>csetup</color>
- #PRINT <color red>Brings up the initial dialog and shows variable settings once entered.</color>
- #PRINT
- #PRINT <color lightgrey>cshiptype</color><color red> ~(<color lightgrey>type~</color><color red>)</color>
- #PRINT <color red>Determines the type of the cargo ship you are using.</color>
- #PRINT
- #PRINT <color lightgrey>cshipname</color><color red> ~(<color lightgrey>name~</color><color red>)</color>
- #PRINT <color red>Determines the name of the cargo ship you are using.</color>
- #PRINT
- #PRINT <color lightgrey>cplanet1</color><color red> ~(<color lightgrey>planet~</color><color red>)</color>
- #PRINT <color red>Determines the first planet of your session.</color>
- #PRINT
- #PRINT <color lightgrey>cplanet2</color><color red> ~(<color lightgrey>planet~</color><color red>)</color>
- #PRINT <color red>Determines the second planet of your session.</color>
- #PRINT
- #PRINT <color lightgrey>cargo1</color><color red> ~(<color lightgrey>resource~</color><color red>)</color>
- #PRINT <color red>Determines the resource to sell on the first planet of your session.</color>
- #PRINT
- #PRINT <color lightgrey>cargo2</color><color red> ~(<color lightgrey>resource~</color><color red>)</color>
- #PRINT <color red>Determines the resource to sell on the second planet of your session.</color>
- #PRINT
- #PRINT <color lightgrey>cstart</color>
- #PRINT <color red>Begins your cargo session if all variables are entered.</color>
- #PRINT
- #PRINT <color lightgrey>cclearroute</color>
- #PRINT <color red>Resets your cargo route variables, including planets, cargos, and ship information.</color>
- #PRINT
- #PRINT <color lightgrey>ccommands</color>
- #PRINT <color red>Shows all commands available through XCargo.</color>
- #PRINT
- #PRINT <color lightgrey>cmoney</color>
- #PRINT <color red>Shows the credits breakdown for your session.</color>
- #PRINT
- #PRINT <color lightgrey>coweclan</color>
- #PRINT <color red>Shows how much you owe your clan at the standard 50% rate from what you have made this session.</color>
- #PRINT
- #PRINT <color lightgrey>cclearmoney</color>
- #PRINT <color red>Resets your credit variables.</color>
- #PRINT ]]></value>
- </alias>
- <alias name="cclearmoney">
- <value>#VAR CargoBuyTotal (0)
- #VAR CargoSellTotal (0)
- #VAR CargoTaxTotal (0)
- #VAR CargoTotal (0)
- #PRINT
- #PRINT <color red>All credit variables cleared.</color>
- #PRINT</value>
- </alias>
- </class>
- </class>
- <class name="Development" enabled="false">
- <class name="BotPlugin" enabled="false">
- <class name="BotVariables">
- <var name="Character1BotTime"/>
- <var name="Character2BotTime"/>
- <var name="Character9BotTime"/>
- <var name="Character3BotTime"/>
- <var name="Character4BotTime"/>
- <var name="Character5BotTime"/>
- <var name="Character6BotTime"/>
- <var name="Character7BotTime"/>
- <var name="Character8BotTime"/>
- <var name="Character1BotCDTime">
- <default>0</default>
- </var>
- <var name="Character2BotCDTime">
- <default>0</default>
- </var>
- <var name="Character3BotCDTime">
- <default>0</default>
- </var>
- <var name="Character4BotCDTime">
- <default>0</default>
- </var>
- <var name="Character5BotCDTime">
- <default>0</default>
- </var>
- <var name="Character6BotCDTime">
- <default>0</default>
- </var>
- <var name="Character7BotCDTime">
- <default>0</default>
- </var>
- <var name="Character8BotCDTime">
- <default>0</default>
- </var>
- <var name="Character9BotCDTime">
- <default>0</default>
- </var>
- <trigger priority="17660">
- <pattern>bobyo</pattern>
- <value>#IF (@BotCDTime<=0) {
- #IF (@Character1Active=1) {#T- Character1BotTime
- #T- BotCDCountdown
- #T- BotCDGauge
- } {
- #ADD BotCDTime -1
- }</value>
- </trigger>
- <var name="BottingActivity">buildship</var>
- </class>
- <class name="BotTriggers">
- <class name="Ponder">
- <trigger priority="350">
- <pattern>^You ponder for some time, but fail to figure anything out.</pattern>
- <value>ponder</value>
- </trigger>
- <trigger priority="360">
- <pattern>^You ponder for some time, and things seem clearer.</pattern>
- <value>ponder</value>
- </trigger>
- </class>
- <class name="Studying">
- <trigger priority="3280" enabled="false">
- <pattern>You are not ready to learn this skill.</pattern>
- <value>study @currentlystudying</value>
- </trigger>
- <var name="currentlystudying">makecutter</var>
- <trigger priority="3340">
- <pattern>You study it for some time, but fail to learn anything about it.</pattern>
- <value>study @currentlystudying</value>
- </trigger>
- <trigger priority="3350">
- <pattern>After some time studying you feel you know more.</pattern>
- <value>study @currentlystudying</value>
- </trigger>
- <alias name="stud">
- <value>study %1
- #VAR currentlystudying (%1)</value>
- </alias>
- </class>
- <trigger priority="3380">
- <pattern>^Copyover recovery complete.</pattern>
- <value>study @currentlystudying
- //ponder
- //buildship corvette hull</value>
- </trigger>
- <trigger priority="340">
- <pattern>^You may now bot again.</pattern>
- <value>afk
- bot start
- study @currentlystudying
- //ponder
- //buildship corvette hull</value>
- </trigger>
- <var name="BotCommand"/>
- <class name="Buildship"/>
- <class name="Save"/>
- <class name="Makearmor"/>
- <class name="Develop"/>
- </class>
- <class name="OldBotStuff">
- <button name="BotGauge" type="Gauge" autosize="false" width="250" height="50" autopos="false" left="0" top="723" toolbar="4" color="green" textcolor="white" gaugelowcol="maroon" gaugebackcol="gray" priority="6402" enabled="false">
- <caption>Bot Time Remaining: %format("&d:&02d:&02d", (@BotTime / 3600), %mod(@BotTime / 60, 60), %mod(@BotTime, 60)))</caption>
- <expr>@BotTime</expr>
- <gaugemax>7200</gaugemax>
- <gaugelow>900</gaugelow>
- </button>
- <var name="BotTime">
- <value>1483</value>
- <default>0</default>
- </var>
- <trigger priority="2600">
- <pattern>^You can bot on LOTJ for 2 hours legally.</pattern>
- <value>#T- StartBottingButton
- #T- BottingPausedButton
- #T- BottingCooldownButton
- #T+ PauseBottingButton
- #VAR BotTime {7200}
- #T+ BotCountdown
- #T- BotCDGauge
- #T+ BotGauge</value>
- </trigger>
- <trigger name="BotCountdown" type="Alarm" priority="7550" enabled="false">
- <pattern>*1</pattern>
- <value>#IF (@BotTime<=0) {#T- BotCountdown
- #T- BotGauge
- } {#ADD BotTime -1}</value>
- </trigger>
- <button name="StartBottingButton" autosize="false" width="250" height="50" autopos="false" top="674" toolbar="4" color="navy" textcolor="white" priority="614" enabled="false">
- <caption>Start Botting</caption>
- <value>bot start</value>
- </button>
- <trigger priority="10760">
- <pattern>^Botting paused.</pattern>
- <value>#T- BottingCooldownButton
- #T- PauseBottingButton
- #T- StartBottingButton
- #T+ BottingPausedButton
- #T- BotCDGauge
- #T- BotCountdown
- </value>
- </trigger>
- <trigger priority="10770">
- <pattern>^Botting time limit reached.</pattern>
- <value>#T- PauseBottingButton
- #T- BottingPausedButton
- #T- StartBottingButton
- #T+ BottingCooldownButton
- #T- BotGauge
- #T+ BotCDGauge
- #VAR BotCDTime {1800}
- #T+ BotCDCountdown</value>
- </trigger>
- <var name="BotCDTime">
- <value>0</value>
- <default>0</default>
- </var>
- <trigger name="BotCDCountdown" type="Alarm" priority="7550" enabled="false">
- <pattern>*1</pattern>
- <value>#IF (@BotCDTime<=0) {#T- BotCDCountdown
- #T- BotCDGauge
- } {#ADD BotCDTime -1}</value>
- </trigger>
- <button name="BotCDGauge" type="Gauge" autosize="false" width="250" height="50" autopos="false" left="0" top="723" toolbar="4" color="teal" textcolor="white" gaugelowcol="#FFCC00" gaugebackcol="gray" priority="6400" enabled="false">
- <caption>Bot CD Time Remaining: %format("&d:&02d", (@BotCDTime/60), %mod(@BotCDTime,60))</caption>
- <expr>@BotCDTime</expr>
- <gaugemax>1800</gaugemax>
- <gaugelow>300</gaugelow>
- </button>
- <trigger priority="10860">
- <pattern>^You may now bot again.</pattern>
- <value>#T- BottingPausedButton
- #T- PauseBottingButton
- #T- BottingCooldownButton
- #T+ StartBottingButton
- #T- BotCDGauge
- #T+ BotGauge
- #T+ BotButton</value>
- </trigger>
- <button name="BottingPausedButton" autosize="false" width="250" height="50" autopos="false" top="674" toolbar="4" color="maroon" textcolor="white" border="black" priority="609" enabled="false">
- <caption>Botting Paused</caption>
- <value>bot start</value>
- </button>
- <trigger priority="10880">
- <pattern>^Botting resumed.</pattern>
- <value>#T- BottingCooldownButton
- #T+ PauseBottingButton
- #T- StartBottingButton
- #T- BottingPausedButton
- #T- BotCDGauge
- #T+ BotCountdown</value>
- </trigger>
- <trigger priority="10770">
- <pattern>^Botting session terminated.</pattern>
- <value>#T- PauseBottingButton
- #T- BottingPausedButton
- #T- StartBottingButton
- #T+ BottingCooldownButton
- #T- BotGauge
- #T+ BotCDGauge
- #VAR BotCDTime {1800}
- #T+ BotCDCountdown</value>
- </trigger>
- <button name="PauseBottingButton" autosize="false" width="250" height="50" autopos="false" top="674" toolbar="4" color="#FFCC00" textcolor="white" priority="612" enabled="false">
- <caption>Pause Botting</caption>
- <value>bot stop</value>
- </button>
- <button name="BottingCooldownButton" autosize="false" width="250" height="50" autopos="false" top="674" toolbar="4" color="maroon" textcolor="white" border="black" priority="606" enabled="false">
- <caption>Botting on Cooldown</caption>
- </button>
- </class>
- </class>
- <class name="ShipBuildPlugin">
- <class name="ShipBuildGags">
- <trigger priority="6750">
- <pattern>^(*) steps away from (*)</pattern>
- <value>#GAG</value>
- </trigger>
- <trigger priority="6760">
- <pattern>^(*) takes (*) tools and starts to work on (*)</pattern>
- <value>#GAG</value>
- </trigger>
- <trigger priority="6770">
- <pattern>^(*) droid assists (*)</pattern>
- <value>#GAG</value>
- </trigger>
- <trigger priority="10970">
- <pattern>^(*) gets Tetratech durasteel ship hull.</pattern>
- <value>#GAG</value>
- </trigger>
- <trigger priority="16540">
- <pattern>^You failed to learn anything.</pattern>
- <value>#GAG</value>
- </trigger>
- <trigger priority="17680">
- <pattern>^You receive (*) engineering experience.</pattern>
- <value>#GAG</value>
- </trigger>
- <trigger priority="17690">
- <pattern>^You gain (*) engineering experience.</pattern>
- <value>#GAG</value>
- </trigger>
- <trigger priority="17700">
- <pattern>^Your droid assists you!</pattern>
- <value>#GAG</value>
- </trigger>
- <trigger priority="17790">
- <pattern>^Your droid gains (%d) experience points.</pattern>
- <value>#GAG</value>
- </trigger>
- <trigger priority="18520">
- <pattern>^You get (%d) leadership experience for leading your group.</pattern>
- <value>#GAG</value>
- </trigger>
- </class>
- <class name="ShipBuildVariables">
- <var name="FocusFrame">frigate</var>
- <var name="FocusComponent">engines</var>
- <var name="Refreshed">1</var>
- </class>
- <class name="ShipBuildTriggers">
- <trigger priority="16430">
- <pattern>^You finish modifying the ship.</pattern>
- <value>buildship @FocusFrame @FocusComponent</value>
- </trigger>
- <trigger priority="16440">
- <pattern>^Where to begin? It all looks so complex...</pattern>
- <value>buildship @FocusFrame @FocusComponent</value>
- </trigger>
- <trigger priority="16480">
- <pattern>^You don't have a component like that.</pattern>
- <value>get 20 @FocusComponent
- buildship @FocusFrame @FocusComponent</value>
- </trigger>
- <trigger priority="16490">
- <pattern>^Your (*) doesnt need any more of that.</pattern>
- <value>#IF (@FocusComponent = hull) {#VAR FocusComponent (circuits)}
- #IF (@FocusComponent = circuits) {#VAR FocusComponent (weapons)}
- #IF (@FocusComponent = weapons) {#VAR FocusComponent (engines)}
- #IF (@FocusComponent = engines) {#VAR FocusComponent (hull)}</value>
- </trigger>
- <trigger priority="17800">
- <pattern>^You stop working on your new ship.</pattern>
- <value>buildship @FocusFrame @FocusComponent</value>
- </trigger>
- <trigger priority="17810">
- <pattern>^You feel refreshed.</pattern>
- <value>#VAR Refreshed (1)</value>
- </trigger>
- <trigger priority="17830">
- <pattern>^You can refresh your party again.</pattern>
- <value>refresh</value>
- </trigger>
- </class>
- <class name="ShipBuildCommands">
- <alias name="buildstart">
- <value>get 20 hull
- buildship %1 hull
- #VAR FocusFrame (%1)</value>
- </alias>
- </class>
- </class>
- <class name="XConfigMenu">
- <alias name="xconfig">
- <value><![CDATA[// Specifies the option being turned on and off.
- $option = %1
- // Bot Plugin
- #IF (%upper($option) = %upper("+Bot")) {
- #T+ BotPlugin
- #VAR XConfigBot (1)
- #PRINT Plugin: Bot activated.}
- #IF (%upper($option) = %upper("-Bot")) {
- #T- BotPlugin
- #VAR XConfigBot (0)
- #PRINT Plugin: Bot deactivated.}
- // Cargo Plugin
- #IF (%upper($option) = %upper("+Cargo")) {
- #T+ CargoPlugin
- #VAR XConfigCargo (1)
- #PRINT Plugin: Cargo activated.}
- #IF (%upper($option) = %upper("-Cargo")) {
- #T- CargoPlugin
- #VAR XConfigCargo (0)
- #PRINT Plugin: Cargo deactivated.}
- // Research Plugin
- #IF (%upper($option) = %upper("+Research")) {
- #T+ ResearchPlugin
- #VAR XConfigResearch (1)
- #PRINT Plugin: Research activated.}
- #IF (%upper($option) = %upper("-Research")) {
- #T- ResearchPlugin
- #VAR XConfigResearch (0)
- #PRINT Plugin: Research deactivated.}
- // Ship Build Plugin
- #IF (%upper($option) = %upper("+ShipBuild")) {
- #T+ ShipBuildPlugin
- #VAR XConfigShipBuild (1)
- #PRINT Plugin: Ship Build activated.}
- #IF (%upper($option) = %upper("-ShipBuild")) {
- #T- ShipBuildPlugin
- #VAR XConfigShipBuild (0)
- #PRINT Plugin: Ship Build deactivated.}
- #PRINT
- #PRINT <color lightgrey>XUI Config Settings</color>
- #PRINT <color red>----------------------------------------</color>
- #PRINT <color lightgrey>Turn plugins on and off by using the </color><color limegreen>"+keyword"</color><color lightgrey> or </color><color red>"-keyword"</color><color lightgrey> syntax.</color>
- #PRINT <color red>EX:</color><color limegreen> "+bot" </color><color lightgrey>turns on the botting plugin, and </color><color red>"-bot"</color><color lightgrey> turns it off.</color>
- #PRINT
- #IF (%class("BotPlugin") = 0) {
- #PRINT <color lightgrey>Plugin: "[bot]" is </color><color red>OFF</color><color lightgrey>.</color>} {
- #PRINT <color lightgrey>Plugin: "[bot]" is </color><color limegreen>ON</color><color lightgrey>.</color>}
- #IF (%class("CargoPlugin") = 0) {
- #PRINT <color lightgrey>Plugin: "[cargo]" plugin is </color><color red>OFF</color><color lightgrey>.</color>} {
- #PRINT <color lightgrey>Plugin: "[cargo]" is </color><color limegreen>ON</color><color lightgrey>.</color>}
- #IF (%class("ResearchPlugin") = 0) {
- #PRINT <color lightgrey>Plugin: "[research]" is </color><color red>OFF</color><color lightgrey>.</color>} {
- #PRINT <color lightgrey>Plugin: "[research]" is </color><color limegreen>ON</color><color lightgrey>.</color>}
- #IF (%class("ShipBuildPlugin") = 0) {
- #PRINT <color lightgrey>Plugin: "[shipbuild]" is </color><color red>OFF</color><color lightgrey>.</color>} {
- #PRINT <color lightgrey>Plugin: "[shipbuild]" is </color><color limegreen>ON</color><color lightgrey>.</color>}
- #PRINT]]></value>
- </alias>
- </class>
- <var name="XConfigResearch">1</var>
- <var name="XConfigShipBuild">1</var>
- </class>
- </class>
- </cmud>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement