public Engine(IWriter writer, IReader reader, FestivalController festivalController)
 {
     this.reader        = new ConsoleReader();
     this.writer        = new ConsoleWriter();
     this.stage         = new Stage();
     this.setController = new SetController(stage);
     festivalController = new FestivalController(stage);
 }
示例#2
0
        public static void Main(string[] args)
        {
            Stage stage = new Stage();
            IFestivalController festivalController = new FestivalController(stage);
            ISetController      setController      = new SetController(stage);

            var engine = new Engine(festivalController, setController);

            engine.Run();
        }
示例#3
0
        public static void Main(string[] args)
        {
            IReader             reader             = new Reader();
            IWriter             writer             = new Writer();
            IStage              stage              = new Stage();
            ISetController      setController      = new SetController(stage);
            IFestivalController festivalController = new FestivalController(stage);
            IEngine             engine             = new Engine(reader, writer, setController, festivalController);

            engine.Run();
        }
示例#4
0
        public static void Main(string[] args)
        {
            var stage = new Stage();

            IFestivalController festivalController = new FestivalController(stage, new SetFactory(), new InstrumentFactory(), new PerformerFactory(), new SongFactory());
            ISetController      setController      = new SetController(stage);

            var engine = new Engine(new ConsoleReader(), new ConsoleWriter(), festivalController, setController);

            engine.Run();
        }
示例#5
0
        public static void Main(string[] args)
        {
            IReader             reader             = new ConsoleReader();
            IWriter             writer             = new ConsoleWriter();
            IStage              stage              = new Stage();
            IFestivalController festivalController = new FestivalController(stage, new SetFactory(), new InstrumentFactory());
            ISetController      setController      = new SetController(stage);

            IEngine engine = new Engine(reader, writer, festivalController, setController);

            engine.Run();
        }
        public static void Main()
        {
            IReader             reader             = new ConsoleReader();
            IWriter             writer             = new ConsoleWriter();
            IStage              stage              = new Stage();
            IFestivalController festivalController = new FestivalController(stage);
            ISetController      setController      = new SetController(stage);

            var engine = new Engine(reader, writer, festivalController, setController);

            engine.Run();
        }
示例#7
0
        public static void Main(string[] args)
        {
            IReader             reader             = new ConsoleReader();
            IWriter             writer             = new ConsoleWriter();
            IStage              stage              = new Stage(); //Note: The Stage is shared between the festival controller and the set controller.
            IFestivalController festivalController = new FestivalController(stage);
            ISetController      setController      = new SetController(stage);

            var engine = new Engine(reader, writer, festivalController, setController);

            engine.Run();
        }
示例#8
0
        public void GetReturnsNotFound()
        {
            // Arrange
            var mockRepository = new Mock <IFestivaliRepository>();
            var controller     = new FestivalController(mockRepository.Object);

            // Act
            IHttpActionResult actionResult = controller.Get(12);

            // Assert
            Assert.IsInstanceOfType(actionResult, typeof(NotFoundResult));
        }
示例#9
0
    void OnEnable()
    {
        m_Instance = this;

        CleanUp();    // 清理下

        InitUI();     // 初始化

        UpdateTips(); // 更新下
#if BOBJOYSTICK
        UIRootJoyControllerHelper.Instance.setState(UIRootJoyControllerHelper.JoyUIState.FESTIVAL_UI);
#endif
    }
示例#10
0
        public static void Main(string[] args)
        {
            IReader             reader             = new ConsoleReader();
            IWriter             writer             = new ConsoleWriter();
            IStage              stage              = new Stage();
            IInstrumentFactory  instrumentFactory  = new InstrumentFactory();
            IPerformerFactory   performerFactory   = new PerformerFactory();
            ISongFactory        songFactory        = new SongFactory();
            IFestivalController festivalController = new FestivalController(stage, instrumentFactory, performerFactory, songFactory);
            ISetController      setController      = new SetController(stage);

            var engine = new Engine(reader, writer, stage, festivalController, setController);

            engine.Run();
        }
