Almost seems like you need to make a FILO list (stack?) on a character
with the bottom position being something special so you don't try to
pop off a value that you shouldn't. Have a variable on the char store
the current color, every time you see a color push the current one
onto the stack and every time you see the &n for example, pop a color
off the stack and use it to clear the old color settings. You would
probably want to do this in the process_color() and replace all the
&n's with an appropriate color. Designate another variable to be
your normal (default) color scheme.
--Angus
Patrick Dughi <dughi@IMAXX.NET> on 04/30/99 05:59:21 PM
A minor cosmetic problem I've noticed with color is that while
reading a message, or some other long string pushed through page_string(),
color doesn't stay what it ought to if it's interrupted.
If I am reading a board or something, and get a tell (which has
color in it, and terminates by 'returning' the color to nothing, or
default) the color in the message that I am reading is also nulled out.
So, I need to either
a) register each color a character recieves
make the 'saved' color immutable once they recieve the line that reads:
[Return to continue, (q)uit, (r)efresh, (b)ack, or page number (x/x) ]
(or something like that)
return to 'saved' color after return, q, refresh, back, or page number?
or
b) find a way to query the client for it's current color, and save that
state, and return it when you're done.
In anycase, I was curious if anyone else tackled this one. It
seems like it could possibly be done in a better way.
PjD
+------------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
| http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
+------------------------------------------------------------+
+------------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
| http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
+------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST