why not create some cubes in the editor and name them something like camera_1_range_100_tracking_YES.
then...
In your game, replace the aptly named cubes them with an invisible pivot (or just hide the cubes) that can be used with entitydistance recording their handle, range and weather they 'track' (in custom types or arrays).
Then...
In the game test for the closest camera pivot that can see the hero(if not tracking) and then switch to that cameras view (as in stick the chasecam at the pivot's position). You could also write a good chasecam routine for when not in any cameras range.
For the mouse issue, just use camerapick on an interactable object (set to 2) then it wont matter about what angle you are viewing it at.
eg, in your editor have the name ie. "fishbowl_non-staticobject_makepickable" (or whatever you design your name parser to respond to :)
If you wanted clickable walkto positions you could use the same system as above but prehaps call it for example: "bookcase_staticobject_makepickable" instead of non-static (so your gui responds to it but doesnt/cant get picked up by the player)
then...
In your game, replace the aptly named cubes them with an invisible pivot (or just hide the cubes) that can be used with entitydistance recording their handle, range and weather they 'track' (in custom types or arrays).
Then...
In the game test for the closest camera pivot that can see the hero(if not tracking) and then switch to that cameras view (as in stick the chasecam at the pivot's position). You could also write a good chasecam routine for when not in any cameras range.
For the mouse issue, just use camerapick on an interactable object (set to 2) then it wont matter about what angle you are viewing it at.
eg, in your editor have the name ie. "fishbowl_non-staticobject_makepickable" (or whatever you design your name parser to respond to :)
If you wanted clickable walkto positions you could use the same system as above but prehaps call it for example: "bookcase_staticobject_makepickable" instead of non-static (so your gui responds to it but doesnt/cant get picked up by the player)