Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » zMUD General Discussion
lughar
Newbie


Joined: 01 Jul 2007
Posts: 1

PostPosted: Sun Jul 01, 2007 12:03 pm   

Aliases - Bard Story Telling
 
I play a bard in a mud I recently joined. I have the ability to mime anything I wish. So I want to create stories that involve dialogue and miming. For example, I may tell a story of a great battle between 2 fighters. I would use a series of says, emotes and mimes to recount the battle. This would involved me using alot of #wait commands to get the timing correct. Is there a way I can set up my alias so that I could abort and or pause the alias. If Im telling a long story and get attacked I dont want to wait for the entire alias to execute.
Reply with quote
Progonoi
Magician


Joined: 28 Jan 2007
Posts: 430

PostPosted: Sun Jul 01, 2007 12:55 pm   
 
Just cpl general ideas because I guess more detailed info is needed.

Use #alarm to get the timing as you wish to.

Make String list Variable that contains all you says/emotes/mimes in the exact order you want them to execute.

Then with #alarm, say #alarm "Bard" {*5} {#exec %pop(Bardthings)}

When you get attacked, you'll get a message something like "Can't do that! You're in fight!" perhaps.

Then you can turn alarm off with #t- Bard when you see that line. With trigger.

#trigger {Can't do that! You're in fight!} {#t- Bard}


EDIT: the trigger above turns the alarm off and next time it starts up again it'll pick off where it got left to. Say first 5 things in the Bardthings list were executed, then you got attacked and turned it off. Next time it will continue with those that were left in the list.

Just cpl ideas you might want to consider/work with. Hope it helps some.


Prog
Reply with quote
Arminas
Wizard


Joined: 11 Jul 2002
Posts: 1265
Location: USA

PostPosted: Sun Jul 01, 2007 1:21 pm   
 
This is a system that I made for someone else a few months ago. The trigger that says you got feedback probably will not work, it is there for an example.

--------------

// Alias: waitDo.
// A simple command queue system.
waitforfeedback=1
#addi commands %-1
#T+ waitA

--------------

// Alarm: *.501 With the ID of waitA
// A simple command queue system.
#if (@waitForFeedback=0) {
#execute %pop( commands)
#if (%numitems( @commands)=0) {#T- waitA} {waitforfeedback=1}
}

--------------

// Alias: pauseStory
// Pause the story.

#T- waitA

--------------

// Alias: resumeStory
// Start the story where you left off.

#T+ waitA

--------------

// Alias: clearStory
// Clear out the story so you can start over or a new story.

#T- waitA
commands=%null

--------------

// Trigger: ^You {say,|emote|mime|sing}
waitForFeedback=0

--------------

// Alias: testStory
// A simple test for the command queue system.
emote Lughar prepares to tell his story.
waitdo {Say There once was a mighty warrior who lived in the ancient city of Mhaldor.}
waitdo {Say His name is forgotten to time but his actions still affect us all to this day.}
waitdo {
emote gestures to his scabbard.
Say Even the weapons we use bare his influence.
emote draws out his longsword.
mime The blade of a mighty longsword glows as it's wielder holds it up for all to see.
}

--------------


Code:
#alias waitDo {waitforfeedback=1;#addi commands %-1;#T+ waitA}
#alarm waitA {*.501} {#if (@waitForFeedback=0) {#execute %pop( commands);#if (%numitems( @commands)=0) {#T- waitA} {waitforfeedback=1}}}
#T- waitA
#alias pauseStory {#T- waitA}
#alias resumeStory {#T+ waitA}
#alias clearStory {commands=%null;#T- waitA}
#trigger {^You {say,|emote|mime|sing}} {waitForFeedback=0}
#alias testStory {emote Lughar prepares to tell his story.;waitdo {Say There once was a mighty warrior who lived in the ancient city of Mhaldor.};waitdo {Say His name is forgotten to time but his actions still affect us all to this day.};waitdo {emote gestures to his scabbard.;Say Even the weapons we use bare his influence.;emote draws out his longsword.;mime The blade of a mighty longsword glows as it's wielder holds it up for all to see.}}



Edit: Heh, progonoi posted when I was writing this up!

It is very much the same idea...
_________________
Arminas, The Invisible horseman
Windows 7 Pro 32 bit
AMD 64 X2 2.51 Dual Core, 2 GB of Ram
Reply with quote
Fang Xianfu
GURU


Joined: 26 Jan 2004
Posts: 5155
Location: United Kingdom

PostPosted: Sun Jul 01, 2007 2:54 pm   
 
I've used scripts like this in the past, and I highly recommend prognoi's system over Arminas' simply because Arminas' will spam out commands as fast as it gets the text from the MUD, without giving people time to read the text. Prognoi's gives more time - you just have to make sure each "phrase" is a similar length.
_________________
Rorso's syntax colouriser.

- Happy bunny is happy! (1/25)
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » zMUD General Discussion All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net