Re: [CODE] Name Approving Snippet

From: Welcor (welcor@dune.net)
Date: 08/04/01


----- Original Message -----
From: "Ramsey Stone" <ramseystone@HOTMAIL.COM>
> For my mud I really want a name approving
> system, so I can approve a name when a new
> char is created. I saw this once on a mud,
> I think it was called alliances. It waits for
> 1 minute for an immort to approve, and if noone
> approves/disapproves name, it continues with the
> process after 60 seconds. I really liked this
> technique, though I don't know how to go about
> making it. Could someone help me?
>
>
well, an idea at least:

add a new connection mode (let's call it CON_NAME_APP here, for
simplicity :P) and perhaps a timer in the descriptor struct.
Then, when a new player enters the game, when s/he has entered a name,
and confirmed that it's the one they meant, send them to CON_NAME_APP
instead of CON_NEW_PASSW (or whatever - no code at hand). Send a message
to the char about his/her name being checked out by the gods.
Then for each game loop (% 10 rl secs) add to the timer, and resend the
message. when sent 5-6 times (or if the name is approved) pass the char
on to CON_NEW_PASSW and reset the timer.
Then add a god command 'dis-/approve <name>' that either allows the name,
easily done by setting the timer to something high ie. 100,
or sends a 'sorry, not good enough' message to char, puts him in the
CON_GET_NAME state, and adds the name to xnames (so you don't have to
do it again :P)

I'd say a good half hour of programming. Two-three hours if you're
inexperienced. Most of the changes go into nanny() in interpreter.c,
the master command list and act.wizard.c - only the timer part needs
to be put in comm.c.

Welcor

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/06/01 PST