entityjs 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (148) hide show
  1. data/README.md +18 -14
  2. data/entityjs.gemspec +1 -0
  3. data/lib/entityjs/assets.rb +13 -163
  4. data/lib/entityjs/command.rb +5 -2
  5. data/lib/entityjs/commands/build.rb +63 -23
  6. data/lib/entityjs/commands/eunit.rb +44 -0
  7. data/lib/entityjs/commands/release.rb +1 -1
  8. data/lib/entityjs/commands/server.rb +19 -4
  9. data/lib/entityjs/compile.rb +152 -0
  10. data/lib/entityjs/config.rb +8 -0
  11. data/lib/entityjs/dirc.rb +70 -17
  12. data/lib/entityjs/page.rb +106 -0
  13. data/lib/entityjs/parsers/parse_coffee.rb +12 -0
  14. data/lib/entityjs/version.rb +1 -1
  15. data/lib/entityjs.rb +18 -4
  16. data/public/qunit/qunit.css +9 -3
  17. data/public/qunit/qunit.entity.js +113 -31
  18. data/public/qunit/qunit.js +296 -235
  19. data/public/qunit/qunit.mock.js +54 -2
  20. data/public/tests.html +0 -15
  21. data/spec/javascripts/src/cycle/tween_spec.js +59 -0
  22. data/spec/javascripts/src/display/screen_spec.js +0 -15
  23. data/spec/javascripts/src/display/text_spec.js +4 -0
  24. data/spec/javascripts/src/input/mouse_spec.js +18 -18
  25. data/spec/javascripts/src/input/preventdefault_spec.js +14 -0
  26. data/spec/javascripts/src/math/drag_spec.js +2 -2
  27. data/spec/javascripts/src/math/hit_spec.js +24 -0
  28. data/spec/javascripts/src/math/point_spec.js +3 -3
  29. data/spec/javascripts/src/math/tile_spec.js +1 -1
  30. data/spec/javascripts/src/media/sound_spec.js +1 -1
  31. data/spec/javascripts/src/pattern/automap_spec.js +3 -3
  32. data/spec/javascripts/src/pattern/flicker_spec.js +2 -1
  33. data/spec/javascripts/src/util/random_spec.js +17 -0
  34. data/spec/javascripts/src/util/scene_spec.js +15 -0
  35. data/spec/lib/entityjs/assets_spec.rb +2 -201
  36. data/spec/lib/entityjs/commands/build_spec.rb +18 -5
  37. data/spec/lib/entityjs/commands/eunit_spec.rb +18 -0
  38. data/spec/lib/entityjs/commands/release_spec.rb +2 -0
  39. data/spec/lib/entityjs/compile_spec.rb +204 -0
  40. data/spec/lib/entityjs/dirc_spec.rb +8 -4
  41. data/spec/lib/entityjs/page_spec.rb +59 -0
  42. data/spec/support/factories.rb +0 -2
  43. data/src/core/entity.js +4 -18
  44. data/src/core/query.js +1 -1
  45. data/src/core/re.js +6 -6
  46. data/src/core/system.js +17 -12
  47. data/src/cycle/tween.js +93 -31
  48. data/src/display/align.js +11 -6
  49. data/src/display/circle.js +5 -4
  50. data/src/display/imgtext.js +33 -22
  51. data/src/display/screen.js +0 -8
  52. data/src/display/text.js +37 -4
  53. data/src/input/keyboard.js +15 -5
  54. data/src/input/mouse.js +15 -25
  55. data/src/input/preventdefault.js +11 -0
  56. data/src/math/body.js +35 -16
  57. data/src/math/drag.js +2 -2
  58. data/src/math/force.js +2 -2
  59. data/src/math/hit.js +15 -6
  60. data/src/math/hitmap.js +6 -6
  61. data/src/math/point.js +1 -1
  62. data/src/math/tile.js +22 -17
  63. data/src/media/sound.js +1 -1
  64. data/src/pattern/automap.js +16 -27
  65. data/src/pattern/flicker.js +9 -5
  66. data/src/util/random.js +4 -0
  67. data/src/util/scene.js +2 -6
  68. data/templates/arrow_keys/scripts/{display → displays}/arrow.js +0 -0
  69. data/templates/arrow_keys/scripts/{input → inputs}/controls.js +0 -0
  70. data/templates/arrow_keys/tests/{display → displays}/arrow_test.js +1 -1
  71. data/templates/arrow_keys/tests/{input → inputs}/controls_test.js +0 -0
  72. data/templates/arrow_keys/tests/scenes/load_test.js +2 -0
  73. data/templates/{blank → circle}/config.yml +0 -0
  74. data/templates/{blank → circle}/readme.txt +0 -0
  75. data/templates/circle/scripts/init.js +7 -0
  76. data/templates/circle/scripts/scenes/home.js +62 -0
  77. data/templates/circle/scripts/scenes/load.js +11 -0
  78. data/templates/circle/tests/scenes/home_test.js +29 -0
  79. data/templates/circle/tests/scenes/load_test.js +15 -0
  80. data/templates/platform/config.yml +2 -1
  81. data/templates/platform/readme.txt +15 -16
  82. data/templates/platform/scripts/{display → displays}/bit.js +0 -0
  83. data/templates/platform/scripts/{display → displays}/hero.js +0 -0
  84. data/templates/platform/scripts/{display → displays}/tile.js +0 -0
  85. data/templates/platform/scripts/{display → displays}/tsprite.js +0 -0
  86. data/templates/platform/{assets → scripts}/levels/level1.tmx +0 -0
  87. data/templates/platform/scripts/{util → utils}/counter.js +0 -0
  88. data/templates/platform/scripts/{util → utils}/level.js +0 -0
  89. data/templates/platform/tests/{display → displays}/bit_test.js +1 -1
  90. data/templates/platform/tests/displays/hero_test.js +73 -0
  91. data/templates/platform/tests/{display → displays}/tile_test.js +1 -1
  92. data/templates/platform/tests/displays/tsprite_test.js +8 -0
  93. data/templates/platform/tests/items/coin_test.js +10 -10
  94. data/templates/platform/tests/items/item_test.js +9 -9
  95. data/templates/platform/tests/items/spring_test.js +3 -3
  96. data/templates/platform/tests/scenes/load_test.js +2 -1
  97. data/templates/platform/tests/{util → utils}/counter_test.js +2 -2
  98. data/templates/platform/tests/{util → utils}/level_test.js +3 -0
  99. data/templates/pong/config.yml +22 -0
  100. data/templates/pong/readme.txt +3 -0
  101. data/templates/pong/scripts/controls/ai.js +30 -0
  102. data/templates/pong/scripts/controls/arena.js +33 -0
  103. data/templates/pong/scripts/controls/hitmap.js +54 -0
  104. data/templates/pong/scripts/controls/player.js +24 -0
  105. data/templates/pong/scripts/controls/twoarena.js +14 -0
  106. data/templates/pong/scripts/displays/ball.js +29 -0
  107. data/templates/pong/scripts/displays/counter.js +22 -0
  108. data/templates/pong/scripts/displays/paddle.js +22 -0
  109. data/templates/pong/scripts/init.js +9 -0
  110. data/templates/pong/scripts/scenes/game.js +61 -0
  111. data/templates/pong/scripts/scenes/home.js +55 -0
  112. data/templates/pong/scripts/scenes/over.js +29 -0
  113. data/templates/pong/tests/controls/ai_test.js +34 -0
  114. data/templates/pong/tests/controls/arena_test.js +20 -0
  115. data/templates/pong/tests/controls/hitmap_test.js +89 -0
  116. data/templates/pong/tests/controls/player_test.js +25 -0
  117. data/templates/pong/tests/controls/twoarena_test.js +7 -0
  118. data/templates/pong/tests/displays/ball_test.js +10 -0
  119. data/templates/pong/tests/displays/counter_test.js +13 -0
  120. data/templates/pong/tests/displays/paddle_test.js +17 -0
  121. data/templates/pong/tests/scenes/game_test.js +16 -0
  122. data/templates/pong/tests/scenes/home_test.js +30 -0
  123. data/templates/pong/tests/scenes/over_test.js +16 -0
  124. data/templates/tiltmaze/config.yml +25 -0
  125. data/templates/tiltmaze/readme.txt +79 -0
  126. data/templates/tiltmaze/scripts/displays/ball.js +78 -0
  127. data/templates/tiltmaze/scripts/displays/target.js +13 -0
  128. data/templates/tiltmaze/scripts/displays/tile.js +2 -0
  129. data/templates/tiltmaze/scripts/init.js +7 -0
  130. data/templates/tiltmaze/scripts/levels/level1.json +14 -0
  131. data/templates/tiltmaze/scripts/levels/level2.json +14 -0
  132. data/templates/tiltmaze/scripts/levels/level3.json +14 -0
  133. data/templates/tiltmaze/scripts/levels/level4.json +15 -0
  134. data/templates/tiltmaze/scripts/levels/level5.json +18 -0
  135. data/templates/tiltmaze/scripts/scenes/game.js +56 -0
  136. data/templates/tiltmaze/scripts/scenes/home.js +24 -0
  137. data/templates/tiltmaze/scripts/structs/level.js +82 -0
  138. data/templates/tiltmaze/scripts/tiles/walltile.js +147 -0
  139. data/templates/tiltmaze/tests/displays/ball_test.js +67 -0
  140. data/templates/tiltmaze/tests/displays/target_test.js +8 -0
  141. data/templates/tiltmaze/tests/factories.js +38 -0
  142. data/templates/tiltmaze/tests/scenes/game_test.js +59 -0
  143. data/templates/tiltmaze/tests/scenes/home_test.js +7 -0
  144. data/templates/tiltmaze/tests/structs/level_test.js +44 -0
  145. data/templates/tiltmaze/tests/tiles/walltile_test.js +36 -0
  146. metadata +106 -33
  147. data/templates/platform/tests/display/hero_test.js +0 -73
  148. data/templates/platform/tests/display/tsprite_test.js +0 -8
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: entityjs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-22 00:00:00.000000000 Z
12
+ date: 2012-03-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &9272340 !ruby/object:Gem::Requirement
16
+ requirement: &8639040 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *9272340
24
+ version_requirements: *8639040
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: jasmine
27
- requirement: &9271920 !ruby/object:Gem::Requirement
27
+ requirement: &8638620 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *9271920
35
+ version_requirements: *8638620
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: sinatra
38
- requirement: &9271500 !ruby/object:Gem::Requirement
38
+ requirement: &8638200 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,21 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *9271500
46
+ version_requirements: *8638200
47
+ - !ruby/object:Gem::Dependency
48
+ name: coffee-script
49
+ requirement: &8637780 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :runtime
56
+ prerelease: false
57
+ version_requirements: *8637780
47
58
  - !ruby/object:Gem::Dependency
