Exemple #1
0
        public void RollAndCreateUnityGroupIntoSector(ISector sector)
        {
            if (Globe is null)
            {
                return;
            }

            if (sector.ActorManager.Items.Any())
            {
                return;
            }

            // Interventionists spawns first.
            // If globe has no interventionists then spawn they.
            // Next randomly spawns interventionists or militia.
            var interventionistsCount = Globe.SectorNodes.Select(x => x.Sector)
                                        .Where(x => x != null)
                                        .Select(x => x !)
                                        .SelectMany(x => x.ActorManager.Items)
                                        .Where(x => x.Person.Fraction == Fractions.InterventionistFraction)
                                        .Count();

            if (interventionistsCount <= 0)
            {
                var count = _dice.Roll(2, 5);
                for (var i = 0; i < count; i++)
                {
                    var person    = _personFactory.Create("human-person", Fractions.InterventionistFraction);
                    var nodes     = sector.Map.Nodes.ToArray();
                    var startNode = _dice.RollFromList(nodes);

                    var actor = new Actor(person, _actorTaskSource, startNode);
                    sector.ActorManager.Add(actor);
                }
            }
            else
            {
                var faction = _dice.RollFromList(new[]
                {
                    Fractions.InterventionistFraction,
                    Fractions.MilitiaFraction,
                    Fractions.TroublemakerFraction
                });

                var count = _dice.Roll(2, 5);
                for (var i = 0; i < count; i++)
                {
                    var person    = _personFactory.Create("human-person", faction);
                    var nodes     = sector.Map.Nodes.ToArray();
                    var startNode = _dice.RollFromList(nodes);

                    var actor = new Actor(person, _actorTaskSource, startNode);
                    sector.ActorManager.Add(actor);
                }
            }
        }
        /// <summary>
        /// Создаёт персонажа.
        /// </summary>
        /// <returns> Возвращает созданного персонажа. </returns>
        private static IPerson CreateStartPerson(string personSchemeSid, IPersonFactory personFactory,
                                                 IFraction fraction)
        {
            var startPerson = personFactory.Create(personSchemeSid, fraction);

            return(startPerson);
        }
        public Person Add(string firstName,
                          string lastName,
                          string surName,
                          Genders gender,
                          DateTime?birthDate,
                          string snils,
                          string email,
                          string phone,
                          string registrationAddress,
                          string factAddress,
                          string otherPhones)
        {
            var person = _personFactory.Create(firstName,
                                               lastName,
                                               surName,
                                               gender,
                                               birthDate,
                                               snils,
                                               email,
                                               phone,
                                               registrationAddress,
                                               factAddress,
                                               otherPhones);

            _personRepository.Add(person);

            return(person);
        }
        public void GenerateTest()
        {
            var person = personFactory.Create(file);

            var g     = new NhanesPersonActivityStatsGenerator();
            var stats = g.Generate(person.NhanesRecords);

            Assert.IsNotNull(stats);
        }
        //[TestCase("00:00:00.100", 36000)]
        public void GetCoarseGrainedDataTest(string timeSpan, int wordLength)
        {
            var ts = TimeSpan.Parse(timeSpan);

            var person = personFactory.Create(subjectFile);

            person.CheckpointRate = ts;
            var result = personCalcService.CalculateCoarseGraining(person, wordLength);

            log.Debug("Input lengh: " + person.Snapshots.Data.Count());
            log.Debug("Encoded length: " + result.Length);
        }
