#pragma once

#include "SpriteRenderer.h"
#include "ScreenManager.h"

#define CLOUD_CHANGE_TICKS 5
#define WEATHER_WIDTH 2048
#define WEATHER_HEIGHT 1024
#define CLOUD_TEXTURE_ID 23

class WeatherManager
{
public:
	WeatherManager(void);
	~WeatherManager(void);
	enum WEATHER_TYPE { NONE, CLOUDS };
	void init( SpriteRenderer* spriteRenderer, ScreenManager* screenManager );
	void setWeather( WEATHER_TYPE weatherType );
	HRESULT render();
	void tick();
private:
	// Main variables
	SpriteRenderer* spriteRenderer;
	ScreenManager* screenManager;
	WEATHER_TYPE weatherType;
	int currentX;
	int currentY;
	int lastScreenX;
	int lastScreenY;

	// Cloud variables
	int cloudDX;
	int cloudDY;
	int cloudTickCount;
};

