コード例 #1
0
        public ActorInstanceTransportCommand(ActorInstance actorInstance, Coordinate coordinate)
        {
            actorInstance.ThrowIfNull("actorInstance");

            _actorInstance = actorInstance;
            _coordinate = coordinate;
        }
        public ActorInstanceCreateCommand(Board board, ActorInstance actorInstance)
        {
            board.ThrowIfNull("board");
            actorInstance.ThrowIfNull("actorInstance");

            _board = board;
            _actorInstance = actorInstance;
        }
コード例 #3
0
        public XElement Serialize(ActorInstance actorInstance, string elementName = "actorInstance")
        {
            actorInstance.ThrowIfNull("actorInstance");
            elementName.ThrowIfNull("elementName");

            return new XElement(
                elementName,
                CharacterSerializer.Instance.Serialize(actorInstance.Character),
                EventHandlerCollectionSerializer.Instance.Serialize(actorInstance.EventHandlerCollection),
                new XAttribute("id", actorInstance.Id),
                new XAttribute("name", actorInstance.Name),
                new XAttribute("description", actorInstance.Description),
                new XAttribute("actorId", actorInstance.ActorId),
                new XAttribute("boardId", actorInstance.BoardId),
                new XAttribute("coordinate", CoordinateSerializer.Instance.Serialize(actorInstance.Coordinate)));
        }
コード例 #4
0
        public byte[] Serialize(ActorInstance actorInstance)
        {
            actorInstance.ThrowIfNull("actorInstance");

            var serializer = new CompactSerializer();

            serializer[0] = actorInstance.Id.ToByteArray();
            serializer[1] = Encoding.UTF8.GetBytes(actorInstance.Name);
            serializer[2] = Encoding.UTF8.GetBytes(actorInstance.Description);
            serializer[3] = actorInstance.ActorId.ToByteArray();
            serializer[4] = actorInstance.BoardId.ToByteArray();
            serializer[5] = CoordinateSerializer.Instance.Serialize(actorInstance.Coordinate);
            serializer[6] = CharacterSerializer.Instance.Serialize(actorInstance.Character);
            serializer[7] = EventHandlerCollectionSerializer.Instance.Serialize(actorInstance.EventHandlerCollection);

            return serializer.Serialize();
        }
コード例 #5
0
        public ActorInstanceDestroyCommand(ActorInstance actorInstance)
        {
            actorInstance.ThrowIfNull("actorInstance");

            _actorInstance = actorInstance;
        }
コード例 #6
0
ファイル: Commands.cs プロジェクト: tj-miller/TextAdventure
 public static ActorInstanceTransportCommand ActorInstanceTransport(ActorInstance actorInstance, Coordinate coordinate)
 {
     return new ActorInstanceTransportCommand(actorInstance, coordinate);
 }
コード例 #7
0
ファイル: Commands.cs プロジェクト: tj-miller/TextAdventure
 public static ActorInstanceRandomMoveCommand ActorInstanceRandomMove(ActorInstance actorInstance, RandomMoveDirection directions = RandomMoveDirection.AnyUnoccupied)
 {
     return new ActorInstanceRandomMoveCommand(actorInstance, directions);
 }
コード例 #8
0
ファイル: Commands.cs プロジェクト: tj-miller/TextAdventure
 public static ActorInstanceMoveCommand ActorInstanceMove(ActorInstance actorInstance, MoveDirection direction)
 {
     return new ActorInstanceMoveCommand(actorInstance, direction);
 }
コード例 #9
0
ファイル: Commands.cs プロジェクト: tj-miller/TextAdventure
 public static ActorInstanceDestroyCommand ActorInstanceDestroy(ActorInstance actorInstance)
 {
     return new ActorInstanceDestroyCommand(actorInstance);
 }
コード例 #10
0
ファイル: Commands.cs プロジェクト: tj-miller/TextAdventure
 public static ActorInstanceCreateCommand ActorInstanceCreate(Board board, ActorInstance actorInstance)
 {
     return new ActorInstanceCreateCommand(board, actorInstance);
 }
コード例 #11
0
        protected ActorInstanceMoveCommandBase(ActorInstance actorInstance)
        {
            actorInstance.ThrowIfNull("actorInstance");

            _actorInstance = actorInstance;
        }
 public ActorInstanceRandomMoveCommand(ActorInstance actorInstance, RandomMoveDirection direction = RandomMoveDirection.AnyUnoccupied)
     : base(actorInstance)
 {
     _direction = direction;
 }
コード例 #13
0
 public ActorInstanceMoveCommand(ActorInstance actorInstance, MoveDirection direction)
     : base(actorInstance)
 {
     _direction = direction;
 }