Пример #1
0
        private StateBase clientState()
        {
            State state = new State();

            state.onStart += delegate {
                remoteSessions_.Clear();
                // Initializes NetworkDiscovery.
                _discovery.Initialize();
                // Start listening for broadcasts.
                _discovery.StartAsClient();
            };
            state.addAction("join", delegate(FSMEvent evt)
            {
                SessionInfo session = (SessionInfo)(evt.obj);
                this.server         = session;
                return("join");
            });
            state.addAction("host", "host");
            state.onOver += delegate
            {
                _discovery.StopBroadcast();
            };
            return(state);
        }
Пример #2
0
        private StateBase listeningState()
        {
            State state = new State();

            state.onStart += delegate {
                _stateName = "clinet state;";
                sessions_  = null;
                _discovery.Initialize();
                _discovery.StartAsClient();
            };
            state.addAction("join", delegate(FSMEvent evt)
            {
                SessionInfo session = (SessionInfo)(evt.obj);
                this.server         = session;
                return("client");
            });
            state.addAction("host", "host");
            state.addAction("alone", "alone");
            state.onOver += delegate
            {
                _discovery.StopBroadcast();
            };
            return(state);
        }