Hello,

I'm practicing in Godot by making a space invaders clone. I have a Main scene that contains all of the other scenes to play like players, the shields that you hide behind etc.

To move the actual invaders i have them housed in a Node2d called EnemyHolder whos global position is moved via a script from left to right and down a line when an edge is reached.

The structure of EnemyHolder is this:
EnemyHolder (Node2d)
EnemyHolderOne(Position2d) This is just for neatness as i have 3 enemy types and 30 enemies total
EnemyOne(Node2d)

I have set up area2ds and collisionShape2ds for my player bullets enemies and obstacles and everything works fine except the Enemy script, it does not get called at all, i have put print statements in the _ready and _process functions and they are not printed which is how i realised.

My enemies inherit from a base class called enemy, but i have also written individual scripts for each enemy type but with the same problem.

Thank you for any help!

    crowleyhammer Hi,

    usually, this kind of issue lies between the chair and the keyboard !
    As you don't show any code, it's just pretty impossible to provide any help unless someone here is able to see the invisible or have the luckiest guess ever.

    Typo could be responsible for your issue (is the function actually call "_ready" without any parameter ?), or node is actually instantiated at all ?
    There are many explanations possible.

      JusTiCe8 Hi,

      Cheers for the response, i was just taking screenshots to post up as i narrowed the problem down and decided to just delete everything and rebuild the problem scenes from scratch.

      That seems to have sorted it out, i think i created an issue when adding and removing scripts earlier and for some reason this didn't update outside of the objects themselves. i.e they didn't show as attached on the Main scene or scene holder until i rebuilt both. As a non programmer its hard to describe accurately sorry.