Exemple #6
0
    private ActorViewModel CreateHumanActorViewModel([NotNull] IPlayer player,
                                                     [NotNull] IActorManager actorManager,
                                                     [NotNull] IPerkResolver perkResolver,
                                                     [NotNull] IGraphNode startNode,
                                                     [NotNull] IEnumerable <MapNodeVM> nodeVMs)
    {
        if (_humanPlayer.MainPerson == null)
        {
            if (!_progressStorageService.LoadPerson())
            {
                var playerPerson = _humanPersonFactory.Create("human-person");

                _humanPlayer.MainPerson = playerPerson;

                ShowCreatePersonModal(playerPerson);
            }
        }

        var fowData = new HumanSectorFowData();

        var actor = new Actor(_humanPlayer.MainPerson, player, startNode, perkResolver, fowData);

        _playerEventLogService.Actor = actor;

        actorManager.Add(actor);

        var actorViewModelObj = _container.InstantiatePrefab(ActorPrefab, transform);
        var actorViewModel    = actorViewModelObj.GetComponent <ActorViewModel>();

        actorViewModel.PlayerState = _playerState;
        var actorGraphic = Instantiate(HumanoidGraphicPrefab, actorViewModel.transform);

        actorGraphic.transform.position = new Vector3(0, 0.2f, -0.27f);
        actorViewModel.SetGraphicRoot(actorGraphic);

        var graphicController = actorViewModel.gameObject.AddComponent <HumanActorGraphicController>();

        graphicController.Actor   = actor;
        graphicController.Graphic = actorGraphic;

        var actorNodeVm   = nodeVMs.Single(x => x.Node == actor.Node);
        var actorPosition = actorNodeVm.transform.position + new Vector3(0, 0, -1);

        actorViewModel.transform.position = actorPosition;
        actorViewModel.Actor = actor;

        if (!actor.Person.GetModule <IInventoryModule>().CalcActualItems().Any(x => x.Scheme.Sid == "camp-tools"))
        {
            AddResourceToCurrentPerson("camp-tools");
        }

        return(actorViewModel);
    }
Exemple #7
0
    private void FixedUpdate()
    {
        if (SectorViewModel.IsInitialized)
        {
            _humanPlayer.MainPerson = _humanPersonFactory.Create("human-person");

            var playerActorViewModel = SelectNodeAndCreateHumanPersonViewModelFromMainPerson();

            ActorsViewModel.ActorViewModels.Add(playerActorViewModel);

            _playerState.ActiveActor = playerActorViewModel;
            _humanActorTaskSource.SwitchActiveActor(playerActorViewModel.Actor);

            Destroy(gameObject);
        }
    }
Exemple #8
0
        public Person RunCalculation(Person employee)
        {
            if (employee.PersonType != Domain.Enums.PersonType.Employee)
            {
                throw new Exception("Preview calculations on persons other than Employees are not permitted!");
            }

            employee = _personFactory.Create(employee);

            _ruleProvider.ExecuteRules(employee);
            employee.PayrollAmount = employee.Salary - employee.BenefitDeductionAmount + employee.DiscountAmount;

            foreach (var dependent in employee.Dependents)
            {
                _ruleProvider.ExecuteRules(dependent);
                employee.PayrollAmount = employee.PayrollAmount - dependent.BenefitDeductionAmount + dependent.DiscountAmount;
            }

            return(employee);
        }
        public void Initialize(Group group)
        {
            var di = new DirectoryInfo(group.DataFolderPath);

            FileInfo[] fileInfos = di.GetFiles();

            if (group.People != null)
            {
                return;
            }

            group.People = new List <Person>(fileInfos.Length);

            group.People = fileInfos.Select(
                fileInfo =>
            {
                var p = personFactory.Create(fileInfo.FullName);
                return(p);
            });
        }
Exemple #10
0
 public Personuser(IConfiguration configuration, IPersonFactory personFactory)
 {
     Person person = personFactory.Create(configuration.Name);
 }
Exemple #11
0
 public override IPerson Create()
 {
     return(_factory.Create(_specs));
 }
        public void InitializeTest()
        {
            var person = personFactory.Create(subjectFile);

            Assert.AreEqual(29073, person.ActivePalEvents.Count());
        }
        public void InitializeTest()
        {
            var person = personFactory.Create(subjectFile);

            Assert.AreEqual("21015", person.Id);
            Assert.AreEqual(5416, person.NhanesRecords.Count());
        }
Exemple #14
0
 public PersonDTO GetPersonByIdCode(string idCode)
 {
     return(_personFactory.Create(_uow.People.FindByIdCode(idCode)));
 }