48
59
  name: uglifier
49
- requirement: &9271080 !ruby/object:Gem::Requirement
60
+ requirement: &8637360 !ruby/object:Gem::Requirement
50
61
  none: false
51
62
  requirements:
52
63
  - - ! '>='
@@ -54,10 +65,10 @@ dependencies:
54
65
  version: '0'
55
66
  type: :runtime
56
67
  prerelease: false
57
- version_requirements: *9271080
68
+ version_requirements: *8637360
58
69
  - !ruby/object:Gem::Dependency
59
70
  name: json
60
- requirement: &9270660 !ruby/object:Gem::Requirement
71
+ requirement: &8636940 !ruby/object:Gem::Requirement
61
72
  none: false
62
73
  requirements:
63
74
  - - ! '>='
@@ -65,10 +76,10 @@ dependencies:
65
76
  version: '0'
66
77
  type: :runtime
67
78
  prerelease: false
68
- version_requirements: *9270660
79
+ version_requirements: *8636940
69
80
  - !ruby/object:Gem::Dependency
70
81
  name: cobravsmongoose
71
- requirement: &9270240 !ruby/object:Gem::Requirement
82
+ requirement: &8636520 !ruby/object:Gem::Requirement
72
83
  none: false
73
84
  requirements:
74
85
  - - ! '>='
