Пример #1
0
        public void Initialize()
        {
            if (!GameController.OnGodot)
            {
                return;
            }

            DebugTools.AssertNull(RootNodeScreenBelowWorld);

            RootNodeScreenBelowWorld = new Godot.Node2D {
                Name = "OverlayRoot"
            };
            sceneTreeHolder.BelowWorldScreenSpace.AddChild(RootNodeScreenBelowWorld);

            RootNodeWorld = new Godot.Node2D {
                Name = "OverlayRoot"
            };
            sceneTreeHolder.WorldRoot.AddChild(RootNodeWorld);
            RootNodeWorld.ZIndex = (int)DrawDepth.Overlays;

            RootNodeScreen = new Godot.Node2D {
                Name = "OverlayRoot"
            };
            sceneTreeHolder.SceneTree.Root.GetNode("UILayer").AddChild(RootNodeScreen);
        }
Пример #2
0
        public override void Initialize()
        {
            base.Initialize();
            IoCManager.InjectDependencies(this);
            DrawingNode = new Godot.Node2D()
            {
                Name = "EffectSystem",
            };
            sceneTree.WorldRoot.AddChild(DrawingNode);

            UnshadedMaterial = new Godot.CanvasItemMaterial()
            {
                LightMode = Godot.CanvasItemMaterial.LightModeEnum.Unshaded
            };

            ShadedMaterial = new Godot.CanvasItemMaterial();

            ShadedCanvasItem = VS.CanvasItemCreate();
            VS.CanvasItemSetParent(ShadedCanvasItem, DrawingNode.GetCanvasItem());
            VS.CanvasItemSetMaterial(ShadedCanvasItem, ShadedMaterial.GetRid());

            UnshadedCanvasItem = VS.CanvasItemCreate();
            VS.CanvasItemSetParent(UnshadedCanvasItem, DrawingNode.GetCanvasItem());
            VS.CanvasItemSetMaterial(UnshadedCanvasItem, UnshadedMaterial.GetRid());
        }
Пример #3
0
        public override void OnRemove()
        {
            base.OnRemove();

            SceneNode.QueueFree();
            SceneNode.Dispose();
            SceneNode = null;
        }
Пример #4
0
        public override void OnAdd()
        {
            base.OnAdd();
            var holder = IoCManager.Resolve <ISceneTreeHolder>();

            SceneNode = new Godot.Node2D();
            SceneNode.SetName($"Transform {Owner.Uid} ({Owner.Name})");
            holder.WorldRoot.AddChild(SceneNode);
        }
        public void Initialize(Godot.SceneTree tree)
        {
            SceneTree = tree ?? throw new ArgumentNullException(nameof(tree));

            WorldRoot = new Godot.Node2D
            {
                Name = "WorldRoot"
            };
            SceneTree.GetRoot().AddChild(WorldRoot);
        }
        public override void OnRemove()
        {
            base.OnRemove();

            debugDrawSubscriber.Disconnect(debugNode, "draw");
            debugDrawSubscriber.Dispose();
            debugDrawSubscriber = null;

            debugNode.QueueFree();
            debugNode.Dispose();
            debugNode = null;
        }
        public override void Initialize()
        {
            transform = Owner.GetComponent<IGodotTransformComponent>();
            debugNode = new Godot.Node2D();
            debugNode.SetName("Collidable debug");
            debugDrawSubscriber = new GodotGlue.GodotSignalSubscriber0();
            debugDrawSubscriber.Connect(debugNode, "draw");
            debugDrawSubscriber.Signal += DrawDebugRect;
            transform.SceneNode.AddChild(debugNode);

            base.Initialize();
        }
        public override void OnAdd()
        {
            base.OnAdd();
            var holder = IoCManager.Resolve <ISceneTreeHolder>();

            SceneNode = new Godot.Node2D
            {
                Name     = $"Transform {Owner.Uid} ({Owner.Name})",
                Rotation = -MathHelper.PiOver2
            };
            holder.WorldRoot.AddChild(SceneNode);
        }
Пример #9
0
        public void Initialize(Godot.SceneTree tree)
        {
            SceneTree = tree ?? throw new ArgumentNullException(nameof(tree));

            BelowWorldScreenSpace = new Godot.CanvasLayer
            {
                Name  = "ScreenSubWorld",
                Layer = CanvasLayers.LAYER_SCREEN_BELOW_WORLD
            };
            SceneTree.GetRoot().AddChild(BelowWorldScreenSpace);

            WorldRoot = new Godot.Node2D
            {
                Name = "WorldRoot"
            };
            SceneTree.GetRoot().AddChild(WorldRoot);
        }
        public void Initialize()
        {
            NetworkManager.RegisterNetMessage <MsgPlacement>(MsgPlacement.NAME, HandlePlacementMessage);

            _modeDictionary.Clear();
            foreach (var type in ReflectionManager.GetAllChildren <PlacementMode>())
            {
                _modeDictionary.Add(type.Name, type);
            }

            _mapMan.TileChanged += HandleTileChanged;
            drawNode             = new Godot.Node2D()
            {
                Name = "Placement Manager Sprite",
            };
            sceneTree.WorldRoot.AddChild(drawNode);
            drawNodeDrawSubscriber = new GodotGlue.GodotSignalSubscriber0();
            drawNodeDrawSubscriber.Connect(drawNode, "draw");
            drawNodeDrawSubscriber.Signal += Render;
        }
Пример #11
0
 public Node2D()
 {
     Base = new _Node2D(this);
 }