コード例 #1
0
        public static RemoteCombatState ToRemote(this CombatState state)
        {
            RemoteCombatState remoteState = new RemoteCombatState();

            remoteState.CR          = state.CR;
            remoteState.Round       = state.Round;
            remoteState.XP          = state.XP;
            remoteState.RulesSystem = state.RulesSystemInt;
            if (state.CurrentInitiativeCount != null)
            {
                remoteState.CurrentInitiativeCount = state.CurrentInitiativeCount.ToRemote();
            }
            remoteState.CurrentCharacterID = state.CurrentCharacterID;
            remoteState.CombatList         = new List <RemoteCharacterInitState>();

            foreach (Character character in state.CombatList)
            {
                var v = character.ToRemoteInit();
                if (v != null)
                {
                    remoteState.CombatList.Add(v);
                }
            }

            return(remoteState);
        }
コード例 #2
0
        void SendState()
        {
            RemoteCombatState rs   = state.ToRemote();
            String            data = JsonConvert.SerializeObject(rs);


            new Thread(() =>
                       Broadcast(data)
                       ).Start();
        }
コード例 #3
0
        void SendState()
        {
            RemoteCombatState   rs      = state.ToRemote();
            LocalServiceMessage message = LocalServiceMessage.Create("State", rs);
            String data = JsonConvert.SerializeObject(message);


            new Thread(() =>
                       BroadcastAsync(data)
                       ).Start();
        }