entityjs 0.2.2 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. data/.gitignore +7 -6
  2. data/.rspec +2 -0
  3. data/README.md +170 -49
  4. data/Rakefile +9 -0
  5. data/bin/entityjs +24 -14
  6. data/entityjs.gemspec +15 -9
  7. data/lib/entityjs/assets.rb +167 -0
  8. data/lib/entityjs/command.rb +52 -27
  9. data/lib/entityjs/commands/build.rb +128 -0
  10. data/lib/entityjs/commands/comp.rb +74 -0
  11. data/lib/entityjs/commands/font.rb +73 -0
  12. data/lib/entityjs/commands/new.rb +59 -0
  13. data/lib/entityjs/commands/server.rb +54 -0
  14. data/lib/entityjs/commands/templates.rb +28 -0
  15. data/lib/entityjs/commands/test.rb +69 -0
  16. data/lib/entityjs/config.rb +130 -0
  17. data/lib/entityjs/dirc.rb +184 -0
  18. data/lib/entityjs/parsers/parse_tmx.rb +41 -0
  19. data/lib/entityjs/parsers/parse_xml.rb +39 -0
  20. data/lib/entityjs/version.rb +1 -1
  21. data/lib/entityjs.rb +53 -0
  22. data/license.txt +1 -1
  23. data/public/play.html +122 -0
  24. data/public/qunit/qunit.css +226 -0
  25. data/public/qunit/qunit.entity.js +190 -0
  26. data/public/qunit/qunit.input.js +200 -0
  27. data/public/qunit/qunit.js +1598 -0
  28. data/public/qunit/qunit.mock.js +97 -0
  29. data/public/tests.html +45 -0
  30. data/spec/javascripts/helpers/accept.png +0 -0
  31. data/spec/javascripts/helpers/alligator.mp3 +0 -0
  32. data/spec/javascripts/helpers/alligator.ogg +0 -0
  33. data/spec/javascripts/helpers/canvas.js +15 -0
  34. data/spec/javascripts/helpers/entityunit.js +50 -0
  35. data/spec/javascripts/helpers/factories.js +11 -0
  36. data/spec/javascripts/helpers/jquery-1.7.1.min.js +4 -0
  37. data/spec/javascripts/src/core/comp_spec.js +145 -0
  38. data/spec/javascripts/src/core/entity_spec.js +324 -0
  39. data/spec/javascripts/src/core/load_spec.js +71 -0
  40. data/spec/javascripts/src/core/query_spec.js +157 -0
  41. data/spec/javascripts/src/core/re_spec.js +61 -0
  42. data/spec/javascripts/src/core/system_spec.js +41 -0
  43. data/spec/javascripts/src/cycle/draw_spec.js +106 -0
  44. data/spec/javascripts/src/cycle/tick_spec.js +20 -0
  45. data/spec/javascripts/src/cycle/update_spec.js +86 -0
  46. data/spec/javascripts/src/display/align_spec.js +43 -0
  47. data/spec/javascripts/src/display/circle_spec.js +26 -0
  48. data/spec/javascripts/src/display/group_spec.js +7 -0
  49. data/spec/javascripts/src/display/image_spec.js +32 -0
  50. data/spec/javascripts/src/display/imgtext_spec.js +32 -0
  51. data/spec/javascripts/src/display/rect_spec.js +13 -0
  52. data/spec/javascripts/src/display/screen_spec.js +47 -0
  53. data/spec/javascripts/src/display/sprite_spec.js +28 -0
  54. data/spec/javascripts/src/display/text_spec.js +30 -0
  55. data/spec/javascripts/src/input/keyboard_spec.js +67 -0
  56. data/spec/javascripts/src/input/mouse_spec.js +133 -0
  57. data/spec/javascripts/src/input/pressed_spec.js +31 -0
  58. data/spec/javascripts/src/math/bisect_spec.js +59 -0
  59. data/spec/javascripts/src/math/body_spec.js +30 -0
  60. data/spec/javascripts/src/math/drag_spec.js +38 -0
  61. data/spec/javascripts/src/math/force_spec.js +134 -0
  62. data/spec/javascripts/src/math/hit_spec.js +28 -0
  63. data/spec/javascripts/src/math/hitmap_spec.js +52 -0
  64. data/spec/javascripts/src/math/limit_spec.js +35 -0
  65. data/spec/javascripts/src/math/point_spec.js +57 -0
  66. data/spec/javascripts/src/math/tile_spec.js +78 -0
  67. data/spec/javascripts/src/media/sound_spec.js +40 -0
  68. data/spec/javascripts/src/pattern/automap_spec.js +93 -0
  69. data/spec/javascripts/src/pattern/flicker_spec.js +66 -0
  70. data/spec/javascripts/src/pattern/timestep_spec.js +23 -0
  71. data/spec/javascripts/src/save/storage_spec.js +37 -0
  72. data/spec/javascripts/src/util/log_spec.js +9 -0
  73. data/spec/javascripts/src/util/polyfill_spec.js +13 -0
  74. data/spec/javascripts/src/util/random_spec.js +33 -0
  75. data/spec/javascripts/src/util/scene_spec.js +52 -0
  76. data/spec/javascripts/src/util/sheet_spec.js +25 -0
  77. data/spec/javascripts/src/util/support_spec.js +17 -0
  78. data/spec/javascripts/support/jasmine.yml +76 -0
  79. data/spec/javascripts/support/jasmine_config.rb +32 -0
  80. data/spec/javascripts/support/jasmine_runner.rb +32 -0
  81. data/spec/lib/entityjs/assets_spec.rb +216 -0
  82. data/spec/lib/entityjs/command_spec.rb +53 -0
  83. data/spec/lib/entityjs/commands/build_spec.rb +69 -0
  84. data/spec/lib/entityjs/commands/comp_spec.rb +45 -0
  85. data/spec/lib/entityjs/commands/font_spec.rb +7 -0
  86. data/spec/lib/entityjs/commands/new_spec.rb +20 -0
  87. data/spec/lib/entityjs/commands/templates_spec.rb +9 -0
  88. data/spec/lib/entityjs/commands/test_spec.rb +31 -0
  89. data/spec/lib/entityjs/config_spec.rb +19 -0
  90. data/spec/lib/entityjs/dirc_spec.rb +83 -0
  91. data/spec/lib/entityjs/version_spec.rb +9 -0
  92. data/spec/spec_helper.rb +21 -3
  93. data/spec/support/factories.rb +19 -0
  94. data/spec/support/mygame.rb +11 -0
  95. data/src/core/comp.js +318 -0
  96. data/src/core/entity.js +549 -0
  97. data/src/core/load.js +242 -0
  98. data/src/core/query.js +354 -0
  99. data/src/core/re.js +74 -0
  100. data/src/core/system.js +121 -0
  101. data/src/cycle/draw.js +178 -0
  102. data/src/cycle/tick.js +25 -0
  103. data/src/{entityjs/cycle → cycle}/tween.js +60 -60
  104. data/src/{entityjs/cycle → cycle}/update.js +86 -85
  105. data/src/{entityjs/cycle → cycle}/wait.js +22 -21
  106. data/src/{entityjs/cycle → cycle}/worker.js +8 -8
  107. data/src/display/align.js +45 -0
  108. data/src/display/circle.js +33 -0
  109. data/src/{entityjs/display → display}/group.js +62 -62
  110. data/src/display/image.js +35 -0
  111. data/src/display/imgtext.js +102 -0
  112. data/src/{entityjs/display → display}/rect.js +18 -18
  113. data/src/display/screen.js +57 -0
  114. data/src/display/sprite.js +54 -0
  115. data/src/display/text.js +44 -0
  116. data/src/{entityjs/input → input}/keyboard.js +152 -150
  117. data/src/input/mouse.js +111 -0
  118. data/src/input/pressed.js +41 -0
  119. data/src/{entityjs/input → input}/touch.js +24 -28
  120. data/src/math/bisect.js +84 -0
  121. data/src/math/body.js +70 -0
  122. data/src/{entityjs/math → math}/drag.js +44 -38
  123. data/src/math/force.js +143 -0
  124. data/src/math/hit.js +32 -0
  125. data/src/math/hitmap.js +167 -0
  126. data/src/math/limit.js +37 -0
  127. data/src/math/point.js +40 -0
  128. data/src/math/tile.js +109 -0
  129. data/src/media/channel.js +93 -0
  130. data/src/{entityjs/media → media}/playlist.js +4 -4
  131. data/src/media/sound.js +114 -0
  132. data/src/{entityjs/net → net}/socket.js +51 -51
  133. data/src/pattern/automap.js +133 -0
  134. data/src/{entityjs/pattern → pattern}/flicker.js +206 -213
  135. data/src/pattern/timestep.js +31 -0
  136. data/src/{entityjs/save → save}/database.js +6 -6
  137. data/src/{entityjs/save → save}/storage.js +47 -56
  138. data/src/{entityjs/util → util}/log.js +17 -25
  139. data/src/{entityjs/util → util}/polyfill.js +24 -24
  140. data/src/util/random.js +20 -0
  141. data/src/util/scene.js +102 -0
  142. data/src/util/sheet.js +35 -0
  143. data/src/{entityjs/util → util}/support.js +109 -132
  144. data/{examples/keys → templates/arrow_keys/assets/images}/arrow.png +0 -0
  145. data/templates/arrow_keys/config.yml +22 -0
  146. data/templates/arrow_keys/readme.txt +9 -0
  147. data/templates/arrow_keys/scripts/display/arrow.js +69 -0
  148. data/templates/arrow_keys/scripts/init.js +10 -0
  149. data/templates/arrow_keys/scripts/input/controls.js +35 -0
  150. data/templates/arrow_keys/scripts/scenes/home.js +20 -0
  151. data/templates/arrow_keys/scripts/scenes/load.js +57 -0
  152. data/templates/arrow_keys/tests/display/arrow_test.js +29 -0
  153. data/templates/arrow_keys/tests/init_test.js +4 -0
  154. data/templates/arrow_keys/tests/input/controls_test.js +32 -0
  155. data/templates/arrow_keys/tests/scenes/home_test.js +0 -0
  156. data/templates/arrow_keys/tests/scenes/load_test.js +16 -0
  157. data/templates/blank/config.yml +22 -0
  158. data/templates/blank/readme.txt +79 -0
  159. data/templates/platform/assets/images/bit.png +0 -0
  160. data/templates/platform/assets/images/hero.png +0 -0
  161. data/templates/platform/assets/images/items.png +0 -0
  162. data/templates/platform/assets/images/tiles.png +0 -0
  163. data/templates/platform/assets/levels/level1.tmx +44 -0
  164. data/templates/platform/assets/sounds/coin.mp3 +0 -0
  165. data/templates/platform/assets/sounds/coin.ogg +0 -0
  166. data/templates/platform/config.yml +22 -0
  167. data/templates/platform/readme.txt +87 -0
  168. data/templates/platform/scripts/display/bit.js +12 -0
  169. data/templates/platform/scripts/display/hero.js +77 -0
  170. data/templates/platform/scripts/display/tile.js +2 -0
  171. data/templates/platform/scripts/display/tsprite.js +17 -0
  172. data/templates/platform/scripts/init.js +7 -0
  173. data/templates/platform/scripts/items/coin.js +27 -0
  174. data/templates/platform/scripts/items/item.js +41 -0
  175. data/templates/platform/scripts/items/spring.js +25 -0
  176. data/templates/platform/scripts/scenes/home.js +10 -0
  177. data/templates/platform/scripts/scenes/load.js +27 -0
  178. data/templates/platform/scripts/scenes/play.js +31 -0
  179. data/templates/platform/scripts/util/counter.js +34 -0
  180. data/templates/platform/scripts/util/level.js +84 -0
  181. data/templates/platform/tests/display/bit_test.js +7 -0
  182. data/templates/platform/tests/display/hero_test.js +73 -0
  183. data/templates/platform/tests/display/tile_test.js +7 -0
  184. data/templates/platform/tests/display/tsprite_test.js +8 -0
  185. data/templates/platform/tests/factories.js +30 -0
  186. data/templates/platform/tests/items/coin_test.js +28 -0
  187. data/templates/platform/tests/items/item_test.js +36 -0
  188. data/templates/platform/tests/items/spring_test.js +21 -0
  189. data/templates/platform/tests/scenes/home_test.js +9 -0
  190. data/templates/platform/tests/scenes/load_test.js +11 -0
  191. data/templates/platform/tests/scenes/play_test.js +15 -0
  192. data/templates/platform/tests/util/counter_test.js +9 -0
  193. data/templates/platform/tests/util/level_test.js +29 -0
  194. metadata +249 -97
  195. data/build/build_debug.bat +0 -1
  196. data/build/build_min.bat +0 -1
  197. data/build/config.php +0 -64
  198. data/build/debug.php +0 -48
  199. data/build/files.php +0 -74
  200. data/build/jsmin.php +0 -376
  201. data/build/min.php +0 -50
  202. data/changelog.txt +0 -53
  203. data/examples/keys/keys.html +0 -59
  204. data/examples/keys/keys.js +0 -148
  205. data/examples/mouse/mouse.html +0 -58
  206. data/examples/mouse/mouse.js +0 -60
  207. data/examples/scenes/home.png +0 -0
  208. data/examples/scenes/scenes.html +0 -55
  209. data/examples/scenes/scenes.js +0 -134
  210. data/examples/scenes/win.png +0 -0
  211. data/examples/sounds/sound1.mp3 +0 -0
  212. data/examples/sounds/sound1.ogg +0 -0
  213. data/examples/sounds/sounds.html +0 -56
  214. data/examples/sounds/sounds.js +0 -44
  215. data/examples/style/background.png +0 -0
  216. data/examples/style/sheet.css +0 -762
  217. data/examples/tiles/tiles.html +0 -56
  218. data/examples/tiles/tiles.js +0 -85
  219. data/examples/tiles/tiles.png +0 -0
  220. data/lib/blank/config.js +0 -4
  221. data/lib/blank/config.yml +0 -21
  222. data/lib/blank/home.js +0 -11
  223. data/lib/blank/init.js +0 -7
  224. data/lib/blank/load.js +0 -21
  225. data/lib/blank/play.html +0 -29
  226. data/lib/entity.debug.js +0 -52
  227. data/lib/entity.min.js +0 -184
  228. data/lib/entityjs/comp.rb +0 -11
  229. data/lib/entityjs/game.rb +0 -93
  230. data/lib/entityjs/min.rb +0 -11
  231. data/lib/entityjs/refresh.rb +0 -14
  232. data/spec/lib/entityjs/game_spec.rb +0 -11
  233. data/src/entityjs/core/component.js +0 -306
  234. data/src/entityjs/core/entity.js +0 -516
  235. data/src/entityjs/core/load.js +0 -224
  236. data/src/entityjs/core/query.js +0 -410
  237. data/src/entityjs/core/re.js +0 -70
  238. data/src/entityjs/core/system.js +0 -125
  239. data/src/entityjs/cycle/draw.js +0 -185
  240. data/src/entityjs/cycle/ticker.js +0 -27
  241. data/src/entityjs/display/anchor.js +0 -53
  242. data/src/entityjs/display/bitfont.js +0 -93
  243. data/src/entityjs/display/bitmap.js +0 -37
  244. data/src/entityjs/display/circle.js +0 -30
  245. data/src/entityjs/display/font.js +0 -41
  246. data/src/entityjs/display/screen.js +0 -46
  247. data/src/entityjs/display/sprite.js +0 -37
  248. data/src/entityjs/input/mouse.js +0 -123
  249. data/src/entityjs/input/pressed.js +0 -81
  250. data/src/entityjs/math/bind.js +0 -76
  251. data/src/entityjs/math/bisect.js +0 -69
  252. data/src/entityjs/math/body.js +0 -39
  253. data/src/entityjs/math/hitmap.js +0 -165
  254. data/src/entityjs/math/hittest.js +0 -26
  255. data/src/entityjs/math/physics.js +0 -142
  256. data/src/entityjs/math/point.js +0 -57
  257. data/src/entityjs/math/tile.js +0 -91
  258. data/src/entityjs/media/channel.js +0 -93
  259. data/src/entityjs/media/sound.js +0 -110
  260. data/src/entityjs/pattern/arraymap.js +0 -89
  261. data/src/entityjs/pattern/timestep.js +0 -34
  262. data/src/entityjs/util/random.js +0 -38
  263. data/src/entityjs/util/scene.js +0 -101
  264. data/src/entityjs/util/sheet.js +0 -51
