dartrocket 0.1.7+1

DartRocket is a HTML5 Game Engine, which is written in Dart and uses the StageXL rendering engine. The main goal of this framework is to provide an easy to use solution for HTML5 game making with the Dart language.

##How to start? Please check out the wiki.

For fast start you can use the basic template.

You can find additional examples in the documentation and in the examples directory in dartrocket's github repo.

##Documentation DartRocket's Documentation on dartdocs.org.

##Support/Forum If you have any question or problem. Just make a topic and ask. DartRocket's forum

##Blog The Framework has a blog, which will provide information about how the development is going.

##Examples These example's build will be updated, when there is a new version of DartRocket.

SpaceInvader shows a basic space invader game.

StateMachine shows how the statemanager work.

MovementSystem shows how the sprite can move. You can move with w,a,s,d and you can rotate with q,e and you can accelerate with j,k.

World-Camera shows how the camera works. You can move the ship with w,a,s,d, you can unfollow the ship with Space and you can move camera with cursors.

Gravity shows the gravity system in the game. You can move the rectangle with w,a,s,d.

changelog #

This file contains highlights of what changes on each version of the DartRocket package.

Pub version 0.1.7+1 #

  • Fix return bug in Shape constructor
  • Moving centerPivot() into parent class
  • More docs for Movement System
  • Remove multiSprite

Pub version 0.1.7 #

  • Added gravity example in DartRocket's repo
  • Added Mask and Shape classes
  • Added StateEvent(constant)
  • Sound can be stopped
  • New class for gravity
  • Added centerPivot() for button
  • GameObjectFactory can create basic shapes
  • Major library refactor(library structure + unit tests)
  • Upgrade to StageXL 0.10.3
  • Improving DirectionSystem

Pub version 0.1.6 #

  • Unified code structure
  • new DirectionSystem class
  • Added relative diagonal directions into constants/direction.dart
  • new MovementSystem class
  • new MovementControll mixin, which define how to use the MovementSystem class
  • using MovementControll in Sprite and Camera class
  • new physics directory, which contains the moving parts
  • Exported Shape class, which means you can use basic canvas operations

Pub version 0.1.5 #

  • Using vector based directions for controlling the sprite
  • Acceleration added to the Sprite class
  • Moving system example
  • Getting started guide in the wiki
  • onKeyDown and Up handler for keyboard
  • CollideWorldBounds added to sprite, so you can't go outside of the bounds
  • KillOutOfBounds added which can kill the sprite if it's go outside of the bounds
  • min and max scale value for fullscreen mode
  • Button has 3 isDown method to handle click or touch events
  • Project template in repo
  • Fix: using world instead of stage everywhere
  • Camera can follow a sprite and you can unfollow it
  • Camera example added
  • Breaking: Removed name paramter from State constructor
  • Added nextState parameter to killState and endState methods
  • Removed Stream extend from State and made listen into a private method
  • Updated the documentation

Pub version 0.1.4 #

  • Physics class added with collison method
  • Breaking change: load,create,update methods for a state
  • GameObjectFactory can make every game object except Background.color
  • Added autoHiDpi, isMobile, devicePixelRatio getter for game object
  • Unit test added for StateManager
  • New container classes: World and Camera for a new World-Camera system
  • Using game.world instead of game.stage everywhere
  • GameObjectFactory has tween method for making tweens
  • Exported Tweem class so you can use it
  • New classes: Keyboard, Touch for input event handling
  • New movment system for the Sprite class
  • New example to show the new movement system

Pub version 0.1.3 #

  • EventListeners on stage automatically destroyed after state change
  • Button class is simplified, easier to set coordinates
  • Fix typo :KillState
  • TextureAtlas contructor for Button and Sprite
  • Fix typo: isMovable
  • Updated README
  • Named contructor for Sprite,Button,Background: bitmapdata,image,textureatlas
  • Background has repeat and scale mode
  • Background works with all kind of vx and vy value
  • GameObjectFactory added
  • Background.color constructor for static color backgrounds

Pub version 0.1.2 #

  • New Button class
  • Fullscreen mode, which keeps the aspect ratio(game.dart)
  • Space Invader has fullscreen,buttons and mobile friendlier

Pub version 0.1.1 #

  • New Sound class
  • Breaking: Background is now can be animated
  • Breaking: Text class reworked
  • I simplified the usage of Text and Background
  • A lot of new stuff in space invader example

Pub version 0.1.0 #

  • Breaking: There is onyl one Sprite class and removed other sprite classes
  • New Group class for storing Sprites
  • SpaceInvader example is refactored due to he canges
  • TransitionFunction can be acces through game object
  • Added InteractiveBitmap helper class
  • Documentation updated

Pub version 0.0.9 #

  • Fixed documentation
  • Breaking: terminateState renamed to killState
  • Added Documetation site

Pub version 0.0.8 #

  • Added documentation
  • Added explanations where needed
  • Breaking change: rename pauseStream to endState
  • Breaking change: rename closeStream to terminateState
  • Deleted Prints

Pub version 0.0.7 #

  • Ufo in space invader example now move sideways
  • Added transition_function from stagexl

Pub version 0.0.5 #

  • Added Space Invader example
  • Breaking change in State: only has load() and create()
  • ResourceManagment.load() happens after load() method

Pub version 0.0.3 #

  • Added better state example
  • Added new GameObjetcs(Sprite,AnimatedSprite)

Pub version 0.0.2 #

  • Added .gitignore

Pub version 0.0.1 #

  • Initial publish

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

  dartrocket: ^0.1.7+1

2. Install it

You can install packages from the command line:

with pub:

$ pub get

Alternatively, your editor might support pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:dartrocket/dartrocket.dart';
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

The package version is not analyzed, because it does not support Dart 2. Until this is resolved, the package will receive a health and maintenance score of 0.

Analysis issues and suggestions

Support Dart 2 in pubspec.yaml.

The SDK constraint in pubspec.yaml doesn't allow the Dart 2.0.0 release. For information about upgrading it to be Dart 2 compatible, please see https://dart.dev/dart-2#migration.