I’m assuming that you want to cycle through the classes based on the current index. One problem is that you use that same index to select which array you want to get classes from.
Another problem is that the action events that you want to run will not run in this blueprint, since it has no relation to the player controller at all.
Won’t ever get called, which means that the nodes won’t be reached.
Instead, you could be running the InputAction events in either your player controller or your player character (if you don’t want to create this logic in the player controller, then you could just enable input for this blueprint: ([see here][2])).
You can create two event dispatchers in the player controller which will handle the next and previous house swapping.
Then, just call these events on the appropriate Input Action.
In your master house blueprint, create two custom events for Next house and Previous house. These can then be bound to the player controller event dispatchers by getting a reference to the player controller.
Now, any child House blueprint you create from this will have this logic built into it, so you only need to write it once. Now, whenever you hit one of the input keys, it will swap between whichever house class is next in the array.
For each child blueprint, simply set the default value of CurrentIndex to the corresponding index it has in the master house’s array. For any new child blueprints you add, you’d have to go into the Master House blueprint and add them to the array.