/////////////////////////////////////////////////////////////////////////////// // // ## ###### // ###### ### // ## ############### Shark 3D Engine (www.shark3d.com) // ########## # # # // ######## Copyright (c) 1996-2006 Spinor GmbH. // ######### # # # All rights reserved. // ## ########## // ## // /////////////////////////////////////////////////////////////////////////////// // Universe definition. // The universe contains the game state. actor_ident "kit_base.capsule" actor_param { active 1 scope "universe" local_name "capsule" deleg_target "dispatch_export" child_ident "kit_base.group" child_param { active 1 child_array { ident "kit_base.dispatch" param { name "dispatch_export" entry_array { cmds "produce_player" targets "player_netproducer" newcmd "produce" } { cmds "net_traverse" targets "setting_serroot" } { cmds "net_traverse" targets "player_netproducer" "player_netappear" newcmd "traverse" } } } { // Dispatcher handling messages from the universe, // which contains the game state. ident "kit_base.dispatch" param { name "dispatch_serialize" entry_array { cmds "store_pre" "store_post" "load_post" targets "player_set" } { // Handle every command to avoid error: cmds "delete_pre" "delete_post" "store_pre" "store_post" "load_pre" "load_post" targets } } } { ident "kit_base.dispatch" param { name "dispatch_setting" entry_array { cmds "get_basesuppl" "ignore_frmtime" "cfg_access_int_info" "cfg_access_float_info" "cfg_access_str_info" "cfg_access_chunk_info" "universe_cfg_access_int_info" "universe_cfg_access_float_info" "universe_cfg_access_str_info" "universe_cfg_access_chunk_info" targets "^dispatch_universe" } { cmds "notice_level_load_pre" "notice_level_load_post" targets "player_set" } } } { // Define a serialization actor. // This actor can store and load its child into and from a file. // Important! This actor defines a local namespace. // It is not possible to access actors outside this namespace. // Instead, you can send commands to the "outside" actor. ident "kit_base.serroot" param { active 1 // Scope of the local namespace. scope "setting" // Actor name from outside. export_name "setting" // Name to delegate commands inside the universe to. export_deleg_name "setting_serroot" // Name to send commands for outside the universe to. deleg_target "dispatch_export" // Target to send commands outside the universe to. local_outside_name "outside" // outside_target "dispatch_setting" // Objects outside the universe referenced from inside, // fetched from the outside actor: known_cmds "get_basesuppl" // Header identifier for the state files. ident "std" // Notification commands about loading and saving. notify_target "dispatch_serialize" notify_pre_delete_cmd "delete_pre" notify_post_delete_cmd "delete_post" notify_pre_store_cmd "store_pre" notify_post_store_cmd "store_post" notify_pre_load_cmd "load_pre" notify_post_load_cmd "load_post" // The level root has an own namespace: child_ident "kit_base.extern" child_param { active 1 res "universe/actor/setting.s3d_actor_run" } } } { // External file describing the structure of each player: ident "kit_base.extern" param { active 1 res "universe/actor/universeplayer.s3d_actor_run" } } { ident "kit_engbase.netproducer" param { name "player_netproducer" produce_target "player_rawproducer" produce_cmd "produce" net_traverse_cmd "net_traverse" created_local_cmd "created_local" created_net_cmd "created_net" } } { ident "kit_engbase.netappear" param { name "player_netappear" appear_target "player_set" appear_cmd "net_appear" } } } }