예제 #1
0
        void AddAbsorbingAssisting(MiroModelV1 modelAbsorber)
        {
            MiroModelV1 modelAidee = _Pump.GetModelAidee();

            if (!modelAidee._absorbers.Contains(modelAbsorber))
            {
                modelAidee._absorbers.Add(modelAbsorber);
            }

            int aidingDir           = _Pump.GetAidingRDir();
            MiroV1WeaponBase weapon = modelAidee.GetWeaponInDir(aidingDir);

            List <MiroV1BulletEmitterBase> allEms           = weapon.GetEmitters();
            List <MiroV1BulletEmitterBase> OnNotAbsorbedEMs =
                GetOnNotAbsorbedEmittersFrom(allEms);

            List <MiroV1AbsorbPoint> absPs =
                modelAbsorber._BlackHole._BlackHole.GetAbsorbingPos();
            List <MiroV1AbsorbPoint> hungryAPs = GetHungryAbsorbingPointsFrom(absPs);

            if (OnNotAbsorbedEMs.Count > 0 && hungryAPs.Count > 0)
            {
                LinkEmittersToAbsorbingPoss(OnNotAbsorbedEMs, absPs);
            }
        }