Open up SpaceCenter API to be used in other game scenes
djungelorm opened this issue ยท 0 comments
Much of the functionality in the SpaceCenter service should be available from other game scenes.
This feature has been requested in several issues: #470 #434 #430
The GameScene
parameter for a service needs to be more granular, and applicable to individual RPCs. An RPC attribute (KRPCProperty
, KRPCMethod
etc.) should have a GameScene
parameter to specify which game scene the RPC is available in. If this is not given, it should default to the game scene of the enclosing KRPCClass
, or the enclosing KRPCService
.
GameScene
should be specifiable as sets of allowed scenes. For example, you should be able to specify that something is available in GameScene.Editor
and GameScene.Flight
but not other scenes. Also we should have GameScene.All
as a convenience, and have that as the default unless otherwise specified.
All the client documentation should be updated to specify when things are accessible. Services, classes and RPCs should be annotated with which game scene they are available in (or should not be annotated if they inherit from the enclosing service or class).