rnd-20020421-1-src
[rocksndiamonds.git] / src / libgame / misc.c
index 6992ff230bdda9b61150c91bcc9a39252832aab8..7c8291961ee5a7c8fe2217e70ffce318c1dcc41a 100644 (file)
@@ -159,12 +159,13 @@ boolean FrameReached(unsigned long *frame_counter_var,
 {
   unsigned long actual_frame_counter = FrameCounter;
 
-  if (actual_frame_counter < *frame_counter_var+frame_delay &&
+  if (actual_frame_counter < *frame_counter_var + frame_delay &&
       actual_frame_counter >= *frame_counter_var)
-    return(FALSE);
+    return FALSE;
 
   *frame_counter_var = actual_frame_counter;
-  return(TRUE);
+
+  return TRUE;
 }
 
 boolean DelayReached(unsigned long *counter_var,
@@ -174,10 +175,11 @@ boolean DelayReached(unsigned long *counter_var,
 
   if (actual_counter < *counter_var + delay &&
       actual_counter >= *counter_var)
-    return(FALSE);
+    return FALSE;
 
   *counter_var = actual_counter;
-  return(TRUE);
+
+  return TRUE;
 }
 
 void WaitUntilDelayReached(unsigned long *counter_var, unsigned long delay)
@@ -806,7 +808,7 @@ void putFileChunk(FILE *file, char *chunk_name, int chunk_size,
 
 void ReadUnusedBytesFromFile(FILE *file, unsigned long bytes)
 {
-  while (bytes--)
+  while (bytes-- && !feof(file))
     fgetc(file);
 }
 
@@ -1159,6 +1161,40 @@ char getCharFromKey(Key key)
 }
 
 
+/* ========================================================================= */
+/* functions for checking filenames                                          */
+/* ========================================================================= */
+
+boolean FileIsGraphic(char *filename)
+{
+  if (strlen(filename) > 4 &&
+      strcmp(&filename[strlen(filename) - 4], ".pcx") == 0)
+    return TRUE;
+
+  return FALSE;
+}
+
+boolean FileIsSound(char *filename)
+{
+  if (strlen(filename) > 4 &&
+      strcmp(&filename[strlen(filename) - 4], ".wav") == 0)
+    return TRUE;
+
+  return FALSE;
+}
+
+boolean FileIsMusic(char *filename)
+{
+  if (strlen(filename) > 4 &&
+      (strcmp(&filename[strlen(filename) - 4], ".mod") == 0 ||
+       strcmp(&filename[strlen(filename) - 4], ".MOD") == 0 ||
+       strncmp(filename, "mod.", 4) == 0 ||
+       strncmp(filename, "MOD.", 4) == 0))
+    return TRUE;
+
+  return FALSE;
+}
+
 /* ========================================================================= */
 /* functions only needed for non-Unix (non-command-line) systems */
 /* ========================================================================= */