Page 3 of 4

Re: House of Medakan cMUD Scripts

Posted: Sat Oct 12, 2019 6:12 pm
by Taziar
Type helpPractice to view help file in client.

Image

Direct download: PracticeCMUD.txt

Code: Select all

#CLASS {Practice}
#ALIAS helpPractice {
		#PRINT {%crlf <C dodgerblue>-----Practice Help File-----</C>}
		#PRINT {      <C dodgerblue>[Updated: 9/23/19]</C>}
		#PRINT { Practice %'s automatically save when viewing practices at any trainer or training a skill.}
		#PRINT { Saves pracs for each character and automatically resets when a practice reset is detected.}
		#PRINT {}
		#PRINT { Type <C dodgerblue>showPracs</C> to view list of current practices and prac points remaining of current character.}
		#PRINT {  Note: will show practiced weaves and spell points remaining if character is a channeler.}
		#PRINT {}
		#PRINT { Type <C dodgerblue>savePracs</C> to save a .txt file of current character's current practices.}
		#PRINT {}
		#PRINT { Type <C dodgerblue>resetPracs</C> to reset practice data.}
		#PRINT {  Note: will automatically reset saved pracs when a practice reset is detected.}
		#PRINT {}
		#PRINT { All .txt files are saved in your package directory.}
		#PRINT {}
	}
#ALIAS showPracs {
	#PRINT {%crlf}
	#PRINT {You have %eval(%concat("@pracRemaining",%char)) practice points remaining.}
	#IF (%null(%eval(%concat("@pracSpellRemaining",%char)))) {} {
		#PRINT {You have %eval(%concat("@pracSpellRemaining",%char)) spell points remaining.}
		}
	#PRINT {You are skilled in the following:}
	#PRINT {-------Warrior Pracs-------}
	#FORALL @pracListWarrior {
		#IF (%eval(%concat("@prac",%char,%i))>0) {
			#PRINT {%i %repeat(" ",%eval(20-%len(%i))) ~(%eval(%concat("@prac",%char,%i))~%~)}
			} {}
		}
	#PRINT {--------Rogue Pracs--------}
	#FORALL @pracListRogue {
		#IF (%eval(%concat("@prac",%char,%i))>0) {
			#PRINT {%i %repeat(" ",%eval(20-%len(%i))) ~(%eval(%concat("@prac",%char,%i))~%~)}
			} {}
		}
	#PRINT {-------Hunter Pracs--------}
	#FORALL @pracListHunter {
		#IF (%eval(%concat("@prac",%char,%i))>0) {
			#PRINT {%i %repeat(" ",%eval(20-%len(%i))) ~(%eval(%concat("@prac",%char,%i))~%~) %if((%ismember(%i,@pracListHunterLevels)),Level" " %eval(%eval(%concat("@prac",%char,%i))/14),"")}
			} {}
		}
	#IF (%null(%eval(%concat("@pracSpellRemaining",%char)))) {} {
		#PRINT {------Channeler Pracs------}
		}
	#IF (%null(%eval(%concat("@pracSpellRemaining",%char)))) {} {
		#PRINT {---------Elements----------}
		}
	#IF (%null(%eval(%concat("@pracSpellRemaining",%char)))) {} {
		#FORALL @pracListElement {
			#IF (%eval(%concat("@prac",%char,%i))>0) {
				#PRINT {%i %repeat(" ",%eval(20-%len(%i))) ~(%eval(%concat("@prac",%char,%i))~%~) Level %eval(%eval(%concat("@prac",%char,%i))/14)}
				} {}
			}
		}
	#IF (%null(%eval(%concat("@pracSpellRemaining",%char)))) {} {
		#PRINT { ----------Weaves-----------}
		}
	#IF (%null(%eval(%concat("@pracSpellRemaining",%char)))) {} {
		#FORALL @pracListWeaves {
			#IF (%eval(%concat("@prac",%char,%i))>0) {
				#PRINT { %i %repeat(" ",%eval(20-%len(%i))) ~(%eval(%concat("@prac",%char,%i))~%~)}
				} {}
			}
		}
	}
#ALIAS savePracs {
	#FILE 1 %concat("prac",%char,"Data.txt")
	#WRITE 1 {}
	#WRITE 1 {%char %time(c)}
	#WRITE 1 {}
	#WRITE 1 {-------Warrior Pracs-------}
	#FORALL @pracListWarrior {
		#IF (%eval(%concat("@prac",%char,%i))>0) {
			#WRITE 1 {%i %repeat(" ",%eval(20-%len(%i))) %eval(%concat("@prac",%char,%i))}
			}
		} {}
	#WRITE 1 {--------Rogue Pracs--------}
	#FORALL @pracListRogue {
		#IF (%eval(%concat("@prac",%char,%i))>0) {
			#WRITE 1 {%i %repeat(" ",%eval(20-%len(%i))) %eval(%concat("@prac",%char,%i))}
			}
		} {}
	#WRITE 1 {-------Hunter Pracs--------}
	#FORALL @pracListHunter {
		#IF (%eval(%concat("@prac",%char,%i))>0) {
			#WRITE 1 {%i %repeat(" ",%eval(20-%len(%i))) %eval(%concat("@prac",%char,%i)) %if((%ismember(%i,@pracListHunterLevels)),Level" " %eval(%eval(%concat("@prac",%char,%i))/14),"")}
			}
		} {}
	#IF (%null(%concat("@pracSpellRemaining",%char))) {} {
		#WRITE {------Channeler Pracs------}
		}
	#IF (%null(%concat("@pracSpellRemaining",%char))) {} {
		#WRITE {---------Elements----------}
		}
	#IF (%null(%concat("@pracSpellRemaining",%char))) {} {
		#FORALL @pracListElement {
			#IF (%eval(%concat("@prac",%char,%i))>0) {
				#PRINT {%i %repeat(" ",%eval(20-%len(%i))) ~(%eval(%concat("@prac",%char,%i))~%~) Level %eval(%eval(%concat("@prac",%char,%i))/14)}
				} {}
			}
		}
	#IF (%null(%concat("@pracSpellRemaining",%char))) {} {
		#WRITE {----------Weaves-----------}
		}
	#IF (%null(%concat("@pracSpellRemaining",%char))) {} {
		#FORALL @pracListWeaves {
			#IF (%eval(%concat("@prac",%char,%i))>0) {
				#PRINT {%i %repeat(" ",%eval(20-%len(%i))) ~(%eval(%concat("@prac",%char,%i))~%~)}
				} {}
			}
		}
	#CLOSE 1
	}
#ALIAS resetPracs {
	#RAISE eventResetPractices
	}
#VAR pracListRogue {steal|pick|hide|sneak|dodge|attack|backstab|palm|shortBlades|projectiles}
#VAR pracListWarrior {bash|kick|rescue|shieldParry|charge|longBlades|mediumBlades|fencingBlades|axes|clubs|staves|lances|spears|javelins|polearms|flails|bows|chains|crossbows|slings|whips}
#VAR pracListHunter {search|track|ride|wisdomLore|swim|notice|camouflage|rangerSneak|coverTracks|survival}
#VAR pracListHunterLevels {ride|wisdomlore|survival}
#VAR pracListElement {earth|air|fire|water|spirit}
#VAR pracListWeaves {armor|blind|callLightning|changeWeather|chill|contagion|createFog|createFood|createPhantomObject|createWater|cureBlindness|cureCriticalWounds|cureFear|cureLightWounds|curePoison|cureSeriousWounds|deafen|earthquake|elementalStaff|fear|fireball|flameStrike|freeze|gate|hailstorm|hammerOfAir|heal|hurricane|iceSpikes|incinerate|lightBall|locateLife|locateObject|poison|refresh|removeContagion|removeWarding|senseWarding|shield|silence|sleep|sliceWeaves|slow|sonicBoom|strength|swordOfFlame|travel|wardObject|wardingVsDamage|wardingVsEvil|whirlpool}
#VAR pracSkillInput {}
#TRIGGER "pracResetGuardian" {^Your skills have been reset by the Guardian!$} {
	#RAISE eventResetPractices
	} "" {case}
#TRIGGER "pracResetTrigger" {^You've forgotten everything you've learned!$} {
	#RAISE eventResetPractices
	} "" {case}
#ONINPUT "pracInput" {^{pr|pra|prac|pract|practi|practic|practice}(*)$} {
	#VAR pracSkillInput {%replace(%1," ","")}
	#T+ Practice|PracticeTriggers
	}
#EVENT eventResetPractices {
	#VAR %concat("pracRemaining",%char) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
	#FORALL @pracListRogue {
		#VAR %concat("prac",%char,%proper(%i)) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
		}
	#FORALL @pracListWarrior {
		#VAR %concat("prac",%char,%proper(%i)) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
		}
	#FORALL @pracListHunter {
		#VAR %concat("prac",%char,%proper(%i)) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
		}
	#IF (%null(%concat("@pracSpellRemaining",%char))) {} {
		#VAR %concat("pracSpellRemaining",%char) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
		}
	#IF (%null(%concat("@pracSpellRemaining",%char))) {} {
		#FORALL @pracListElement {
			#VAR %concat("prac",%char,%proper(%i)) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
			}
		}
	#IF (%null(%concat("@pracSpellRemaining",%char))) {} {
		#FORALL @pracListWeaves {
			#VAR %concat("prac",%char,%proper(%i)) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
			}
		}
	#PRINT {%crlf Practice data for <C dodgerblue>%char</C> is reset.}
	}
#EVENT onConnect {
	#IF (%class(Practice|%concat(%char,PracticeVariables))=-1) {
		#CLASS {Practice|%concat(%char,PracticeVariables)} {disable}
		#CLASS 0
		#VAR %concat("pracRemaining",%char) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
		#FORALL @pracListRogue {
			#VAR %concat("prac",%char,%proper(%i)) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
			}
		#FORALL @pracListWarrior {
			#VAR %concat("prac",%char,%proper(%i)) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
			}
		#FORALL @pracListHunter {
			#VAR %concat("prac",%char,%proper(%i)) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
			}
		#VAR %concat("pracSpellRemaining",%char) {} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
		#FORALL @pracListElement {
			#VAR %concat("prac",%char,%proper(%i)) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
			}
		#FORALL @pracListWeaves {
			#VAR %concat("prac",%char,%proper(%i)) {0} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
			}
		} {
		#T+ Practice|%concat(%char,PracticeVariables)
		}
	}
#CLASS 0
#CLASS {Practice|PracticeTriggers} {disable}
#TRIGGER "pracRemainingTrigger" {You have got (*) practice sessions left.$} {
	#VAR %concat("pracRemaining",%char) {%1} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
	} "" {case}
#TRIGGER "pracSpellRemainingTrigger" {You have got (*) spell practice sessions left.$} {
	#VAR %concat("pracSpellRemaining",%char) {%1} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
	} "" {case}
#TRIGGER "pracChannelerTrigger" {You have got (*) practice sessions, and (*) spell practice sessions left.$} {
	#VAR %concat("pracRemaining",%char) {%1} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
	#VAR %concat("pracSpellRemaining",%char) {%2} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
	} "" {case}
#TRIGGER "pracSkillTrigger" {^You now have (*)~% knowledge of this skill and (*) practice sessions left.$} {
	#IF (%class(%concat("prac",%char,@pracSkillInput))) {
		#VAR %concat("prac",%char,@pracSkillInput) {%1} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
		#VAR %concat("pracRemaining",%char) {%2} {_nodef} {Practice|%concat(%char,"PracticeVariables")} 
		} {}
	} "" {case}
#TRIGGER "pracSpellTrigger" {^You now have (*)~% knowledge of this weave and (*) spell practice sessions left.$} {
	#IF (%class(%concat("prac",%char,@pracSkillInput))) {
		#VAR %concat("prac",%char,@pracSkillInput) {%1} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
		#VAR %concat("pracSpellRemaining",%char) {%2} {_nodef} {Practice|%concat(%char,"PracticeVariables")} 
		} {}
	} "" {case}
#TRIGGER "pracTrigger1" {^(%w)%s~((*)~%~)$} {
	#VAR %concat("prac",%char,%1) {%trim(%2)} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
	} "" {}
#TRIGGER "pracTrigger2" {^(%w)%s(%w)%s~((*)~%~)$} {
	#VAR %concat("prac",%char,%1,%2) {%trim(%3)} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
	} "" {}
#TRIGGER "pracTrigger3" {^(%w)%s(%w)%s(%w)%s~((*)~%~)$} {
	#VAR %concat("prac",%char,%1,%2,%3) {%trim(%4)} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
	} "" {}
#TRIGGER "pracTrigger4" {^(%w)%sLevel%s(%d)%s~((*)~%~)$} {
	#VAR %concat("prac",%char,%1) {%trim(%3)} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
	} "" {case}
#TRIGGER "pracTrigger5" {^(%w)%s(%w)%sLevel%s(%d)%s~((*)~%~)$} {
	#VAR %concat("prac",%char,%1,%2) {%trim(%4)} {_nodef} {Practice|%concat(%char,"PracticeVariables")}
	} "" {case}
#TRIGGER "pracTrigger6" {~* Press ~<Return~> to continue, q to quit ~*~>} {
	#GAG
	#CR
	} "" {case|prompt|nocr}
#TRIGGER "pracTrigger7" {{o|*} * >} {
	#ALARM "pracPromptAlarm" {+2} {
		#T- Practice|PracticeTriggers
		} "Practice"
	} "" {case|prompt|nocr}
#CLASS 0

Re: House of Medakan cMUD Scripts

Posted: Sat Oct 12, 2019 6:13 pm
by Taziar
Type helpProjectiles to view help file in client.

Image

Direct download: ProjectilesCMUD.txt

Code: Select all

#CLASS {Projectiles}
#ALIAS helpProjectiles {
	#PRINT {%crlf <C dodgerblue>-----Projectiles Help File-----</C>}
	#PRINT {      <C dodgerblue>[Updated: 7/24/2019]</C>}
	#PRINT { Projectiles script manages projectiles as either a primary or secondary weapon type.}
	#PRINT { Toggle between primary and secondary modes with the meleePro command.}
	#PRINT {}
	#PRINT {  Type <C dodgerblue>meleePro</C> to toggle between primary and secondary mode.}
	#PRINT {   Note: to change melee keyword type: meleePro <keyword>}
	#PRINT {    Current melee keyword: <C dodgerblue>@proMelee</C>}
	#PRINT {}
	#PRINT {  Type <C dodgerblue>loadPro</C> to load all sheaths from inventory.}
	#PRINT {   Note: to change projectile keyword type: loadPro <keyword>}
	#PRINT {    Current projectile keyword: <C dodgerblue>@proKeyword</C>}
	#PRINT {}
	#PRINT {  Type <C dodgerblue>autoPro</C> to automatically throw a projectile every combat round.}
	#PRINT {   Note: will continue to throw until all sheaths are empty of projectiles.}
	#PRINT {}
	#PRINT {  Type <C dodgerblue>bashPro</C> to throw at the last name bashed. (including mobs)}
	#PRINT {   Note: target sets each recognized bash and clears variable after 6 seconds.}
	#PRINT {}
	#PRINT {  Type <C dodgerblue>smobPro <pet> <move direction> <target> <number of times></C> to smob throw.}
	#PRINT {   Example: smobPro puppy east smob 3}
	#PRINT {    Orders puppy sit, on stand commits the following:}
	#PRINT {    [moves east, throw smob, draw projectile, move west] 3 times total}
	#PRINT {}
	#PRINT {   Notes: (smobPro)}
	#PRINT {    -direction input auto sets return direction to room of origin}
	#PRINT {    -can use full direction name or single letters: n s e w u d}
	#PRINT {    -maximum of four attempts between mob aggro pulses}
	#PRINT {    -if in secondary mode will sheath melee and draw pro prior to order}
	#PRINT {    -if cycle is broken smobPro automatically shuts off}
	#PRINT {}
	}
#ALIAS autoPro {
	#T- Projectiles|AutoLoad
	#T+ Projectiles|AutoThrow
	#T+ Projectiles|CrossThrow
	#T+ proAutoWho
	#T+ proAutoOut
	#T+ proNamePrompt
	#T+ proAssistPrompt
	#IF (@throwMelee) {
		#SENDRAW {sheath}
		#SENDRAW {draw @proKeyword}
		#SENDRAW {throw}
		} {
		#SENDRAW {throw}
		}
	}
#ALIAS bashPro {
	#T- Projectiles|AutoLoad
	#T- Projectiles|AutoRound
	#T- Projectiles|AutoThrow
	#T- Projectiles|CrossThrow
	#T- proAutoWho
	#IF (@throwMelee) {
		#SENDRAW {sheath}
		#SENDRAW {draw @proKeyword}
		#SENDRAW {throw @proBashed}
		#SENDRAW {draw @throwMelee}
		} {
		#SENDRAW {throw @proBashed}
		#SENDRAW {draw @proKeyword}
		}
	}
