codecombat/app/schemas/subscriptions/play.coffee

204 lines
4.1 KiB
CoffeeScript
Raw Normal View History

module.exports =
2014-04-11 14:09:50 -04:00
# TODO There should be a better way to divide these channels into smaller ones
# TODO location is debatable
2014-06-30 22:16:26 -04:00
'echo-self-wizard-sprite':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level:session-will-save':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-loader:progress-changed':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level:shift-space-pressed':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level:escape-pressed':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-enable-controls':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-set-letterbox':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level:started':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-set-debug':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level:restarted':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-set-volume':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-set-time':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-select-sprite':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-set-playing':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level:team-set':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level:docs-shown': {}
2014-06-30 22:16:26 -04:00
'level:docs-hidden': {}
2014-06-30 22:16:26 -04:00
'level:victory-hidden':
{} # TODO schema
2014-08-24 19:09:06 -04:00
'level:flag-color-selected':
type: 'object'
additionalProperties: false
properties:
2014-08-24 19:09:06 -04:00
color:
oneOf: [
{type: 'null'}
{type: 'string', enum: ['green', 'black', 'violet'], description: 'The flag color to place next, or omitted/null if deselected.'}
]
2014-08-24 19:09:06 -04:00
pos:
type: 'object'
additionalProperties: false
required: ['x', 'y']
properties:
x: {type: 'number'}
y: {type: 'number'}
'level:flag-updated':
type: 'object'
additionalProperties: false
required: ['player', 'color', 'time', 'active']
properties:
player:
type: 'string'
team:
type: 'string'
color:
type: 'string'
2014-08-23 22:00:35 -04:00
enum: ['green', 'black', 'violet']
time:
type: 'number'
minimum: 0
active:
type: 'boolean'
2014-08-23 22:00:35 -04:00
pos:
type: 'object'
additionalProperties: false
required: ['x', 'y']
properties:
x: {type: 'number'}
y: {type: 'number'}
2014-06-30 22:16:26 -04:00
'next-game-pressed':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'end-current-script':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'script:reset':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'script:ended':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'end-all-scripts': {}
2014-06-30 22:16:26 -04:00
'script:state-changed':
{} # TODO schema
'script-manager:tick':
type: 'object'
additionalProperties: false
properties:
2014-06-30 22:16:26 -04:00
scriptRunning: {type: 'string'}
noteGroupRunning: {type: 'string'}
timeSinceLastScriptEnded: {type: 'number'}
scriptStates:
type: 'object'
additionalProperties:
title: 'Script State'
type: 'object'
additionalProperties: false
properties:
timeSinceLastEnded:
type: 'number'
description: 'seconds since this script ended last'
timeSinceLastTriggered:
type: 'number'
description: 'seconds since this script was triggered last'
2014-06-30 22:16:26 -04:00
'play-sound':
{} # TODO schema
# TODO refactor name
2014-06-30 22:16:26 -04:00
'onLoadingViewUnveiled':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'playback:manually-scrubbed':
{} # TODO schema
'playback:stop-real-time-playback':
type: 'object'
additionalProperties: false
'playback:real-time-playback-started':
type: 'object'
additionalProperties: false
'playback:real-time-playback-ended':
type: 'object'
additionalProperties: false
2014-06-30 22:16:26 -04:00
'change:editor-config':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'restart-level':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'play-next-level':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-select-sprite':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-toggle-grid':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-toggle-debug':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-toggle-pathfinding':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-scrub-forward':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-scrub-back':
{} # TODO schema
2014-06-30 22:16:26 -04:00
'level-show-victory':
type: 'object'
additionalProperties: false
properties:
2014-06-30 22:16:26 -04:00
showModal: {type: 'boolean'}
2014-06-30 22:16:26 -04:00
'level-highlight-dom':
type: 'object'
additionalProperties: false
properties:
2014-06-30 22:16:26 -04:00
selector: {type: 'string'}
delay: {type: 'number'}
sides: {type: 'array', items: {'enum': ['left', 'right', 'top', 'bottom']}}
offset: {type: 'object'}
rotation: {type: 'number'}
2014-06-30 22:16:26 -04:00
'goal-manager:new-goal-states':
{} # TODO schema