Ejemplo n.º 1
0
        private void LoadMonsterCallback(BaseDisplay display)
        {
            if (StoryConst.LEFT == dir)
            {
                display.ChangeDire(Directions.Left);
            }
            else
            {
                display.ChangeDire(Directions.Right);
            }

            MonsterAiController aiController = display.Controller.gameObject.GetComponent <MonsterAiController>();

            if (null != aiController)
            {
                GameObject.Destroy(aiController);
            }

            modelLoaded = true;
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 将A面向B
 /// </summary>
 /// <param name="a"></param>
 /// <param name="b"></param>
 public static void MakeAFaceToB(BaseDisplay a, BaseDisplay b)
 {
     if (a.CurFaceDire == Directions.Left && a.Controller.transform.position.x < b.Controller.transform.position.x)
     {
         a.ChangeDire(Directions.Right);
     }
     else if (a.CurFaceDire == Directions.Right && a.Controller.transform.position.x > b.Controller.transform.position.x)
     {
         b.ChangeDire(Directions.Left);
     }
 }
Ejemplo n.º 3
0
        private void LoadMonsterCallBack(BaseDisplay display)
        {
            var monsterVo = display.GetMeVoByType <MonsterVo>();
            var mapRange  = AppMap.Instance.mapParser.CurrentMapRange;

            if (monsterVo.X > (mapRange.MinX + mapRange.MaxX) / 2)
            {
                display.ChangeDire(Directions.Left);
            }
            else
            {
                display.ChangeDire(Directions.Right);
            }
            Log.info(this, string.Format("Monster Id : {0} Model Id: {1} Quality: {2}", monsterVo.MonsterVO.id, monsterVo.MonsterVO.res, monsterVo.MonsterVO.quality));
            //为boss添加脚底特效
            if (monsterVo.MonsterVO.quality == MonsterType.TypeBoss)
            {
                ShowBossFootEffect(display);
                //显示Boss预警特效
                EffectMgr.Instance.CreateUIEffect(EffectId.UI_BossComingWarning, Vector3.zero);
            }
            //从空中产生怪物
            if (monsterVo.bornType == (int)MonsterBornType.BornFromSky)
            {
                _monsterPresent = display;
                float x         = GetRandomValueX();
                float heroX     = AppMap.Instance.me.GoBase.transform.position.x;
                int   direction = x < heroX ? Directions.Right : Directions.Left;
                display.ChangeDire(direction);
                display.GoBase.transform.position = new Vector3(x, 6f,
                                                                /*display.GoBase.transform.position.z*/ Random.Range(mapRange.MinY, mapRange.MaxY) * 5f);//由重力来完成掉落
                display.Controller.MoveController.MonsterDrop(StartShowMonsterAdditionalView);
                StartShowMonsterAdditionalView(display);
            }
            else
            {
                StartShowMonsterAdditionalView(display);
            }
        }