#ALIAS loadPro {
	#T+ Projectiles|AutoLoad
	#T- Projectiles|AutoRound
	#T- Projectiles|AutoThrow
	#T- Projectiles|CrossThrow
	#T- proAutoWho
	#T- proAutoOut
	#IF (%null(%1)) {
		#IF (%null(@proKeyword)) {
			#T- Projectiles|AutoLoad
			#PRINT {%crlf Projectile keyword missing, Usage: <C dodgerblue>loadPro <keyword></C>}
			} {
			#SENDRAW {sheath}
			}
		} {
		#VAR proKeyword %1
		#SENDRAW {sheath}
		}
	}
#ALIAS meleePro {
	#IF (%null(%1)) {
		#IF (%null(@proMelee)) {
			#T- Projectiles|AutoLoad
			#PRINT {%crlf Melee keyword missing, Usage: <C dodgerblue>meleePro <keyword></C>}
			} {
			#IF (@throwMelee) {
				#VAR throwMelee 0
				#PRINT {%crlf Projectiles have been set to primary mode.}
				} {
				#VAR throwMelee 1
				#PRINT {%crlf Projectiles have been set to secondary mode.}
				}
			}
		} {
		#IF (@throwMelee) {
			#VAR throwMelee 0
			#PRINT {%crlf Projectiles have been set to primary mode.}
			} {
			#VAR throwMelee 1
			#PRINT {%crlf Projectiles have been set to secondary mode.}
			}
		#VAR proMelee %1
		}
	}
#ALIAS smobPro {
	#IF (%null(%4)) {
		#PRINT {%crlf Usage: <C dodgerblue>smobPro <pet> <move direction> <target> <number of times></C>}
		} {
		#VAR proPet %1
		#VAR proDirection %2
		#VAR proTarget %3
		#IF (%4>4) {
			#VAR proAttempts 4
			} {
			#VAR proAttempts %4
			}
		#T+ Projectiles|SmobThrow
		#VAR proCount 0
		#IF (@throwMelee) {
			#SENDRAW {sheath}
			#SENDRAW {draw @proKeyword}
			#SENDRAW {order @proPet sit}
			} {
			#SENDRAW {order @proPet sit}
			}
		}
	}
#VAR proAttempts {}
#VAR proBashed {}
#VAR proCount {0}
#VAR proDirection {}
#VAR proKeyword {throwing}
#VAR proEngaged {}
#VAR proPet {}
#VAR proTarget {}
#VAR proMelee {sai}
#VAR proMove {n|e|s|w|u|d}
#VAR proReturn {s|w|n|e|d|u}
#VAR proSitting {}
#VAR throwMelee {0}
#TRIGGER "proLastBashed" {^[A-Z]%w sends (*) sprawling with a powerful bash!$} {
	#IF (%1=you) {
		#VAR proBashed {}
		} {
		#IF (%numwords(%1)>1) {
			#VAR proBashed %word(%1,%numwords(%1))
			} {
			#VAR proBashed %replace(%1,"*","")
			}
		}
	#ALARM "proBashedAlarm" {+6} {
		#VAR proBashed {}
		} "Projectiles"
	} "" {case}
#TRIGGER "proAutoWho" {Throw at who?$} {
	#T- proAutoWho
	#T- proAutoOut
	#T- Projectiles|AutoRound
	#T- Projectiles|AutoThrow
	#T- Projectiles|CrossThrow
	#IF (@throwMelee) {
		#SENDRAW {sheath}
		#SENDRAW {draw @proMelee}
		}
	} "" {case|disable}
#TRIGGER "proAutoOut" {You don't seem to have a sheathed weapon.$} {
	#T- proAutoOut
	#T- proAutoWho
	#T- Projectiles|AutoRound
	#T- Projectiles|AutoThrow
	#T- Projectiles|CrossThrow
	#IF (@throwMelee) {
		#SENDRAW {draw @proMelee}
		} {
		#SENDRAW {wield @proKeyword}
		loadPro
		}
	} "" {case|disable}
#TRIGGER "proNamePrompt" {^{o|*} * - (*): [A-Z]%w >} {
	#T- proNamePrompt
	#T- proAssistPrompt
	#IF (%numwords(%1)>1) {
		#VAR proEngaged %word(%1,%numwords(%1))
		} {
		#VAR proEngaged %1
		}
	} "" {case|disable|nocr|prompt}
#TRIGGER "proAssistPrompt" {^{o|*} * - *: %w - (*): [A-Z]%w >} {
	#T- proNamePrompt
	#T- proAssistPrompt
	#IF (%numwords(%1)>1) {
		#VAR proEngaged %word(%1,%numwords(%1))
		} {
		#VAR proEngaged %1
		}
	} "" {case|disable|nocr|prompt}
#CLASS 0
#CLASS {Projectiles|AutoLoad} {disable}
#TRIGGER {You're already wielding a weapon.$} {
	#SENDRAW {sheath}
	} "" {case}
#TRIGGER {There is already something in *.$} {
	#T- Projectiles|AutoLoad
	#IF (@throwMelee) {
		#SENDRAW {remove @proKeyword}
		#SENDRAW {draw @proMelee}
		}
	} "" {case}
#TRIGGER {You don't seem to have *.$} {
	#T- Projectiles|AutoLoad
	#IF (@throwMelee) {
		#SENDRAW {remove @proKeyword}
		#SENDRAW {draw @proMelee}
		}
	} "" {case}
#TRIGGER {You are not wielding a weapon.$} {
	#SENDRAW {wield @proKeyword}
	} "" {case}
#TRIGGER {You sheath * into *.$} {
	#SENDRAW {wield @proKeyword}
	} "" {case}
#TRIGGER {You wield *.$} {
	#SENDRAW {sheath}
	} "" {case}
#CLASS 0
#CLASS {Projectiles|AutoRound} {disable}
#VAR proAttack {blast|cleave|crush|hack|hit|lance|pierce|pound|scythe|shoot|slash|slice|smite|stab|sting|strike|whip}
#VAR proAttacked {blasts|cleaves|crushes|hacks|hits|lances|pierces|pounds|scythes|shoots|slashes|slices|smites|stabs|stings|strikes|tickles|whips}
#TRIGGER {~*@proEngaged~* {@proAttacked} your *{.|!}$} {
	#T- Projectiles|AutoRound
	#T+ Projectiles|CrossThrow
	#SENDRAW {throw}
	} "" {case}
#TRIGGER {~*@proEngaged~* barely {@proAttacked} your *.$} {
	#T- Projectiles|AutoRound
	#T+ Projectiles|CrossThrow
	#SENDRAW {throw}
	} "" {case}
#TRIGGER {~*@proEngaged~* tries to {@proAttack} you, but you *.$} {
	#T- Projectiles|AutoRound
	#T+ Projectiles|CrossThrow
	#SENDRAW {throw}
	} "" {case}
#TRIGGER {You swiftly dodge ~*@{proEngaged}~*'s attempt to {@proAttack} you.$} {
	#T- Projectiles|AutoRound
	#T+ Projectiles|CrossThrow
	#SENDRAW {throw}
	} "" {case}
#TRIGGER {@proEngaged {@proAttacked} your *{.|!}$} {
	#T- Projectiles|AutoRound
	#T+ Projectiles|AutoThrow
	#SENDRAW {throw}
	} "" {}
#TRIGGER {@proEngaged barely {@proAttacked} your *.$} {
	#T- Projectiles|AutoRound
	#T+ Projectiles|AutoThrow
	#SENDRAW {throw}
	} "" {}
#TRIGGER {@proEngaged tries to {@proAttack} you, but you *.$} {
	#T- Projectiles|AutoRound
	#T+ Projectiles|AutoThrow
	#SENDRAW {throw}
	} "" {}
#TRIGGER {You swiftly dodge @{proEngaged}'s attempt to {@proAttack} you.$} {
	#T- Projectiles|AutoRound
	#T+ Projectiles|AutoThrow
	#SENDRAW {throw}
	} "" {}
#CLASS 0
#CLASS {Projectiles|AutoThrow} {disable}
#TRIGGER {You are already wielding a weapon!$} {
	#T+ Projectiles|AutoRound
	} "" {case}
#TRIGGER {You're too busy at the moment!$} {
	#T+ Projectiles|AutoRound
	} "" {case}
#TRIGGER {You don't seem to have a sheathed weapon.$} {
	#T- Projectiles|AutoRound
	#T- Projectiles|AutoThrow
	#IF (@throwMelee) {
		#SENDRAW {draw @proMelee}
		}
	} "" {case}
#TRIGGER {You throw * at *.} {
	#T+ Projectiles|AutoRound
	#T- Projectiles|CrossThrow
	#SENDRAW {draw @proKeyword}
	} "" {case}
#TRIGGER {@proEngaged deflects * that was thrown at %w.$} {
	#SENDRAW {get @proKeyword}
	} "" {case}
#TRIGGER {* just misses @proEngaged and falls to the ground.$} {
	#SENDRAW {get @proKeyword}
	} "" {case}
#TRIGGER {^@proEngaged is dead!  R.I.P.$} {
	#SENDRAW {get all.@proKeyword corpse}
	#T- Projectiles|AutoRound
	#IF (@throwMelee) {
		#SENDRAW {sheath}
		#SENDRAW {draw @proMelee}
		}
	} "" {case}
#CLASS 0
#CLASS {Projectiles|CrossThrow} {disable}
#TRIGGER {You are already wielding a weapon!$} {
	#T+ Projectiles|AutoRound
	} "" {case}
#TRIGGER {You're too busy at the moment!$} {
	#T+ Projectiles|AutoRound
	} "" {case}
#TRIGGER {You don't seem to have a sheathed weapon.$} {
	#T- Projectiles|AutoRound
	#IF (@throwMelee) {
		#SENDRAW {draw @proMelee}
		}
	} "" {case}
#TRIGGER {You throw * at ~*[A-Z]%w~*.} {
	#T+ Projectiles|AutoRound
	#T- Projectiles|AutoThrow
	#SENDRAW {draw @proKeyword}
	} "" {case}
#TRIGGER {~*@{proEngaged}~* (deflects * that was thrown at %w.)$} {
	#SENDRAW {get @proKeyword}
	} "" {}
#TRIGGER {(* just misses) ~*@{proEngaged}~* (and falls to the ground.)$} {
	#SENDRAW {get @proKeyword}
	} "" {}
#TRIGGER {^~*@{proEngaged}~* is dead!  R.I.P.$} {
	#T- Projectiles|AutoRound
	#SENDRAW {get all.@proKeyword corpse}
	#IF (@throwMelee) {
		#SENDRAW {sheath}
		#SENDRAW {draw @proMelee}
		}
	} "" {}
#CLASS 0
#CLASS {Projectiles|SmobThrow} {disable}
#TRIGGER {([A-Z]*) clambers to %w feet.$} {
	#VAR proSitting %1
	#SENDRAW {order @proPet sit}
	#SENDRAW {@proDirection}
	#SENDRAW {throw @proTarget}
	#SENDRAW {%reversedir(@proDirection)}
	#SENDRAW {draw @proKeyword}
	} "" {case}
#TRIGGER {@proSitting is sitting here.$} {
	#IF (@proCount=4) {
		#T- Projectiles|SmobThrow
		} {
		#VAR proCount (@proCount+1)
		#IF (@proCount!=@proAttempts) {
			#SENDRAW {@proDirection}
			#SENDRAW {throw @proTarget}
			#SENDRAW {%reversedir(@proDirection)}
			#SENDRAW {draw @proKeyword}
			} {
			#T- Projectiles|SmobThrow
			}
		}
	} "" {case}
#TRIGGER {No way!  You're fighting for your life!} {
	#T- Projectiles|SmobThrow
	#IF (@throwMelee) {
		#SENDRAW {sheath}
		#SENDRAW {draw @proMelee}
		}
	} "" {case}
#TRIGGER {You flee head over heels.} {
	#T- Projectiles|SmobThrow
	#IF (@throwMelee) {
		#SENDRAW {sheath}
		#SENDRAW {draw @proMelee}
		}
	} "" {case}
#CLASS 0

Re: House of Medakan cMUD Scripts

Posted: Sat Oct 12, 2019 6:13 pm
by Taziar
Type helpPulseTimer to view help file in client.

Image

Direct download: PulseTimerCMUD.txt

Code: Select all

#CLASS {PulseTimer}
#ALIAS helpPulseTimer {
	#PRINT {%crlf <C dodgerblue>-----Pulse Timer Help File-----</C>}
	#PRINT {      <C dodgerblue>[Updated: 10/12/2019]</C>}
	#PRINT {}
	#PRINT { Usage: <C dodgerblue>colorPulse <type> [color]</C> to set color for type.}
	#PRINT {  Available types: (shown in current set color)}
	#PRINT {   Pulse symbol color: <C @pulseColor>%proper(@pulseColor)</C>}
	#PRINT {}
	#PRINT {  Note: can use [foreground background] format, background color is optional.}
	#PRINT {   Example: colorPulse info red darkgray}
	#PRINT {}
	#PRINT { Usage: <C dodgerblue>fontPulse <font></C> to set font type for Pulse Timer.}
	#PRINT {  Current font type: <C dodgerblue>%proper(@pulseFont)</C>}
	#PRINT {}
	#PRINT { Usage: <C dodgerblue>sizePulse <#></C> to set font size for Pulse Timer.}
	#PRINT {  Note: cannot be more or less than 4-5 points from default session font size.}
	#PRINT {   Hint: if timer does not show correctly try adjusting sizePulse #}
	#PRINT {    Current font size: <C dodgerblue>@pulseSize</C>}
	#PRINT {}
	#PRINT { For standard results set color, font, and size to the same as default session.}
	#PRINT {}
	#PRINT { <C dodgerblue>-----Special Function-----</C>}
	#PRINT {  Usage: <C dodgerblue>rainbowPulse</C> to toggle Pulse Timer rainbow color rotation on/off.}
	#PRINT {   Rainbow function: <C dodgerblue>%if(%class(eventRainbowPulse),ON,OFF)</C>}
	#PRINT {}
	}
#ALIAS colorPulse {
	#IF (%null(%1)) {
		#PRINT {%crlf  Usage: <C dodgerblue>colorPulse [color]</C>}
		#PRINT {}
		#PRINT {   Pulse symbol color: <C @pulseColor>%proper(@pulseColor)</C>}
		#PRINT {}
		#PRINT {  Note: can use [foreground background] format, background color is optional.}
		#PRINT {   Example: colorPulse red darkgray}
		#PRINT {}
		} {
		#IF (%null(%1)) {
			#PRINT {%crlf <C dodgerblue>What color is that?...</C>}
			} {
			#IF (%colorname(%1)=536870911 AND %color(%1)=0) {
				#VAR pulseColor {}
				#PRINT {%crlf <C dodgerblue>%1 is an invalid color. pulseColor variable cleared.</C>}
				} {
				#IF (%null(%2)) {
					#VAR pulseColor {%1}
					#PRINT {%crlf Pulse color set: <C %1>%1</C>}
					} {
					#IF (%colorname(%2)=536870911 AND %color(%2)=0) {
						#VAR pulseColor {}
						#PRINT {%crlf <C dodgerblue>%2 is an invalid color. pulseColor variable cleared.</C>}
						} {
						#VAR pulseColor {%concat(%1," ",%2)}
						#PRINT {%crlf Pulse color set: <C %1 %2>%1 %2</C>}
						}
					}
				}
			}
		}
	}
#ALIAS sizePulse {
	#IF (%isnumber(%1)) {
		#VAR pulseSize %1
		#PRINT {%crlf Pulse Timer symbol font size set to: <C dodgerblue>@pulseSize</C> %crlf}
		} {
		#PRINT {%crlf What kind of number is that... %crlf}
		}
	}
#ALIAS fontPulse {
	#IF (%null(%1)) {
		#PRINT {%crlf Font name not detected... %crlf}
		} {
		#VAR pulseFont {%concat(~",%-1,~")}
		#PRINT {%crlf Pulse Timer symbol font set to: <C dodgerblue>%-1</C> %crlf}
		}
	}
#ALIAS rainbowPulse {
	#IF (%class(eventRainbowPulse)) {
		#T- eventRainbowPulse
		#PRINT {%crlf Pulse Timer symbol color set to normal. %crlf}
		} {
		#T+ eventRainbowPulse
		#PRINT {}
		#MXP { Pulse Timer color set: <C red>R<C orange>A<C yellow>I<C green>N<C blue>B<C indigo>O<C violet>W</C>}
		#PRINT {}
		}
	}
#VAR pulseColor {white}
#VAR pulseCount {}
#VAR pulseFont {Consolas}
#VAR pulseLastPrompt {}
#VAR pulseRainbowCount {0}
#VAR pulseRainbowList {red|orange|yellow|lime|dodgerblue|darkorchid|violet}
#VAR pulseSize {18}
#TRIGGER "pulseChargeTrigger" {^(You line up your charge...)(*)$} {
	#IF (%ends(%line,"> ")) {
		#PSUB {@pulseLastPrompt %e[K} %x1
		#PRINT {You line up your charge...}
		}
	} "" {case}
#TRIGGER "pulseBeginTimer" {^(%s)(*)$} {
	#RAISE eventPulseBegin {%1} {%2}
	} "" {nocr|prompt}
