Skip to content

Latest commit

 

History

History
90 lines (72 loc) · 3.74 KB

CHANGELOG.mdown

File metadata and controls

90 lines (72 loc) · 3.74 KB

ChangeLog

[major.minor.bugfix] - year-month-day

Fixed Added Changed Deprecated Removed

5.0.1 - 2022-02-03

Added

  • Added a method to the Entity Manager which allows grouping entities by components and then execute a block for each one.
FelECS::Entities.group(@component_manager_one, @component_manager_two).do |cmp1, cmp2, ent|
# do stuff with the components and entity
end

5.0.0 - 2022-02-02

Changed

  • Renamed to FelECS

Fixed

  • Trigger on attr_changed was fixed to now trigger the system after the attr value is changed.

4.0.0 - 2021-12-30

Removed

  • Removed all ids as they were not used

Changed

  • Scenes now have their own priority attribute
  • Stages now sort and execute by Scenes, rather then the net Systems in the Scenes
  • Component method .attrs was renamed to .to_h
  • Renamed the data accessor to ._data
  • Various arrays are automatically compacted

Added - Classes and Modules which used a data array now have the entire set of array methods available to their respective Classes and Modules

  • Convenience methods for accessing a single entity in a component(@component.entity) and accessing a single entity in a component(@entity.component[@component_manager])

    • FelFlame::Order class which can set the order of your Scenes and Systems

    Fixed

    • Replaced all instances of sort_by! with sort_by for compatibility with mruby
    • Minor optimizations such as less array duplication

3.0.0 - 2021-07-12

![Changed](https://img.shields.io/badge/-Changed-yellow)
- The Scene alias was changed from ```FelFlame::Sce``` to ```FelFlame::Scn``` as it is more intuitive.

2.0.0 - 2021-07-10

![Changed](https://img.shields.io/badge/-Changed-yellow)
- Entities and Components now reference each other using the objects themselves rather then their id's
```ruby

before:

@entity.components[@component_manager].each do |component_id|

iterate over id's, usually would need to do a lookup to get the component itself

end

after:

@entity.components[@component_manager].each do |component|

iterate over the components themselves! No need for lookup anymore

end
```
```ruby

same for components referencing entities

before:

@component.entities.each do |entity_id|

#iterate over id's end

after:

@component.entities.each do |entity|

directly iterate over entities themselves!

end
```

1.0.2 - 2021-07-09

![Fixed](https://img.shields.io/badge/-Fixed-blue)
- Stripped superflous files shrinking gem size significantly

1.0.1 - 2021-07-09

![Fixed](https://img.shields.io/badge/-Fixed-blue)
- Defining attributes in components are no longer allowed to overwrite methods

1.0.0 - 2021-07-09

![Added](https://img.shields.io/badge/-Added-brightgreen) 
- Initial release