1
0
Fork 0
mirror of https://github.com/AquariaOSE/Aquaria.git synced 2025-08-07 06:40:22 +00:00

Slightly more sensible error/msgbox handling

This commit is contained in:
fgenesis 2013-06-23 18:50:10 +02:00
parent 7faee73f14
commit 26d056d924
15 changed files with 48 additions and 83 deletions

View file

@ -569,8 +569,7 @@ void AquariaKeyConfig::onUpdate(float dt)
if (!ai) if (!ai)
{ {
errorLog("Could not find actionInput: " + actionInputName); exit_error("Could not find actionInput: " + actionInputName);
exit(-1);
} }
switch(inputSetType) switch(inputSetType)
{ {
@ -589,14 +588,6 @@ void AquariaKeyConfig::onUpdate(float dt)
} }
} }
/*
if (k == 0)
{
errorLog("AquariaKeyConfig::onUpdate");
exit(-1);
}
*/
int *value = 0; int *value = 0;
if (inputSetType == INPUTSET_OTHER) if (inputSetType == INPUTSET_OTHER)

View file

@ -2659,7 +2659,7 @@ void Continuity::loadFile(int slot)
if (startData->Attribute("mod")) if (startData->Attribute("mod"))
{ {
#ifdef AQUARIA_DEMO #ifdef AQUARIA_DEMO
exit(-1); exit_error("The demo version does not support loading savegames from mods, sorry.");
#else #else
dsq->mod.load(startData->Attribute("mod")); dsq->mod.load(startData->Attribute("mod"));
#endif #endif

View file

@ -922,12 +922,14 @@ This build is not yet final, and as such there are a couple things lacking. They
// steam gets inited in here // steam gets inited in here
Core::init(); Core::init();
// steam callbacks are inited here dsq->continuity.stringBank.load();
dsq->continuity.init();
vars = &v; vars = &v;
v.load(); v.load();
// steam callbacks are inited here
dsq->continuity.init();
// do copy stuff // do copy stuff
#ifdef BBGE_BUILD_UNIX #ifdef BBGE_BUILD_UNIX
std::string fn; std::string fn;
@ -997,8 +999,7 @@ This build is not yet final, and as such there are a couple things lacking. They
{ {
std::ostringstream os; std::ostringstream os;
os << "Aspect ratio for resolution [" << user.video.resx << ", " << user.video.resy << "] not supported."; os << "Aspect ratio for resolution [" << user.video.resx << ", " << user.video.resy << "] not supported.";
errorLog(os.str()); exit_error(os.str());
exit(0);
} }
setFilter(dsq_filter); setFilter(dsq_filter);
@ -1041,7 +1042,7 @@ This build is not yet final, and as such there are a couple things lacking. They
if (!createWindow(user.video.resx, user.video.resy, user.video.bits, user.video.full, "Aquaria")) if (!createWindow(user.video.resx, user.video.resy, user.video.bits, user.video.full, "Aquaria"))
#endif #endif
{ {
msg("Failed to create window"); exit_error("Failed to create window");
return; return;
} }

View file

@ -2432,8 +2432,7 @@ void Game::loadEntityTypeList()
std::string line; std::string line;
if(!in) if(!in)
{ {
core->messageBox(dsq->continuity.stringBank.get(2008), dsq->continuity.stringBank.get(2016)); exit_error(dsq->continuity.stringBank.get(2008).c_str());
exit(1);
} }
while (std::getline(in, line)) while (std::getline(in, line))
{ {
@ -5213,7 +5212,7 @@ bool Game::loadScene(std::string scene)
} }
if (i == allowedMaps.size()) if (i == allowedMaps.size())
{ {
exit(-1); exit_error("Demo version refuses to load this map, sorry.");
} }
#endif #endif

View file

@ -27,8 +27,7 @@ void GameplayVariables::load()
InStream inFile("data/variables.txt"); InStream inFile("data/variables.txt");
if(!inFile) if(!inFile)
{ {
core->messageBox(dsq->continuity.stringBank.get(2008), dsq->continuity.stringBank.get(2017)); exit_error(dsq->continuity.stringBank.get(2017));
exit(1);
} }
std::string s; std::string s;
inFile >> s >> maxSlowSwimSpeed; inFile >> s >> maxSlowSwimSpeed;

View file

@ -713,8 +713,8 @@ luaFunc(indexWarnInstance)
luaFunc(panicHandler) luaFunc(panicHandler)
{ {
errorLog(luaFormatStackInfo(L) + ": Lua PANIC: " + getString(L, -1)); std::string err = luaFormatStackInfo(L) + ": Lua PANIC: " + getString(L, -1);
exit(1); exit_error(err);
} }
static bool findFile_helper(const char *rawname, std::string &fname) static bool findFile_helper(const char *rawname, std::string &fname)

View file

@ -41,6 +41,9 @@ void StringBank::load()
fname = localisePath(dsq->mod.getPath() + "stringbank.txt", dsq->mod.getPath()); fname = localisePath(dsq->mod.getPath() + "stringbank.txt", dsq->mod.getPath());
_load(fname); _load(fname);
} }
if(stringMap.empty())
exit_error("Failed to load data/stringbank.txt");
} }
void StringBank::_load(const std::string &file) void StringBank::_load(const std::string &file)