#TRIGGER "pulseBeginLine" {^(%s)(*)$} {
	#RAISE eventPulseBegin {%1} {%2}
	} "" {}
#TRIGGER "pulseDash" {^(-)} {
	#ADD pulseCount 1
	#PSUB {" "} %x1
	#RAISE eventRainbowPulse
	#MXP {<FONT @pulseFont @pulseSize @pulseColor><DEST X=@pulseCount>%1</DEST></FONT>}
	#RAISE eventDashFirst
	#RAISE eventDashLast
	#T+ pulsePrompt
	#T+ pulseCancelled
	#T+ pulseOk
	} "" {disable|nocr|prompt}
#TRIGGER "pulseDashLine" {^(-)} {
	#PRINT {}
	#ADD pulseCount 1
	#PSUB {" "} %x1
	#RAISE eventRainbowPulse
	#MXP {<FONT @pulseFont @pulseSize @pulseColor><DEST X=@pulseCount>%e[2A%1</DEST></FONT>}
	#VAR pulseCount 1
	#RAISE eventDashFirst
	#RAISE eventDashLast
	#T+ pulsePrompt
	#T+ pulseCancelled
	#T+ pulseOk
	} "" {disable}
#TRIGGER "pulseEqual" {^(=)} {
	#ADD pulseCount 1
	#PSUB {" "} %x1
	#RAISE eventRainbowPulse
	#MXP {<FONT @pulseFont @pulseSize @pulseColor><DEST X=@pulseCount>%1</DEST></FONT>}
	#RAISE eventEqualFirst
	#RAISE eventEqualLast
	} "" {disable|nocr|prompt}
#TRIGGER "pulseEqualLine" {^(=)} {
	#PRINT {}
	#ADD pulseCount 1
	#PSUB {" "} %x1
	#RAISE eventRainbowPulse
	#MXP {<FONT @pulseFont @pulseSize @pulseColor><DEST X=@pulseCount>%e[2A%1</DEST></FONT>}
	#VAR pulseCount 1
	#RAISE eventEqualFirst
	#RAISE eventEqualLast
	} "" {disable}
#TRIGGER "pulsePlus" {^(+)} {
	#ADD pulseCount 1
	#PSUB {" "} %x1
	#RAISE eventRainbowPulse
	#MXP {<FONT @pulseFont @pulseSize @pulseColor><DEST X=@pulseCount>%1</DEST></FONT>}
	#RAISE eventPlusFirst
	#RAISE eventPlusLast
	} "" {disable|nocr|prompt}
#TRIGGER "pulsePlusLine" {^(+)} {
	#PRINT {}
	#ADD pulseCount 1
	#PSUB {" "} %x1
	#RAISE eventRainbowPulse
	#MXP {<FONT @pulseFont @pulseSize @pulseColor><DEST X=@pulseCount>%e[2A%1</DEST></FONT>}
	#VAR pulseCount 1
	#RAISE eventPlusFirst
	#RAISE eventPlusLast
	} "" {disable}
#TRIGGER "pulseStar" {^(~*)} {
	#ADD pulseCount 1
	#PSUB {" "} %x1
	#RAISE eventRainbowPulse
	#MXP {<FONT @pulseFont @pulseSize @pulseColor><DEST X=@pulseCount>%1</DEST></FONT>}
	#RAISE eventStarLast
	#RAISE eventStarFirst
	} "" {disable|nocr|prompt}
#TRIGGER "pulseStarLine" {^(~*)} {
	#PRINT {}
	#ADD pulseCount 1
	#PSUB {" "} %x1
	#RAISE eventRainbowPulse
	#MXP {<FONT @pulseFont @pulseSize @pulseColor><DEST X=@pulseCount>%e[2A%1</DEST></FONT>}
	#VAR pulseCount 1
	#RAISE eventStarLast
	#RAISE eventStarFirst
	} "" {disable}
#TRIGGER "pulseSpace" {^(%s)} {
	#ADD pulseCount 1
	#MXP {<FONT @pulseFont @pulseSize @pulseColor><DEST X=@pulseCount>%1</DEST></FONT>}
	#T+ pulseDash
	#T+ pulseDashLine
	#T+ eventDashFirst
	} "" {disable|nocr|prompt}
#TRIGGER "pulseSpaceLine" {^(%s)} {
	#PRINT {}
	#ADD pulseCount 1
	#MXP {<FONT @pulseFont @pulseSize @pulseColor><DEST X=@pulseCount>%e[2A%1</DEST></FONT>}
	#VAR pulseCount 1
	#T+ pulseDash
	#T+ pulseDashLine
	#T+ eventDashFirst
	} "" {disable}
#TRIGGER "pulsePrompt" {(^{o|*} * > )} {
	#SUB {%1}
	#T- pulsePrompt
	#T- pulseCancelled
	#T- pulseOk
	#T- pulseDash
	#T- pulseDashLine
	#T- eventDashFirst
	#T- eventDashLast
	#T- pulseEqual
	#T- pulseEqualLine
	#T- eventEqualFirst
	#T- eventEqualLast
	#T- pulsePlus
	#T- pulsePlusLine
	#T- eventPlusFirst
	#T- eventPlusLast
	#T- pulseStar
	#T- pulseStarLine
	#T- eventStarFirst
	#T- eventStarLast
	#T- pulseSpace
	#T- pulseSpaceLine
	#T+ pulseBeginLine
	#T+ pulseBeginTimer
	} "" {nocr|prompt}
#TRIGGER "pulseLastPrompt" {^({o|*} * > )} {
	#VAR pulseLastPrompt %1
	} "" {nocr|prompt}
#TRIGGER "pulseCancelled" {^Cancelled.} {
	#T- pulseCancelled
	#T+ pulseBeginLine
	#T+ pulseBeginTimer
	} "" {disable}
#TRIGGER "pulseOk" {^Ok.} {
	#T- pulseOk
	#T+ pulseBeginLine
	#T+ pulseBeginTimer
	} "" {disable}
#EVENT eventPulseBegin {
	#IF (%null(%2)) {
		#IF (%null(%line(1))) {} {#PRINT {}}
		#T+ eventDashFirst
		#T+ pulseDash
		#T+ pulseDashLine
		#VAR pulseCount 1
		#T+ pulsePrompt
		#T+ pulseCancelled
		#T+ pulseOk
		} {
		#IF (%ends(%line,"> ")) {
			#PSUB {@pulseLastPrompt %e[K} %x1
			#PRINT {%crlf}
			#T+ eventDashFirst
			#T+ pulseDash
			#T+ pulseDashLine
			#VAR pulseCount 1
			}
		}
	}
#EVENT eventDashFirst {
	#T- eventDashFirst
	#T- pulseDash
	#T- pulseDashLine
	#T- pulseBeginLine
	#T- pulseBeginTimer
	#T+ pulseEqual
	#T+ pulseEqualLine
	#T+ eventEqualFirst
	}
#EVENT eventDashLast {
	#T- eventDashLast
	#T- pulseDash
	#T- pulseDashLine
	#T+ pulseSpace
	#T+ pulseSpaceLine
	}
#EVENT eventEqualFirst {
	#T- eventEqualFirst
	#T- pulseEqual
	#T- pulseEqualLine
	#T+ pulsePlus
	#T+ pulsePlusLine
	#T+ eventPlusFirst
	}
#EVENT eventEqualLast {
	#T- eventEqualLast
	#T- pulseEqual
	#T- pulseEqualLine
	#T+ pulseDash
	#T+ pulseDashLine
	#T+ eventDashLast
	}
#EVENT eventPlusFirst {
	#T- eventPlusFirst
	#T- pulsePlus
	#T- pulsePlusLine
	#T+ pulseStar
	#T+ pulseStarLine
	#T+ eventStarFirst
	}
#EVENT eventPlusLast {
	#T- eventPlusLast
	#T- pulsePlus
	#T- pulsePlusLine
	#T+ pulseEqual
	#T+ pulseEqualLine
	#T+ eventEqualLast
	}
#EVENT eventStarFirst {
	#T- eventStarFirst
	#T+ eventStarLast
	}
#EVENT eventStarLast {
	#T- eventStarLast
	#T- pulseStar
	#T- pulseStarLine
	#T+ pulsePlus
	#T+ pulsePlusLine
	#T+ eventPlusLast
	}
#EVENT eventRainbowPulse {
	#ADD pulseRainbowCount 1
	#VAR pulseColor (%item(@pulseRainbowList,(@pulseRainbowCount\%numitems(@pulseRainbowList)+1)))
	}
#EVENT onConnect {
	#T+ pulseLastPrompt
	}
#CLASS 0
#T- eventRainbowPulse

Re: House of Medakan cMUD Scripts

Posted: Sat Oct 12, 2019 6:13 pm
by Taziar
Type helpRazor to view help file in client.

Image

Direct download: RazorCMUD.txt

Code: Select all

#CLASS {Razor}
#ALIAS helpRazor {
	#PRINT {%crlf <C dodgerblue>-----Razor Help File-----</C>}
	#PRINT {    <C dodgerblue>[Updated: 9/23/2019]</C>}
	#PRINT { To craft a Domani Razor travel to the Domani Coastal Palace.}
	#PRINT {  Type: <C dodgerblue>makeRazor</C> (to begin crafting)}
	#PRINT {   Note: crafting room is Stable Stalls (in northeast corner of Palace zone)}
	#PRINT {}
	}
#ALIAS makeRazor {
	#T+ razorFetchTrigger
	#T+ razorFailTrigger
	#SEND {fetch shovel}
	}
#TRIGGER "razorFailTrigger" {Arglebargle, glop-glyf!?!} {
	#T- razorFailTrigger
	#T- razorFetchTrigger
	} "" {case|disable}
#TRIGGER "razorFetchTrigger" {You fetch a shovel.} {
	#T- razorFetchTrigger
	#T- razorFailTrigger
	#T+ razorGetTrigger
	#SEND {get shovel}
	} "" {case|disable}
#TRIGGER "razorGetTrigger" {You get a shovel.} {
	#T- razorGetTrigger
	#T+ razorContinueTrigger
	#SEND {muckout stable}
	} "" {case|disable}
#TRIGGER "razorContinueTrigger" {You can continue to shovel straw.} {
	#T- razorContinueTrigger
	#T+ razorShovelTrigger
	#SEND {shovel straw}
	} "" {case|disable}
#TRIGGER "razorShovelTrigger" {You gather another shovel of straw and deposit it in the wheelbarrow.} {
	#T+ razorDepositTrigger
	#ALARM "razorAlarm" {+8} {
		#SEND {shovel straw}
		} "Razor"
	} "" {case|disable}
#TRIGGER "razorDepositTrigger" {You deposit the last shovelful in the wheelbarrow and cart it off.} {
	#T- razorShovelTrigger
	#ALARM "razorAlarm" {+1} {
		#T- razorDepositTrigger
		} "Razor"
	#T+ razorGroomTrigger
	} "" {case|disable}
#TRIGGER "razorGroomTrigger" {You can continue working and groom a horse.} {
	#T- razorGroomTrigger
	#T+ razorTackTrigger
	#SEND {groom horse}
	} "" {case|disable}
#TRIGGER "razorTackTrigger" {You can continue working and clean the tack.} {
	#T- razorTackTrigger
	#SEND {clean tack}
	} "" {case|disable}
#CLASS 0

Re: House of Medakan cMUD Scripts

Posted: Sat Oct 12, 2019 6:14 pm
by Taziar
Type helpRent to view help file in client.

Image

Direct download: RentCMUD.txt

Code: Select all

#CLASS {Rent}
#ALIAS helpRent {
	#PRINT {%crlf <C dodgerblue>-----Rent Help File-----</C>}
	#PRINT {<C dodgerblue>   [Updated: 8/26/2019]</C>}
	#PRINT { Saves a list of all equipment deposited in any rent when the list command is used.}
	#PRINT { Script saves data across all characters automatically adding new names via the <C dodgerblue>~%char</C> function.}
	#PRINT { Uses cMUD map functions <C dodgerblue>~%roomkey</C>, <C dodgerblue>~%roomname</C> and <C dodgerblue>~%zonename</C> to save data for each rent location.}
	#PRINT {}
	#PRINT { Usage: <C dodgerblue>showRent</C> for list of available rents and usage syntax.}
	#PRINT {  Syntax: <C dodgerblue>showRent <rentnumber> [character, current if omitted]</C>}
	#PRINT {   Example: <C dodgerblue>showRent all <Name></C> will show all items in all rent locations for that character name.}
	#PRINT {}
	#PRINT { Usage: <C dodgerblue>addRent</C> in any room with an innkeeper to create a rent location there.}
	#PRINT {  Note: Make sure cMUD map is in proper room position.}
	#PRINT {}
	#PRINT { Usage: <C dodgerblue>deleteRent <rentNumber></C> to delete a rent location and all contents.}
	#PRINT {}
	#PRINT { Usage: <C dodgerblue>clearRent <rentNumber> <characterName></C> to clear a character's rent for that location.}
	#PRINT {}
	#PRINT { Usage: <C dodgerblue>searchRent <item keyword(s)></C> to search for an item in all rents across all alts.}
	#PRINT {}
	}
#ALIAS showRent {
	#IF (%null(%param(1))) {
		#PRINT {%crlf <C dodgerblue>showRent <rentnumber> [character, current if omitted]</C> %crlf}
		#PRINT { <C dodgerblue>-------------Available Rents-------------</C>}
		#LOOP 1,%numitems(@rentKey) {
			#PRINT {<C dodgerblue>%if(%len(%i)=1,"  "%i," "%i))</C> %item(@rentZone,%i) - %item(@rentName,%i)}
			}
		#PRINT {}
		} {
		#IF (%null(%param(2))) {
			#VAR rentChar %char
			} {
			#VAR rentChar %param(2)
			}
		}
	#IF (%isnumber(%param(1))) {
		#VAR rentCurrent %item(@rentKey,%param(1))
		#IF (%item(@rentZone,%param(1)) AND %item(@rentName,%param(1))) {
			#PRINT {%crlf -----Rent Contents for <C dodgerblue>%proper(@rentChar)</C>-----}
			#PRINT {%crlf %item(@rentZone,%param(1)) - %item(@rentName,%param(1))}
			}
		#IF (%null(%expand(%concat("@",@rentChar,@rentCurrent)))) {
			#PRINT { <C dodgerblue>%proper(@rentChar) has no items stored at this location!</C>}
			} {
			#LOOP 1,%numitems(%expand(%concat("@",@rentChar,@rentCurrent))) {
				#PRINT {%if(%len(%i)=1,"  "%i," "%i)) %item(%expand(%concat("@",@rentChar,@rentCurrent)),%i)}
				}
			}
		} {
		#IF (%param(1)=all) {
			#PRINT {%crlf -----All Rent Contents for <C dodgerblue>%proper(@rentChar)</C>-----}
			#LOOP 1,%numitems(@rentKey) {
				#VAR rentCurrent %item(@rentKey,%i)
				#IF (%numitems(%expand(%concat("@",@rentChar,@rentCurrent)))) {
					#PRINT {%crlf <C dodgerblue>%item(@rentZone,%i) - %item(@rentName,%i)</C>}
					#LOOP 1,%numitems(%expand(%concat("@",@rentChar,@rentCurrent))) {
						#PRINT {<C dodgerblue>%if(%len(%j)=1,"   "%j,"  "%j))</C> %item(%expand(%concat("@",@rentChar,@rentCurrent)),%j)}
						}
					}
				}
			}
		}
	}
#ALIAS addRent {
	#IF (%ismember(%roomkey,@rentKey)) {
		#PRINT { <C dodgerblue>Rent already in database.</C>}
		} {
		#VAR rentKey %additem(%roomkey,@rentKey)
		#VAR rentName %additem(%roomname,@rentName)
		#VAR rentZone %additem(%zonename,@rentZone)
		#PRINT { <C dodgerblue>Rent added!</C>}
		}
	}
#ALIAS clearRent {
	#IF (%null(%param(1))) {
		#PRINT {%crlf Usage: <C dodgerblue>clearRent <rentNumber> <characterName></C>}
		} {
		#IF (%null(%item(@rentKey,%param(1)))) {
			#PRINT {%crlf  Not a valid rent number, <C dodgerblue>clearRent</C> for usage.}
			} {
			#IF (%ismember(%proper(%param(2)),@rentCharList)) {
				#VAR %concat(%lower(%param(2)),%item(@rentKey,%param(1))) {} {_nodef} {Rent|RentContent}
				#PRINT { <C dodgerblue>Rent cleared!</C>}
				} {
				#PRINT {%crlf  Not a valid character name...}
				}
			}
		}
	}
#ALIAS deleteRent {
	#IF (%null(%param(1))) {
		#PRINT {%crlf Usage: <C dodgerblue>deleteRent <rentNumber></C>}
		} {
		#IF (%null(%item(@rentKey,%param(1)))) {
			#PRINT {%crlf  Not a valid rent number, <C dodgerblue>deleteRent</C> for usage.}
			} {
			#FORALL @rentCharList {
				#TEMP "rentTEMP" {Variable * removed.} {#GAG} "Rent" {}
				#UNVAR %concat(%lower(%i),%item(@rentKey,%param(1))) {Rent|RentContent}
				}
			#VAR rentKey %delnitem(@rentKey,%param(1))
			#VAR rentName %delnitem(@rentName,%param(1))
			#VAR rentZone %delnitem(@rentZone,%param(1))
			#PRINT { <C dodgerblue>Rent deleted!</C>}
			}
		}
	}
