public override GameAction OnExecute(AgricolaPlayer player, GameActionData data)
        {
            base.OnExecute(player, data);

            var rooms   = ((BuildRoomsAndStablesActionData)data).RoomData.ToImmutableArray();
            var stables = ((BuildRoomsAndStablesActionData)data).StableData.ToImmutableArray();

            if (rooms.Length > 0)
            {
                ActionService.BuildRooms(player, data.ActionId, rooms, ResultingNotices);
            }

            if (stables.Length > 0)
            {
                ActionService.BuildStables(player, stables, Id, ResultingNotices);
            }
            return(this);
        }
示例#2
0
        public override GameAction OnExecute(AgricolaPlayer player, Data.GameActionData data)
        {
            base.OnExecute(player, data);

            var bake    = ((BuildStableAndBakeActionData)data).BakeData.ToImmutableArray();
            var stables = ((BuildStableAndBakeActionData)data).StableData.ToImmutableArray();

            if (bake != null && bake.Length > 0)
            {
                ActionService.Bake(player, eventTriggers, ResultingNotices, bake);
            }

            if (stables != null && stables.Length > 0)
            {
                ActionService.BuildStables(player, stables, Id, ResultingNotices);
            }

            return(this);
        }
示例#3
0
 public override GameAction OnExecute(AgricolaPlayer player, Data.GameActionData data)
 {
     ActionService.BuildStables(player, ImmutableArray.Create(((BuildStableActionData)data).StableData), Id, ResultingNotices);
     return(this);
 }