reorganize Terrain/PhysicsWorld/GameState/Engine to use NetworkClientConnect, and hence handle the connection process asynchronously, and finally properly implement receiving the terrain data from the server
#ifndef ERROR_HH
#define ERROR_HH
#include "Logger.hh"
#include <stdexcept>
#include <string>
class Error : public std::exception {
private:
const char *message;
public:
Error (const std::string &message) : message(message.c_str()) { }
virtual const char* what() const throw() {
return message;
}
};
std::ostream& operator<< (std::ostream &s, Error &e);
#endif /* ERROR_HH */