protected override void AwakeOverride() { m_weight = GameConstants.MinVoxelActorWeight; m_animationState = VoxelActorState.Idle; m_movementState = new NormalMovementState(this); RoundStomicRotation(); }
private void OnAnimatorStateEnter(AnimatorStateInfo stateInfo) { if (stateInfo.IsName("Wait")) { if (m_animationState == VoxelActorState.Move1X) { m_isFlipped = !m_isFlipped; OnFlipped(m_isFlipped); RoundRotation(); RoundPosition(); RoundStomicRotation(); RaiseMoveCompleted(m_startTick); ExecuteNextAction(); } else if ((m_animationState & VoxelActorState.Rotate) != 0) { RoundRotation(); RoundPosition(); RaiseRotateCompleted(m_startTick); ExecuteNextAction(); } else if ((m_animationState & VoxelActorState.Resize) != 0) { if (m_animationState == VoxelActorState.Grow) { Weight++; Height *= 2; } else { Weight--; Height /= 2; } RoundRotation(); RoundPosition(); RaiseResizeCompleted(m_startTick); ExecuteNextAction(); } m_animationState = VoxelActorState.Idle; } else if (stateInfo.IsName("RotateLeft")) { m_animationState = VoxelActorState.RotateLeft; } else if (stateInfo.IsName("RotateRight")) { m_animationState = VoxelActorState.RotateRight; } else if (stateInfo.IsName("Grow")) { m_animationState = VoxelActorState.Grow; } else if (stateInfo.IsName("Diminish")) { m_animationState = VoxelActorState.Diminish; } else if (stateInfo.IsName("Move")) { if (m_animationState == VoxelActorState.Move2X) { OnMoveCompleted(); } m_animationState = VoxelActorState.Move1X; } else if (stateInfo.IsName("MoveFast")) { if (m_animationState == VoxelActorState.Move1X) { OnMoveCompleted(); } m_animationState = VoxelActorState.Move2X; } }