Currently SharedVars are synchronized via the Inexor Tree. Next step is to synchronize lists/arrays and complex data structures like c++ objects. This would enables us to complete other tasks like the HUD which depends on these information.
Tree path format
[ ] Define a tree path format for list items
/path/to/the/list/0
/path/to/the/list/1
[ ] Define a tree path format for objects, nested objects and
Currently
SharedVar
s are synchronized via the Inexor Tree. Next step is to synchronize lists/arrays and complex data structures like c++ objects. This would enables us to complete other tasks like the HUD which depends on these information.Tree path format
/path/to/the/list/0
/path/to/the/list/1
/path/to/the/object
(e.g.:/gamestate/player1
)/path/to/the/object/attributeName
(e.g.:/gamestate/player1/frags
)/path/to/the/object/nestedObject
(e.g.:/gamestate/player1/position
)/path/to/the/object/nestedObject/attributeName
(e.g.:/gamestate/player1/position/x
)/path/to/the/list
(e.g.:/gamestate/players
)/path/to/the/list/0
(e.g.:/gamestate/players/0
)/path/to/the/list/0/attributeName
(e.g.:/gamestate/players/0/frags
)/path/to/the/list/0/nestedObject/attributeName
(e.g.:/gamestate/players/0/position/x
)Tasks
Inexor Flex
list
node
addChild(...)
node
)Tasks
Inexor Core
GRPC / Proto
Inexor Tree Structure for Shared Lists
Line numbers for pastebin: http://pastebin.com/QrDcTHa6
players
) from eventlist_inexor_rendering_player_added
(Line number 1257)list_inexor_rendering_player_added
list_inexor_rendering_player_modified
list_inexor_rendering_player_removed
intern_shared_list_id_number
(0
) from messagelist_inexor_rendering_player_added
(Line number 45)int32
) from messagelist_inexor_rendering_player_added
(Line number 47)kills
) from messagelist_inexor_rendering_player_added
(Line number 43)sharedclass_member__rendering_kills
(Line number 47)Newer version of the proto file:
List Entry Add Event
In order to create new list elements in NodeJS:
list
-Node (/players
)list_inexor_rendering_player_added
list_entry
-Node (node_name =0
)intern_shared_list_id_number
sharedclass_member__rendering_kills
List Entry Modify Event
In order to change list elements in NodeJS:
list
-Node (/players
)list_inexor_rendering_player_modified
list_entry
-Node (node_name =0
)intern_shared_list_id_number
sharedclass_member__rendering_kills
List Entry Remove Event
In order to remove list elements in NodeJS:
list
-Node (/players
)list_inexor_rendering_player_removed
list_entry
-Node (node_name =0
)intern_shared_list_id_number