コード例 #1
0
        internal static Apartment Apartment201()
        {
            var dwellers = new List <Dweller>();

            dwellers.Add(Dweller.FromId(
                             4,
                             "Fulano Santos",
                             new DateTime(1982, 04, 27),
                             "(48) 99619-0445",
                             "123.456.789-09",
                             "*****@*****.**",
                             null));
            dwellers.Add(Dweller.FromId(
                             5,
                             "Beltrano Santos",
                             new DateTime(1980, 01, 01),
                             "(48) 99619-0445",
                             "123.456.789-09",
                             "*****@*****.**",
                             null));
            dwellers.Add(Dweller.FromId(
                             6,
                             "Joaozinho Santos",
                             new DateTime(1980, 01, 01),
                             "(48) 99619-0445",
                             "123.456.789-09",
                             "*****@*****.**",
                             null));

            return(Apartment.FromId(3, 201, "A", dwellers));
        }
    public static List <Dweller> PopulateMyVault(int countOfDweller)
    {
        var dwellers = new List <Dweller>();

        if (countOfDweller == 0)
        {
            return(dwellers);
        }

        dwellers.Add(new Dweller(Gender.Mr, Position.overseer));

        for (int x = 0; x < countOfDweller - 1; x++)
        {
            if (x % 2 == 0)
            {
                dwellers.Add(new Dweller(Gender.Mrs));
            }
            else
            {
                dwellers.Add(new Dweller(Gender.Mr));
            }
        }

        if (countOfDweller > 2 && countOfDweller % 2 == 1)
        {
            dwellers[2] = new Dweller(Gender.Mrs);
        }

        if (countOfDweller > 50)
        {
            dwellers[49] = new Dweller(Gender.Mrs, Position.overseer);
        }

        return(dwellers);
    }
コード例 #3
0
 protected override bool RoomCanDoAction(ERoomAction action, Dweller dweller = null)
 {
     if (action == ERoomAction.DestroyRoom && VaultMods.CanRemoveAllRooms)
     {
         return(true);
     }
     return(base.RoomCanDoAction(action, dweller));
 }
コード例 #4
0
        public void New()
        {
            var dweller = Dweller.New("Marcelo Gerent", new DateTime(1982, 04, 27), "(48) 99619-0445", "123.456.789-09", "*****@*****.**");

            Assert.Equal(0, dweller.Id);
            Assert.Equal("Marcelo Gerent", dweller.Name);
            Assert.Equal(new DateTime(1982, 04, 27), dweller.BirthDate);
            Assert.Equal("(48) 99619-0445", dweller.Telephone);
            Assert.Equal("123.456.789-09", dweller.CPF);
            Assert.Equal("*****@*****.**", dweller.Email);
        }
コード例 #5
0
        public void IsReturnedFromWastelandTest()
        {
            Dweller testDweller = new Dweller("Karen");

            testDweller.WastelandResearchTimeSec = 2;
            testDweller.PersonalStatus           = Dweller.Status.IN_WASTELAND;
            Thread.Sleep(2500);


            Assert.AreEqual(true, testDweller.IsReturnedFromWasteland());
        }
コード例 #6
0
        public void GetDamageInWastelandsTestHpFill()
        {
            Dweller testDweller = new Dweller("Jhonny");

            //отправим в пустоши
            testDweller.PersonalStatus = Dweller.Status.IN_WASTELAND;
            testDweller.HP             = 50;//уменьшим здоровье
            //При возвращении в убежище жителя лечат
            testDweller.PersonalStatus = Dweller.Status.IN_VAULT;
            Assert.AreEqual(testDweller.HP, 100);
        }
コード例 #7
0
 private static DwellerDto ToDwellerDto(Dweller dweller)
 {
     return(new DwellerDto
     {
         Id = dweller.Id,
         Name = dweller.Name,
         BirthDate = dweller.BirthDate,
         Telephone = dweller.Telephone,
         CPF = dweller.CPF,
         Email = dweller.Email
     });
 }
コード例 #8
0
        internal static Apartment Apartment212()
        {
            var dwellers = new List <Dweller>();

            dwellers.Add(Dweller.FromId(
                             3,
                             "Ciclana da silva",
                             new DateTime(1982, 04, 27),
                             "(48) 99619-0445",
                             "123.456.789-09",
                             "*****@*****.**",
                             null));
            return(Apartment.FromId(2, 212, "B", dwellers));
        }
コード例 #9
0
        public void EarnMoneyInWastelandByTimeTest()
        {
            Dweller testDweller = new Dweller("Karen");

            testDweller.WastelandResearchTimeSec = 100;
            testDweller.PersonalStatus           = Dweller.Status.IN_WASTELAND;

            //Нужно дать жителю хоть сколько-то денег, т.к. он может либо заработать, либо потерять всё
            const int testMoney = 20;

            testDweller.GainedMoney = testMoney;
            Thread.Sleep(2000);
            testDweller.EarnMoneyInWastelandByTime();

            if (testDweller.GainedMoney == testMoney)
            {
                Assert.Fail();
            }
        }
