Manage the state of JavaScript games using unidirectional data flow.
var createGame = require('gamestate')
var game = createGame(document.body, {
context: 'webgl'
})
function modifier (action, state) {
if (action.type === 'message') {
return { message: action.message }
}
}
var render = game.start(modifier, {
message: 'this is the initial game state'
})
render(function (ctx, state) {
// render the game
console.log(state.message)
})
game.update({
type: 'message',
message: 'state has changed'
})
I'd like to manage game state and ui state (using virtual-dom) in compatible ways. How might that be simplified?