View file

@ -291,8 +291,7 @@ bool exists(const std::string &f, bool makeFatal, bool skipVFS)
if (makeFatal && !e) if (makeFatal && !e)
{ {
errorLog(std::string("Could not open [" + f + "]")); exit_error("Could not open [" + f + "]");
exit(0);
} }
return e; return e;
@ -316,10 +315,10 @@ void drawCircle(float radius, int stepSize)
#endif #endif
} }
void fatalError(const std::string &message) void exit_error(const std::string &message)
{ {
msg(message); errorLog(message);
exit(0); exit(1);
} }
std::string parseCommand(const std::string &line, const std::string &command) std::string parseCommand(const std::string &line, const std::string &command)
@ -424,8 +423,7 @@ void errorLog(const std::string &s)
} }
else else
{ {
//msg("Core Not Initialized"); messageBox("Error!", s);
//MessageBox(0, s.c_str(), "ErrorLog (Core Not Initalized)", MB_OK);
} }
} }
@ -775,17 +773,18 @@ std::vector<std::string> getFileList(std::string path, std::string type, int par
return list; return list;
} }
std::string msg(const std::string &message) void messageBox(const std::string& title, const std::string &msg)
{ {
core->msg(message); #ifdef BBGE_BUILD_WINDOWS
return message; MessageBox (0,msg.c_str(),title.c_str(),MB_OK);
} #elif defined(BBGE_BUILD_MACOSX)
cocoaMessageBox(title, msg);
void msgVector(const std::string &name, const Vector &vec) #elif defined(BBGE_BUILD_UNIX)
{ // !!! FIXME: probably don't want the whole GTK+ dependency in here...
std::ostringstream os; fprintf(stderr, "%s: %s\n", title.c_str(), msg.c_str());
os << name << ": (" << vec.x <<", " << vec.y << ", " << vec.z << ")"; #else
msg (os.str()); #error Please define your platform.
#endif
} }
Vector getNearestPointOnLine(Vector a, Vector b, Vector c) Vector getNearestPointOnLine(Vector a, Vector b, Vector c)

View file

