public override int GetHashCode()
        {
            int hash = 1;

            if (CloudLevel != 0)
            {
                hash ^= CloudLevel.GetHashCode();
            }
            if (RainLevel != 0)
            {
                hash ^= RainLevel.GetHashCode();
            }
            if (WindLevel != 0)
            {
                hash ^= WindLevel.GetHashCode();
            }
            if (SnowLevel != 0)
            {
                hash ^= SnowLevel.GetHashCode();
            }
            if (FogLevel != 0)
            {
                hash ^= FogLevel.GetHashCode();
            }
            if (WindDirection != 0)
            {
                hash ^= WindDirection.GetHashCode();
            }
            if (SpecialEffectLevel != 0)
            {
                hash ^= SpecialEffectLevel.GetHashCode();
            }
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }