From 3de9cfa1d7b584747c0fd04bafe18fd53fcbdddf Mon Sep 17 00:00:00 2001 From: Anuken Date: Thu, 14 Oct 2021 21:26:34 -0400 Subject: [PATCH] Don't crash on invalid research --- core/src/mindustry/mod/ContentParser.java | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/core/src/mindustry/mod/ContentParser.java b/core/src/mindustry/mod/ContentParser.java index 93f6567667..c195bd14be 100644 --- a/core/src/mindustry/mod/ContentParser.java +++ b/core/src/mindustry/mod/ContentParser.java @@ -566,8 +566,8 @@ public class ContentParser{ } private T locate(ContentType type, String name){ - T first = Vars.content.getByName(type, currentMod.name + "-" + name); //try vanilla replacement - return first != null ? first : Vars.content.getByName(type, name); + T first = Vars.content.getByName(type, name); //try vanilla replacement + return first != null ? first : Vars.content.getByName(type, currentMod.name + "-" + name); } private T locateAny(String name){ @@ -746,15 +746,15 @@ public class ContentParser{ TechNode parent = TechTree.all.find(t -> t.content.name.equals(researchName) || t.content.name.equals(currentMod.name + "-" + researchName)); if(parent == null){ - throw new IllegalArgumentException("Content '" + researchName + "' isn't in the tech tree, but '" + unlock.name + "' requires it to be researched."); + Log.warn("Content '" + researchName + "' isn't in the tech tree, but '" + unlock.name + "' requires it to be researched."); + }else{ + //add this node to the parent + if(!parent.children.contains(node)){ + parent.children.add(node); + } + //reparent the node + node.parent = parent; } - - //add this node to the parent - if(!parent.children.contains(node)){ - parent.children.add(node); - } - //reparent the node - node.parent = parent; }); } }