From 553e22ead84975efc7d600f2b7aef75d0238939e Mon Sep 17 00:00:00 2001
From: AnimeGitB <AnimeGitB@bigblueball.in>
Date: Mon, 28 Nov 2022 21:04:39 +1030
Subject: [PATCH] Add more explicit NoSuchFileException message for excels

---
 src/main/java/emu/grasscutter/utils/TsvUtils.java | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/main/java/emu/grasscutter/utils/TsvUtils.java b/src/main/java/emu/grasscutter/utils/TsvUtils.java
index 2e8f422b..05198371 100644
--- a/src/main/java/emu/grasscutter/utils/TsvUtils.java
+++ b/src/main/java/emu/grasscutter/utils/TsvUtils.java
@@ -8,6 +8,7 @@ import java.lang.reflect.ParameterizedType;
 import java.lang.reflect.Type;
 import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
+import java.nio.file.NoSuchFileException;
 import java.nio.file.Path;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -446,7 +447,7 @@ public class TsvUtils {
                 }
             }).toList();
         } catch (Exception e) {
-            Grasscutter.getLogger().error("Error loading TSV file '"+filename+"' - Stacktrace is: ", e);
+            Grasscutter.getLogger().error("Error loading file '"+filename+"' - Stacktrace is: ", e);
             return null;
         }
     }
@@ -487,11 +488,14 @@ public class TsvUtils {
                     return null;
                 }
             }).toList();
+        } catch (NoSuchFileException e) {
+            Grasscutter.getLogger().error("Error loading file '"+filename+"' - File does not exist. You are missing resources. Note that this file may exist in JSON, TSV, or TSJ format, any of which are suitable.");
+            return null;
         } catch (IOException e) {
-            Grasscutter.getLogger().error("Error loading TSV file '"+filename+"' - Stacktrace is: ", e);
+            Grasscutter.getLogger().error("Error loading file '"+filename+"' - Stacktrace is: ", e);
             return null;
         } catch (NoSuchMethodException e) {
-            Grasscutter.getLogger().error("Error loading TSV file '"+filename+"' - Class is missing NoArgsConstructor");
+            Grasscutter.getLogger().error("Error loading file '"+filename+"' - Class is missing NoArgsConstructor");
             return null;
         }
     }
@@ -588,7 +592,7 @@ public class TsvUtils {
                     }
                 }).toList();
             } catch (IOException e) {
-                Grasscutter.getLogger().error("Error loading TSV file '"+filename+"' - Stacktrace is: ", e);
+                Grasscutter.getLogger().error("Error loading file '"+filename+"' - Stacktrace is: ", e);
                 return null;
             }
         }).toList();
-- 
GitLab