コード例 #1
0
ファイル: PresetGames.cs プロジェクト: qwak623/dominion
        // BASE
        static PresetGames()
        {
            games.Add(Games.AllCards1stEdition, new List <Card>
            {
                Adventurer.Get(),
                Bureaucrat.Get(),
                Cellar.Get(),
                CouncilRoom.Get(),
                Feast.Get(),
                Festival.Get(),
                Gardens.Get(),
                Chancellor.Get(),
                Chapel.Get(),
                Laboratory.Get(),
                Library.Get(),
                Market.Get(),
                Militia.Get(),
                Mine.Get(),
                Moat.Get(),
                Moneylender.Get(),
                Remodel.Get(),
                Smithy.Get(),
                Spy.Get(),
                Thief.Get(),
                ThroneRoom.Get(),
                Village.Get(),
                Witch.Get(),
                Woodcutter.Get(),
                Workshop.Get(),
            });

            games.Add(Games.FirstGame, new List <Card>
            {
                Cellar.Get(),
                Moat.Get(),
                Village.Get(),
                Woodcutter.Get(),
                Workshop.Get(),
                Militia.Get(),
                Remodel.Get(),
                Smithy.Get(),
                Market.Get(),
                Mine.Get(),
            });

            games.Add(Games.BigMoney, new List <Card>
            {
                Adventurer.Get(),
                Bureaucrat.Get(),
                Chancellor.Get(),
                Chapel.Get(),
                Feast.Get(),
                Laboratory.Get(),
                Market.Get(),
                Mine.Get(),
                Moneylender.Get(),
                ThroneRoom.Get(),
            });

            games.Add(Games.Interaction, new List <Card>
            {
                Bureaucrat.Get(),
                Chancellor.Get(),
                CouncilRoom.Get(),
                Festival.Get(),
                Library.Get(),
                Militia.Get(),
                Moat.Get(),
                Spy.Get(),
                Thief.Get(),
                Village.Get()
            });

            games.Add(Games.SizeDistortion, new List <Card>
            {
                Cellar.Get(),
                Chapel.Get(),
                Feast.Get(),
                Gardens.Get(),
                Laboratory.Get(),
                Thief.Get(),
                Village.Get(),
                Witch.Get(),
                Woodcutter.Get(),
                Workshop.Get(),
            });

            games.Add(Games.VillageSquare, new List <Card>
            {
                Bureaucrat.Get(),
                Cellar.Get(),
                Festival.Get(),
                Library.Get(),
                Market.Get(),
                Remodel.Get(),
                Smithy.Get(),
                ThroneRoom.Get(),
                Village.Get(),
                Woodcutter.Get(),
            });

            games.Add(Games.ThrashHeap, new List <Card>
            {
                Chapel.Get(),
                Village.Get(),
                Workshop.Get(),
                Woodcutter.Get(),
                Feast.Get(),
                Moneylender.Get(),
                Remodel.Get(),
                Mine.Get(),
                Festival.Get(),
                Market.Get(),
            });
        }
コード例 #2
0
ファイル: Chapel.cs プロジェクト: bartochnio/Rytuol
 void Awake()
 {
     Chapel.instance = this;
 }
コード例 #3
0
ファイル: CardFactory.cs プロジェクト: esfdk/BDSADominion
        /// <summary>
        /// Creates a new card based on how many cards have already been made.
        /// </summary>
        /// <param name="card">
        /// The name of the card to be created.
        /// </param>
        /// <returns>
        /// The new created card.
        /// </returns>
        public static Card CreateCard(CardName card)
        {
            Contract.Requires(card != CardName.Backside & card != CardName.Empty);

            Contract.Ensures(Contract.Result<Card>().Name == card);

            Card c;
            switch (card)
            {
                case CardName.Copper:
                    c = new Copper();
                    break;
                case CardName.Silver:
                    c = new Silver();
                    break;
                case CardName.Gold:
                    c = new Gold();
                    break;
                case CardName.Curse:
                    c = new Curse();
                    break;
                case CardName.Estate:
                    c = new Estate();
                    break;
                case CardName.Duchy:
                    c = new Duchy();
                    break;
                case CardName.Province:
                    c = new Province();
                    break;
                case CardName.Gardens:
                    c = new Gardens();
                    break;
                case CardName.Cellar:
                    c = new Cellar();
                    break;
                case CardName.Chapel:
                    c = new Chapel();
                    break;
                case CardName.Chancellor:
                    c = new Chancellor();
                    break;
                case CardName.Village:
                    c = new Village();
                    break;
                case CardName.Woodcutter:
                    c = new Woodcutter();
                    break;
                case CardName.Workshop:
                    c = new Workshop();
                    break;
                case CardName.Feast:
                    c = new Feast();
                    break;
                case CardName.Moneylender:
                    c = new Moneylender();
                    break;
                case CardName.Remodel:
                    c = new Remodel();
                    break;
                case CardName.Smithy:
                    c = new Smithy();
                    break;
                case CardName.ThroneRoom:
                    c = new ThroneRoom();
                    break;
                case CardName.CouncilRoom:
                    c = new CouncilRoom();
                    break;
                case CardName.Festival:
                    c = new Festival();
                    break;
                case CardName.Laboratory:
                    c = new Laboratory();
                    break;
                case CardName.Library:
                    c = new Library();
                    break;
                case CardName.Market:
                    c = new Market();
                    break;
                case CardName.Mine:
                    c = new Mine();
                    break;
                case CardName.Adventurer:
                    c = new Adventurer();
                    break;
                case CardName.Bureaucrat:
                    c = new Bureaucrat();
                    break;
                case CardName.Militia:
                    c = new Militia();
                    break;
                case CardName.Spy:
                    c = new Spy();
                    break;
                case CardName.Thief:
                    c = new Thief();
                    break;
                case CardName.Witch:
                    c = new Witch();
                    break;
                case CardName.Moat:
                    c = new Moat();
                    break;
                default:
                    throw new NotImplementedException("Tried to create a card that was not implemented when CardFactory was last updated.");
            }

            c.Initialize(card, CardsMade[card]);
            CardsMade[card] += 1;
            createdCards.Add(c, true);
            return c;
        }
