Thanks to all who answered my first question regarding the MUD I am 
coding! I have toyed around with this more and I am running into an issue.

Code:

server: open/lines tcp://:23  ; listen for connections
clients: copy []
insert clients server

Then obviously client/1 = server

But if lower down I have...

connection: wait/all clients

How do I determine the position of the port in the 'clients series? 
Also, how do I determine if the port that is now active is a) a new 
connection or b) already a known connection, but is trying to send data 
to the server (like the user has typed something in, a name/password, 
etc.). Thanks for the help, I know I can depend on people here :]

Here is the code I'm messing with (not functional from all the tweaking 
I've been doing!)

---

REBOL []

print ["The MUD server has started on" now/date ", at" now/time]

server: open/lines tcp://:23  ; listen for connections
clients: copy []
y: copy []
insert clients server
buffer: make string! 1024

forever [

    ; Simple enough... Wait indefinitly for the first activity on the 
server port (23)
    ;connection: wait first server
    connection: wait/all clients

    ; Append the new connection to the list of clients
    append clients connection

    ; Inform the new connection that it is now properlly connected
    x: reform ["Now connected:" last client port-id]
    insert tail connection x
    print x

    ; Loop through each client to inform of a new join to the server
    foreach client clients [
        either equal? client connection [
            x: "You are connected now!"
        ][
            x: "Someone new has joined!"
        ]
        insert client x
    ]
]


-- 
To unsubscribe from this list, just send an email to
[EMAIL PROTECTED] with unsubscribe as the subject.

Reply via email to