Exemplo n.º 1
0
        public void LoadWorld(Drome.World world)
        {
            World = world;

            SceneTreeView.BeginUpdate();
            foreach (Drome.Object o in world.Objects)
            {
                TreeNode node = new TreeNode(o.InstanceName);
                SceneTreeView.Nodes.Add(node);

                // HACK: should use Reflection with an Attribute instead of this hard-coded list.
                if (o.Header.ClassName == "cGeneralStatic")
                {
                    SceneNodes.GeneralStaticSceneNode n = new SceneNodes.GeneralStaticSceneNode(Screen, o as Drome.Objects.GeneralStatic);
                    Screen.Nodes.Add(n);
                }
                else if (o.Header.ClassName == "cWeaponPickup")
                {
                    SceneNodes.WeaponPickupSceneNode n = new SceneNodes.WeaponPickupSceneNode(Screen, o as Drome.Objects.WeaponPickup);
                    Screen.Nodes.Add(n);
                }
                else if (o.Header.ClassName == "cOctreeModel")
                {
                    SceneNodes.OctreeModelSceneNode n = new SceneNodes.OctreeModelSceneNode(Screen, o as Drome.Objects.OctreeModel);
                    Screen.Nodes.Add(n);
                }
            }
            SceneTreeView.EndUpdate();
        }