示例#11
0
    /// <summary>
    /// 请求获取奖励物品返回值
    /// </summary>
    /// <param name="index"></param>
    /// <param name="resultTag"></param>
    public void OnReceiveResult(int index, int resultTag)
    {
        if (resultTag == 1)
        {
            //同时修改客户端本地数据
            GameManager.gameManager.PlayerDataPool.ActivityRewardJoinNum++;
            SetShowBar();      //修改参与进度

            SetJoinNumState(); //参加次数状态显示

            if (GameManager.gameManager.PlayerDataPool.OnActivityRewardTable.ContainsKey(index))
            {
                ActivityRewardData rewardData = GameManager.gameManager.PlayerDataPool.OnActivityRewardTable[index];
                rewardData.State = AcitivityRewardState.NORECEIVE;
                GameManager.gameManager.PlayerDataPool.OnActivityRewardTable[index] = rewardData;
            }

            //将状态设置成 已领取状态
            if (m_ItemList != null && m_ItemList.ContainsKey(index))
            {
                GameObject curObject = m_ItemList[index];
                if (curObject == null)
                {
                    return;
                }

                SpringRewardItem rewardItem = curObject.GetComponent <SpringRewardItem>();
                if (rewardItem != null)
                {
                    rewardItem.m_RewardData.State = AcitivityRewardState.NORECEIVE;
                    rewardItem.SetShowState(rewardItem.m_RewardData.State);
                    rewardItem.IsChoose = false;
                }
            }

            GameManager.gameManager.PlayerDataPool.m_ActivityRewardIndex = -1;
            if (CurrentReceiveIndex == index)
            {
                CurrentReceiveIndex = -1;
                GameManager.gameManager.PlayerDataPool.m_IsActivityReward = false;

                if (FestivalController.Instance() != null)
                {
                    FestivalController.Instance().UpdateBaiNianTip();
                }
            }
        }
    }
示例#12
0
    /// <summary>
    /// 显示物品信息
    /// </summary>
    /// <param name="reward"></param>
    /// <param name="posX"></param>
    /// <param name="posY"></param>
    private void ShowActivityReward(ActivityRewardData reward, int posX, int posY)
    {
        if (m_ItemList.ContainsKey(reward.Index))
        {
            return;
        }

        //设置位置
        GameObject curItem = Utils.BindObjToParent(ActivityRewardItem, ShowListGrid);

        if (curItem == null)
        {
            return;
        }

        curItem.name = "Item" + reward.Index;
        curItem.transform.localPosition = new Vector3(posX, posY, 0);

        m_ItemList.Add(reward.Index, curItem);

        //对应的显示物品详细信息
        SpringRewardItem rewardItem = curItem.GetComponent <SpringRewardItem>();

        if (rewardItem != null)
        {
            rewardItem.SetRewardInfo(reward);

            //根据当时时间 进行对不,看有选中状态的物品没
            DateTime rewarDateTime = rewardItem.CurDateTime;
            TimeSpan timeSpan      = CurrentDateTime.Subtract(rewardItem.CurDateTime);
            if (timeSpan.Days == 0)
            {
                if (CurrentDateTime.ToString("yyyy-MM-dd") == rewarDateTime.ToString("yyyy-MM-dd") &&
                    reward.State == AcitivityRewardState.RECEIVE)
                {
                    rewardItem.IsChoose = true;
                    CurrentReceiveIndex = reward.Index;
                    GameManager.gameManager.PlayerDataPool.m_ActivityRewardIndex = reward.Index;
                    GameManager.gameManager.PlayerDataPool.m_IsActivityReward    = true;

                    if (FestivalController.Instance() != null)
                    {
                        FestivalController.Instance().UpdateBaiNianTip();
                    }
                }
            }
        }
    }
示例#13
0
        public void DeleteReturnsOk()
        {
            // Arrange
            var mockRepository = new Mock <IFestivaliRepository>();

            mockRepository.Setup(x => x.GetById(12)).Returns(new Festival {
                Id = 12
            });
            var controller = new FestivalController(mockRepository.Object);

            // Act
            IHttpActionResult actionResult = controller.Delete(12);

            // Assert
            Assert.IsInstanceOfType(actionResult, typeof(OkResult));
        }