@@ -76,7 +87,7 @@ dependencies:
76
87
  version: '0'
77
88
  type: :runtime
78
89
  prerelease: false
79
- version_requirements: *9270240
90
+ version_requirements: *8636520
80
91
  description: HTML5 Javascript game engine, quickly create robust, flexible and reusable
81
92
  games.
82
93
  email:
@@ -98,14 +109,18 @@ files:
98
109
  - lib/entityjs/command.rb
99
110
  - lib/entityjs/commands/build.rb
100
111
  - lib/entityjs/commands/comp.rb
112
+ - lib/entityjs/commands/eunit.rb
101
113
  - lib/entityjs/commands/font.rb
102
114
  - lib/entityjs/commands/new.rb
103
115
  - lib/entityjs/commands/release.rb
104
116
  - lib/entityjs/commands/server.rb
105
117
  - lib/entityjs/commands/templates.rb
106
118
  - lib/entityjs/commands/test.rb
119
+ - lib/entityjs/compile.rb
107
120
  - lib/entityjs/config.rb
108
121
  - lib/entityjs/dirc.rb
122
+ - lib/entityjs/page.rb
123
+ - lib/entityjs/parsers/parse_coffee.rb
109
124
  - lib/entityjs/parsers/parse_tmx.rb
110
125
  - lib/entityjs/parsers/parse_xml.rb
