示例#1
0
 // Update is called once per frame
 void Update()
 {
     if (shrinkState == ShrinkState.Shrink)
     {
         if (electronObjects[0].transform.localScale.x > 0.001f)
         {
             //parentObj.transform.localScale -= new Vector3(scaleX * Time.deltaTime / shrinkTime, scaleY * Time.deltaTime / shrinkTime, scaleZ * Time.deltaTime / shrinkTime);
             shrink();
         }
         else
         {
             //parentObj.transform.localScale = new Vector3(0, 0, 0);
             shrinkFinish();
             setAtomicNumber(element);
             setModel(element);
             startGrow();
         }
     }
     else if (shrinkState == ShrinkState.Grow)
     {
         if (electronObjects[0].transform.localScale.x < scaleX)
         {
             //parentObj.transform.localScale += new Vector3 (scaleX * Time.deltaTime / shrinkTime, scaleY * Time.deltaTime / shrinkTime, scaleZ * Time.deltaTime / shrinkTime);
             grow();
         }
         else
         {
             //parentObj.transform.localScale = new Vector3 (scaleX, scaleY, scaleZ);
             growFinish();
             shrinkState = ShrinkState.Default;
         }
     }
 }
示例#2
0
        public static void IgnoreCurrent_HasNoMatch_NotInsideTag()
        {
            // Arrange
            var state = new ShrinkState()
            {
                InsideTag   = false,
                IgnoreCount = 10,
                Current     = NotMatch
            };

            // Act
            var result = ShrinkHelper.IgnoreCurrent(Match, state);

            // Assert
            Assert.False(result);
            Assert.False(state.InsideTag);
            Assert.Equal(10, state.IgnoreCount);
            Assert.Equal(NotMatch, state.Current);
        }
示例#3
0
        public static void IgnoreCurrent_HasMatch()
        {
            // Arrange
            var state = new ShrinkState()
            {
                InsideTag   = g_random.NextBoolean(),
                IgnoreCount = g_random.NextInt(0, 4),
                Current     = Match[0]
            };

            // Act
            var result = ShrinkHelper.IgnoreCurrent(Match, state);

            // Assert
            Assert.False(result);
            Assert.True(state.InsideTag);
            Assert.Equal(0, state.IgnoreCount);
            Assert.Equal(Match[0], state.Current);
        }
示例#4
0
        public static void IgnoreCurrent_InsideTag_HasNoIgnoreMatch()
        {
            // Arrange
            var state = new ShrinkState()
            {
                InsideTag   = true,
                IgnoreCount = 4,
                Current     = NotMatch
            };

            // Act
            var result = ShrinkHelper.IgnoreCurrent(Match, state);

            // Assert
            Assert.False(result);
            Assert.False(state.InsideTag);
            Assert.Equal(4, state.IgnoreCount);
            Assert.Equal(NotMatch, state.Current);
        }
示例#5
0
        public static void IgnoreCurrent_InsideTag_HasIgnoreMatch_AtLeast_One()
        {
            // Arrange
            var state = new ShrinkState()
            {
                InsideTag   = true,
                IgnoreCount = 4,
                Current     = IgnoreMatch
            };

            // Act
            var result = ShrinkHelper.IgnoreCurrent(Match, state);

            // Assert
            Assert.True(result);
            Assert.True(state.InsideTag);
            Assert.Equal(5, state.IgnoreCount);
            Assert.Equal(IgnoreMatch, state.Current);
        }
示例#6
0
        public static void IgnoreCurrent_InsideTag_HasIgnoreMatch_FirstTime()
        {
            // Arrange
            ShrinkHelper.LeaveAtLeast = 1;
            var state = new ShrinkState()
            {
                InsideTag   = true,
                IgnoreCount = 0,
                Current     = IgnoreMatch
            };

            // Act
            var result = ShrinkHelper.IgnoreCurrent(Match, state);

            // Assert
            Assert.False(result);
            Assert.True(state.InsideTag);
            Assert.Equal(1, state.IgnoreCount);
            Assert.Equal(IgnoreMatch, state.Current);
        }
示例#7
0
    void Awake()
    {
        EnemyCount++;
        hitCount     = 0;
        sprite       = GetComponent <Renderer>();
        wander       = GetComponent <Wander>();
        waypoint     = GetComponent <WaypointMover>();
        stunnedState = GetComponent <StunnedState>();
        eggState     = GetComponent <EggState>();
        ccwState     = GetComponent <CCWState>();
        cwState      = GetComponent <CWState>();
        chaseState   = GetComponent <ChaseState>();
        enlargeState = GetComponent <EnlargeState>();
        shrinkState  = GetComponent <ShrinkState>();

        gameObject.GetComponent <Animator>().Play("Idle");
        if (waypoint == null)
        {
            waypoint = gameObject.AddComponent <WaypointMover>();
        }

        enemies.Add(this);
    }
示例#8
0
 void startGrow()
 {
     shrinkState = ShrinkState.Grow;
 }
示例#9
0
 void startShrink()
 {
     shrinkState = ShrinkState.Shrink;
 }