text: #pragma once
  
  enum class LocationType
  {
  	GOLDMINE,
  	BANK,
  	SALOON,
  	HOME_SWEET_HOME
  };
  
  class BaseGameEntity
  {
  protected:
  	int id;
  
  	static int nextValidId;
  
  	void setId(const int& val);
  
  public:
  	BaseGameEntity(int id);
  	virtual ~BaseGameEntity() {};
  
  	virtual void update() = 0;
  
  	int getId() const;
  	std::string getName() const;
  };
  
  std::ostream& operator<<(std::ostream& os, const LocationType& obj);