User:Dawson

From City of Hope MUSH
Jump to navigation Jump to search

test

Mage Pages

Ranks

Highest sphere
Dot-filled.png Initiate
Dot-filled.pngDot-filled.png Apprentice
Dot-filled.pngDot-filled.pngDot-filled.png Disciple
Dot-filled.pngDot-filled.pngDot-filled.pngDot-filled.png Adept
Dot-filled.pngDot-filled.pngDot-filled.pngDot-filled.pngDot-filled.png Master

(highest sphere, not just Arete, per MtA 31)

Projects

Character Pages

Grimoire

@create Grimoire=10
@Desc Grimoire=A simple composition notebook that's been covered in layers of duct tape.%R%R<OOC: .ghelp>
&DO_GLIST Grimoire=$.glist:@pemit %#=[u(me/header)]%r%b[iter([u(me/page_list)],[member([u(me/page_list)],##)][space([sub(4,[strlen([member([u(me/page_list)],##)])])])][u(me/page_##_title)]%r)][u(me/footer)]
&HEADER Grimoire=%R[center(%xh%xy%n's Grimoire%xn, 78,%xh%xm=%xn)]%R%r #[space(3)]Title[space(45)]%r[repeat(-,78)]
&FOOTER Grimoire=%R[center(%xh, 80,%xh%xm-%xn)]%R
&DO_GWRITE Grimoire=$.gwrite *=*:@swi [gte([words([u(me/page_list)])],50)]=0,{&page_[u(me/next)]_title me=[switch([gt([strlen(%0)],50)],1,{[mid(%0,0,50)]},%0)];&page_[u(me/next)]_text me=%1;&page_list me=[setunion([u(me/page_list)],[u(me/next)])];&next me=[add([u(me/next)],1)];@pemit %#=Page number: [words([u(me/page_list)])] written in [name(me)].},{@pemit %#=I'm sorry, but the grimoire is full.
&DO_GREAD Grimoire=$.gread *:@swi [setq(9,[index([u(me/page_list)], ,%0,1)])][setq(8,[hasattr(me,page_list)])][r(8)]=1,{@swi [member([lnum(1,[words([u(me/page_list)])])],%0)]=0,{@pemit %#=That page number is out of range. Enter a number from 1 to [words([u(me/page_list)])].},{@pemit %#= [center(%xh%xy%n's Grimoire%xn, 78,%xh%xm=%xn)]%R%r%xh%xyPage:%xn %0%r%xh%xyTitle:%xn [u(me/page_[r(9)]_title)]%r [repeat(-,78)]%r[u(me/page_[r(9)]_text)]%r[repeat(%xh%xm=%xn,78)]}}
&MAX Grimoire=100
&NEXT Grimoire=1
&DO_GADD Grimoire=$.gadd *=*:@swi [setq(9,[index([u(me/page_list)], ,%0,1)])][setq(8,[hasattr(me,page_list)])][r(8)]=1,{@swi [member([lnum(1,[words([u(me/page_list)])])],%0)]=0,{@pemit %#=That page number is out of range. Enter a number from 1 to [words([u(me/page_list)])].},{&page_[r(9)]_text me=[v(page_[r(9)]_text)]%r%r%R[center(%xh%xyAddendum%xn,78,%xh%xg-%xn)]%r%1;@pemit %#=Text added.}},@pemit %#=Cannot find that page number.
&DO_REMOVE Grimoire=$.grem *:@swi [setq(9,[index([u(me/page_list)], ,%0,1)])][setq(8,[hasattr(me,page_list)])][r(8)]=1,{@swi [member([lnum(1,[words([u(me/page_list)])])],%0)]=0,@pemit %#=That page number is out of range.,{@swi [or([isstaff(%#)],[switch([u(me/page_[r(9)]_author_db)],%#,1,0)],[switch([owner( me)],%#,1,0)])]=1,{@wipe me/*_[r(9)]_*;&page_list me=[setdiff([u(me/page_list)],[r(9)])];@pemit %#=page %0 removed.},@pemit %#=You cannot remove a page that you do not own.}},@pemit %#=There are no pages to remove.
&DO_GHELP Grimoire=$.ghelp:@pemit %#=[center(Grimoire ,78,%xh%xg=%xn)]%r%r* .glist - Lists all messages.%r* .gwrite <title>=<text>%r* .gread # - Reads that message number.%r* .gadd #=<text> - Appends text to that message number.%r* .grem # - Removes that message #.%r* .gshow #=*<target>%r[u(me/footer)]
&DO_GSHOW Grimoire=$.gshow *=*:@swi [setq(9,[index([u(me/page_list)], ,%0,1)])][setq(8,[hasattr(me,page_list)])][r(8)]=1,{@swi [member([lnum(1,[words([u(me/page_list)])])],%0)]=0,{@pemit %#=That page number is out of range. Enter a number from 1 to [words([u(me/page_list)])].},{@pemit %1= [center(%xh%xy%n's Grimoire%xn, 78,%xh%xm=%xn)]%R%r%xh%xyPage:%xn %0%r%xh%xyTitle:%xn [u(#19201/page_[r(9)]_title)]%r [repeat(-,78)]%r[u(#19201/page_[r(9)]_text)]%r[repeat(%xh%xm=%xn,78)]}};@pemit %#=You show %1 page %0 from your Grimoire entitled: %xh%xy[u(#19201/page_[r(9)]_title)]%xn.
Note: .gshow works best if you add a * before the person's name.. So .gshow 1=*person works.

Grimoire Help

  • .glist - Lists all messages.
  • .gwrite <title>=<text>
  • .gread # - Reads that message number.
  • .gadd #=<text> - Appends text to that message number.
  • .grem # - Removes that message #.
  • .gshow #=*<target>

Current Scene Code

IF you own the room you want to use:
@Adesc here= @pemit %n=%R[center(%xh%xyCurrent Scene%xn,78,%xh%xg=%xn)]%R[u(data-scene)]%R[center(,78,%xh%xg=%xn)]
&CMD.SET me=$.set *:&data-scene here=%0

Then you can just .set %R* Dawson is doing this%R*Someone else is doing something.%R*Blah blah as things get going in your scene.

If you don't own the room you can make a scene object.
@create %xh%xy Current Scene%xn
@desc scene=Standard stuff for the room people are in.
@Adesc scene= @pemit %n=%R[center(%xh%xyCurrent Scene%xn,78,%xh%xg=%xn)]%R[u(data-scene)]%R[center(,78,%xh%xg=%xn)]
&CMD.CSET me=$.cset *:&data-scene scene=%0

This way you can constantly be adding information to the scene as things become known without spamming the whole room. Anyone who walks in after something's happened should look at the scene object for both the event's details =and= the current scene's information.