diff --git a/fixtures/rock.entity.json b/fixtures/rock.entity.json new file mode 100644 index 0000000..edb7a32 --- /dev/null +++ b/fixtures/rock.entity.json @@ -0,0 +1,181 @@ +{ + "traits": { + "behaved": { + "params": { + "contextTypeHints": { + "item": "entity", + "projectile": "entity", + "wielder": "entity" + } + } + }, + "collider": { + "params": { + "isSensor": true + } + }, + "existent": { + "state": { + "name": "Rock" + } + }, + "item": { + "params": { + "cooldown": 0.33, + "itemActions": { + "type": "actions", + "traversals": [ + { + "type": "traversal", + "steps": [ + { + "type": "key", + "key": "context" + }, + { + "type": "key", + "key": "add" + }, + { + "type": "invoke", + "args": [ + { + "type": "literal", + "value": "projectile" + }, + { + "type": "traversal", + "steps": [ + { + "type": "key", + "key": "item" + }, + { + "type": "key", + "key": "spawn" + }, + { + "type": "invoke", + "args": [ + { + "type": "literal", + "value": "rock" + } + ] + } + ] + } + ] + } + ] + }, + { + "type": "traversal", + "steps": [ + { + "type": "key", + "key": "projectile" + }, + { + "type": "key", + "key": "context" + }, + { + "type": "key", + "key": "add" + }, + { + "type": "invoke", + "args": [ + { + "type": "literal", + "value": "wielder" + }, + { + "type": "traversal", + "steps": [ + { + "type": "key", + "key": "wielder" + } + ] + } + ] + } + ] + }, + { + "type": "traversal", + "steps": [ + { + "type": "key", + "key": "projectile" + }, + { + "type": "key", + "key": "isBehaving" + } + ], + "value": { + "type": "literal", + "value": true + } + } + ] + }, + "slotImageUris": { + "default": "/rock.png" + } + } + }, + "layered": {}, + "listed": {}, + "magnetic": {}, + "mobile": {}, + "physical": {}, + "pictured": { + "params": { + "images": { + "initial": { + "offset": [ + 0, + 0 + ], + "size": [ + 12, + 12 + ], + "uri": "/rock.png" + } + } + } + }, + "positioned": {}, + "roomed": {}, + "shaped": { + "params": { + "shape": { + "type": "rectangle", + "position": [ + 0, + 0 + ], + "size": [ + 12, + 12 + ] + } + } + }, + "spawner": { + "params": { + "spawns": { + "rock": { + "uri": "/rock-projectile.entity.json" + } + } + } + }, + "visible": {} + } +} \ No newline at end of file diff --git a/src/client/components/entity.jsx b/src/client/components/entity.jsx index 29564b6..71a9637 100644 --- a/src/client/components/entity.jsx +++ b/src/client/components/entity.jsx @@ -9,7 +9,7 @@ const decorate = compose( contempo(require('./entity.raw.scss')), ); -const json = require('~/../fixtures/mama-kitty.entity.json'); +const json = require('~/../fixtures/rock.entity.json'); const EntityComponent = (props) => { const entity = new Entity(json);