Added in checks for weather conditions and refactored a little