Example #1
0
        public void RemoveHecsComponent <T>() where T : IComponent
        {
            var index = TypesMap.GetIndexByType <T>();

            if (components[index] != null)
            {
                RemoveHecsComponent(components[index]);
            }
        }
Example #2
0
        public T GetOrAddComponent <T>(IEntity owner = null) where T : class, IComponent
        {
            var index  = TypesMap.GetIndexByType <T>();
            var needed = components[index];

            if (needed != null)
            {
                return((T)needed);
            }

            var newComp = TypesMap.GetComponentFromFactory <T>();

            AddHecsComponent(newComp, owner);
            return(newComp);
        }
Example #3
0
        public bool ContainsMask <T>() where T : IComponent
        {
            var index = TypesMap.GetIndexByType <T>();

            return(components[index] != null);
        }