Skip to content

Releases: CrissNamon/progressive

0.7.11

31 Jan 16:07
c51243d
Compare
Choose a tag to compare

0.7.1

29 Jan 13:24
adbee28
Compare
Choose a tag to compare
  • Split components into different artifacts:
    • progressive-api
    • progressive-game
    • progressive-injection
    • progressive-persistence
    • progressive-proxy
  • Removed GameInitializer

0.7.0

28 Jan 20:12
2541203
Compare
Choose a tag to compare
  • Added BeanScanner interface to intercept DI container scan process
  • Added BeanFactory interface to intercept DI container creation of BeanDefinition bean instance
  • Added Storage

0.6.1

27 Jan 19:35
4c8ef5d
Compare
Choose a tag to compare
  • Fixed default StateMachine in BasicGame
  • Added tests

0.6.0

27 Jan 11:07
39e257a
Compare
Choose a tag to compare

What's Changed

  • Added StateMachine and BasicStateMachine implementation
    • GameStateManager is now deprecated, Game uses StateMachine
    • StateMachine allows you to control state with transitions on events, guard and actions
    • State machine can save and load state by using StateMachinePersister implementation
    • You can provide your own StateMachine for Game to change basic lifecycle, but it won't be triggered automatically
    • You can provide StateMachinePersister to save game state. It can be used to save player progress or something else
  • Added Slf4j to GameLogger
  • Game is now sending GameEvents through BasicGamePublisher

0.5.0

23 Nov 05:43
Compare
Choose a tag to compare

What's Changed

  • Added preStart, postStart to Game
  • Added preUpdate, postUpdate to Game
  • Added stop() to GameObject, GameScript
  • Added getStateManager() to Game
  • Changed BasicGameStateManager

Full Changelog: 0.4.0...0.5.0

Maven
<dependency>
    <groupId>tech.hiddenproject</groupId>
    <artifactId>progressive</artifactId>
    <version>0.5.0</version>
</dependency>
Gradle
compile 'tech.hiddenproject:progressive:0.5.0'

0.4.0

20 Nov 11:52
Compare
Choose a tag to compare

What's Changed

  • Removed FrameTimeType from Game
  • Added update, start, dispose to GameScript and GameObject
  • start, update, dispose will be called automatically on each GameObject in Game and then on each GameScript cascade. GamePublisher is not used for this. Methods will be called with parallel unordered streams
  • Changed FrameTimeType to PublisherType
  • Added setPublisherType, getPublisherType to GamePublisher
  • Made constructors in BasicDIContainer and BasicGame public
  • Added unsubscribe to GamePublisher
  • Changed package name
  • Small improvements

Full Changelog: 0.3.0...0.4.0

0.3.0

19 Nov 15:49
Compare
Choose a tag to compare

What's Changed

  • Added variant to GameBean and BasicDIContainer
  • Changed beans map in BasicDIContainer

Full Changelog: 0.2.0-STABLE...0.3.0

0.2.0-STABLE

31 Oct 12:32
7a05c42
Compare
Choose a tag to compare
  • Made basic implementations thread safe

    Some methods of basic implementations are synchronized now, classes use concurrent collections

  • BasicDIContainer can inject beans through interfaces
  • BasicDIContainer sees circular dependencies
  • Beans name to inject can be specified with Qualifier annotation
  • getBean(Class) throws BeanConflictException if there are more than one bean found of given Class
  • Add BasicComponentManager to control DIContainer, Game, ProxyCreator and Logger instances
  • ProxyCreator can properly use Autofill constructors
  • BasicComponentCreator now has isHandlesEnabled(boolean) method to specify if MethodHandle apis are supported (useful with Android SDK)
  • Other fixes and improvements

Full Changelog: 0.1.3-STABLE...main

0.1.3-STABLE

27 Oct 11:15
6ae428a
Compare
Choose a tag to compare
  • Added proxy classes and objects creation feature
  • Added GameInitializer
  • Small fixes and improvements

Full Changelog: 0.1.2-STABLE...0.1.3-STABLE