FlashbackJS
Conrad's animations in Flashback executed by a state engine (actor.js) and configured via JSON (conrad.json):
Animation Configuration:
<nme>
[String] : Name of the animationsize
[Number] : Number of animation framesrate
[Number] : Frame rate of the animation (default 20)turn
[Boolean] : Animation does turn characterprevious
[Array<String>] : Previous animationsnext
[String] : Next default animation (if no other animation played before with input)input
[Array<String>] : Multiple inputs to trigger animation (keys, env
), input combo with+
, input negation with!
x
[Number] : Number of grid units shifted inx
direction for whole animationy
[Number] : Number of grid units shifted iny
direction for whole animationpx
[Array<Number>] : Number of pixels shifted inx
direction for a single animation frame (overridesx
)py
[Array<Number>] : Number of pixels shifted iny
direction for a single animation frame (overridesy
)ox
[Number | Object<String, Number>] : Number of pixels shifted inx
direction at the end (out) of animation. Can depend on succeeding (in) animation, e.g.{ "<name>": 1 }
oy
[Number | Object<String, Number>] : Number of pixels shifted iny
direction at the end (out) of animation. Can depend on succeeding (in) animation, e.g.{ "<name>": 1 }
ix
[Number | Object<String, Number>] : Number of pixels shifted inx
direction at the start (in) of animation. Can depend on preceding (out) animation, e.g.{ "<name>": 1 }
iy
[Number | Object<String, Number>] : Number of pixels shifted iny
direction at the start (in) of animation. Can depend on preceding (out) animation, e.g.{ "<name>": 1 }
align
[Boolean] : Align to grid after animation (2 grid units, default:true
)stop
[Boolean | Number] : Stop animation at frame index (Number
) or at animation end (true
)log
[Boolean] : Log animation to console
Play GitHub Version
- Browser: https://oklemenz.github.io/FlashbackJS
- Keyboard
Cursor keys
: MovementLeft / Right key
: Walk, Run, Step, RollUp key
: JumpDown key
: Crouch
SHIFT
: Run, FireSPACE
: Draw GunENTER
: Action
Play Locally
- Install Node.js
- Clone:
https://github.com/oklemenz/FlashbackJS.git
- Terminal:
npm install
npm start
- Browser:
localhost:8080