static DecodeNetworkObjects()
        {
            var messageDecoder = new NetworkMessageObject.MessageObjectReader();
            var boolDecoder = new NetworkBoolObject.BoolObjectReader();
            var newPlayerDecoder = new NetworkNewPlayerObject.NewPlayerObjectReader();
            var cardDecoder = new NetworkCardObject.CardObjectReader();
            var playerDecoder = new NetworkPlayerObject.PlayerObjectReader();
            var byteDecoder = new NetworkByteObject.ByteObjectDecoder();
            RegisterDecoder(Message, messageDecoder);
            RegisterDecoder(ReceiveMessage, messageDecoder);
            RegisterDecoder(PlayerConnected, newPlayerDecoder);
            RegisterDecoder(PlayerDisconnected, newPlayerDecoder);
            RegisterDecoder(AnnounceCard, cardDecoder);
            RegisterDecoder(SendGameState, new NetworkGameStateObject.GameStateObjectReader());
            RegisterDecoder(RevealRole, new NetworkRevealRoleObject.RevealRoleObjectReader());
            RegisterDecoder(Multiple, new NetworkMultipleObject.MultipleObjectReader());
            RegisterDecoder(AnnouncePresident, playerDecoder);
            RegisterDecoder(AnnounceChancellor, playerDecoder);
            RegisterDecoder(CastVote, boolDecoder);
            RegisterDecoder(PlayerVoted, playerDecoder);
            RegisterDecoder(AnnounceVotes, new NetworkVoteResultObject.VoteResultObjectDecoder());
            RegisterDecoder(PolicyCardsDrawn, byteDecoder);
            RegisterDecoder(PresidentPickPolicyCard, cardDecoder);
            RegisterDecoder(ChancellorPickPolicyCard, cardDecoder);
            RegisterDecoder(PresidentPolicyCardPicked, byteDecoder);
            RegisterDecoder(ChancellorPolicyCardPicked, byteDecoder);
            RegisterDecoder(CardPlayed, cardDecoder);
            RegisterDecoder(RevealMembership, newPlayerDecoder);
            RegisterDecoder(KillPlayer, playerDecoder);
            RegisterDecoder(NotHitler, playerDecoder);
            RegisterDecoder(PresidentRequestVetoAllowed, boolDecoder);
            RegisterDecoder(AnnounceVetoResult, boolDecoder);

            RegisterDecoder(PresidentAction, byteDecoder);
            RegisterDecoder(PresidentDoingAction, playerDecoder);

            RegisterDecoder(PresidentActionExamine, cardDecoder);
            //Other Actions are plain objects

            //Examine object is a plain object notifying the server the player is done
            RegisterDecoder(PresidentActionKillResponse, playerDecoder);
            RegisterDecoder(PresidentActionChoosePresidentResponse, playerDecoder);
            RegisterDecoder(PresidentActionInvestigatePresidentResponse, playerDecoder);
        }
Exemplo n.º 2
0
 public void NetworkBoolObject()
 {
     var boolObj = new NetworkBoolObject(ServerCommands.CastVote, true) { Message = "Test"};
     var decoder = new NetworkBoolObject.BoolObjectReader();
     var bytes = decoder.GenerateByteStream(boolObj);
     var generated = decoder.GenerateObject(bytes, false) as NetworkBoolObject;
     Assert.IsTrue(generated.Value);
     Assert.AreEqual("Test", generated.Message);
     boolObj = new NetworkBoolObject(ServerCommands.CastVote, false);
     decoder = new NetworkBoolObject.BoolObjectReader();
     bytes = decoder.GenerateByteStream(boolObj);
     generated = decoder.GenerateObject(bytes, false) as NetworkBoolObject;
     Assert.IsFalse(generated.Value);
     CompareDefaultObject(boolObj, generated);
 }