示例#1
0
        public void ClearPositionCache()
        {
            Vector3[] ga  = TagCache.GetVector3sByTag("Test");
            Vector3   toA = testObjectA.transform.position;
            Vector3   toB = testObjectB.transform.position;
            Vector3   toC = testObjectC.transform.position;

            Assert.AreEqual(2, ga.Length);
            Assert.AreEqual(true, ga.Contains(toA));
            Assert.AreEqual(true, ga.Contains(toB));
            Assert.AreEqual(false, ga.Contains(toC));
            Assert.AreEqual(testObjectC.transform.position, TagCache.GetVector3sByTag("Dummy")[0]);

            testObjectA.transform.position = new Vector3(10, 123, 5);
            testObjectB.transform.position = new Vector3(13, 13, 1);
            testObjectC.transform.position = new Vector3(-10, 3, 0);

            TagCache.ClearCache();

            Vector3[] gaAfter = TagCache.GetVector3sByTag("Test");
            Assert.AreEqual(2, gaAfter.Length);
            Assert.AreEqual(false, gaAfter.Contains(toA));
            Assert.AreEqual(false, gaAfter.Contains(toB));
            Assert.AreEqual(true, gaAfter.Contains(testObjectA.transform.position));
            Assert.AreEqual(true, gaAfter.Contains(testObjectB.transform.position));
            Assert.AreEqual(false, gaAfter.Contains(testObjectC.transform.position));
        }