コード例 #1
0
ファイル: ModePlay.cs プロジェクト: jimkberry/BeamBackend
        public void OnPeerJoinedGameEvt(object sender, PeerJoinedGameArgs ga)
        {
            BeamNetworkPeer p       = ga.peer;
            bool            isLocal = p.PeerId == appl.LocalPeer.PeerId;

            logger.Info($"{(ModeName())} - OnPeerJoinedGameEvt() - {(isLocal?"Local":"Remote")} Peer Joined: {p.Name}, ID: {p.PeerId}");
            if (isLocal)
            {
                if (_curState == kJoiningGame)
                {
                    // Create gameinstance and ApianInstance
                    game = new BeamAppCore(appl.frontend);
                    game.PlayerJoinedEvt += OnPlayerJoinedEvt;
                    game.NewBikeEvt      += OnNewBikeEvt;
                    BeamApian apian = new BeamApianCreatorServer(appl.gameNet, game); // TODO: make the groupMgr type run-time spec'ed
                    //BeamApian apian = new BeamApianSinglePeer(core.gameNet, game); // *** This should be commented out (or gone)
                    appl.AddAppCore(game);
                    _SetState(kCheckingForGroups, null);
                }
                else
                {
                    logger.Error($"{(ModeName())} - OnGameJoinedEvt() - Wrong state: {_curState}");
                }
            }
        }
コード例 #2
0
        public void OnPeerJoinedGame(string p2pId, string gameId, string helloData)
        {
            BeamNetworkPeer peer = JsonConvert.DeserializeObject <BeamNetworkPeer>(helloData);

            Logger.Info($"OnPeerJoinedGame() {((p2pId == LocalPeer.PeerId)?"Local":"Remote")} name: {peer.Name}");
            PeerJoinedGameEvt.Invoke(this, new PeerJoinedGameArgs(gameId, peer));
        }
コード例 #3
0
 public PeerJoinedGameArgs(string g, BeamNetworkPeer p)
 {
     gameChannel = g; peer = p;
 }
コード例 #4
0
        private void _UpdateLocalPeer()
        {
            BeamUserSettings settings = frontend.GetUserSettings();

            LocalPeer = new BeamNetworkPeer(gameNet.LocalP2pId(), settings.screenName);
        }