#ALIAS searchRent {
	#IF (%null(%params)) {
		#PRINT {%crlf Usage: <C dodgerblue>searchRent <item keyword(s)></C>}
		} {
		#T- eventRentSearch
		#VAR rentSearchItem %lower(%params)
		#PRINT {%crlf Searching rents for: <C dodgerblue>@rentSearchItem</C>}
		#LOOP 1,%numitems(@rentCharList) {
			#LOOP 1,%numitems(@rentKey) {
				#IF (%pos(@rentSearchItem,%eval(%concat("@",%item(@rentCharList,%i),%item(@rentKey,%j))))) {
					#T+ eventRentSearch
					#PRINT {%crlf %proper(%item(@rentCharList,%i)) - %item(@rentZone,%j) - %item(@rentName,%j)}
					#LOOP 1,%numitems(%eval(%concat("@",%item(@rentCharList,%i),%item(@rentKey,%j)))) {
						#IF (%pos(@rentSearchItem,%item(%eval(%concat("@",%item(@rentCharList,%i),%item(@rentKey,%j))),%k))>0) {
							#PRINT {%if(%len(%k)=1,"  "%k," "%k)) <C dodgerblue>%item(%eval(%concat("@",%item(@rentCharList,%i),%item(@rentKey,%j))),%k)</C>}
							} {
							#PRINT {%if(%len(%k)=1,"  "%k," "%k)) %item(%eval(%concat("@",%item(@rentCharList,%i),%item(@rentKey,%j))),%k)}
						}
					}
				}
			}
		}
		#IF (%class(eventRentSearch)) {
			#T- eventRentSearch
			} {
			#PRINT {%crlf Did not find any: <C dodgerblue>@rentSearchItem</C>}
			}
		}
	}
#VAR rentChar {}
#VAR rentCharList {}
#VAR rentCurrent {}
#VAR rentItem {}
#VAR rentItemCost {}
#VAR rentSearchItem {}
#TRIGGER "rentInnTrigger" {tells you, 'I don't have any items for you here.'$} {
	#VAR %concat(%lower(%char),%roomkey) {} {_nodef} {Rent|RentContent}
	#PRINT { <C dodgerblue>Rent Cleared!</C>}
	} "" {case|disable}
#TRIGGER "rentListTrigger" {%d. %d {item|items} stored for (%d {day|days}), (* rent due).$} {
	#T+ rentItemTrigger
	#T+ eventRentPrompt
	#VAR rentItemCost %concat([,%1," ",%2,])
	} "" {disable|case}
#TRIGGER "rentItemTrigger" {^(%s)([a-z]*)$} {
	#IF (%len(%1)>4) {
		#VAR rentItem %additem(%concat(%2," ",~(in container~)),@rentItem)
		} {
		#VAR rentItem %additem(%concat(%2," ",@rentItemCost),@rentItem)
		}
	} "" {disable}
#TRIGGER "rentPrompt" {^{o|*} * >} {
	#T- rentPrompt
	#T- rentItemTrigger
	#RAISE eventListPrompt
	#RAISE eventRentPrompt
	} "" {case|disable|prompt|nocr}
#ONINPUT "rentListInput" {^{li|lis|list}$} {
	#IF (%ismember(%roomkey,@rentKey)) {
		#VAR rentCurrent %roomkey
		#T+ eventListPrompt
		#T+ rentInnTrigger
		#T+ rentListTrigger
		#T+ rentPrompt
		}
	} "" {}
#EVENT onConnect {
	#T- eventRentPrompt
	#T- eventListPrompt
	#ADDITEM rentCharList %char
	}
#EVENT eventListPrompt {
	#T- eventListPrompt
	#T- rentInnTrigger
	#T- rentListTrigger
	}
#EVENT eventRentPrompt {
	#T- eventRentPrompt
	#VAR %concat(%lower(%char),%roomkey) {@rentItem} {_nodef} {Rent|RentContent}
	#VAR rentItem {}
	#PRINT { <C dodgerblue>Rent Updated!</C>}
	}
#EVENT eventRentSearch {}
#CLASS 0
#CLASS {Rent|RentContent}
#VAR rentKey {}
#VAR rentName {}
#VAR rentZone {}
#CLASS 0

Re: House of Medakan cMUD Scripts

Posted: Sat Oct 12, 2019 6:14 pm
by Taziar
Type helpSailing to view help file in client.

Image

Type rivermap to view rivermap in client.

Image

Type oceanmap to view oceanmap in client.

Image

Direct download: SailingCMUD.txt

Code: Select all

#CLASS {Sailing}
#ALIAS helpSailing {
	#PRINT {%crlf <C dodgerblue>-----Sailing Help File-----</C>}
	#PRINT {     <C dodgerblue>[Update: 8/28/2019]</C>}
	#PRINT { Type <C dodgerblue>riversail <starting location> <destination></C>}
	#PRINT {  Hint: Can abbreviate locations and destinations down to the first 3 letters.}
	#PRINT {   Example: riversail illian irinjavar or riversail ill iri}
	#PRINT {}
	#PRINT { Type <C dodgerblue>oceansail <starting location> <destination></C>}
	#PRINT {  Hint: Can abbreviate locations and destinations down to the first 3 letters.}
	#PRINT {   Example: oceansail mayene tremalking or oceansail may tre}
	#PRINT {}
	#PRINT { Note: Departing from Bandar Eban or departing from Tar Valon use only the first word in each name.}
	#PRINT {  Example: riverSail tar tear or oceanSail bandar tanchico}
	#PRINT {}
	#PRINT { Type <C dodgerblue>oceanmap</C> or <C dodgerblue>rivermap</C>}
	#PRINT {  Note: shows map of water routes, destinations, and boat names.}
	#PRINT {   Feature: keeps track of ship movement as you progress on your trip, X marks the spot!}
	#PRINT {}
	#PRINT { Type <C dodgerblue>stopsailing</C>}
	#PRINT {  Note: will deactivate the Sailing script if something goes wrong or your trip is interrupted.}
	#PRINT {}
	}
#ALIAS riverSail {
	#VAR sailOrigin %copy(%1,1,3)
	#VAR sailDestination %copy(%2,1,3)
	#VAR sailInput %concat(@sailOrigin,@sailDestination)
	#FORALL @sailRiverList {
		#IF (%copy(%i,1,3)=%proper(@sailOrigin)) {
			#VAR sailDepartureLocation %i
			}
		}
	#FORALL @sailRiverList {
		#IF (%copy(%i,1,3)=%proper(@sailDestination)) {
			#VAR sailArrivalLocation %i
			}
		}
	#VAR riverTripNotification {Current trip: @sailDepartureLocation to @sailArrivalLocation.}
	#IF (%null(@sailDepartureLocation) OR %null(@sailArrivalLocation)) {
		#PRINT {%crlf Sorry %char, we don't sail to %2 from %1... %crlf}
		#RAISE eventSailStop
		} {
		#VAR sailIndex {1}
		#VAR sailTrip {%expand(%concat("@",@sailInput))}
		#VAR sailNextDirection %item(@sailTrip,@sailIndex)
		#VAR sailMoveShip %item(@sailDir,@sailNextDirection)
		#T+ Sailing|RiverSail
		#T+ Sailing|SailorEmotes
		#ALARM "alarmSailMessage" {+1} {
			#PRINT {%crlf <C dodgerblue>Trip set:</C> @sailDepartureLocation to @sailArrivalLocation, type <C dodgerblue>rivermap</C> to view trip progress. %crlf}
			} "Sailing"
		}
	}
#ALIAS oceanSail {
	#VAR sailOrigin %copy(%1,1,3)
	#VAR sailDestination %copy(%2,1,3)
	#VAR sailInput (%expand(%concat(@sailOrigin,@sailDestination)))
	#FORALL @sailOceanList {
		#IF (%copy(%i,1,3)=%proper(@sailOrigin)) {
			#VAR sailDepartureLocation %i
			}
		}
	#FORALL @sailOceanList {
		#IF (%copy(%i,1,3)=%proper(@sailDestination)) {
			#VAR sailArrivalLocation %i
			}
		}
	#VAR oceanTripNotification {Current trip: @sailDepartureLocation to @sailArrivalLocation.}
	#IF (%null(@sailDepartureLocation) OR %null(@sailArrivalLocation)) {
		#PRINT {%crlf Sorry %char, we don't sail to %2 from %1... %crlf}
		#RAISE eventSailStop
		} {
		#VAR sailIndex 1
		#VAR sailTrip (%expand(%concat("@",@sailInput)))
		#VAR sailNextDirection %item(@sailTrip,@sailIndex)
		#VAR sailMoveShip %item(@sailDir,@sailNextDirection)
		#T+ Sailing|OceanSail
		#T+ Sailing|SailorEmotes
		#T+ sailCaptainTrigger
		#ALARM "alarmSailMessage" {+1} {
			#PRINT {%crlf <C dodgerblue>Trip set:</C> @sailDepartureLocation to @sailArrivalLocation, type <C dodgerblue>oceanmap</C> to view trip progress. %crlf}
			} "Sailing"
		} 
	}
#ALIAS stopSailing {
	#RAISE eventSailStop
	}
#VAR sailArrivalLocation {}
#VAR sailDepartureLocation {}
#VAR sailDestination {}
#VAR sailDir {sail north|sail east|sail south|sail west}
#VAR sailEmbarkRoom {}
#VAR sailIndex {}
#VAR sailInput {}
#VAR sailOceanList {Amadicia|Bandar Eban|Falme|Illian|Jafar|Mayene|Tanchico|Tear|Tremalking}
#VAR sailRiverList {Aringill|Cairhien|Illian|Irinjavar|Tar Valon|Tear|Whitebridge}
#VAR sailMapDestination {}
#VAR sailMoveShip {}
#VAR sailNextDirection {}
#VAR sailOrigin {}
#VAR sailShipName {}
#VAR sailShowMessage {}
#VAR sailTrip {}
#VAR oceanTripNotification {}
#VAR riverTripNotification {}
#TRIGGER "sailEmbarkTrigger" {^{%char} steps off a gangplank unsteadily.$} {
	#T- sailEmbarkTrigger
	#T- sailArglebargleTrigger
	#T- sailNotHereTrigger
	#IF (%class(@sailEmbarkRoom)=-1) {} {#VAR %eval(@sailEmbarkRoom) "X"}
	} "" {case|disable}
#TRIGGER "sailDisembarkTrigger" {^Ok.$} {
	#T- sailDisembarkTrigger
	#T- sailArglebargleTrigger
	#VAR sailShipName {}
	#VAR sailEmbarkRoom {}
	#RAISE eventMapReset
	#RAISE eventSailStop
	} "" {case|disable}
#TRIGGER "sailNotHereTrigger" {^That ship is not here.$} {
	#T- sailNotHereTrigger
	#T- sailEmbarkTrigger
	#VAR sailShipName {}
	#VAR sailEmbarkRoom {}
	} "" {case|disable}
#TRIGGER "sailArglebargleTrigger" {Arglebargle, glop-glyf!?!$} {
	#T- sailArglebargleTrigger
	#T- sailDisembarkTrigger
	#T- sailEmbarkTrigger
	#T- sailNotHereTrigger
	} "" {case|disable}
#TRIGGER "sailCaptainTrigger" {^You're not the captain of this ship!$} {
	#T- sailCaptainTrigger
	#RAISE eventSailStop
	} "" {case|disable}
#ONINPUT {^disembark$} {
	#T+ sailDisembarkTrigger
	#T+ sailArglebargleTrigger
	}
#ONINPUT {^embark (*)$} {
	#T+ sailEmbarkTrigger
	#T+ sailArglebargleTrigger
	#T+ sailNotHereTrigger
	#VAR sailShipName %proper(%1)
	#IF (%numwords(@sailShipName)=2) {
		#VAR sailShipName %concat(%proper(%word(@sailShipName,1))," ",%proper(%word(@sailShipName,2)))
		} {
		#IF (%numwords(@sailShipName)=3) {
			#VAR sailShipName %concat(%proper(%word(@sailShipName,1))," ",%word(@sailShipName,2)," ",%proper(%word(@sailShipName,3)))
			}
		}
	#VAR sailEmbarkRoom (%replace(%replace(%replace(%roomname()," ",""),"'",""),"-",""))
	}
#EVENT eventSailStop {
	#VAR sailOrigin {}
	#VAR sailDestination {}
	#VAR sailInput {}
	#VAR sailTrip {}
	#VAR sailIndex {}
	#VAR sailNextDirection {}
	#VAR sailMoveShip {}
	#VAR sailArrivalLocation {}
	#VAR sailDepartureLocation {}
	#VAR oceanTripNotification {}
	#VAR riverTripNotification {}
	#T- Sailing|RiverSail
	#T- Sailing|OceanSail
	#T- Sailing|SailorEmotes
	}
#EVENT eventSailEngine {
	#VAR sailIndex (@sailIndex+1)
	#VAR sailNextDirection %item(@sailTrip,@sailIndex)
	#VAR sailMoveShip %item(@sailDir,@sailNextDirection)
	#T- sailCaptainTrigger
	}
#EVENT eventOceanStart {
	#RAISE eventMapReset
	#VAR %concat(oceanOpen,%replace(@sailDepartureLocation," ","")) "X"
	}
#EVENT eventSailEmote {
	#IF (%len(@sailMoveShip)) {
		#SENDRAW {@sailMoveShip}
		}
	}
#EVENT eventMapReset {
	#VAR ADockattheEdgeofthePier " "
	#VAR ATarredTimberDock " "
	#VAR CenterWharf " "
	#VAR DocksOnTheAlguenyaRiver " "
	#VAR EndofthePier " "
	#VAR OnaLongDock " "
	#VAR OnthePierofIsleJafar " "
	#VAR OvergrownPlainsnearaSmallStream " "
	#VAR Southharbor " "
	#VAR StoneDocksofIllian " "
	#VAR TheCityDocks " "
	#VAR TheShoresoftheAryth " "
	#VAR WatersEdgeontheCalpene " "
	#VAR WhitebridgeDocks " "
	#VAR oceanOpen " "
	#VAR oceanOpenAltara " "
	#VAR oceanOpenAmadicia " "
	#VAR oceanOpenBandarEban " "
	#VAR oceanOpenFalme " "
	#VAR oceanOpenIllian " "
	#VAR oceanOpenJafar " "
	#VAR oceanOpenMayene " "
	#VAR oceanOpenTanchico " "
	#VAR oceanOpenTremalking " "
	#VAR riverOpenAringill " "
	#VAR riverOpenCairhien " "
	#VAR riverOpenIllian " "
	#VAR riverOpenIrinjavar " "
	#VAR riverOpenTarValon " "
	#VAR riverOpenTear " "
	#VAR riverOpenWhitebridge " "
	}
#CLASS 0
#CLASS {Sailing|RiverSail} {disable}
#TRIGGER {^Sweeps churning the water steer the ship onto the river.$} {
	#RAISE eventMapReset
	#VAR %concat("riverOpen",%replace(@sailDepartureLocation," ","")) "X"
	#RAISE eventSailEngine
	} "" {case}
#TRIGGER {^Ropes are pulled to adjust the sail as the ship sails north against the current.$} {
	#IF (@riverOpenAringill=X) {
		#VAR riverOpenAringill " "
		#VAR riverOpenTarValon "X"
		} {}
	#IF (@riverOpenTear=X) {
		#VAR riverOpenTear " "
		#VAR riverOpenAringill "X"
		} {}
	#IF (@riverOpenWhitebridge=X) {
		#VAR riverOpenWhitebridge " "
		#VAR riverOpenIrinjavar "X"
		} {}
	#IF (@riverOpenIllian=X) {
		#VAR riverOpenIllian " "
		#VAR riverOpenWhitebridge "X"
		} {}
	#RAISE eventSailEngine
	} "" {case}
#TRIGGER {^Ropes are pulled to adjust the sail as the ship sails east against the current.$} {
	#VAR riverOpenAringill " "
	#VAR riverOpenCairhien "X"
	#RAISE eventSailEngine
	} "" {case}
#TRIGGER {^Ropes are pulled to adjust the sail as the ship sails south on the current.$} {
	#IF (@riverOpenAringill=X) {
		#VAR riverOpenAringill " "
		#VAR riverOpenTear "X"
		} {}
	#IF (@riverOpenTarValon=X) {
		#VAR riverOpenTarValon " "
		#VAR riverOpenAringill "X"
		} {}
	#IF (@riverOpenWhitebridge=X) {
		#VAR riverOpenWhitebridge " "
		#VAR riverOpenIllian "X"
		} {}
	#IF (@riverOpenIrinjavar=X) {
		#VAR riverOpenIrinjavar " "
		#VAR riverOpenWhitebridge "X"
		} {}
	#RAISE eventSailEngine
	} "" {case}
