0

So, I'm new to Godot and made my first two projects. The first one is a Platformer game, the 2nd one is a Memory Card Game. Both games work fine when I run them separately. Yesterday, I got an idea to put the Memory Card Game into the Platformer Game, so when I interact with some NPCs or enemies the Memory Game will launch as a mini-game. But...

When I try to run my Platformer Game with the Memory Game inside and click a card I get an error: "get_node: Node not found: /root/MemoryGame" I think the problem is this code in my "Card.gd": "get_node('/root/MemoryGame').chooseCard(self)" .

Here is a short video to show you the problem: https://youtu.be/skAzwJE_O-0

So it seems like the main platformer game scene (Level1) cannot find the "MemoryGame" file or any of its children. I even tried to autoload the MemoryGame file but it didn't help.

Card code MemoryGame code

1 Answers1

0

When you run your "MemoryGame" the root / will be the root of the current scene which is the memory game's root, and when you add the MemoryGame scene inside your platformer, the root will be the platformer's root. In that case, using an absolute path ('/root/MemoryGame') won't work, use a relative path

get_node('..').chooseCard(self)

for more see scene tree and node path

thakee nathees
  • 877
  • 1
  • 9
  • 16