Beispiel #1
0
        public void ShrinkAidDotAtDir(int dir)
        {
            MiroV1BlackDotBase bkDot =
                _6DirAidDots.GetBlackDot(dir);

            bkDot.Shrink();
        }
Beispiel #2
0
        public void BreakAidDotAtDir(int dir)
        {
            MiroV1BlackDotBase bkDot =
                _6DirAidDots.GetBlackDot(dir);

            bkDot.Break();
        }
Beispiel #3
0
        static MiroV1BlackDotBase GetNearestBlackDot(
            MiroV1BulletEmitterBase em,
            List <MiroV1BlackDotBase> dots)
        {
            MiroV1BlackDotBase nearestBD = null;
            float distMin = 1000000.0f;

            foreach (MiroV1BlackDotBase bd in dots)
            {
                if (bd == null)
                {
                    continue;
                }
                Vector3 posBDot = bd.transform.position;
                Vector3 posEM   = em.transform.position;
                Vector3 offset  = posEM - posBDot;
                offset.z = 0.0f;
                float dist = offset.magnitude;
                if (dist < distMin)
                {
                    distMin   = dist;
                    nearestBD = bd;
                }
            }

            return(nearestBD);
        }
Beispiel #4
0
        public void GrowUPAidDotAtDir(int dir)
        {
            MiroV1BlackDotBase bkDot =
                _6DirAidDots.GetBlackDot(dir);

            bkDot.Grow();
            bkDot.Recover();
        }
        public void AttachToAidBlackDot()
        {
            MiroV1BlackDotBase bkDot =
                _aidDotAccess.GetBlackDot(_dir);
            Transform tfBKDot = bkDot.transform;

            Lyu.KeepOffset keepOffset = GetComponent <Lyu.KeepOffset> ();
            keepOffset._Anchor = tfBKDot;
        }
Beispiel #6
0
        public void ConfigTargetBlackDotTFFor(
            MiroV1BulletEmitterBase em,
            List <int> keys,
            Dictionary <int, List <MiroV1BlackDotBase> > dicBkDots)
        {
            Transform tgt        = null;
            bool      IsEmitting = em.IsON();

            if (!IsEmitting)
            {
                return;
            }

            for (int i = 0; i < keys.Count; i++)
            {
                int precd = keys [i];
                List <MiroV1BlackDotBase> dots = dicBkDots [precd];

                for (int j = dots.Count - 1; j >= 0; j--)
                {
                    var dot = dots [j];

                    /*
                     * if (dot.ContainAttacker (em)) {
                     *      em.SetTarget (dot.transform);
                     *      dot.AddAttacker (em);
                     *      return;
                     * }*/

                    bool bAttackMax = dot.IsAttackerMax();
                    if (bAttackMax)
                    {
                        dots.RemoveAt(j);
                    }
                }

                MiroV1BlackDotBase nearestBD = GetNearestBlackDot(em, dots);
                if (nearestBD != null)
                {
                    tgt = nearestBD.transform;
                    break;
                }
            }
            if (tgt == null)
            {
                tgt = transform;
            }

            em.SetTarget(tgt);
            MiroV1BlackDotBase bdot =
                tgt.GetComponent <MiroV1BlackDotBase> ();

            if (bdot != null)
            {
                bdot.AddAttacker(em);
            }
        }
Beispiel #7
0
        void SetLRPath(MiroV1BlackDotBase bdot, GameObject LRObj)
        {
            LRPathCtrlFromVts lrpthCtrl = LRObj.GetComponent <LRPathCtrlFromVts> ();
            List <Transform>  tfs       = new List <Transform> ();

            tfs.Add(bdot.transform);
            tfs.Add(transform);
            lrpthCtrl.SetVTTFs(tfs);
        }
Beispiel #8
0
        void ShrinkNeighborBlackDot()
        {
            Transform akrTFB = _Pump.GetAnchorTFB();

            Lyu.KeepOffset kepOff = akrTFB.GetComponent <Lyu.KeepOffset> ();
            if (kepOff._Anchor != null)
            {
                MiroV1BlackDotBase bkDot = kepOff._Anchor.GetComponent <MiroV1BlackDotBase> ();
                bkDot.Shrink();
            }
        }
 public void GrowUpNeighborAidBlackDot()
 {
     Lyu.KeepOffset kepOff =
         _AnchorB.GetComponent <Lyu.KeepOffset> ();
     if (kepOff._Anchor != null)
     {
         MiroV1BlackDotBase bkDot =
             kepOff._Anchor.GetComponent <MiroV1BlackDotBase> ();
         bkDot.Grow();
         bkDot.Recover();
     }
 }
        override protected void _Calculate()
        {
            TargetTransform tgtTF = GetComponent <TargetTransform> ();

            Transform tgt = tgtTF._Target;

            MiroV1BlackDotBase bdot = tgt.GetComponent <MiroV1BlackDotBase> ();

            if (bdot != null && bdot._HP > 0)
            {
                bdot.Break();
            }
        }
Beispiel #11
0
        public void NewBlackDot(MiroV1BlackDotBase bkDot)
        {
            bool bExist = false;

            foreach (BlackDotSlot bkdSlot in _BlackDots)
            {
                if (bkdSlot._blackDot == bkDot)
                {
                    bExist = true;
                }
            }
            if (!bExist)
            {
                BlackDotSlot newBkDotSlot = new BlackDotSlot();
                newBkDotSlot._blackDot = bkDot;
                _BlackDots.Add(newBkDotSlot);
            }
        }
Beispiel #12
0
 public void NewBlackDot(MiroV1BlackDotBase bkDot)
 {
     _NewBlackDot.Invoke(bkDot);
 }