#TRIGGER {^Ropes are pulled to adjust the sail as the ship sails west on the current.$} {
	#VAR riverOpenCairhien " "
	#VAR riverOpenAringill "X"
	#RAISE eventSailEngine
	} "" {case}
#TRIGGER {^Sails are lowered and sweeps steer the ship towards the Cairhien docks.$} {
	#VAR riverOpenCairhien " "
	#VAR DocksOnTheAlguenyaRiver "X"
	#VAR sailMapDestination {DocksOnTheAlguenyaRiver}
	#PRINT {Welcome to Cairhien Captain %char, gateway to the Spine of the World and the Aiel Waste. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^Sails are lowered and sweeps steer the ship towards the Tear docks.$} {
	#VAR riverOpenTear " "
	#VAR TheCityDocks "X"
	#VAR sailMapDestination {TheCityDocks}
	#PRINT {The Stone still stands Captain %char, welcome to Tear. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^Sails are lowered and sweeps steer the ship towards the Aringill docks.$} {
	#VAR riverOpenAringill " "
	#VAR ATarredTimberDock "X"
	#VAR sailMapDestination {ATarredTimberDock}
	#PRINT {Welcome to Aringill Captain %char, largest port in Andor. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^Sails are lowered and sweeps steer the ship into Southharbor.$} {
	#VAR riverOpenTarValon " "
	#VAR Southharbor "X"
	#VAR sailMapDestination {Southharbor}
	#PRINT {The Shining Walls of Tar Valon await you Captain %char. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^Sails are lowered and sweeps steer the ship towards the Illian docks.$} {
	#VAR riverOpenIllian " "
	#VAR StoneDocksofIllian "X"
	#VAR sailMapDestination {StoneDocksofIllian}
	#PRINT {Welcome to Illian Captain %char, home to the Illian Companions. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^Sails are lowered and sweeps steer the ship towards the Whitebridge docks.$} {
	#VAR riverOpenWhitebridge " "
	#VAR WhitebridgeDocks "X"
	#VAR sailMapDestination {WhitebridgeDocks}
	#PRINT {They say it was created in the Age of Legends Captain %char, welcome to Whitebridge. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^Sails are lowered and sweeps steer the ship towards the Irinjavar shoreline.$} {
	#VAR riverOpenIrinjavar " "
	#VAR OvergrownPlainsnearaSmallStream "X"
	#VAR sailMapDestination {OvergrownPlainsnearaSmallStream}
	#PRINT {Welcome to Saldaea Captain %char, Maradon lies to the north. %crlf}
	#RAISE eventSailStop
	} "" {case}
#CLASS 0
#CLASS {Sailing|OceanSail} {disable}
#TRIGGER {^Sweeps steer the ship away from the beach.$} {
	#RAISE eventSailEngine
	#RAISE eventOceanStart
	} "" {case}
#TRIGGER {^Sweeps steer the ship out of the harbor.$} {
	#RAISE eventSailEngine
	#RAISE eventOceanStart
	} "" {case}
#TRIGGER {^Sweeps steer the ship out of the cove.$} {
	#RAISE eventSailEngine
	#RAISE eventOceanStart
	} "" {case}
#TRIGGER {^Sweeps steer the ship away from the shore.$} {
	#RAISE eventSailEngine
	#RAISE eventOceanStart
	} "" {case}
#TRIGGER {^The ship sails north.$} {
	#RAISE eventSailEngine
	#IF (@oceanOpenFalme=X) {
		#VAR oceanOpenFalme " "
		#VAR oceanOpenBandarEban "X"
		} {}
	#IF (@oceanOpenTanchico=X) {
		#VAR oceanOpenTanchico " "
		#VAR oceanOpenFalme "X"
		} {}
	#IF (@oceanOpenAmadicia=X) {
		#VAR oceanOpenAmadicia " "
		#VAR oceanOpenTanchico "X"
		} {}
	} "" {case}
#TRIGGER {^The ship sails east.$} {
	#RAISE eventSailEngine
	#IF (@oceanOpenTear=X) {
		#VAR oceanOpenTear " "
		#VAR oceanOpenMayene "X"
		} {}
	#IF (@oceanOpen=X) {
		#VAR oceanOpen " "
		#VAR oceanOpenTear "X"
		} {}
	#IF (@oceanOpenIllian=X) {
		#VAR oceanOpenIllian " "
		#VAR oceanOpen "X"
		} {}
	#IF (@oceanOpenAltara=X) {
		#VAR oceanOpenAltara " "
		#VAR oceanOpenIllian "X"
		} {}
	#IF (@oceanOpenAmadicia=X) {
		#VAR oceanOpenAmadicia " "
		#VAR oceanOpenAltara "X"
		} {}
	#IF (@oceanOpenTremalking=X) {
		#VAR oceanOpenTremalking " "
		#VAR oceanOpenAmadicia "X"
		} {}
	#IF (@oceanOpenJafar=X) {
		#VAR oceanOpenJafar " "
		#VAR oceanOpenFalme "X"
		} {}
	} "" {case}
#TRIGGER {^The ship sails south.$} {
	#RAISE eventSailEngine
	#IF (@oceanOpenTanchico=X) {
		#VAR oceanOpenTanchico " "
		#VAR oceanOpenAmadicia "X"
		} {}
	#IF (@oceanOpenFalme=X) {
		#VAR oceanOpenFalme " "
		#VAR oceanOpenTanchico "X"
		} {}
	#IF (@oceanOpenBandarEban=X) {
		#VAR oceanOpenBandarEban " "
		#VAR oceanOpenFalme "X"
		} {}
	} "" {case}
#TRIGGER {^The ship sails west.$} {
	#RAISE eventSailEngine
	#IF (@oceanOpenAmadicia=X) {
		#VAR oceanOpenAmadicia " "
		#VAR oceanOpenTremalking "X"
		} {}
	#IF (@oceanOpenAltara=X) {
		#VAR oceanOpenAltara " "
		#VAR oceanOpenAmadicia "X"
		} {}
	#IF (@oceanOpenIllian=X) {
		#VAR oceanOpenIllian " "
		#VAR oceanOpenAltara "X"
		} {}
	#IF (@oceanOpen=X) {
		#VAR oceanOpen " "
		#VAR oceanOpenIllian "X"
		} {}
	#IF (@oceanOpenTear=X) {
		#VAR oceanOpenTear " "
		#VAR oceanOpen "X"
		} {}
	#IF (@oceanOpenMayene=X) {
		#VAR oceanOpenMayene " "
		#VAR oceanOpenTear "X"
		} {}
	#IF (@oceanOpenFalme=X) {
		#VAR oceanOpenFalme " "
		#VAR oceanOpenJafar "X"
		} {}
	} "" {case}
#TRIGGER {^The ship sails into the harbor of Mayene.$} {
	#VAR oceanOpenMayene " "
	#VAR OnaLongDock "X"
	#PRINT {Welcome to Mayene Captain %char, home to the Winged Guard. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^The ship sails towards the shore of Tremalking.$} {
	#VAR oceanOpenTremalking " "
	#VAR ADockattheEdgeofthePier "X"
	#PRINT {Welcome to Tremalking Captain %char, home of the Sea Folk city of Samarin. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^The ship sails into the harbor of Tear.$} {
	#VAR oceanOpenTear " "
	#VAR TheCityDocks "X"
	#PRINT {We made it through the Fingers of the Dragon Captain %char, welcome to Tear! %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^The ship sails towards Falme.$} {
	#VAR oceanOpenFalme " "
	#VAR CenterWharf "X"
	#PRINT {We have arrived at the Seanchan controlled city of Falme Captain %char. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^The ship sails towards Bandar Eban.$} {
	#VAR oceanOpenBandarEban " "
	#VAR EndofthePier "X"
	#PRINT {The home of the Sword and Hand, welcome to Bandar Eban Captain %char. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^The ship sails towards the shore of Jafar.$} {
	#VAR oceanOpenJafar " "
	#VAR OnthePierofIsleJafar "X"
	#PRINT {Welcome to Jafar Captain %char, The Seanchan call it Aile Jafar. %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^The ship sails into a sheltered cove.$} {
	#VAR oceanOpenAmadicia " "
	#VAR TheShoresoftheAryth "X"
	#PRINT {We are here Captain %char, east of Windbitter's Finger on the Shadow Coast! %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^The ship sails towards the shore of Illian.$} {
	#VAR oceanOpenIllian " "
	#VAR StoneDocksofIllian "X"
	#PRINT {The Hunt for the Horn of Valere starts in Illian, good luck Captain %char! %crlf}
	#RAISE eventSailStop
	} "" {case}
#TRIGGER {^The ship sails east to the docks of Tanchico.$} {
	#VAR oceanOpenTanchico " "
	#VAR WatersEdgeontheCalpene "X"
	#PRINT {The Seanchan and Civil Watch battle openly here in the streets of Tanchico Captain %char. %crlf}
	#RAISE eventSailStop
	} "" {case}
#CLASS 0
#CLASS {Sailing|SailorEmotes} {disable}
#TRIGGER {A sailor calls out as he sees a giant fish alongside the ship.} {#RAISE eventSailEmote} "" {case|verbatim}
#TRIGGER {A sailor calls out the depth of the river.} {#RAISE eventSailEmote} "" {case|verbatim}
#TRIGGER {A sailor climbs into the ship's mast and looks out over the water.} {#RAISE eventSailEmote} "" {case|verbatim}
#TRIGGER {A sailor hauls up a bucket of fresh water and splashes it across the deck.} {#RAISE eventSailEmote} "" {case|verbatim}
#TRIGGER {A sailor leans on the ship's railing and looks across the water.} {#RAISE eventSailEmote} "" {case|verbatim}
#TRIGGER {A sailor neatly coils a rope on the front deck.} {#RAISE eventSailEmote} "" {case|verbatim}
#TRIGGER {A sailor sings hoarsely as he works.} {#RAISE eventSailEmote} "" {case|verbatim}
#TRIGGER {A sailor stuffs his pipe with tabac and lights it.} {#RAISE eventSailEmote} "" {case|verbatim}
#TRIGGER {A sailor takes a mop and starts scrubbing the deck.} {#RAISE eventSailEmote} "" {case|verbatim}
#CLASS 0
#CLASS {Sailing|OceanVariables}
#VAR amaban {1|1|1|1|2}
#VAR amafal {1|1|1|2}
#VAR amaill {1|2|2|1}
#VAR amajaf {1|1|1|4|3}
#VAR amamay {1|2|2|2|2|2|1}
#VAR amatan {1|1|2}
#VAR amatea {1|2|2|2|2|1}
#VAR amatre {1|4|3}
#VAR banama {4|3|3|3|3}
#VAR banfal {4|3|2}
#VAR banill {4|3|3|3|2|2|1}
#VAR banjaf {4|3|4|3}
#VAR banmay {4|3|3|3|2|2|2|2|2|1}
#VAR bantan {4|3|3|2}
#VAR bantea {4|3|3|3|2|2|2|2|1}
#VAR bantre {4|3|3|3|4|3}
#VAR falama {4|3|3|3}
#VAR falban {4|1|2}
#VAR falill {4|3|3|2|2|1}
#VAR faljaf {4|4|3}
#VAR falmay {4|3|3|2|2|2|2|2|1}
#VAR faltan {4|3|2}
#VAR faltea {4|3|3|2|2|2|2|1}
#VAR faltre {4|3|3|4|3}
#VAR illama {3|4|4|3}
#VAR illban {3|4|4|1|1|1|2}
#VAR illfal {3|4|4|1|1|2}
#VAR illjaf {3|4|4|1|1|4|3}
#VAR illmay {3|2|2|2|1}
#VAR illtan {3|4|4|1|2}
#VAR illtea {3|2|2|1}
#VAR illtre {3|4|4|4|3}
#VAR jafama {1|2|3|3|3}
#VAR jafban {1|2|1|2}
#VAR jaffal {1|2|2}
#VAR jafill {1|2|3|3|2|2|1}
#VAR jafmay {1|2|3|3|2|2|2|2|2|1}
#VAR jaftan {1|2|3|2}
#VAR jaftea {1|2|3|3|2|2|2|2|1}
#VAR jaftre {1|2|3|3|4|3}
#VAR mayama {3|4|4|4|4|4|3}
#VAR mayban {3|4|4|4|4|4|1|1|1|2}
#VAR mayfal {3|4|4|4|4|4|1|1|2}
#VAR mayill {3|4|4|4|1}
#VAR mayjaf {3|4|4|4|4|4|1|1|4|3}
#VAR maytan {3|4|4|4|4|1|2}
#VAR maytea {3|4|1}
#VAR maytre {3|4|4|4|4|4|4|3}
#VAR tanama {4|3|3}
#VAR tanban {4|1|1|2}
#VAR tanfal {4|1|2}
#VAR tanill {4|3|2|2|1}
#VAR tanjaf {4|1|4|3}
#VAR tanmay {4|3|2|2|2|2|2|1}
#VAR tantea {4|3|2|2|2|2|1}
#VAR tantre {4|3|4|3}
#VAR teaama {3|4|4|4|4|3}
#VAR teaban {3|4|4|4|4|1|1|1|2}
#VAR teafal {3|4|4|4|4|1|1|2}
#VAR teaill {3|4|4|1}
#VAR teajaf {3|4|4|4|4|1|1|4|3}
#VAR teamay {3|2|1}
#VAR teatan {3|4|4|4|1|2}
#VAR teatre {3|4|4|4|4|4|3}
#VAR treama {1|2|3}
#VAR treban {1|2|1|1|1|2}
#VAR trefal {1|2|1|1|2}
#VAR treill {1|2|2|2|1}
#VAR trejaf {1|2|1|1|4|3}
#VAR tremay {1|2|2|2|2|2|2|1}
#VAR tretan {1|2|1|2}
#VAR tretea {1|2|2|2|2|2|1}
#CLASS 0
#CLASS {Sailing|RiverVariables}
#VAR aricai {2|2|1}
#VAR aritar {2|1|1}
#VAR aritea {2|3|3}
#VAR caiari {3|4|4}
#VAR caitar {3|4|1|1}
#VAR caitea {3|4|3|3}
#VAR illiri {1|1|1|1}
#VAR illwhi {1|1|2}
#VAR iriill {3|3|3|3}
#VAR iriwhi {3|3|2}
#VAR tarari {3|3|4}
#VAR tarcai {3|3|2|1}
#VAR tartea {3|3|3|3}
#VAR teaari {1|1|4}
#VAR teacai {1|1|2|1}
#VAR teatar {1|1|1|1}
#VAR whiill {4|3|3}
#VAR whiiri {4|1|1}
#CLASS 0
#CLASS {Sailing|MapVariables}
#VAR ADockattheEdgeofthePier " "
#VAR ATarredTimberDock " "
#VAR CenterWharf " "
#VAR DocksOnTheAlguenyaRiver " "
#VAR EndofthePier " "
#VAR OnaLongDock " "
#VAR OnthePierofIsleJafar " "
#VAR OvergrownPlainsnearaSmallStream " "
#VAR Southharbor " "
#VAR StoneDocksofIllian " "
#VAR TheCityDocks " "
#VAR TheShoresoftheAryth " "
#VAR WatersEdgeontheCalpene " "
#VAR WhitebridgeDocks " "
#VAR oceanOpen " "
#VAR oceanOpenAltara " "
#VAR oceanOpenAmadicia " "
#VAR oceanOpenBandarEban " "
#VAR oceanOpenFalme " "
#VAR oceanOpenIllian " "
#VAR oceanOpenJafar " "
#VAR oceanOpenMayene " "
#VAR oceanOpenTanchico " "
#VAR oceanOpenTear " "
#VAR oceanOpenTremalking " "
#VAR riverOpenAringill " "
#VAR riverOpenCairhien " "
#VAR riverOpenIllian " "
#VAR riverOpenIrinjavar " "
#VAR riverOpenTarValon " "
#VAR riverOpenTear " "
#VAR riverOpenWhitebridge " "
#CLASS 0
#CLASS {Sailing|OceanMap}
#ALIAS oceanMap {
	#PRINT {}
	#PRINT {}
	#PRINT { <font size=7>Ports of the Aryth Ocean and the Sea of Storms</font>}
	#PRINT {}
	#PRINT {            [@oceanOpenBandarEban]---[@EndofthePier]                               Ocean Vessels}
	#PRINT {             ¦  Bandar Eban                         -------------}
	#PRINT {             ¦                                      Black Swan}
	#PRINT {             ¦                                      Dauntless}
	#PRINT {      [@oceanOpenJafar]---[@oceanOpenFalme]---[@CenterWharf] Falme                         Golden Tree}
	#PRINT {       ¦     ¦                                      Horn of Valere}
	#PRINT {      [@OnthePierofIsleJafar]    ¦                                      Silverpike}
	#PRINT {     Jafar   ¦  Tanchico                            Silver Sword}
	#PRINT {            [@oceanOpenTanchico]---[@WatersEdgeontheCalpene]                               Victory of Jafar}
	#PRINT {             ¦         Illian      Tear  Mayene     Windchaser}
	#PRINT {             ¦          [@StoneDocksofIllian]         [@TheCityDocks]   [@OnaLongDock]}
	#PRINT {             ¦           ¦           ¦     ¦        Clan Vessels}
	#PRINT {             ¦           ¦           ¦     ¦        -------------}
	#PRINT {      [@oceanOpenTremalking]---[@oceanOpenAmadicia]---[@oceanOpenAltara]---[@oceanOpenIllian]---[@oceanOpen]---[@oceanOpenTear]---[@oceanOpenMayene]       Golden Bee (Illian)}
	#PRINT {       ¦     ¦                                      Golden Hawk (Mayene)}
	#PRINT {       ¦    [@TheShoresoftheAryth] Amadicia                            Crescent Moon (Tear)}
	#PRINT {      [@ADockattheEdgeofthePier]}
	#PRINT {   Tremalking}
	#PRINT {}
	#PRINT {       <C dodgerblue>@oceanTripNotification</C> }
	#PRINT {}
	}
