diff -ru alienarena7_40.orig/source/client/cl_scrn.c alienarena7_40/source/client/cl_scrn.c --- alienarena7_40.orig/source/client/cl_scrn.c 2010-03-20 17:18:58.000000000 -0400 +++ alienarena7_40/source/client/cl_scrn.c 2010-05-02 14:36:49.000000000 -0400 @@ -1306,7 +1306,7 @@ value = cl.frame.playerstate.stats[atoi(token)]; if (value >= MAX_IMAGES) Com_Error (ERR_DROP, "Pic >= MAX_IMAGES"); - if (cl.configstrings[CS_IMAGES+value]) + if( cl.configstrings[CS_IMAGES+value][0] ) { SCR_AddDirtyPoint (x, y); SCR_AddDirtyPoint (x+23*scale, y+23*scale); diff -ru alienarena7_40.orig/source/game/p_weapon.c alienarena7_40/source/game/p_weapon.c --- alienarena7_40.orig/source/game/p_weapon.c 2010-03-12 23:22:38.000000000 -0500 +++ alienarena7_40/source/game/p_weapon.c 2010-05-02 14:36:49.000000000 -0400 @@ -175,6 +175,21 @@ game = gi.cvar("game", "", 0); +#ifdef DATADIR + if ( game && *game->string ) { + sprintf( name, DATADIR"/%s/%s", game->string, filename ); + *file = fopen( name, "rb" ); + if( *file ) + return 1; + } + sprintf( name, "%s/%s/%s", DATADIR, GAMEVERSION, filename ); + *file = fopen (name, "rb"); + if( *file ) + return 1; + + return -1; +#else + if (!*game->string) //if there is a gamedir try here first sprintf (name, "%s/%s", GAMEVERSION, filename); else @@ -188,6 +203,7 @@ else return 1; + if(!found) { //try basedir sprintf (name, "%s/%s", GAMEVERSION, filename); *file = fopen (name, "rb"); @@ -200,6 +216,8 @@ } else return -1; +#endif + } /*