Пример #1
0
    def add(self, session):
        self.ival = ipsessions.items()

        if session.addr[0] != "127.0.0.1" and session.addr[0] in self.ival: # Allow multiusers for the admin.
            session.push(tpl.LOGIN_ALREADY_IN)
            raise EndSession

        sessions[session.p_id] = session
        ipsessions[session.p_id] = session.addr[0]
        Update.setIP(session.addr[0], session.p_id)
        
        #Store the player's starting location in the socket object.
        session.is_in = 1
        Update.setLocation(session.p_id, 1)

        # Check if the user supports ANSI colors
        if Select.getColors(session.p_id) == "on": Actions.do_setansi(session, "on")
        else: Actions.do_setansi(session, "off")

        for i in sessions:
            try:
                i.push(tpl.ENTER_GAME % (session.pname,))
            except: pass

        print "%s logged in." % session.pname
        Log("%s logged in from %s" % (session.pname,session.addr[0]))
        Actions.do_look(session, '') # To be replaced with something nicer.
        session.push("> ")