That’s actually similar to how I currently do it:
The game is a platformer, so I don’t need any smart ledge sensing. Therefore, I opted to make an “interactable object” system that the ledge system makes use of. The ledge interactable object contains information like that. Up to the point of getting the character on the ledge is pretty straight-forward, from there. Where I’d like some advice is what method to use to limit those actions after the player is attached.
Just setting it up with booleans isn’t difficult at all, I’m just starting to be concerned that I’ll have this gross mass of bools as I introduce these different “modes”/“character statuses”, like the combo or ledge mode/statuses mentioned. At this point, I’ve gotten almost no feedback, so I’ll probably just go ahead with bools and refactor, later, to an enum when I have a clearer idea of what the enum needs to be able to handle.
Anyway, thanks for the comment. Talking this out always helps me think.