Is there a post-construction function, called after variables are given values from property windows? (C++)

As an example I might have an enemy with a Health variable, which I want to be private/protected so that it can’t be modified by other objects, however I would like to have a MaxHealth variable which is editable in the editor, so that enemies can be easily modified directly from there. When the enemy is created I would obviously need to copy that public MaxHealth over to the actual Health variable to begin the enemy with the correct health.

Is there an override-able function, which gets called after property window values are copied across, where I could do this? Or if not what would be the best method of doing it?

Aha nevermind, it seems OnConstruction is what I was looking for, I assumed it would be something similar to PostActorCreated, which only seems to be called if spawned, rather than if placed in a scene.

Seems like this is something that gets called whenever a property is changed, I was looking more for something that just gets called once after the object is created, though that could be useful too at some point!

I think you searching for this one:

Keep in mind this function is also called in editor (generally it’s made for update actor after property change in editor), so in code check if you in game or editor if you want to make gameplay only thing.

Also dont forget to call Super::PostEditChangeProperty(PropertyChangedEvent); in override function or else you actor might bug out in editor