#CLASS 0
#CLASS {Sailing|RiverMap}
#ALIAS riverMap {
	#PRINT {}
	#PRINT {}
	#PRINT { <font size=7>Ports of The River Arinelle and The River Erinin</font>}
	#PRINT {}
	#PRINT {   River Arinelle}
	#PRINT {   --------------       [@OvergrownPlainsnearaSmallStream] Irinjavar      Tar Valon [@Southharbor]}
	#PRINT {   Swallow               ¦                            ¦}
	#PRINT {   Kingfisher            ¦                            ¦    Cairhien}
	#PRINT {   Hummingbird          [@riverOpenIrinjavar]                          [@riverOpenTarValon]     [@DocksOnTheAlguenyaRiver]}
	#PRINT {   Starling*             ¦                            ¦       ¦}
	#PRINT {                         ¦  Whitebridge               ¦       ¦}
	#PRINT {   River Erinin         [@riverOpenWhitebridge]-----[@WhitebridgeDocks]          [@ATarredTimberDock]-----[@riverOpenAringill]-----[@riverOpenCairhien]}
	#PRINT {   --------------        ¦                 Aringill   ¦}
	#PRINT {   River Flame           ¦                            ¦}
	#PRINT {   River Sun            [@riverOpenIllian]                          [@riverOpenTear]}
	#PRINT {   River Queen           ¦                            ¦}
	#PRINT {   River Stork           ¦                            ¦}
	#PRINT {   River Lady*          [@StoneDocksofIllian] Illian              Tear [@TheCityDocks]}
	#PRINT {}
	#PRINT {       <C dodgerblue>@riverTripNotification</C> }
	#PRINT {}
	}
#CLASS 0

Re: House of Medakan cMUD Scripts

Posted: Sat Oct 12, 2019 6:14 pm
by Taziar
Type helpScoreStatTime to view help file in client.

Image

Direct download: ScoreStatTimeCMUD.txt

Code: Select all

#CLASS {ScoreStatTime}
#ALIAS helpScoreStatTime {
	#PRINT {%crlf <C dodgerblue>-----ScoreStatTime Help File-----</C>}
	#PRINT {        <C dodgerblue>[Updated: 8/28/2019]</C>}
	#PRINT { Saves score, stat, time, and equipment info in character notes.}
	#PRINT {  Note: also saves character's rent info if Rent script is detected,}
	#PRINT {   estimated reroll date, or character deletion date if under level 30.}
	#PRINT {}
	#PRINT { Type <C dodgerblue>showBMI</C> to toggle BMI:<BMI> at end of weight line (on/off).}
	#PRINT {  Note: BMI statistics shown are truncated.}
	#PRINT {   Example: a BMI of 0.390059173107147 will show as BMI:0.39}
	#PRINT {}
	#PRINT { Type <C dodgerblue>showStatSum</C> to toggle SUM:<statsum> at end of stats line (on/off).}
	#PRINT {  Example: Your base abilities are: Str:17 Int:11 Wil:6 Dex:19 Con:19 Sum:72.}
	#PRINT {}
	#PRINT { Type <C dodgerblue>showTime</C> to toggle time messages in time command output (on/off).}
	#PRINT {  Example: It has been 7 days, 17 hours since ~%char last connected. (game time)}
	#PRINT {}
	#PRINT { Type <C dodgerblue>showTotalDefense</C> to toggle Total Defense:<defense> at end of bonus line (on/off).}
	#PRINT {  Example: Offensive bonus: 151, Dodging bonus: 82, Parrying bonus: 20, Total defense: 102}
	#PRINT {}
	#PRINT { Type <C dodgerblue>showEXP</C> to toggle EXP since last score command line (on/off).}
	#PRINT {  Example: You have gained 510 experience points since your last score command.}
	#PRINT {   Note: will not display line if experience gained is zero or less.}
	#PRINT {}
	#PRINT { Typing <C dodgerblue>rent</C> or <C dodgerblue>quit</C> will send time command to save data then rent/quit.}
	#PRINT {}
	#PRINT { Type <C dodgerblue>linkless</C> to save data and disconnect if linkless renting.}
	#PRINT {}
	}
#ALIAS showBMI {
	#IF (@showBMI) {
		#VAR showBMI 0
		#PRINT {%crlf BMI information is turned off.}
		} {
		#VAR showBMI 1
		#PRINT {%crlf BMI information is turned on.}
		}
	}
#ALIAS showEXP {
	#IF (@showEXP) {
		#VAR showEXP 0
		#PRINT {%crlf EXP line function is turned off.}
		#T- scoreEXPmath
		} {
		#VAR showEXP 1
		#PRINT {%crlf EXP line function is turned on.}
		#T+ scoreEXPmath
		}
	}
#ALIAS showStatSum {
	#IF (@showStatSum) {
		#VAR showStatSum 0
		#PRINT {%crlf StatSum information is turned off.}
		} {
		#VAR showStatSum 1
		#PRINT {%crlf StatSum information is turned on.}
		}
	}
#ALIAS showTime {
	#IF (@showTimeDisplay) {
		#VAR showTimeDisplay 0
		#PRINT {%crlf Time message information is turned off.}
		} {
		#VAR showTimeDisplay 1
		#PRINT {%crlf Time message information is turned on.}
		}
	}
#ALIAS showTotalDefense {
	#IF (@showTotalDefense) {
		#VAR showTotalDefense 0
		#PRINT {%crlf TotalDefense information is turned off.}
		} {
		#VAR showTotalDefense 1
		#PRINT {%crlf TotalDefense information is turned on.}
		}
	}
#VAR scoreEXP1 {0} {0}
#VAR scoreEXP2 {0} {0}
#VAR scoreEXPresult {0} {0}
#VAR scoreLevel {} {}
#VAR scoreQP1 {0} {0}
#VAR scoreQP2 {0} {0}
#VAR scoreQPresult {0} {0}
#VAR serverCalTemp {}
#VAR serverDay {}
#VAR serverDisplayDay {}
#VAR serverDisplayDays {0} {0}
#VAR serverDisplayMonth {}
#VAR serverDisplayMonths {0} {0}
#VAR serverMonth {}
#VAR serverMonthDays {31|28|31|30|31|30|31|31|30|31|30|31}
#VAR serverMonthNames {Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec}
#VAR serverRerollMonth {}
#VAR serverRerollMonths {0} {0}
#VAR serverRerollYear {}
#VAR serverYear {}
#VAR showBMI {1}
#VAR showEXP {1}
#VAR showStatSum {1}
#VAR showTimeConnection {1} {1}
#VAR showTimeDeletion {0} {0}
#VAR showTimeDisconnect {0} {0}
#VAR showTimeDisplay {1}
#VAR showTimeMessage {0} {0}
#VAR showTotalDefense {1}
#VAR statAge {} {}
#VAR statBMI {} {}
#VAR statCON {} {}
#VAR statCarryWeight {} {}
#VAR statClass {} {}
#VAR statDEX {} {}
#VAR statDodge {} {}
#VAR statFeet {} {}
#VAR statGender {} {}
#VAR statHeightBMI {} {}
#VAR statINT {} {}
#VAR statInches {} {}
#VAR statOffensive {} {}
#VAR statParry {} {}
#VAR statRace {} {}
#VAR statSTR {} {}
#VAR statSUM {} {}
#VAR statTotalBMI {} {}
#VAR statTotalDefense {} {}
#VAR statTotalHeight {} {}
#VAR statWIL {} {}
#VAR statWeight {} {}
#VAR statWeightBMI {} {}
#VAR statWeightCondition {} {}
#VAR statWeightTotalBMI {} {}
#VAR statWornWeight {} {}
#VAR timeAMPM {}
#VAR timeCurrentTotal {0}
#VAR timeDay {0}
#VAR timeDeleteReroll {}
#VAR timeDisplayDay {0}
#VAR timeDisplayHour {0}
#VAR timeDisplayMonth {0}
#VAR timeDisplayYear {0}
#VAR timeEvalDays {0}
#VAR timeEvalHours {0}
#VAR timeEvalMonths {0}
#VAR timeEvalPastDays {0}
#VAR timeEvalPastHours {0}
#VAR timeEvalPastMonths {0}
#VAR timeEvalPastYears {0}
#VAR timeEvalYears {0}
#VAR timeHour {0}
#VAR timeMonth {}
#VAR timeMonthNames {Taisham|Jumara|Saban|Aine|Adar|Saven|Amadaine|Tammaz|Maigdhal|Choren|Shaldine|Nesan|Danu}
#VAR timePastAMPM {} {}
#VAR timePastDay {0} {0}
#VAR timePastHour {0} {0}
#VAR timePastMonth {} {}
#VAR timePastTotal {0} {0}
#VAR timePastYear {0} {0}
#VAR timeTotalDays {0}
#VAR timeTotalHours {0}
#VAR timeTotalMonths {0}
#VAR timeTotalYears {0}
#VAR timeYear {0}
#TRIGGER "sstWelcomeTrigger" {^Welcome to the Wheel of Time!  Type 'help' for information.$} {
	#RAISE eventSSTconnection
	} "" {case}
#TRIGGER "sstReconnectTrigger" {^Reconnecting.$} {
	#RAISE eventSSTconnection
	} "" {case}
#TRIGGER "sstAlreadyTrigger" {^You take over your own body, already in use!$} {
	#RAISE eventSSTconnection
	} "" {case}
#TRIGGER "scoreTrigger" {^This ranks you as [A-Z]%w * ~(Level &%dscoreLevel~).$} {
	#T- scoreTrigger
	} "" {case|disable}
#TRIGGER "scorePointsTrigger" {^You have scored &%dscoreEXP1 experience points and &%dscoreQP1 quest points.$} {
	#T- scorePointsTrigger
	#T+ scoreEXPtrigger
	#VAR scoreEXPresult (@scoreEXP1-@scoreEXP2)
	#VAR scoreEXP2 @scoreEXP1
	#VAR scoreQPresult (@scoreQP1-@scoreQP2)
	#VAR scoreQP2 @scoreQP1
	} "" {case|disable}
#TRIGGER "scoreEXPtrigger" {^You need * exp to} {
	#T- scoreEXPtrigger
	#IF (@scoreEXP2=@scoreEXPresult AND @scoreQP2=@scoreQPresult) {
		#PRINT {<C dodgerblue>Current experience and quest points saved!</C>}
		} {
		#IF (@scoreEXPresult>0 AND @scoreQPresult=0) {
			#PRINT {<C dodgerblue>You have gained @scoreEXPresult experience points since your last score command.</C>}
			} {
			#IF (@scoreEXPresult=0 AND @scoreQPresult>0) {
				#PRINT {<C dodgerblue>You have gained @scoreQPresult quest points since your last score command.</C>}
				} {
				#IF (@scoreEXPresult>0 AND @scoreQPresult>0) {
					#PRINT {<C dodgerblue>You have gained @scoreEXPresult experience points and @scoreQPresult quest points since your last score command.</C>}
					}
				}
			}
		}
	} "" {case|disable}
#TRIGGER "statTrigger" {You are a &%dstatAge year old &%wstatGender &%wstatRace &%w{statClass}.} {
	#T- statTrigger
	#T+ statAbilitiesTrigger
	#T+ statBonusTrigger
	#T+ statBMITrigger
	#T+ statBMI2Trigger
	} "" {case|disable}
#TRIGGER "statAbilitiesTrigger" {^Your base abilities are: Str:&%dstatSTR Int:&%dstatINT Wil:&%dstatWIL Dex:&%dstatDEX Con:&%dstatCON} {
	#T- statAbilitiesTrigger
	#VAR statSUM (@statSTR+@statINT+@statWIL+@statDEX+@statCON)
	#IF (@showStatSum) {
		#SUB {Your base abilities are: Str:@statSTR Int:@statINT Wil:@statWIL Dex:@statDEX Con:@statCON Sum:@statSUM}
		}
	} "" {case|disable}
#TRIGGER "statBonusTrigger" {^Offensive bonus: &%dstatOffensive, Dodging bonus: &%dstatDodge, Parrying bonus: &%dstatParry} {
	#T- statBonusTrigger
	#VAR statTotalDefense (@statDodge+@statParry)
	#IF (@showTotalDefense) {
		#SUB {Offensive bonus: @statOffensive, Dodging bonus: @statDodge, Parrying bonus: @statParry, Total defense: @statTotalDefense}
		}
	} "" {case|disable}
#TRIGGER "statBMITrigger" {^Your height is &%dstatFeet feet, &%dstatInches inches, and you weigh &statWeight lbs.} {
	#T- statBMITrigger
	#VAR statTotalHeight (@statFeet*12+@statInches)
	#VAR statHeightBMI (@statTotalHeight*@statTotalHeight)
	#VAR statWeightBMI (@statWeight*10)
	#VAR statBMI (%float(@statWeightBMI)/%float(@statHeightBMI))
	#IF (@showBMI) {
		#SUB {Your height is @statFeet feet, @statInches inches, and you weigh @statWeight lbs. Base BMI:%copy(@statBMI,1,4)}
		}
	} "" {case|disable}
#TRIGGER "statBMI2Trigger" {^You are carrying &statCarryWeight lbs and wearing &statWornWeight lbs, &statWeightCondition.} {
	#T- statBMI2Trigger
	#VAR statWeightTotalBMI ((@statWeight+@statWornWeight)*10)
	#VAR statTotalBMI (%float(@statWeightTotalBMI)/%float(@statHeightBMI))
	#IF (@showBMI) {
		#SUB {You are carrying @statCarryWeight lbs and wearing @statWornWeight lbs, @statWeightCondition Total BMI:%copy(@statTotalBMI,1,4)}
		}
	} "" {case|disable}
#TRIGGER "timeTrigger" {It is &%dtimeHour o'clock &%wtimeAMPM, on the &%d{timeDay}{st|nd|rd|th} day of the month of &%wtimeMonth, year &%dtimeYear.} {
	#T- timeTrigger
	#T+ timeDisplayTrigger
	#T+ serverTrigger
	#VAR timeEvalYears (@timeYear*8736)
	#VAR timeEvalMonths (%ismember(@timeMonth,@timeMonthNames)*672)
	#VAR timeEvalDays (@timeDay*24)
	#IF (@timeAMPM=pm)  {
		#VAR timeEvalHours (@timeHour+12)
		} {
		#VAR timeEvalHours @timeHour
		}
	#IF (@timeHour=12) {
		#IF (@timeAMPM=am) {
			#VAR timeEvalHours 0
			} {
			#VAR timeEvalHours 12
			}
		}
	#VAR timeCurrentTotal (@timeEvalYears+@timeEvalMonths+@timeEvalDays+@timeEvalHours)
	#VAR timeEvalPastYears (@timePastYear*8736)
	#VAR timeEvalPastMonths (%ismember(@timePastMonth,@timeMonthNames)*672)
	#VAR timeEvalPastDays (@timePastDay*24)
	#IF (@timePastAMPM=pm)  {
		#VAR timeEvalPastHours (@timePastHour+12)
		} {
		#VAR timeEvalPastHours @timePastHour
		}
	#IF (@timePastHour=12) {
		#IF (@timePastAMPM=am) {
			#VAR timeEvalPastHours 0
			} {
			#VAR timeEvalPastHours 12
			}
		} {}
	#VAR timePastTotal (@timeEvalPastYears+@timeEvalPastMonths+@timeEvalPastDays+@timeEvalPastHours)
	#VAR timeTotalHours (@timeCurrentTotal-@timePastTotal)
	#IF (@timeTotalHours > 8736) {
		#VAR timeDisplayYear (%format(0,%float(@timeTotalHours/8736)))
		#VAR timeTotalMonths (@timeTotalHours-@timeDisplayYear*8736)
		} {
		#VAR timeDisplayYear 0
		#VAR timeTotalMonths @timeTotalHours
		}
	#IF (@timeTotalMonths > 672) {
		#VAR timeDisplayMonth (%format(0,%float(@timeTotalMonths/672)))
		#VAR timeTotalDays (@timeTotalMonths-@timeDisplayMonth*672)
		} {
		#VAR timeDisplayMonth 0
		#VAR timeTotalDays @timeTotalMonths
		}
	#IF (@timeTotalDays > 24) {
		#VAR timeDisplayDay (%format(0,%float(@timeTotalDays/24)))
		#VAR timeDisplayHour (@timeTotalDays-@timeDisplayDay*24)
		} {
		#VAR timeDisplayDay 0
		#VAR timeDisplayHour @timeTotalDays
		}
	#VAR timePastAMPM @timeAMPM
	#VAR timePastMonth @timeMonth
	#VAR timePastHour @timeHour
	#VAR timePastDay @timeDay
	#VAR timePastYear @timeYear
	#VAR %concat(%char,AMPM) {@timeAMPM} {_nodef} {ScoreStatTime|%concat(sst,%char)}
	#VAR %concat(%char,Month) {@timeMonth} {_nodef} {ScoreStatTime|%concat(sst,%char)}
	#VAR %concat(%char,Hour) {@timeHour} {_nodef} {ScoreStatTime|%concat(sst,%char)}
	#VAR %concat(%char,Day) {@timeDay} {_nodef} {ScoreStatTime|%concat(sst,%char)}
	#VAR %concat(%char,Year) {@timeYear} {_nodef} {ScoreStatTime|%concat(sst,%char)}
	} "" {case|disable}
