Esempio n. 1
0
        public static StaticRotator GetClosestRotator(string name)
        {
            StaticRotator[] allRotators = UnityEngine.Object.FindObjectsOfType <StaticRotator>();
            StaticRotator[] rotators    = Array.FindAll(allRotators, r => r.name.StartsWith(name));
            float           lowestDist  = Single.PositiveInfinity;
            StaticRotator   closest     = null;

            foreach (var obj in rotators)
            {
                float dist = Vector3.Distance(obj.transform.position, ballMovement.transform.position);
                if (dist < lowestDist)
                {
                    lowestDist = dist;
                    closest    = obj;
                }
            }
            return(closest);
        }
        public void TestGetNext()
        {
            var items = new[] { 1, 3, 5, 7, 9 };

            var rotator = new StaticRotator<int>(items);

            Assert.AreEqual(5, rotator.Count);

            Assert.AreEqual(1, rotator.GetNext());
            Assert.AreEqual(3, rotator.GetNext());
            Assert.AreEqual(5, rotator.GetNext());
            Assert.AreEqual(7, rotator.GetNext());
            Assert.AreEqual(9, rotator.GetNext());
            Assert.AreEqual(1, rotator.GetNext());
            Assert.AreEqual(3, rotator.GetNext());
            Assert.AreEqual(5, rotator.GetNext());
            Assert.AreEqual(7, rotator.GetNext());
            Assert.AreEqual(9, rotator.GetNext());
        }