Exemplo n.º 1
0
        private IEnumerator PlayerNextSkillCoroutine()
        {
            Logic.Tutorial.Model.TutorialStepData tutorialStepData = Tutorial.Model.TutorialProxy.instance.CurrentTutorialStepData;
            string transformStr = tutorialStepData.GetExpandData("Transform");
            string mechanicsStr = tutorialStepData.GetExpandData("Mechanics");
            string fightOver    = tutorialStepData.GetExpandData("FightOver");
            float  delay        = tutorialStepData.delayTime;

            if (!string.IsNullOrEmpty(fightOver))
            {
                Logic.Net.Controller.DataMessageHandler.DataMessage_ForceFightFinished(false, FightOverType.ForceOver);
                Logic.Tutorial.Controller.TutorialController.instance.ExecuteStepComplete(tutorialStepData);
                yield break;
            }
            if (!string.IsNullOrEmpty(transformStr))
            {
                int transformId = 0;
                int.TryParse(transformStr, out transformId);
                if (transformId != 0)
                {
                    int mechanicsId = 0;
                    int.TryParse(mechanicsStr, out mechanicsId);
                    EnemyEntity enemy = EnemyController.instance[(uint)tutorialStepData.heroInstanceID];
                    if (enemy)
                    {
                        MechanicsController.instance.Transform(enemy, transformId, mechanicsId);
                    }
                    if (delay > 0)
                    {
                        yield return(new WaitForSeconds(delay));
                    }
                }
                Tutorial.Controller.TutorialController.instance.ExecuteStepComplete();
            }
            else if (tutorialStepData.GetExpandData("startCombo") == "1")
            {
                if (delay > 0)
                {
                    yield return(new WaitForSeconds(delay));
                }
                Common.GameTime.Controller.TimeController.instance.CancelPause();
                Logic.UI.FightTips.Controller.FightTipsController.instance.ComboWating(2, FightStatus.FloatWaiting, true);
            }
            else
            {
                uint characterId = (uint)tutorialStepData.heroInstanceID;
                if (characterId != 0)
                {
                    if (delay > 0)
                    {
                        yield return(new WaitForSeconds(delay));
                    }
                    bool comboWait = tutorialStepData.GetExpandData("comboWait") == "0";
                    MockFightController.instance.needComboPause = !comboWait;
                    uint skillId = (uint)tutorialStepData.skillID;
                    Logic.Net.Controller.DataMessageHandler.DataMessage_OrderSkill(characterId, skillId, false);
                }
            }
        }
Exemplo n.º 2
0
 public void MoveNextSkillHandler(Logic.Skill.Model.SkillInfo skillInfo)
 {
     Logic.Tutorial.Model.TutorialStepData tutorialStepData = Tutorial.Model.TutorialProxy.instance.CurrentTutorialStepData;
     if (tutorialStepData.GetExpandData("MoveNextSkilled") == "1")
     {
         Tutorial.Controller.TutorialController.instance.ExecuteStepComplete();
     }
 }
Exemplo n.º 3
0
        private IEnumerator OnComboWaitSettingHanlderCoroutine()
        {
            Logic.Tutorial.Model.TutorialStepData tutorialStepData = Tutorial.Model.TutorialProxy.instance.CurrentTutorialStepData;
            float delay = tutorialStepData.delayTime;

            if (delay > 0)
            {
                yield return(new WaitForSeconds(delay));
            }
            Observers.Facade.Instance.SendNotification(string.Format("Fight::{0}", "OnComboWaitSettingHandler"));
        }
Exemplo n.º 4
0
        private IEnumerator FightHangupCoroutine()
        {
            Logic.Tutorial.Model.TutorialStepData tutorialStepData = Tutorial.Model.TutorialProxy.instance.CurrentTutorialStepData;
            float delay = tutorialStepData.delayTime;

            if (delay > 0)
            {
                yield return(new WaitForSeconds(delay));
            }
            FightController.instance.FightHangupOrder(null);
        }
Exemplo n.º 5
0
        private IEnumerator ComboPauseCoroutine()
        {
            Logic.Tutorial.Model.TutorialStepData tutorialStepData = Tutorial.Model.TutorialProxy.instance.CurrentTutorialStepData;
            float delay = tutorialStepData.delayTime;
            float time  = Time.realtimeSinceStartup;

            while (Time.realtimeSinceStartup - time < delay)
            {
                yield return(null);
            }
            Common.GameTime.Controller.TimeController.instance.Pause();
            Tutorial.Controller.TutorialController.instance.ExecuteStepComplete();
        }
Exemplo n.º 6
0
        public bool FullSkillCD(Observers.Interfaces.INotification arg)
        {
            Logic.Tutorial.Model.TutorialStepData tutorialStepData = Tutorial.Model.TutorialProxy.instance.CurrentTutorialStepData;
            uint skillId = (uint)tutorialStepData.skillID;

            if (skillId != 0)
            {
                for (int j = 0, jCount = PlayerController.instance.heros.Count; j < jCount; j++)
                {
                    HeroEntity hero = PlayerController.instance.heros[j];
                    if (hero.characterInfo.skillId1 == skillId)
                    {
                        hero.skill1CD = hero.characterInfo.skillInfo1.skillData.CD;
                        hero.skillItemBoxView.skillItemView1.SetSkillState(hero.skill1CD);
                        hero.canOrderTime = Time.time;
                        break;
                    }
                    if (hero.characterInfo.skillId2 == skillId)
                    {
                        hero.skill2CD = hero.characterInfo.skillInfo2.skillData.CD;
                        hero.skillItemBoxView.skillItemView2.SetSkillState(hero.skill2CD);
                        hero.canOrderTime = Time.time;
                        break;
                    }
                }
                for (int j = 0, jCount = EnemyController.instance.enemies.Count; j < jCount; j++)
                {
                    EnemyEntity enemy = EnemyController.instance.enemies[j];
                    if (enemy.characterInfo.skillId1 == skillId)
                    {
                        enemy.skill1CD     = enemy.characterInfo.skillInfo1.skillData.CD;
                        enemy.canOrderTime = Time.time;
                        break;
                    }
                    if (enemy.characterInfo.skillId2 == skillId)
                    {
                        enemy.skill2CD     = enemy.characterInfo.skillInfo2.skillData.CD;
                        enemy.canOrderTime = Time.time;
                        break;
                    }
                }
            }
            Observers.Facade.Instance.SendNotification(string.Format("Fight::{0}", "OnFullSkillCDHandler"));
            return(true);
        }