コード例 #10
0
        public void FillHealthTest()
        {
            Dweller testDweller = new Dweller("Amy");

            testDweller.WastelandResearchTimeSec = 100;
            testDweller.PersonalStatus           = Dweller.Status.IN_WASTELAND;

            //Время в два раза меньше смертельного. Должен выжить но точно получит урон
            long timeWithDamage = (DateTime.Now.Ticks - TimeSpan.TicksPerMillisecond * 1000 * 300);

            testDweller.TimeOfAdventureBegin = new DateTime(timeWithDamage);

            testDweller.GetDamageInWastelands();

            testDweller.FillHealth();


            Assert.AreEqual(100, testDweller.HP);
        }
コード例 #11
0
        public void UpdateData()
        {
            var dweller = Dweller.FromId(
                1,
                "Marcelo Gerent",
                new DateTime(1982, 04, 27),
                "(48) 99619-0445",
                "123.456.789-09",
                "*****@*****.**",
                null);

            dweller.UpdateData("Marcelo Takeshi Gerent", new DateTime(1982, 04, 01), "(48) 9619-0445", "234.567.890-12", "*****@*****.**");

            Assert.Equal(1, dweller.Id);
            Assert.Equal("Marcelo Takeshi Gerent", dweller.Name);
            Assert.Equal(new DateTime(1982, 04, 01), dweller.BirthDate);
            Assert.Equal("(48) 9619-0445", dweller.Telephone);
            Assert.Equal("234.567.890-12", dweller.CPF);
            Assert.Equal("*****@*****.**", dweller.Email);
        }
コード例 #12
0
        public void GetDamageInWastelandsTestDead()
        {
            Dweller testDweller = new Dweller("Jimmy");

            //testDweller.HP = 1;

            testDweller.PersonalStatus = Dweller.Status.IN_WASTELAND;

            //Искусственно уменьшаем время начала путешествия, чтобы точно "убить жителя"
            testDweller.TimeOfAdventureBegin = new DateTime(2020, 11, 1);

            //Время в два раза большее смертельного
            long deadlyTimeBeginTimeMs = DateTime.Now.Ticks - TimeSpan.TicksPerMillisecond * 1000 * 12000;

            testDweller.TimeOfAdventureBegin = new DateTime(deadlyTimeBeginTimeMs);
            DateTime dateTime = new DateTime();

            Thread.Sleep(100);
            testDweller.GetDamageInWastelands();

            Assert.AreEqual(Dweller.Status.DEAD, testDweller.PersonalStatus);
        }
コード例 #13
0
        internal static Apartment Apartment211()
        {
            var dwellers = new List <Dweller>();

            dwellers.Add(Dweller.FromId(
                             1,
                             "Marcelo Gerent",
                             new DateTime(1982, 04, 27),
                             "(48) 99619-0445",
                             "123.456.789-09",
                             "*****@*****.**",
                             null));
            dwellers.Add(Dweller.FromId(
                             2,
                             "Zezinho Gerent",
                             new DateTime(1980, 01, 01),
                             "(48) 99619-0445",
                             "123.456.789-09",
                             "*****@*****.**",
                             null));
            return(Apartment.FromId(1, 211, "B", dwellers));
        }
コード例 #14
0
        private IEnumerable <Dweller> UpdateDwellerListNew()
        {
            var list = new List <Dweller>();

            list.Add(Dweller.FromId(
                         1,
                         "Marcelo Gerent",
                         new DateTime(1982, 04, 27),
                         "(48) 99619-0445",
                         "123.456.789-09",
                         "*****@*****.**",
                         null));
            list.Add(Dweller.FromId(
                         0,
                         "Huguinho Gerent",
                         new DateTime(1980, 01, 01),
                         "(48) 99619-0445",
                         "123.456.789-09",
                         "*****@*****.**",
                         null));
            return(list);
        }
コード例 #15
0
        public void ExecuteCommandTestMoney()
        {
            //оптравляем жителя в пустоши - тратим 500 крышек, следующий запрос денег вернет 500
            vaultServer.vault13.dwellersList.Add(new Dweller("John Dorian"));
            string[] argvSd = { "sd", "John Dorian", "50" };
            vaultServer.ExecuteCommand(argvSd.Count(), argvSd);

            int     dwellerIndex = vaultServer.vault13.GetDwellersIndexByName(argvSd[1]);
            Dweller sentDweller  = vaultServer.vault13.dwellersList[dwellerIndex];

            bool setDwellerStatusIsOk = sentDweller.PersonalStatus == Dweller.Status.IN_WASTELAND;

            string[] argvMuneh = { "muneh" };
            string   reply     = vaultServer.ExecuteCommand(argvMuneh.Count(), argvMuneh);

            bool moneyIsOk = reply == "Бюджет убежища: 500";

            vaultServer.Terminate();
            if (!moneyIsOk || !setDwellerStatusIsOk)
            {
                Assert.Fail();
            }
        }
コード例 #16
0
 public void Add(Dweller dweller)
 {
     session.Save(dweller);
 }
コード例 #17
0
 public void Update(Dweller dweller)
 {
     session.Update(dweller);
 }
コード例 #18
0
 private static Dweller FromDwellerDto(DwellerDto dwellerDto)
 {
     return(Dweller.FromId(dwellerDto.Id, dwellerDto.Name, dwellerDto.BirthDate.Value, dwellerDto.Telephone, dwellerDto.CPF, dwellerDto.Email, null));
 }