#TRIGGER "timeDisplayTrigger" {^Forums: * Wiki: * Web client: *$} {
	#IF (@showTimeDisplay) {} {#ABORT 1}
	#IF (@showTimeMessage) {
		#PRINT {<C dodgerblue>It has been %if(@timeDisplayYear>1,@timeDisplayYear years~," ","")%if(@timeDisplayYear=1,1 year~," ","")%if(@timeDisplayMonth>1,@timeDisplayMonth months~," ","")%if(@timeDisplayMonth=1,1 month~," ","")%if(@timeDisplayDay>1,@timeDisplayDay days~," ","")%if(@timeDisplayDay=1,1 day~," ","")%if(@timeDisplayHour>0,@timeDisplayHour hour,"0 hours")%if(@timeDisplayHour>1,"s "," ")since your last time command.</C> ~(game time~)}
		} {}
	#IF (@showTimeConnection) {
		#PRINT {<C dodgerblue>It has been %if(@timeDisplayYear>1,@timeDisplayYear years~," ","")%if(@timeDisplayYear=1,1 year~," ","")%if(@timeDisplayMonth>1,@timeDisplayMonth months~," ","")%if(@timeDisplayMonth=1,1 month~," ","")%if(@timeDisplayDay>1,@timeDisplayDay days~," ","")%if(@timeDisplayDay=1,1 day~," ","")%if(@timeDisplayHour>0,@timeDisplayHour hour,"0 hours")%if(@timeDisplayHour>1,"s "," ")since %char last connected.</C> ~(game time~)}
		} {}
	#IF (@showTimeDisconnect) {#PRINT {<C dodgerblue>%char's disconnection time has been saved.</C>}}
	} "" {case|disable}
#COND {$} {
	#T- timeDisplayTrigger
	#IF (@showTimeDisplay) {} {#ABORT 1}
	#IF (@showTimeMessage) {#GAG} {}
	#IF (@showTimeConnection) {#GAG} {}
	#IF (@showTimeDisconnect) {#GAG} {}
	#VAR showTimeMessage 1
	#VAR showTimeConnection 0
	#VAR showTimeDisconnect 0
	}
#TRIGGER "serverTrigger" {^~(Server: %w &%wserverMonth { ||}&%dserverDay %d:%d:%d &%dserverYear EST} {
	#T- serverTrigger
	#VAR serverDisplayDays 0
	#VAR serverDisplayMonths 0
	#IF (@scoreLevel>29) {#VAR showTimeDeletion 0} {#VAR showTimeDeletion 1}
	#IF (@scoreLevel>19 AND @scoreLevel<30) {#VAR serverDisplayMonths 6} {}
	#IF (@scoreLevel>9 AND @scoreLevel<20) {#VAR serverDisplayMonths 3} {}
	#IF (@scoreLevel>4 AND @scoreLevel<10) {#VAR serverDisplayMonths 1} {}
	#IF (@scoreLevel>1 AND @scoreLevel<5) {#VAR serverDisplayDays 7} {}
	#IF (@scoreLevel=1) {#VAR serverDisplayDays 3} {}
	#IF (@serverDisplayMonths>0) {
		#VAR serverDisplayMonth @serverDisplayMonths+%ismember(@serverMonth,@serverMonthNames)
			#IF (@serverDisplayMonth>12) {
				#VAR serverDisplayMonth @serverDisplayMonth-12
				#VAR serverDisplayMonth %item(@serverMonthNames,@serverDisplayMonth)
				} {
				#VAR serverDisplayMonth %item(@serverMonthNames,@serverDisplayMonth)
				}
		#VAR serverDisplayDay @serverDay
		} {
		#VAR serverDisplayMonth @serverMonth
		}
	#IF (@serverDisplayDays>0) {
		#VAR serverDisplayDay @serverDisplayDays+@serverDay
		#IF (@serverDisplayDay>%eval(%item(@serverMonthDays,%ismember(@serverMonth,@serverMonthNames)))) {
			#VAR serverDisplayDay @serverDisplayDay-%eval(%item(@serverMonthDays,%ismember(@serverMonth,@serverMonthNames)))
			#VAR serverDisplayMonth %item(@serverMonthNames,(%ismember(@serverMonth,@serverMonthNames)+1))
			} {
			#VAR serverDisplayDay @serverDisplayDays+@serverDay
			}
		} {}
	#IF (@statAge<200) {
		#VAR serverCalTemp (200-@statAge)*10
		} {
		#VAR serverCalTemp (%concat(%eval(%copy(@statAge,1,1)+1),00)-@statAge)*10
		}
	#VAR serverRerollMonths @serverCalTemp/30
	#VAR serverRerollYear 0
	#WHILE (@serverRerollMonths>11) {
		#VAR serverRerollYear @serverRerollYear+1
		#VAR serverRerollMonths @serverRerollMonths-12
		}
	#VAR serverRerollMonth @serverRerollMonths+%ismember(@serverMonth,@serverMonthNames)
	#IF (@serverRerollMonth>12) {
		#VAR serverRerollYear @serverRerollYear+1
		#VAR serverRerollMonth @serverRerollMonth-12
		} {}
	#VAR serverRerollMonth %item(@serverMonthNames,@serverRerollMonth)
	#VAR serverRerollYear @serverRerollYear+@serverYear
	#IF (@showTimeDeletion) {
		#PRINT {<C red>%char will delete in %if(@serverDisplayMonths=1,@serverDisplayMonths month,%if(@serverDisplayMonths>1,@serverDisplayMonths months,@serverDisplayDays days)) on @serverDisplayMonth @serverDisplayDay if not logged in before this date.</C>}
		} {}
	#IF (@scoreLevel<30) {
		#VAR timeDeleteReroll {%char will delete on @serverDisplayMonth @serverDisplayDay.}
		} {
		#VAR timeDeleteReroll {%char will reroll in @serverRerollMonth @serverRerollYear.}
		}
	} "" {case|disable}
#TRIGGER "sstSleepWellWake" {You {drawl|hiss|say} 'sleep well and wake'$} {
	#RAISE eventRentNotes
	#RAISE eventCharacterNotes
	} "" {}
#ONINPUT "sstQuitInput" {^quit$} {
	#TEMP "quitTEMP" {^~(Server: * EST, last rebooted *~)$} {
		#IF (%class(Rent)=1) {#RAISE eventRentNotes} {}
		#RAISE eventCharacterQuit
		} "ScoreStatTime" {case}
	#RAISE eventTimeDisconnect
	}
#ONINPUT "sstRentInput" {^{ren|rent}$} {
	#TEMP "rentTEMP" {^~(Server: * EST, *~)$} {
		#RAISE eventRentNotes
		#RAISE eventCharacterNotes
		} "ScoreStatTime" {case}
	#RAISE eventTimeDisconnect
	}
#ONINPUT "sstSaveInput" {^{sav|save}$} {
	#RAISE eventRentNotes
	#RAISE eventCharacterNotes
	}
#ONINPUT "sstScoreInput" {^{sc|sco|scor|score}$} {
	#T+ scoreTrigger
	#T+ scorePointsTrigger
	#T+ ScoreStatTime|CharacterNotes|ScoreNotes
	}
#ONINPUT "sstStatInput" {^stat$} {
	#T+ statTrigger
	#T+ ScoreStatTime|CharacterNotes|StatNotes
	}
#ONINPUT "sstTimeInput" {^{ti|tim|time}$} {
	#T+ timeTrigger
	#T+ ScoreStatTime|CharacterNotes|TimeNotes
	}
#EVENT OnConnect {
	#T+ sstWelcomeTrigger
	#T+ sstReconnectTrigger
	#T+ sstAlreadyTrigger
	#VAR eqNotesList {}
	#VAR rentNotesList {}
	#VAR rentNotesTemp {}
	#VAR scoreNotesList {}
	#VAR statNotesList {}
	#VAR timeNotesList {}
	#IF (%class(ScoreStatTime|%concat(sst,%char))=-1) {
		#CLASS {ScoreStatTime|%concat(sst,%char)} {disable}
		#VAR %concat(%char,AMPM) {}
		#VAR %concat(%char,Month) {}
		#VAR %concat(%char,Hour) {0}
		#VAR %concat(%char,Day) {0}
		#VAR %concat(%char,Year) {0}
		#CLASS 0
		} {
		#T+ ScoreStatTime|%concat(sst,%char)
		}
	}
#EVENT eventSSTconnection {
	#T- sstWelcomeTrigger
	#T- sstReconnectTrigger
	#T- sstAlreadyTrigger
	#T+ scoreTrigger
	#IF (@showEXP) {
		#T+ scorePointsTrigger
		} {
		#T- scorePointsTrigger
		}
	#T+ statTrigger
	#T+ timeTrigger
	#T+ ScoreStatTime|CharacterNotes|TimeNotes
	#VAR timePastAMPM {%expand(%concat("@",%char,AMPM))} {_nodef} {ScoreStatTime}
	#VAR timePastMonth {%expand(%concat("@",%char,Month))} {_nodef} {ScoreStatTime}
	#VAR timePastHour {%expand(%concat("@",%char,Hour))} {_nodef} {ScoreStatTime}
	#VAR timePastDay {%expand(%concat("@",%char,Day))} {_nodef} {ScoreStatTime}
	#VAR timePastYear {%expand(%concat("@",%char,Year))} {_nodef} {ScoreStatTime}
	#SENDRAW {score}
	#SENDRAW {stat}
	#SENDRAW {time}
	}
#EVENT eventTimeDisconnect {
	#T+ timeTrigger
	#T+ ScoreStatTime|CharacterNotes|TimeNotes
	#VAR showTimeMessage 0
	#VAR showTimeDisconnect 1
	#TEMP "disconnectTEMP" {^Forums: * Wiki: * Web client: *$} {
		#VAR %concat(%char,AMPM) {@timeAMPM} {_nodef} {ScoreStatTime|%concat(sst,%char)}
		#VAR %concat(%char,Month) {@timeMonth} {_nodef} {ScoreStatTime|%concat(sst,%char)}
		#VAR %concat(%char,Hour) {@timeHour} {_nodef} {ScoreStatTime|%concat(sst,%char)}
		#VAR %concat(%char,Day) {@timeDay} {_nodef} {ScoreStatTime|%concat(sst,%char)}
		#VAR %concat(%char,Year) {@timeYear} {_nodef} {ScoreStatTime|%concat(sst,%char)}
		} "ScoreStatTime" {case}
	#SENDRAW {time}
	}
#ALIAS linkless {
	#TEMP "linklessTEMP" {^~(Server: * EST, *~)$} {
		#DISCONNECT
		#RAISE eventRentNotes
		#RAISE eventCharacterNotes
		} "ScoreStatTime" {case}
	#RAISE eventTimeDisconnect
	}
#CLASS 0
#CLASS {ScoreStatTime|CharacterNotes}
#VAR eqNotesList {}
#VAR rentNotesList {}
#VAR rentNotesTemp {}
#VAR scoreNotesList {}
#VAR statNotesList {}
#VAR timeNotesList {}
#TRIGGER "eqNotesTrigger" {You are using:$} {
	#T+ ScoreStatTime|CharacterNotes|EquipmentNotes
	#VAR eqNotesList {}
	} "" {case}
#EVENT eventCharacterNotes {
	#CALL {%charnotes(@timeDeleteReroll)}
	#CALL {%charcomment("Rent location: "%roomname() %crlf)}
	#CALL {%charcomment(%replace(@scoreNoteslist,"|",%lf) %crlf)}
	#CALL {%charcomment(%replace(@statNotesList,"|",%lf) %crlf)}
	#CALL {%charcomment(%replace(@timeNotesList,"|",%lf) %crlf)}
	#CALL {%charcomment(%replace(@eqNotesList,"|",%lf) %crlf)}
	#CALL {%charcomment(%replace(@rentNotesList,"|",%lf) %crlf)}
	}
#EVENT eventCharacterQuit {
	#CALL {%charnotes(@timeDeleteReroll)}
	#CALL {%charcomment("Quit location: "%roomname() %crlf)}
	#CALL {%charcomment(%replace(@scoreNoteslist,"|",%lf) %crlf)}
	#CALL {%charcomment(%replace(@statNotesList,"|",%lf) %crlf)}
	#CALL {%charcomment(%replace(@timeNotesList,"|",%lf) %crlf)}
	#CALL {%charcomment(Equipment notes for %char were deleted due to using the quit command! %crlf)}
	#CALL {%charcomment(%replace(@rentNotesList,"|",%lf) %crlf)}
	}
#EVENT eventRentNotes {
	#VAR rentNotesList {-----Rent Contents for %char-----}
	#LOOP 1,%numitems(@rentKey) {
		#VAR rentNotesTemp %item(@rentKey,%i)
		#IF (%numitems(%expand(%concat("@",%char,@rentNotesTemp)))) {
			#ADDITEM rentNotesList {%crlf %item(@rentZone,%i) - %item(@rentName,%i)}
			#LOOP 1,%numitems(%expand(%concat("@",%char,@rentNotesTemp))) {
				#VAR rentNotesList {%additem(%item(%expand(%concat("@",%char,@rentNotesTemp)),%j),@rentNotesList)}
				}
			}
		}
	}
#CLASS 0
#CLASS {ScoreStatTime|CharacterNotes|ScoreNotes} {enable}
#TRIGGER "scoreNote1" {(You have %d~(%d~) hit*movement points.)$} {
	#VAR scoreNotesList {}
	#VAR scoreNotesList %additem(%1,@scoreNotesList)
	} "" {case}
#TRIGGER "scoreNote2" {^(You have scored %d experience points and %d quest points.)$} {#VAR scoreNotesList %additem(%1,@scoreNotesList)} "" {case}
#TRIGGER "scoreNote3" {^(You need %d exp to *.)$} {#VAR scoreNotesList %additem(%1,@scoreNotesList)} "" {case}
#TRIGGER "scoreNote4" {^(You have acquired %d alt qps to date.)$} {#VAR scoreNotesList %additem(%1,@scoreNotesList)} "" {case}
#TRIGGER "scoreNote5" {^(You have amassed %d Turn points to date.)$} {#VAR scoreNotesList %additem(%1,@scoreNotesList)} "" {case}
#TRIGGER "scoreNote6" {^(You have played %d days and %d hours ~(real time~).)$} {#VAR scoreNotesList %additem(%1,@scoreNotesList)} "" {case}
#TRIGGER "scoreNote7" {^(This ranks you as [A-Z]%w * ~(Level %d~).)$} {
	#T- ScoreStatTime|CharacterNotes|ScoreNotes
	#VAR scoreNotesList %additem(%1,@scoreNotesList)
	} "" {case}
#CLASS 0
#CLASS {ScoreStatTime|CharacterNotes|StatNotes} {enable}
#TRIGGER "statNote1" {(You are a %d year old *.)$} {
	#VAR statNotesList {}
	#VAR statNotesList %additem(%1,@statNotesList)
	} "" {case}
#TRIGGER "statNote2" {^(Your height is %d feet, %d inches, and you weigh * lbs.*)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote3" {^(You are carrying * lbs and wearing * lbs, *.*)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote4" {^(Your base abilities are: Str:%d Int:%d Wil:%d Dex:%d Con:%d*.*)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote5" {^(Offensive bonus: %d, Dodging bonus: %d, Parrying bonus: *)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote6" {^(Your mood is: %w. You will flee below: %d Hit Points)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote7" {^(Your posture is: %w.)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote8" {^(You are wanted by:*)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote9" {^(Your armor absorbs about * on average.)$} {
	#T- ScoreStatTime|CharacterNotes|StatNotes
	#VAR statNotesList %additem(%1,@statNotesList)
	} "" {case}