@@ -1,58 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
-
4
- <head>
5
- <meta http-equiv="X-UA-Compatible" content="chrome=1">
6
-
7
- <title>Mouse Demo</title>
8
- <script language="javascript">
9
- //modify path of entity.debug.js
10
- path = '../../';
11
- </script>
12
- <script src="../../lib/entity.debug.js" language="javascript"></script>
13
- <script src="mouse.js" language="javascript"></script>
14
-
15
- <link rel="stylesheet" type="text/css" href="../style/sheet.css" />
16
-
17
- </head>
18
-
19
- <body>
20
-
21
-
22
- <div class="container_24">
23
- <div id="content">
24
- <h1>Mouse Demo</h1>
25
-
26
- <div class="canvas-container">
27
- <canvas id="canvas" width="500" height="400"> </canvas>
28
- </div>
29
-
30
- <div class="grid_12">
31
- <h2 class="hd-left bg-yellow">Overview</h2>
32
- <p>
33
- Click with the, left mouse, right mouse and middle mouse. View the <a href="mouse.js">source code</a> to see how easy it is to program.
34
- </p>
35
- </div>
36
-
37
- <div class="grid_12">
38
- <h2 class="hd-right bg-yellow">Controls</h2>
39
-
40
- <ul>
41
- <li><span class="key">Mouse Left</span> Console log.</li>
42
- <li><span class="key">Mouse Right</span> Console log. </li>
43
- <li><span class="key">Mouse Middle</span> Console log.</li>
44
- </ul>
45
-
46
- </div>
47
-
48
- <div class="clear"></div>
49
- </div>
50
-
51
-
52
-
53
- </div>
54
-
55
- </body>
56
-
57
-
58
- </html>
@@ -1,60 +0,0 @@
1
- /*
2
-
3
-
4
- */
5
-
6
- re.constants = {
7
- canvasId:'#canvas'
8
- };
9
-
10
- re.ready(function(){
11
-
12
- //because we're not running on a server turn off root path
13
- re.load.path = '';
14
-
15
- //inits the system
16
- re.sys.init(re.constants.canvasId).start();
17
-
18
- re.sys.clearColor = '#FFFFFF';
19
-
20
- re.e('mouse update pressed')
21
- .addSignal('mousedown',function(){
22
- console.log('Mouse down!');
23
- })
24
- .addSignal('mouseup', function(){
25
- console.log('Mouse up!');
26
-
27
- })
28
- .addSignal('mousemove', function(x, y){
29
- console.log('Mouse move!',x+' '+y);
30
-
31
- })
32
- .addSignal('click', function(){
33
- console.log('Mouse click!');
34
-
35
- })
36
- .addSignal('dblclick', function(){
37
- console.log('Mouse double click!');
38
-
39
- })
40
- .addSignal('contextmenu', function(){
41
- console.log('Contextmenu!');
42
-
43
- })
44
- .addSignal('update', function(){
45
-
46
- if(this.pressed('mouse:left')){
47
- console.log('mouse:left');
48
- }
49
-
50
- if(this.pressed('mouse:right')){
51
- console.log('mouse:right');
52
- }
53
-
54
- if(this.pressed('mouse:middle')){
55
- console.log('mouse:middle');
56
- }
57
-
58
- });
59
-
60
- });
Binary file
@@ -1,55 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
-
4
- <head>
5
- <meta http-equiv="X-UA-Compatible" content="chrome=1">
6
- <title>Scenes Demo</title>
7
- <script language="javascript">
8
- //modify path of entity.debug.js
9
- path = '../../';
10
- </script>
11
- <script src="../../lib/entity.debug.js" language="javascript"></script>
12
- <script src="scenes.js" language="javascript"></script>
13
-
14
- <link rel="stylesheet" type="text/css" href="../style/sheet.css" />
15
-
16
- </head>
17
-
18
- <body>
19
-
20
-
21
- <div class="container_24">
22
- <div id="content">
23
- <h1>Scenes Demo</h1>
24
-
25
- <div class="canvas-container">
26
- <canvas id="canvas" width="500" height="400"> </canvas>
27
- </div>
28
-
29
- <div class="grid_12">
30
- <h2 class="hd-left bg-yellow">Overview</h2>
31
- <p>
32
- This demo introduces the scene component. The scene component is a way to organize different states of a game. For example a normal game has 4 scenes, preload, play, win and lose. View the <a href="scenes.js">source code</a>.
33
- </p>
34
- </div>
35
-
36
- <div class="grid_12">
37
- <h2 class="hd-right bg-yellow">Controls</h2>
38
-
39
- <ul>
40
- <li>Follow instructions.</li>
41
- </ul>
42
-
43
- </div>
44
-
45
- <div class="clear"></div>
46
- </div>
47
-
48
-
49
-
50
- </div>
51
-
52
- </body>
53
-
54
-
55
- </html>
@@ -1,134 +0,0 @@
1
-
2
- re.constants = {
3
- canvasId:'#canvas',
4
- assets:'home.png win.png',
5
- size:{x:500, y: 400},
6
- maxScore:1000
7
- }
8
-
9
- re.ready(function(){
10
-
11
- re.sys.init(re.constants.canvasId)
12
- .start();
13
-
14
- //go to scene preload
15
- re.scene('preload');
16
-
17
- //remove root
18
- re.load.path = '';
19
-
20
- re.load(re.constants.assets)
21
- .complete(function(){
22
-
23
- //go to home scene
24
- re.scene('start');
25
-
26
- });
27
-
28
- });
29
-
30
- //extend scenes
31
-
32
- //first scene and openning scene
33
- re.scene('preload')
34
- //since a scene is just an entity
35
- //we can add components to it
36
- .addComp('font')
37
- .extend({
38
- text: 'Preloading',
39
- textColor:'#66b44d',
40
- posX: re.constants.size.x * 0.5,
41
- posY: re.constants.size.y * 0.5
42
- })
43
- .enter(function(){
44
-
45
- //called upon entering a scene
46
-
47
- //property from the draw component
48
- this.drawing = true;
49
-
50
- })
51
- .exit(function(newScene){
52
-
53
- //called upon exiting a scene
54
-
55
- this.drawing = false;
56
-
57
- //first argument is the new scene its switching to
58
- console.log('New scene is: '+newScene);
59
-
60
- });
61
-
62
- //create scenes directly from re.e
63
- re.e('scene:start')
64
- .enter(function(){
65
-
66
- //display bitmap home.png
67
- this.home = re.e('bitmap home.png');
68
-
69
- this.home.posX = 20;
70
- this.home.posY = 50;
71
-
72
- //add enter listener
73
- this.enter = re.e('keyboard')
74
- //add two signals listens for keyup of enter AND space. Cool eh??
75
- .addSignal('keyup', function(key){
76
- if(key == 'space' || key == 'enter'){
77
- var score = Math.floor(Math.random() * re.constants.maxScore);
78
-
79
- //you can send arguments to scenes
80
- re.scene('win', score, 'Awsome score!');
81
- }
82
- });
83
-
84
- })
85
- .exit(function(){
86
-
87
- this.home.dispose();
88
- this.enter.dispose();
89
-
90
- });
91
-
92
- //final scene accepts two arguments
93
- re.scene('win')
94
- .enter(function(points, rating){
95
-
96
- this.win = re.e('win.png bitmap')
97
- .extend({
98
- posX:100,
99
- posY:10
100
- });
101
-
102
- this.message = re.e('font');
103
-
104
- this.message.text = 'Your score is: '+points+'... '+rating;
105
- this.message.posX = 150;
106
- this.message.posY = 300;
107
-
108
- this.ret = re.e('font');
109
- this.ret.text = 'Press any key to return.';
110
- this.ret.posX = this.message.posX;
111
- this.ret.posY = this.message.posY + 30;
112
-
113
- this.key = re.e('keyboard')
114
- .addSignal('keyup', function(){
115
-
116
- re.scene('start');
117
-
118
- });
119
-
120
- })
121
- .exit(function(){
122
-
123
- //finds all draw entities and disposes them
124
- //all entities that draw to the screen have the draw component
125
- //but don't delete any scene entities, remember the scene preload is a draw entity!
126
- re('draw -scene').dispose();
127
-
128
- this.ret.dispose();
129
-
130
- //samething as writing
131
- /*this.win.dispose();
132
- this.text.dispose();*/
133
-
134
- });
Binary file
Binary file
Binary file
@@ -1,56 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
-
4
- <head>
5
- <meta http-equiv="X-UA-Compatible" content="chrome=1">
6
- <title>Sounds Demo</title>
7
- <script language="javascript">
8
- //modify path of entity.debug.js
9
- path = '../../';
10
- </script>
11
- <script src="../../lib/entity.debug.js" language="javascript"></script>
12
- <script src="sounds.js" language="javascript"></script>
13
-
14
- <link rel="stylesheet" type="text/css" href="../style/sheet.css" />
15
-
16
- </head>
17
-
18
- <body>
19
-
20
-
21
- <div class="container_24">
22
- <div id="content">
23
- <h1>Sounds Demo</h1>
24
-
25
- <div class="canvas-container">
26
- <canvas id="canvas" width="500" height="400"> </canvas>
27
- </div>
28
-
29
- <div class="grid_12">
30
- <h2 class="hd-left bg-yellow">Overview</h2>
31
- <p>
32
- Press Z or X to play a sound. View the <a href="sounds.js">source code</a> to see how easy it is to program.
33
- </p>
34
- </div>
35
-
36
- <div class="grid_12">
37
- <h2 class="hd-right bg-yellow">Controls</h2>
38
-
39
- <ul>
40
- <li><span class="key">Z</span> Play sound 1.</li>
41
- <li><span class="key">X</span> Play sound 2.</li>
42
- </ul>
43
-
44
- </div>
45
-
46
- <div class="clear"></div>
47
- </div>
48
-
49
-
50
-
51
- </div>
52
-
53
- </body>
54
-
55
-
56
- </html>
@@ -1,44 +0,0 @@
1
- /*
2
- This demo works in all 5 browsers. Even IE9.
3
-
4
- This example shows how you can play sound effects in the browser.
5
- Because not every browser all supports one codec you will need TWO
6
- sound codecs in your game. Of course you only want to load one file type.
7
-
8
- First you must get the currently supported sound codec.
9
- Then load that specific codec of sound. Look at re.load()
10
- */
11
- re.ready(function(){
12
-
13
- //no need to start rendering. Nothing to show
14
- //re.sys.init('#canvas').start();
15
-
16
- //find supported codec
17
- var codec = re.support('ogg', 'mp3');
18
-
19
- console.log('Codec supported '+codec);
20
-
21
- //only load sound with the supported codec!
22
- re.load('sound1.'+codec)
23
- .complete(function(){
24
-
25
- console.log('complete');
26
-
27
- //when sounds are loaded they are all given a special prefix
28
- //this lets you run the program normally without using re.support() everywhere
29
- s1 = re.e('sound sound1.sfx'); //could use sound1.ogg
30
-
31
- re.e('keyboard')
32
- .addSignal('keyup:x', function(){
33
- //play sound 1
34
- s1.play();
35
- })
36
- .addSignal('keyup:z', function(){
37
- //call sound directly
38
- re.c('sound1.sfx').sound.play();
39
- });
40
-
41
- });
42
-
43
-
44
- });
Binary file