コード例 #4
0
        /// <summary>
        /// Seeds the data without calling .SaveChanges
        /// </summary>
        public void Seed()
        {
            // Manager
            var managerPerson = new Person
            {
                Id        = 0,
                FirstName = "fn_manager",
                LastName  = "ln_manager",
                BirthDate = new DateTime(1969, 1, 3)
            };

            var managerWorker = new Worker
            {
                PersonId = managerPerson.Id,
                Person   = managerPerson,
                WorkTime = "9h - 17h",
                Role     = WorkerRoles.Manager
            };
            var manager = new Manager
            {
                WorkerId = managerWorker.PersonId,
                Worker   = managerWorker
            };

            // Tech staff
            var techStaffPerson = new Person
            {
                Id        = 1,
                FirstName = "fn_staff_member",
                LastName  = "ln_staff_member",
                BirthDate = new DateTime(1962, 5, 9)
            };

            var techStaffWorker = new Worker
            {
                PersonId = techStaffPerson.Id,
                Person   = techStaffPerson,
                WorkTime = "8h - 16h",
                Role     = WorkerRoles.TechnicalStaff
            };

            // Dead person
            var deadPerson = new Person
            {
                Id        = 2,
                BirthDate = new DateTime(1997, 4, 3),
                FirstName = "Danilo",
                LastName  = "Novakovic"
            };

            var deathRecord = new DeathRecord
            {
                PersonId  = deadPerson.Id,
                Person    = deadPerson,
                DeathDate = DateTime.Now
            };

            // Family
            var sisterPerson = new Person
            {
                Id        = 3,
                BirthDate = new DateTime(1999, 2, 6),
                FirstName = "Aleksandra",
                LastName  = "Novakovic"
            };

            var familyMember = new FamilyMember
            {
                Id           = sisterPerson.Id,
                MemberId     = sisterPerson.Id,
                Member       = sisterPerson,
                RelatedToId  = deathRecord.PersonId,
                RelatedTo    = deathRecord,
                RelationType = "sister"
            };

            // Chapel
            var chapelLocation = new Location
            {
                Id        = 0,
                Latitude  = 45.571988,
                Longitude = 19.668292,
            };

            var chapel = new Chapel
            {
                Id       = 0,
                Name     = "White Chapel",
                Location = chapelLocation
            };

            // Contracts
            var contract = new Contract
            {
                Id               = 0,
                Manager          = manager,
                FamilyMember     = familyMember,
                FuneralStartTime = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day + 1, 14, 00, 00),
                FuneralType      = FuneralType.Burial,
                Chapel           = chapel
            };

            var graveSiteLocation = new Location
            {
                Id        = 1,
                Latitude  = 45.572393,
                Longitude = 19.667079
            };

            var graveSite = new GraveSite
            {
                DeathRecordId = 0,
                DeathRecord   = deathRecord,
                Location      = graveSiteLocation,
                Type          = GraveSiteType.Coffin
            };

            var coffin = new Coffin
            {
                GraveSiteId = graveSite.DeathRecordId,
                GraveSite   = graveSite,
                Mark        = "Black Coffin v1.0 - Smooth Edition"
            };

            _context.Locations.AddOrUpdate(chapelLocation, graveSiteLocation);
            _context.Chapels.AddOrUpdate(chapel);

            _context.Persons.AddOrUpdate(managerPerson, techStaffPerson, deadPerson, sisterPerson);

            _context.DeathRecords.AddOrUpdate(deathRecord);
            _context.GraveSites.AddOrUpdate(graveSite);
            _context.Coffins.AddOrUpdate(coffin);

            _context.FamilyMembers.AddOrUpdate(familyMember);

            _context.Workers.AddOrUpdate(managerWorker, techStaffWorker);
            _context.Managers.AddOrUpdate(manager);
            _context.TechnicalStaff.AddOrUpdate(new TechnicalStaff
            {
                WorkerId  = techStaffWorker.PersonId,
                ManagerId = manager.WorkerId
            });

            _context.Contracts.AddOrUpdate(contract);
        }