111
126
  - lib/entityjs/version.rb
@@ -137,6 +152,7 @@ files:
137
152
  - spec/javascripts/src/core/system_spec.js
138
153
  - spec/javascripts/src/cycle/draw_spec.js
139
154
  - spec/javascripts/src/cycle/tick_spec.js
155
+ - spec/javascripts/src/cycle/tween_spec.js
140
156
  - spec/javascripts/src/cycle/update_spec.js
141
157
  - spec/javascripts/src/display/align_spec.js
142
158
  - spec/javascripts/src/display/circle_spec.js
@@ -150,6 +166,7 @@ files:
150
166
  - spec/javascripts/src/input/keyboard_spec.js
151
167
  - spec/javascripts/src/input/mouse_spec.js
152
168
  - spec/javascripts/src/input/pressed_spec.js
169
+ - spec/javascripts/src/input/preventdefault_spec.js
153
170
  - spec/javascripts/src/math/bisect_spec.js
154
171
  - spec/javascripts/src/math/body_spec.js
155
172
  - spec/javascripts/src/math/drag_spec.js
@@ -177,13 +194,16 @@ files:
177
194
  - spec/lib/entityjs/command_spec.rb
178
195
  - spec/lib/entityjs/commands/build_spec.rb
179
196
  - spec/lib/entityjs/commands/comp_spec.rb
197
+ - spec/lib/entityjs/commands/eunit_spec.rb
180
198
  - spec/lib/entityjs/commands/font_spec.rb
181
199
  - spec/lib/entityjs/commands/new_spec.rb
182
200
  - spec/lib/entityjs/commands/release_spec.rb
183
201
  - spec/lib/entityjs/commands/templates_spec.rb
184
202
  - spec/lib/entityjs/commands/test_spec.rb
203
+ - spec/lib/entityjs/compile_spec.rb
185
204
  - spec/lib/entityjs/config_spec.rb
186
205
  - spec/lib/entityjs/dirc_spec.rb
206
+ - spec/lib/entityjs/page_spec.rb
187
207
  - spec/lib/entityjs/version_spec.rb
188
208
  - spec/spec_helper.rb
189
209
  - spec/support/factories.rb
@@ -212,6 +232,7 @@ files:
212
232
  - src/input/keyboard.js
213
233
  - src/input/mouse.js
214
234
  - src/input/pressed.js
235
+ - src/input/preventdefault.js
215
236
  - src/input/touch.js
216
237
  - src/math/bisect.js
217
238
  - src/math/body.js
@@ -240,44 +261,49 @@ files:
240
261
  - templates/arrow_keys/assets/images/arrow.png
241
262
  - templates/arrow_keys/config.yml
242
263
  - templates/arrow_keys/readme.txt
243
- - templates/arrow_keys/scripts/display/arrow.js
264
+ - templates/arrow_keys/scripts/displays/arrow.js
244
265
  - templates/arrow_keys/scripts/init.js
245
- - templates/arrow_keys/scripts/input/controls.js
266
+ - templates/arrow_keys/scripts/inputs/controls.js
246
267
  - templates/arrow_keys/scripts/scenes/home.js
247
268
  - templates/arrow_keys/scripts/scenes/load.js
248
- - templates/arrow_keys/tests/display/arrow_test.js
269
+ - templates/arrow_keys/tests/displays/arrow_test.js
249
270
  - templates/arrow_keys/tests/init_test.js