@ -257,11 +257,9 @@ bool isVectorInRect(const Vector &vec, const Vector &coord1, const Vector &coord
std::string parseCommand(const std::string &line, const std::string &command); std::string parseCommand(const std::string &line, const std::string &command);
std::string msg(const std::string &message); void messageBox(const std::string &title, const std::string& msg);
void msgVector(const std::string &name, const Vector &vec); void exit_error(const std::string &message);
void fatalError(const std::string &message);
unsigned hash(const std::string &string); unsigned hash(const std::string &string);

View file

@ -817,7 +817,7 @@ bool Core::getMetaState()
void Core::errorLog(const std::string &s) void Core::errorLog(const std::string &s)
{ {
messageBox("Message", s); messageBox("Error!", s);
debugLog(s); debugLog(s);
} }
@ -827,16 +827,7 @@ void cocoaMessageBox(const std::string &title, const std::string &msg);
void Core::messageBox(const std::string &title, const std::string &msg) void Core::messageBox(const std::string &title, const std::string &msg)
{ {
#ifdef BBGE_BUILD_WINDOWS ::messageBox(title, msg);
MessageBox (0,msg.c_str(),title.c_str(),MB_OK);
#elif defined(BBGE_BUILD_MACOSX)
cocoaMessageBox(title, msg);
#elif defined(BBGE_BUILD_UNIX)
// !!! FIXME: probably don't want the whole GTK+ dependency in here...
fprintf(stderr, "%s: %s\n", title.c_str(), msg.c_str());
#else
#error Please define your platform.
#endif
} }
void Core::debugLog(const std::string &s) void Core::debugLog(const std::string &s)
@ -1267,7 +1258,7 @@ void Core::init()
if((SDL_Init(0))==-1) if((SDL_Init(0))==-1)
{ {
exit(0); exit_error("Failed to init SDL");
} }
#endif #endif
@ -1910,16 +1901,15 @@ bool Core::initGraphicsLibrary(int width, int height, bool fullscreen, int vsync
{ {
if (SDL_InitSubSystem(SDL_INIT_VIDEO) < 0) if (SDL_InitSubSystem(SDL_INIT_VIDEO) < 0)
{ {
errorLog(std::string("SDL Error: ") + std::string(SDL_GetError())); exit_error(std::string("SDL Error: ") + std::string(SDL_GetError()));
exit(0);
} }
#if BBGE_BUILD_OPENGL_DYNAMIC #if BBGE_BUILD_OPENGL_DYNAMIC
if (SDL_GL_LoadLibrary(NULL) == -1) if (SDL_GL_LoadLibrary(NULL) == -1)
{ {
errorLog(std::string("SDL_GL_LoadLibrary Error: ") + std::string(SDL_GetError())); std::string err = std::string("SDL_GL_LoadLibrary Error: ") + std::string(SDL_GetError());
SDL_Quit(); SDL_Quit();
exit(0); exit_error(err);
} }
#endif #endif
} }
@ -1943,9 +1933,8 @@ bool Core::initGraphicsLibrary(int width, int height, bool fullscreen, int vsync
{ {
std::ostringstream os; std::ostringstream os;
os << "Couldn't set resolution [" << width << "x" << height << "]\n" << SDL_GetError(); os << "Couldn't set resolution [" << width << "x" << height << "]\n" << SDL_GetError();
errorLog(os.str());
SDL_Quit(); SDL_Quit();
exit(0); exit_error(os.str());
} }
#if BBGE_BUILD_OPENGL_DYNAMIC #if BBGE_BUILD_OPENGL_DYNAMIC
@ -1953,9 +1942,8 @@ bool Core::initGraphicsLibrary(int width, int height, bool fullscreen, int vsync
{ {
std::ostringstream os; std::ostringstream os;
os << "Couldn't load OpenGL symbols we need\n"; os << "Couldn't load OpenGL symbols we need\n";
errorLog(os.str());
SDL_Quit(); SDL_Quit();
exit(0); exit_error(os.str());
} }
#endif #endif
} }
@ -2625,13 +2613,6 @@ void Core::setDockIcon(const std::string &ident)
{ {
} }
void Core::msg(const std::string &message)
{
#ifdef BBGE_BUILD_WINDOWS
MessageBox(0, message.c_str(), "Message", MB_OK);
#endif
}
void Core::setMousePosition(const Vector &p) void Core::setMousePosition(const Vector &p)
{ {
Vector lp = core->mouse.position; Vector lp = core->mouse.position;
@ -4847,14 +4828,13 @@ void Core::setupFileAccess()
debugLog("Init VFS..."); debugLog("Init VFS...");
if(!ttvfs::checkCompat()) if(!ttvfs::checkCompat())
exit(1); exit_error("ttvfs not compatible");
vfs.AddArchiveLoader(new ttvfs::VFSZipArchiveLoader); vfs.AddArchiveLoader(new ttvfs::VFSZipArchiveLoader);
if(!vfs.LoadFileSysRoot(false)) if(!vfs.LoadFileSysRoot(false))
{ {
errorLog("Failed to setup file access"); exit_error("Failed to setup file access");
exit(1);
} }
vfs.Prepare(); vfs.Prepare();

View file

@ -1175,8 +1175,6 @@ public:
void saveSizedScreenshotTGA(const std::string &filename, int sz, int crop34); void saveSizedScreenshotTGA(const std::string &filename, int sz, int crop34);
void saveCenteredScreenshotTGA(const std::string &filename, int sz); void saveCenteredScreenshotTGA(const std::string &filename, int sz);
virtual void msg(const std::string &message);
bool minimized; bool minimized;
std::string getEnqueuedJumpState(); std::string getEnqueuedJumpState();
int cullRadius; int cullRadius;

View file

@ -507,8 +507,7 @@ Animation* AnimationLayer::getCurrentAnimation()
{ {
std::ostringstream os; std::ostringstream os;
os << "skel: " << s->filenameLoaded << " currentAnimation: " << currentAnimation << " is out of range\n error in anim file?"; os << "skel: " << s->filenameLoaded << " currentAnimation: " << currentAnimation << " is out of range\n error in anim file?";
errorLog(os.str()); exit_error(os.str());
exit(-1);
return 0; return 0;
} }
return &s->animations[currentAnimation]; return &s->animations[currentAnimation];

View file

@ -288,7 +288,7 @@ void StateManager::registerStateObject(StateObject *stateObject, const std::stri
//getNameFromDerivedClassTypeName(c); //getNameFromDerivedClassTypeName(c);
if (stateObject->name.empty()) if (stateObject->name.empty())
{ {
fatalError("StateManager::registerStateObject - Empty name."); exit_error("StateManager::registerStateObject - Empty name.");
} }
if (!stateObjects[stateObject->name]) if (!stateObjects[stateObject->name])

View file

@ -446,7 +446,6 @@ void Texture::loadPNG(const std::string &file)
width = 64; width = 64;
height = 64; height = 64;
Texture::textureError = TEXERR_FILENOTFOUND; Texture::textureError = TEXERR_FILENOTFOUND;
//exit(1);
return; return;
} }
@ -483,7 +482,6 @@ void Texture::loadPNG(const std::string &file)
width = 64; width = 64;
height = 64; height = 64;
Texture::textureError = TEXERR_FILENOTFOUND; Texture::textureError = TEXERR_FILENOTFOUND;
//exit(1);
} }

View file

@ -306,12 +306,12 @@ Vector VectorPath::getValue(float usePercent)
if (!from && !target) if (!from && !target)
{ {
msg ("returning first value"); errorLog("returning first value");
return pathNodes[0].value; return pathNodes[0].value;
} }
else if (!from && target) else if (!from && target)
{ {
msg("Unexpected Path node result (UPDATE: Could use current value as from?)"); errorLog("Unexpected Path node result (UPDATE: Could use current value as from?)");
} }
else if (from && !target) else if (from && !target)
{ {