protected override void OnAttached(EntityLogic childEntity, Transform parentTransform, object userData)
    {
        base.OnAttached(childEntity, parentTransform, userData);

        if (childEntity is EParticle)
        {
            particle = (EParticle)childEntity;
        }
    }
            public override void _Ready()
            {
                var size     = GetViewportRect().Size;
                var particle = new EParticle()
                {
                    Position = size / 2
                };

                AddChild(particle);
            }
    void OnTriggerExit(Collider other)
    {
        if (particle != null)
        {
            Hero hero = other.gameObject.GetComponent <Hero> ();

            if (hero != null)
            {
                GameEntry.Entity.HideEntity(particle.Id);
                particle = null;
            }
        }
    }
        public override void _Ready()
        {
            var size           = GetViewportRect().Size;
            var particleSystem = new SimpleParticleSystem()
            {
                ParticleCreationFunction = () =>
                {
                    var particle = new EParticle()
                    {
                        MeshSize = new Vector2(20, 20),
                        Lifespan = 4,
                        Mass     = 4
                    };
                    particle.Mesh.MeshType = SimpleMesh.TypeEnum.Square;
                    return(particle);
                },
                Position = new Vector2(size.x / 2, size.y / 4)
            };

            AddChild(particleSystem);
        }