250
- - templates/arrow_keys/tests/input/controls_test.js
271
+ - templates/arrow_keys/tests/inputs/controls_test.js
251
272
  - templates/arrow_keys/tests/scenes/home_test.js
252
273
  - templates/arrow_keys/tests/scenes/load_test.js
253
- - templates/blank/config.yml
254
- - templates/blank/readme.txt
274
+ - templates/circle/config.yml
275
+ - templates/circle/readme.txt
276
+ - templates/circle/scripts/init.js
277
+ - templates/circle/scripts/scenes/home.js
278
+ - templates/circle/scripts/scenes/load.js
279
+ - templates/circle/tests/scenes/home_test.js
280
+ - templates/circle/tests/scenes/load_test.js
255
281
  - templates/platform/assets/images/bit.png
256
282
  - templates/platform/assets/images/hero.png
257
283
  - templates/platform/assets/images/items.png
258
284
  - templates/platform/assets/images/tiles.png
259
- - templates/platform/assets/levels/level1.tmx
260
285
  - templates/platform/assets/sounds/coin.mp3
261
286
  - templates/platform/assets/sounds/coin.ogg
262
287
  - templates/platform/config.yml
263
288
  - templates/platform/readme.txt
264
- - templates/platform/scripts/display/bit.js
265
- - templates/platform/scripts/display/hero.js
266
- - templates/platform/scripts/display/tile.js
267
- - templates/platform/scripts/display/tsprite.js
289
+ - templates/platform/scripts/displays/bit.js
290
+ - templates/platform/scripts/displays/hero.js
291
+ - templates/platform/scripts/displays/tile.js
292
+ - templates/platform/scripts/displays/tsprite.js
268
293
  - templates/platform/scripts/init.js
269
294
  - templates/platform/scripts/items/coin.js
270
295
  - templates/platform/scripts/items/item.js
271
296
  - templates/platform/scripts/items/spring.js
297
+ - templates/platform/scripts/levels/level1.tmx
272
298
  - templates/platform/scripts/scenes/home.js
273
299
  - templates/platform/scripts/scenes/load.js
274
300
  - templates/platform/scripts/scenes/play.js
275
- - templates/platform/scripts/util/counter.js
276
- - templates/platform/scripts/util/level.js
277
- - templates/platform/tests/display/bit_test.js
278
- - templates/platform/tests/display/hero_test.js
279
- - templates/platform/tests/display/tile_test.js
280
- - templates/platform/tests/display/tsprite_test.js
301
+ - templates/platform/scripts/utils/counter.js
302
+ - templates/platform/scripts/utils/level.js
303
+ - templates/platform/tests/displays/bit_test.js
304
+ - templates/platform/tests/displays/hero_test.js
305
+ - templates/platform/tests/displays/tile_test.js
306
+ - templates/platform/tests/displays/tsprite_test.js
281
307
  - templates/platform/tests/factories.js
282
308
  - templates/platform/tests/items/coin_test.js
283
309
  - templates/platform/tests/items/item_test.js
@@ -285,8 +311,55 @@ files:
285
311
  - templates/platform/tests/scenes/home_test.js
286
312
  - templates/platform/tests/scenes/load_test.js
287
313
  - templates/platform/tests/scenes/play_test.js
