Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | 1x 1x 1x 1x 3x 3x 3x 3x 3x 3x 3x 3x 3x 3x 3x 18x 18x 3x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | import { expect } from 'chai'; import { Physics } from './physics.js'; const updateStats = () => {}; describe('getUseableMove', () => { const width = 200; const height = 100; const pixels = [ [0, 0, 255], [0, 0, 255], [255, 255, 255], ]; const player = { x: 1, y: 1, width: 1, height: 1, speed: 1, }; it('should move a player left if left is requested', () => { const newPlayer = { ...player, x: 0 }; const updatedPlayer = Physics.getUseableMove({ oldActor: player, actor: newPlayer, width, height, pixels, locMap: {}, updateStats, useHandycap: false, }); expect(updatedPlayer.x).to.eql(0); }); it('should let a player move down if down-right is requested, and right is not allowed', () => { const oldPlayer = { ...player, x: 1, y: 0 }; const newPlayer = { ...player, x: 2, y: 1 }; const updatedPlayer = Physics.getUseableMove({ oldActor: oldPlayer, actor: newPlayer, width, height, pixels, locMap: {}, updateStats, useHandycap: true, }); expect(updatedPlayer.x).to.eql(1); expect(updatedPlayer.y).to.eql(1); }); it('should let a player move left if down-left is requested, and down is not allowed', () => { const oldPlayer = { ...player, x: 1, y: 1 }; const newPlayer = { ...player, x: 0, y: 2 }; const updatedPlayer = Physics.getUseableMove({ oldActor: oldPlayer, actor: newPlayer, width, height, pixels, locMap: {}, updateStats, useHandycap: true, }); expect(updatedPlayer.x).to.eql(0); expect(updatedPlayer.y).to.eql(1); }); }); |