Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re: MoLD: Request for Advice

by vaevictus (Pilgrim)
on Jun 13, 2002 at 20:41 UTC ( #174334=note: print w/replies, xml ) Need Help??


in reply to MoLD: Request for Advice

Clarification:
Most of our event code is unwieldy.
This is how I'd like it to work:

The Command_processor should have the following information in it for each valid command: Valid Command - "move west" Pre Acceptance Checking - "can I 'move west'" Event Class - "what kind of event is 'move west'" Event Delay - "how long will moving west take?" Event - "how do I 'move west'" The Command_Processor will most likely have CODEREFS for each of the data types, except for Event Class. For efficiency, Command_Processor will contain a single hash of hashes... perhaps like the following: $self->{matrix}= ( "move west"=> ( "Test"=>\&Player::MoveTest('west'), "Class"=>"Player", "Delay"=>\&Player::MoveDelay('walk'), "Event"=>\&Player::Move('west') ), "run west" => ( "Test"=>\&Player::MoveTest('west'), "Class"=>"Player", "Delay"=>sub { return int (100/($DEXTERITY /2) +)} , # OR ## "Delay"=>\&Player::MoveDelay('run'), "Event"=>\&Player::Move('west') ), } ############################################################### So when the command processor recieves a request, it first checks for the validity of the command: return $INVALID_CMD unless defined ($self->{matrix}->{$NEWCOMM +AND}); And then: return $CMD_FAIL unless &$self->{matrix}->{$NEWCOMMAND}->{'Tes +t'}; and if everything is okay: return $self->{eventqueue}->event_add( &$self->{matrix}->{$NEWCOMMAND}->{'Delay'}, &$self->{matrix}->{$NEWCOMMAND}->{'Event'} ); And this is how it should work. ###############################################################

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://174334]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (2)
As of 2022-01-18 05:38 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    In 2022, my preferred method to securely store passwords is:












    Results (52 votes). Check out past polls.

    Notices?