288
- - templates/platform/tests/util/counter_test.js
289
- - templates/platform/tests/util/level_test.js
314
+ - templates/platform/tests/utils/counter_test.js
315
+ - templates/platform/tests/utils/level_test.js
316
+ - templates/pong/config.yml
317
+ - templates/pong/readme.txt
318
+ - templates/pong/scripts/controls/ai.js
319
+ - templates/pong/scripts/controls/arena.js
320
+ - templates/pong/scripts/controls/hitmap.js
321
+ - templates/pong/scripts/controls/player.js
322
+ - templates/pong/scripts/controls/twoarena.js
323
+ - templates/pong/scripts/displays/ball.js
324
+ - templates/pong/scripts/displays/counter.js
325
+ - templates/pong/scripts/displays/paddle.js
326
+ - templates/pong/scripts/init.js
327
+ - templates/pong/scripts/scenes/game.js
328
+ - templates/pong/scripts/scenes/home.js
329
+ - templates/pong/scripts/scenes/over.js
330
+ - templates/pong/tests/controls/ai_test.js
331
+ - templates/pong/tests/controls/arena_test.js
332
+ - templates/pong/tests/controls/hitmap_test.js
333
+ - templates/pong/tests/controls/player_test.js
334
+ - templates/pong/tests/controls/twoarena_test.js
335
+ - templates/pong/tests/displays/ball_test.js
336
+ - templates/pong/tests/displays/counter_test.js
337
+ - templates/pong/tests/displays/paddle_test.js
338
+ - templates/pong/tests/scenes/game_test.js
339
+ - templates/pong/tests/scenes/home_test.js
340
+ - templates/pong/tests/scenes/over_test.js
341
+ - templates/tiltmaze/config.yml
342
+ - templates/tiltmaze/readme.txt
343
+ - templates/tiltmaze/scripts/displays/ball.js
344
+ - templates/tiltmaze/scripts/displays/target.js
345
+ - templates/tiltmaze/scripts/displays/tile.js
346
+ - templates/tiltmaze/scripts/init.js
347
+ - templates/tiltmaze/scripts/levels/level1.json
348
+ - templates/tiltmaze/scripts/levels/level2.json
349
+ - templates/tiltmaze/scripts/levels/level3.json
350
+ - templates/tiltmaze/scripts/levels/level4.json
351
+ - templates/tiltmaze/scripts/levels/level5.json
352
+ - templates/tiltmaze/scripts/scenes/game.js
353
+ - templates/tiltmaze/scripts/scenes/home.js
354
+ - templates/tiltmaze/scripts/structs/level.js
355
+ - templates/tiltmaze/scripts/tiles/walltile.js
356
+ - templates/tiltmaze/tests/displays/ball_test.js
357
+ - templates/tiltmaze/tests/displays/target_test.js
358
+ - templates/tiltmaze/tests/factories.js
359
+ - templates/tiltmaze/tests/scenes/game_test.js
360
+ - templates/tiltmaze/tests/scenes/home_test.js
361
+ - templates/tiltmaze/tests/structs/level_test.js
362
+ - templates/tiltmaze/tests/tiles/walltile_test.js
290
363
  homepage: http://entityjs.com
291
364
  licenses:
292
365
  - MIT
@@ -1,73 +0,0 @@
1
- module('hero', lazy('hero'));
2
-
3
- test('has flicks', function(){
4
-
5
- expectFlicker(e, 'idle');
6
- expectFlicker(e, 'run');
7
- expectFlicker(e, 'jump');
8
- expectFlicker(e, 'ladder');
9
-
10
- });
11
-
12
- test('has components', function(){
13
- ok(e.has('hero.png tsprite update force flicker body'));
14
- });
15
-
16
- test('flickers idle when not moving', function(){
17
-
18
- e.flicker('run');
19
-
20
- stub(e, 'isIdle', function(){return true});
21
-
22
- e.update();
23
-
24
- ok(e.flickering('idle'));
25
-
26
- });
27
-
28
- test('moves right', function(){
29
-
30
- expectCall(e, 'flicker');
31
-
32
- keypress('d', function(){
33
- e.update();
34
- });
35
-
36
-
37
- });
38
-
39
- test('moves left', function(){
40
-
41
- expectCall(e, 'flicker');
42
-
43
- keypress('a', function(){
44
- e.update();
45
- });
46
-
47
- });
48
-
49
- test('jumps when w pressed', function(){
50
-
51
- //setup requrements for jumping
52
- e.ground = true;
53
- e.jump = false;
54
-
55
- expectCall(e, 'forceJump');
56
-
57
- keypress('w', function(){
58
- e.update();
59
- });
60
-
61
- });
62
-
63
- test('resets jump when hitting the y axis', function(){
64
-
65
- e.ground = false;
66
- e.jump = true;
67
-
68
- e.jumpReset(false, true, 10, 999);
69
-
70
- ok(e.ground);
71
- ok(!e.jump);
72
-
73
- });
@@ -1,8 +0,0 @@
1
- module('tsprite', lazy('tsprite'));
2
-
3
- test('valid', function(){
4
-
5
- eq(e.sizeX, re.tile.sizeX)
6
- eq(e.sizeY, re.tile.sizeY)
7
-
8
- });