kraptor (0.0.20040403-6) 07_directories.patch

Summary

 src/data.c     |   10 ++++++----
 src/filedata.c |   11 ++++++++---
 2 files changed, 14 insertions(+), 7 deletions(-)

    
download this patch

Patch contents

diff -ruN kraptor-0.0.20040403.orig/src/data.c kraptor-0.0.20040403.new/src/data.c
--- kraptor-0.0.20040403.orig/src/data.c	2003-06-25 09:54:00.000000000 +0200
+++ kraptor-0.0.20040403.new/src/data.c	2006-09-22 22:46:31.000000000 +0200
@@ -575,6 +575,7 @@
    int xx, yy; // para leer las grillas
    char tmpstr[1024]; // uso general
    char tmpstr2[1024];
+   char fname_buff[2048];
    
    if (krapmain == NULL) return -1;
 
@@ -598,7 +599,8 @@
    info_nivel.musica = NULL; /* por ahora, no se si hay musica... */
 
    /* Debo SOLO verificar si el nivel existe? */
-   if (solo_verificar) return !exists(info_nivel.level_dat);
+   if (solo_verificar)
+      return !exists(where_is_the_filename(fname_buff, info_nivel.level_dat));
 
    /* ------ Cargar realmente en RAM el archivo...  ------ */
 
@@ -617,7 +619,7 @@
    if (datmapa == NULL) return -1; /* fallo la carga del nivel */
 
    /* copiarse las grillas */
-   sprintf(tmpstr2, "%s#mapa_g", info_nivel.level_dat); // cargar el mapa_g
+   sprintf(tmpstr2, "%s#mapa_g", where_is_the_filename(fname_buff, info_nivel.level_dat)); // cargar el mapa_g
    fp = pack_fopen(tmpstr2, F_READ);
    if (fp == NULL) levantar_error("ERROR: no existe mapa_g en el nivel!");
           for (xx =0; xx < W_FONDO / W_GR; xx++)
@@ -627,11 +629,11 @@
          pack_fclose(fp);
    
 // grilla de enemigos, con soporte para varias dificultades
-   sprintf(tmpstr2, "%s#enem_g_%d", info_nivel.level_dat, nivel_de_dificultad);
+   sprintf(tmpstr2, "%s#enem_g_%d", where_is_the_filename(fname_buff, info_nivel.level_dat), nivel_de_dificultad);
    fp = pack_fopen(tmpstr2, F_READ);
    if (fp == NULL)
        {
-        sprintf(tmpstr2, "%s#enem_g", info_nivel.level_dat );
+        sprintf(tmpstr2, "%s#enem_g", where_is_the_filename(fname_buff, info_nivel.level_dat) );
         fp = pack_fopen(tmpstr2, F_READ);
         if (fp == NULL) levantar_error("ERROR: no existe enem_g en el nivel!");
        }
diff -ruN kraptor-0.0.20040403.orig/src/filedata.c kraptor-0.0.20040403.new/src/filedata.c
--- kraptor-0.0.20040403.orig/src/filedata.c	2003-06-18 10:38:00.000000000 +0200
+++ kraptor-0.0.20040403.new/src/filedata.c	2006-09-22 22:46:31.000000000 +0200
@@ -22,8 +22,12 @@
 // --------------------------------------------------------
 char *where_is_the_filename(char *buffer, const char *filename)
 {
-char str[2048], str2[2048]; // buffer for path making
-
+sprintf(buffer,"/usr/share/games/kraptor/%s", filename);
+return buffer;
+
+/*
+char str[2048], str2[2048]; // buffer for path making
+
 // check in current executable path
 get_executable_name(str, 2048);
 replace_filename(str2, str, filename, 2048);
@@ -49,7 +53,8 @@
 
 // default
 sprintf(buffer,"%s", filename);
-return buffer;
+return buffer;
+*/
 }
 
 // --------------------------------------------------------