From 1f595e88d7a45e0a1f96c4e4d766645298268e10 Mon Sep 17 00:00:00 2001 From: Rodolphe Suescun Date: Sun, 23 Aug 2020 12:02:55 +0200 Subject: [PATCH] Updated generated name when pasting or duplicating nodes --- addons/material_maker/engine/gen_graph.gd | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/addons/material_maker/engine/gen_graph.gd b/addons/material_maker/engine/gen_graph.gd index 52d511a9..e9757c11 100644 --- a/addons/material_maker/engine/gen_graph.gd +++ b/addons/material_maker/engine/gen_graph.gd @@ -126,10 +126,19 @@ func add_generator(generator : MMGenBase) -> bool: if parent != null and parent is Object and parent.get_script() == get_script(): # Material is always in top level graph return false - var index = 1 - while has_node(name): - index += 1 - name = generator.name + "_" + str(index) + if has_node(name): + var name_prefix : String + var regex = RegEx.new() + regex.compile("^(.*_)\\d+$") + var result = regex.search(generator.name) + if result: + name_prefix = result.get_string(1) + else: + name_prefix = generator.name + "_" + var index = 1 + while has_node(name): + index += 1 + name = name_prefix + str(index) generator.name = name add_child(generator) if generator.get_script() == get_script():