示例#14
0
        public void PostMethodSetsLocationHeader()
        {
            // Arrange
            var mockRepository = new Mock <IFestivaliRepository>();
            var controller     = new FestivalController(mockRepository.Object);

            // Act
            IHttpActionResult actionResult = controller.Post(new Festival {
                Id = 12, Naziv = "Gitarijada"
            });
            var createdResult = actionResult as CreatedAtRouteNegotiatedContentResult <Festival>;

            // Assert
            Assert.IsNotNull(createdResult);
            Assert.AreEqual("DefaultApi", createdResult.RouteName);
            Assert.AreEqual(12, createdResult.RouteValues["id"]);
        }
示例#15
0
        public void GetReturnsProductWithSameId()
        {
            // Arrange
            var mockRepository = new Mock <IFestivaliRepository>();

            mockRepository.Setup(x => x.GetById(2)).Returns(new Festival {
                Id = 2
            });

            var controller = new FestivalController(mockRepository.Object);

            // Act
            IHttpActionResult actionResult = controller.Get(2);
            var contentResult = actionResult as OkNegotiatedContentResult <Festival>;

            // Assert
            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.AreEqual(2, contentResult.Content.Id);
        }
示例#16
0
        public static void Main(string[] args)
        {
            IList <ISet>       sets       = new List <ISet>();
            IList <ISong>      songs      = new List <ISong>();
            IList <IPerformer> performers = new List <IPerformer>();

            Stage stage = new Stage(sets, songs, performers);

            IReader            reader            = new ConsoleReader();
            IWriter            writer            = new ConsoleWriter();
            ISetFactory        setFactory        = new SetFactory();
            IInstrumentFactory instrumentFactory = new InstrumentFactory();
            IPerformerFactory  performerFactory  = new PerformerFactory();
            ISongFactory       songFactory       = new SongFactory();

            IFestivalController festivalController = new FestivalController(stage, setFactory, instrumentFactory, performerFactory, songFactory);
            ISetController      setController      = new SetController(stage);

            var engine = new Engine(reader, writer, festivalController, setController);

            engine.Run();
        }
示例#17
0
    //开始每分钟一次循环
    void UpdatePerMinute()
    {
        m_UpdateNum = 30;
        //判断日期是否发生改变
        DateTime curentTime = GetCurrentTime();

        if (curentTime.Hour != 0 && curentTime.Minute != 0)
        {
            return;
        }
        m_UpdateNum = 1;

        if (CurrentDateTime.ToString("yyyy-MM-dd") != curentTime.ToString("yyyy-MM-dd"))
        {
            //进行客户端状态修改

            //取消对应的状态
            if (CurrentReceiveIndex > 0)
            {
                SetRewardState(CurrentReceiveIndex, AcitivityRewardState.EXPIRED);
            }

            //获取对应的天数 index
            DateTime oldTime  = Convert.ToDateTime(GameManager.gameManager.PlayerDataPool.ActivityRewardBeginTime);
            TimeSpan timeSpan = curentTime.Subtract(oldTime);
            int      newIndex = timeSpan.Days + 1;
            SetRewardState(newIndex, AcitivityRewardState.RECEIVE);
            CurrentReceiveIndex = newIndex;
            GameManager.gameManager.PlayerDataPool.m_ActivityRewardIndex = CurrentReceiveIndex;
            GameManager.gameManager.PlayerDataPool.m_IsActivityReward    = true;
            m_CurrentDateTime = curentTime;

            if (FestivalController.Instance() != null)
            {
                FestivalController.Instance().UpdateBaiNianTip();
            }
        }
    }
示例#18
0
        public static void Main(string[] args)
        {
            IReader reader;

            if (args.Length == 1)
            {
                var testPath = args.First();
                reader = new Core.IO.StringReader(File.ReadAllText(testPath));
            }
            else
            {
                reader = new ConsoleReader();
            }

            IWriter writer = new ConsoleWriter();

            IStage stage = new Stage();
            IFestivalController festivalController = new FestivalController(stage);
            ISetController      setController      = new SetController(stage);

            IEngine engine = new Engine(reader, writer, festivalController, setController);

            engine.Run();
        }
示例#19
0
 void OnDisable()
 {
     m_Instance = null;
 }