#CLASS 0
#CLASS {ScoreStatTime|CharacterNotes|TimeNotes} {enable}
#TRIGGER "timeNote1" {(It is * day of the month of %w, year %d.)$} {
	#VAR timeNotesList {}
	#VAR timeNotesList %additem(%1,@timeNotesList)
	} "" {case}
#TRIGGER "timeNote2" {^(~(Server: * EST, *~))$} {
	#T- {ScoreStatTime|CharacterNotes|TimeNotes}
	#VAR timeNotesList %additem(%1,@timeNotesList)
	} "" {case}
#CLASS 0
#CLASS {ScoreStatTime|CharacterNotes|EquipmentNotes}
#TRIGGER "eqNote1" {^(~<used as light>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote2" {^(~<held>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote3" {^(~<worn on finger>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote4" {^(~<worn on head>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote5" {^(~<worn around neck>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote6" {^(~<worn on body>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote7" {^(~<worn about body>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote8" {^(~<slung on back>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote9" {^(~<worn on arms>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote10" {^(~<worn on hands>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote11" {^(~<worn around wrist>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote12" {^(~<worn as shield>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote13" {^(~<wielded>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote14" {^(~<wielded two-handed>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote15" {^(~<worn about waist>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote16" {^(~<worn on belt>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote17" {^(~<worn on legs>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote18" {^(~<worn on feet>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNotesPrompt" {^{o|*} * >} {
	#T- ScoreStatTime|CharacterNotes|EquipmentNotes
	} "" {nocr|prompt}
#CLASS 0

Re: House of Medakan cMUD Scripts

Posted: Sat Oct 12, 2019 6:15 pm
by Taziar
Type helpSource to view help file in client.

Image

Direct download: SourceCMUD.txt

Code: Select all

#CLASS {Source}
#ALIAS helpSource {
	#PRINT {%crlf <C dodgerblue>-----Source Help File-----</C>}
	#PRINT {    <C dodgerblue>[Updated: 5/31/2019]</C>}
	#PRINT { Set a macro or alias to quickly toggle the source on/off.}
	#PRINT {  Note: automatically sets to release when cut off from the source.}
	#PRINT {}
	#PRINT { Female channelers:}
	#PRINT {   Type <C dodgerblue>toggleSource</C> (place in macro or alias)}
	#PRINT {}
	#PRINT { Male channelers:}
	#PRINT {   Type <C dodgerblue>toggleSaidar</C> (place in macro or alias)}
	#PRINT {}
	}
#ALIAS toggleSaidar {
	#IF (@sourceEmbrace=release) {
		#VAR sourceEmbrace embrace
		#VAR sourceTargetDisplay release
		} {
		#VAR sourceEmbrace release
		#VAR sourceTargetDisplay embrace
		}
	#SENDRAW {@sourceEmbrace}
	}
#ALIAS toggleSaidin {
	#IF (@sourceSeize=release) {
		#VAR sourceSeize seize
		#VAR sourceTargetDisplay release
		} {
		#VAR sourceSeize release
		#VAR sourceTargetDisplay embrace
		}
	#SENDRAW {@sourceSeize}
	}
#VAR sourceEmbrace release release
#VAR sourceSeize release release
#VAR sourceTargetDisplay {}
#TRIGGER "sourceLoseTrigger" {You lose all sense of the True Source here.} {
	#VAR sourceEmbrace release
	#VAR sourceSeize release
	} "" {case|verbatim}
#TRIGGER "sourceUnableTrigger" {You are unable to sense the True Source at all from here.} {
	#VAR sourceEmbrace release
	#VAR sourceSeize release
	} "" {case|verbatim}
#CLASS 0

Re: House of Medakan cMUD Scripts

Posted: Sat Oct 12, 2019 6:15 pm
by Taziar
Type helpStatting to view help file in client.

Code: Select all

#CLASS {Statting}
#ALIAS helpStatting {
	#PRINT {%crlf <C dodgerblue>-----Statting Help File-----</C>}
	#PRINT { Botting on WoTmud is against the rules, using triggers is not.}
	#PRINT {  When using the automatic statting option you must stay at the keyboard,}
	#PRINT {   or you could be zapped for botting. Use script at your own risk.}
	#PRINT {}
	#PRINT { Records stats automatically (for current character: %concat(StatRecord,%char).txt)}
	#PRINT {  Save format: race class homeland STR INT WIL DEX CON SUM}
	#PRINT {   Note: cMUD saves this as .txt file in the package folder in the cMUD folder}
	#PRINT {}
	#PRINT { Type <C dodgerblue>autoStat</C> to start statting automatically.}
	#PRINT { WARNING: Botting can lead to zapping, bot at your own risk...}
	#PRINT {  Hint: keep @stattingLight in @stattingContainer for autoStat day/night triggers.}
	#PRINT {}
	#PRINT { Type <C dodgerblue>setStats <STR> <INT> <WIL> <DEX> <CON> <SUM></C> to set statting minimums.}
	#PRINT {  Example: setStats 15 19 19 18 15 82 to set individual requirements.}
	#PRINT {   Script will trigger if all stats rolled is = or > ALL stat requirements.}
	#PRINT {    Stat SUM will trigger any roll if SUM is = or > set number.}
	#PRINT {     Hint: Type <C dodgerblue>setStats</C> without parameters to view current set stat minimums.}
	#PRINT {}
	#PRINT { Type <C dodgerblue>setLightContainer <lightSource> <container></C> to set light source and container.}
	#PRINT {  Example: setLightContainer mirrored pouch}
	#PRINT {   Sets light source keyword as mirrored and container keyword to pouch.}
	#PRINT {    (current keywords: @stattingLight @stattingContainer)}
	#PRINT {}
	#PRINT { Type <C dodgerblue>stopStat</C> to stop the automatic statting process.}
	#PRINT {}
	}
#ALIAS autoStat {
	#RAISE eventAutoStatting
	}
#ALIAS stopStat {
	#RAISE eventStopStatting
	}
#ALIAS setStats {
	#PRINT {}
	#IF (%null(%1)) {
		#PRINT {%crlf Current statting minimums: STR:@stattingMinSTR INT:@stattingMinINT WIL:@stattingMinWIL DEX:@stattingMinDEX CON:@stattingMinCON SUM:@stattingMinSUM}
		#PRINT {}
		#PRINT { Usage: <C dodgerblue>setStats <STR> <INT> <WIL> <DEX> <CON> <SUM></C> to set statting minimums.}
		#PRINT {  Example: setStats 15 19 19 18 15 82 to set individual requirements.}
		#PRINT {   Script will trigger if all stats rolled is = or > ALL stat requirements.}
		#PRINT {    Stat SUM will trigger any roll if SUM is = or > set number.}
		#ABORT 1
		} {}
	#IF (%isnumber(%1)) {
		#VAR stattingMinSTR {%1}
		#PRINT {Minimum STR requirement set to %1}
		} {
		#PRINT {Minimum STR requirement number not recognized or missing...}
		#ABORT 1
		}
	#IF (%isnumber(%2)) {
		#VAR stattingMinINT {%2}
		#PRINT {Minimum INT requirement set to %2}
		} {
		#PRINT {Minimum INT requirement number not recognized or missing...}
		#ABORT 1
		}
	#IF (%isnumber(%3)) {
		#VAR stattingMinWIL {%3}
		#PRINT {Minimum WIL requirement set to %3}
		} {
		#PRINT {Minimum WIL requirement number not recognized or missing...}
		#ABORT 1
		}
	#IF (%isnumber(%4)) {
		#VAR stattingMinDEX {%4}
		#PRINT {Minimum DEX requirement set to %4}
		} {
		#PRINT {Minimum DEX requirement number not recognized or missing...}
		#ABORT 1
		}
	#IF (%isnumber(%5)) {
		#VAR stattingMinCON {%5}
		#PRINT {Minimum CON requirement set to %5}
		} {
		#PRINT {Minimum CON requirement number not recognized or missing...}
		#ABORT 1
		}
	#IF (%isnumber(%6)) {
		#VAR stattingMinSUM {%6}
		#PRINT {Minimum SUM requirement set to %6}
		} {
		#PRINT {Minimum SUM requirement number not recognized or missing...}
		#ABORT 1
		}
	}
#ALIAS setLightContainer {
	#VAR stattingLight {%1}
	#VAR stattingContainer {%2}
	#PRINT {%crlf Statting light and container set to: %1 and %2}
	}
#VAR stattingCON 0 0
#VAR stattingClass {} {}
#VAR stattingContainer pack
#VAR stattingDEX 0 0
#VAR stattingHomeland {} {}
#VAR stattingINT 0 0
#VAR stattingLight lantern
#VAR stattingMinCON 0 0
#VAR stattingMinDEX 0 0
#VAR stattingMinINT 0 0
#VAR stattingMinSTR 0 0
#VAR stattingMinSUM 0 0
#VAR stattingMinWIL 0 0
#VAR stattingRace {} {}
#VAR stattingSTR 0 0
#VAR stattingSUM 0 0
#VAR stattingWIL 0 0
#VAR strColor {}
#VAR intColor {}
#VAR wilColor {}
#VAR dexColor {}
#VAR conColor {}
#VAR sumColor {}
#TRIGGER "stattingScoreTrigger" {You gain a level!$} {
	#T+ stattingLevel3
	#IF (%class(Statting|Automatic)=1) {
		#T- stattingCryTrigger
		#T+ stattingContinueTrigger
		}
	#SENDRAW score
	} "" {case|disable}
#TRIGGER "stattingLevel3" {^This ranks you as [A-Z]%w {of|the} (*) ~(Level 3~).$} {
	#T- stattingLevel3
	#T+ stattingCapture1
	#T+ stattingCapture2
	#T+ stattingRecordTrigger
	#IF (%class(Statting|Automatic)=1) {
		#T+ stattingDayTrigger
		#T+ stattingNightTrigger
		#T+ stattingOutTrigger
		#T+ stattingLightTrigger
		}
	#VAR stattingHomeland %1
	#SENDRAW stat
	} "" {case|disable}
#TRIGGER "stattingCapture1" {You are a %d year old {male|female} &%wstattingRace &%wstattingClass} {
	#T- stattingCapture1
	} "" {case|disable}
#TRIGGER "stattingCapture2" {^Your base abilities are: Str:&%dstattingSTR Int:&%dstattingINT Wil:&%dstattingWIL Dex:&%dstattingDEX Con:&%dstattingCON} {
	#T- stattingCapture2
	#VAR stattingSUM (@stattingSTR+@stattingINT+@stattingWIL+@stattingDEX+@stattingCON)
	#IF (%1>=@stattingMinSTR AND %2>=@stattingMinINT AND %3>=@stattingMinWIL AND %4>=@stattingMinDEX AND %5>=@stattingMinCON) {
		#BEEP 0
		#RAISE eventStopStatting
		#PRINT {%crlf Minimum statting requirements met!}
		} {
		#IF (@stattingSUM>=@stattingMinSUM) {
			#BEEP 0
			#RAISE eventStopStatting
			#PRINT {%crlf Minimum stat sum requirements met!}
			} {
			#IF (%class(Statting|Automatic)=1) {
				#T+ stattingDisengageTrigger
				#T+ stattingNotFightingTrigger
				#T+ stattingRestatTrigger
				#SENDRAW disengage
				}
			}
		}
	#IF (%1>=@stattingMinSTR) {#VAR strColor lime} {#VAR strColor red}
	#IF (%2>=@stattingMinINT) {#VAR intColor lime} {#VAR intColor red}
	#IF (%3>=@stattingMinWIL) {#VAR wilColor lime} {#VAR wilColor red}
	#IF (%4>=@stattingMinDEX) {#VAR dexColor lime} {#VAR dexColor red}
	#IF (%5>=@stattingMinCON) {#VAR conColor lime} {#VAR conColor red}
	#IF (@stattingSUM>=@stattingMinSUM) {#VAR sumColor lime} {#VAR sumColor red}
	#SUB {Your base abilities are: Str:<C @strColor>%1</C> Int:<C @intColor>%2</C> Wil:<C @wilColor>%3</C> Dex:<C @dexColor>%4</C> Con:<C @conColor>%5</C> Sum:<C @sumColor>@stattingSum</C>}
	} "" {case|disable}
#TRIGGER "stattingRecordTrigger" {^You are subjected to the following effects:$} {
	#T- stattingRecordTrigger
	#FILE 1 %concat(StatRecord,%char,.txt)
	#WRITE 1 {@stattingRace @stattingClass @stattingHomeland STR:@stattingSTR INT:@stattingINT WIL:@stattingWIL DEX:@stattingDEX CON:@stattingCON SUM:@stattingSUM}
	#CLOSE 1
	} "" {case|disable}
#EVENT eventStopStatting {
	#BEEP 0
	#SENDRAW {disengage}
	#T+ Statting|Automatic
	#T- stattingScoreTrigger
	#T- stattingRestatTrigger
	#T- stattingDisengageTrigger
	#T- stattingNotFightingTrigger
	#T- Statting|Automatic
	#PRINT {%crlf <C dodgerblue>Automatic statting disabled.</C>}
	}
#EVENT eventAutoStatting {
	#IF (@stattingMinSum) {
		#T+ Statting|Automatic
		#T+ stattingScoreTrigger
		#T- stattingSeedlingTrigger
		#RAISE eventStartStatting
		} {
		#PRINT {%crlf Minimum stat SUM must be set above zero, type: <C dodgerblue>setStats</C>}
		}
	}
#CLASS 0
#CLASS {Statting|Automatic} {disable}
#TRIGGER "stattingContinueTrigger" {^This ranks you as * ~(Level (%d)~).$} {
	#T- stattingContinueTrigger
	#T+ stattingCryTrigger
	#IF (%1=1 OR %1=2) {
		#SENDRAW {kill 2.sapling}
		#SENDRAW {kill sapling}
		} {}
	#IF (%1=4) {
		#T+ stattingDisengageTrigger
		#T+ stattingNotFightingTrigger
		#T+ stattingRestatTrigger
		#SENDRAW disengage
		} {}
	} "" {case|disable}
#TRIGGER "startStattingTrigger" {^This ranks you as * ~(Level (%d)~).$} {
	#T- startStattingTrigger
	#T+ stattingCryTrigger
	#T+ stattingContinueTrigger
	#IF (%1=1 OR %1=2) {
		#SENDRAW {kill 2.sapling}
		#SENDRAW {kill sapling}
		} {}
	#IF (%1=3 OR %1=4) {
		#T+ stattingDisengageTrigger
		#T+ stattingNotFightingTrigger
		#T+ stattingRestatTrigger
		#SENDRAW disengage
		} {}
	#IF (%1>4) {
		#PRINT {%crlf Statting fail! Character level too high...}
		#RAISE eventStopStatting
		}
	} "" {case|disable}
#TRIGGER "stattingDisengageTrigger" {You disengage from the fight.} {
	#T- stattingDisengageTrigger
	#T- stattingNotFightingTrigger
	#SENDRAW restat
	} "" {case|disable}
#TRIGGER "stattingNotFightingTrigger" {But you're not fighting anyone!?} {
	#T- stattingNotFightingTrigger
	#T- stattingDisengageTrigger
	#SENDRAW restat
	} "" {case|disable}
#TRIGGER "stattingCryTrigger" {^Your blood freezes as you hear a stout young sapling's death cry.$} {
	#T+ stattingContinueTrigger
	#SENDRAW score
	} "" {case}
#TRIGGER "stattingRestatTrigger" {You feel dizzy as time seems to spin backwards...$} {
	#T- stattingRestatTrigger
	#RAISE eventStartStatting
	} "" {case|disable}
#TRIGGER "stattingOutTrigger" {A * has gone out!$} {
	#SENDRAW {remove @stattingLight}
	#SENDRAW {drop all.@stattingLight}
	#SENDRAW {get @stattingLight @stattingContainer}
	#SENDRAW {grab @stattingLight}
	} "" {case}
#TRIGGER "stattingLightTrigger" {You could not light a *.$} {
	#SENDRAW {remove @stattingLight}
	#SENDRAW {drop all.@stattingLight}
	#SENDRAW {get @stattingLight @stattingContainer}
	#SENDRAW {grab @stattingLight}
	} "" {case}
#TRIGGER "stattingDayTrigger" {The day has begun.$} {
	#SENDRAW {remove @stattingLight}
	#SENDRAW {put @stattingLight @stattingContainer}
	} "" {case}
#TRIGGER "stattingNightTrigger" {The night has begun.$} {
	#SENDRAW {get @stattingLight @stattingContainer}
	#SENDRAW {hold @stattingLight}
	} "" {case}
#EVENT eventStartStatting {
	#PRINT {%crlf <C yellow>Botting can lead to zapping, bot at your own risk...</C>}
	#T- stattingContinueTrigger
	#T- stattingLevel3
	#T+ startStattingTrigger
	#SENDRAW score
	}
#CLASS 0

Re: House of Medakan cMUD Scripts

Posted: Sat Oct 12, 2019 6:15 pm
by Taziar
Type helpStatusBar to view help file in client.

Image

Example:
Image

Direct download: StatusBarCMUD.txt