From 5555a69b5e71fbc15ac745042b52a77a0aeccb69 Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Tue, 23 Nov 2021 00:56:43 +0100 Subject: [PATCH] Document the engine's use of internal groups in Node (cherry picked from commit f8d9e4afdbc6dd7a35076e91d976daf3841de6a3) --- doc/classes/Node.xml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/doc/classes/Node.xml b/doc/classes/Node.xml index dd2af727861..026ac2a2975 100644 --- a/doc/classes/Node.xml +++ b/doc/classes/Node.xml @@ -202,6 +202,14 @@ Returns an array listing the groups that the node is a member of. [b]Note:[/b] For performance reasons, the order of node groups is [i]not[/i] guaranteed. The order of node groups should not be relied upon as it can vary across project runs. + [b]Note:[/b] The engine uses some group names internally (all starting with an underscore). To avoid conflicts with internal groups, do not add custom groups whose name starts with an underscore. To exclude internal groups while looping over [method get_groups], use the following snippet: + [codeblock] + # Stores the node's non-internal groups only (as an array of Strings). + var non_internal_groups = [] + for group in get_groups(): + if not group.begins_with("_"): + non_internal_groups.push_back(group) + [/codeblock]