예제 #1
0
        public void DoOneTurn()
        {
            Date = Date.AddDays(1);

            foreach (var town in Towns)
            {
                town.DoOneTurn();
            }

            foreach (var territory in Territories)
            {
                territory.DoOneTurn();
                if (Date.Day == 1)
                {
                    territory.DoAtMonthBeginning();
                }
            }

            foreach (var commerce in Commerces)
            {
                commerce.DoOneTurn();
            }

            RouteLayer.GetInstance().DoOneTurn();
        }
        private void InitializeRoutes(World world)
        {
            var towns = world.Towns.ToList();

            // 1-2-3-4
            //     |-5 に繋ぐ
            RouteLayer.GetInstance().Connect(towns.First(t => t.Id == 1), towns.First(t => t.Id == 2), 100, 3);
            RouteLayer.GetInstance().Connect(towns.First(t => t.Id == 2), towns.First(t => t.Id == 3), 100, 3);
            RouteLayer.GetInstance().Connect(towns.First(t => t.Id == 3), towns.First(t => t.Id == 4), 100, 3);
            RouteLayer.GetInstance().Connect(towns.First(t => t.Id == 3), towns.First(t => t.Id == 5), 100, 3);

            GetComponent <RoutesPresenter>().Initialize(RouteLayer.GetInstance().Routes);
        }