littlejsengine 1.1.18 → 1.2.3

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 (39) hide show
  1. package/README.md +17 -11
  2. package/build.bat +1 -0
  3. package/engine/engine.all.js +495 -504
  4. package/engine/engine.all.min.js +1 -1
  5. package/engine/engine.all.release.js +418 -259
  6. package/engine/engine.js +31 -23
  7. package/engine/engineAudio.js +21 -7
  8. package/engine/engineBuild.bat +9 -1
  9. package/engine/engineBuildSetup.bat +2 -1
  10. package/engine/engineDebug.js +81 -247
  11. package/engine/engineDraw.js +109 -21
  12. package/engine/engineFont.png +0 -0
  13. package/engine/engineInput.js +103 -50
  14. package/engine/engineMedals.js +17 -20
  15. package/engine/engineObject.js +14 -23
  16. package/engine/engineParticles.js +8 -6
  17. package/engine/engineRelease.js +3 -1
  18. package/engine/engineSettings.js +20 -10
  19. package/engine/engineTileLayer.js +19 -18
  20. package/engine/engineUtilities.js +14 -12
  21. package/engine/engineWebGL.js +59 -68
  22. package/engine/index.d.ts +1617 -0
  23. package/examples/breakout/game.js +9 -7
  24. package/examples/breakout/gameObjects.js +3 -3
  25. package/examples/breakout/index.html +6 -4
  26. package/examples/platformer/game.js +5 -5
  27. package/examples/platformer/gameEffects.js +11 -14
  28. package/examples/platformer/gameLevel.js +14 -7
  29. package/examples/platformer/gameObjects.js +3 -3
  30. package/examples/platformer/gamePlayer.js +13 -8
  31. package/examples/platformer/index.html +9 -7
  32. package/examples/platformer/tiles.png +0 -0
  33. package/examples/puzzle/game.js +2 -2
  34. package/examples/puzzle/index.html +5 -3
  35. package/examples/screenshot.jpg +0 -0
  36. package/examples/stress/index.html +7 -5
  37. package/game.js +9 -8
  38. package/index.html +16 -14
  39. package/package.json +1 -1
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  LittleJS is a super lightweight JavaScript game engine with a fast hybrid rendering system. It provides everything necessary to make amazing games, including rendering, physics, particles, sound effects, music, input handling, and debug tools. LittleJS is designed to be extremely small yet powerful enough for a variety of applications, from game jams to commercial releases. The code is very well documented with a variety of examples to get you started. Choo-Choo! 🚂
6
6
 
7
- ## [LittleJS Documentation](https://killedbyapixel.github.io/LittleJS/docs) - [LittleJS Trailer](https://youtu.be/chuBzGjv7Ms) - [LittleJS Trello Roadmap](https://trello.com/b/E9zf1Xak/littlejs)
7
+ ## [LittleJS Documentation](https://killedbyapixel.github.io/LittleJS/docs) - [LittleJS Trailer](https://youtu.be/chuBzGjv7Ms) - [LittleJS Trello](https://trello.com/b/E9zf1Xak/littlejs)
8
8
 
9
9
  ![LittleJS Screenshot](examples/screenshot.jpg)
10
10
 
@@ -19,27 +19,33 @@ LittleJS is a super lightweight JavaScript game engine with a fast hybrid render
19
19
  ## Features
20
20
 
21
21
  - Very small footprint with no dependencies
22
- - Can render 10,000+ objects at 60fps, often many times more
23
- - Object oriented system with base class engine object
24
- - Fast 2D physics and collision handling for axis aligned boxes
22
+ - Can update and render 10,000+ objects at 60fps, often many times more
23
+ - Object oriented system with fast 2D physics and collision handling for axis aligned boxes
25
24
  - Positional audio effects with [zzfx](https://killedbyapixel.github.io/ZzFX/) and music with [zzfxm](https://keithclark.github.io/ZzFXM/), mp3s, or wavs
26
25
  - Input processing system with keyboard, mouse, gamepad, and touch support
27
- - Engine helper functions and classes like Vector2, Color, and Timer
28
- - Tile layer cached rendering and collision system for level data
29
26
  - Particle effects system (particle editor/designer in progress)
30
27
  - Medal system tracks and displays achievements with Newgrounds and OS13k integration
31
28
  - Several easy to understand example projects you can build on
32
- - All example projects are compatible with mobile devices
33
29
  - Debug tools and debug rendering system
34
30
  - [Full documentation](https://killedbyapixel.github.io/LittleJS/docs) automatically generated from the source code block tags with [JSDoc](https://github.com/jsdoc/jsdoc)
35
31
  - Build system automatically combines everything, minifies, and removes unused code
36
- - For size coding competitions like [js13kGames](https://js13kgames.com/), starter project builds to a 7KB zip
37
- - Easily build a Windows executable with [electron](https://www.electronjs.org/) for distribution on platforms like Steam
38
- - Open Source with the [MIT license](https://github.com/KilledByAPixel/LittleJS/blob/main/LICENSE) so it can be used to make commercial games
32
+ - For size coding competitions like [js13kGames](https://js13kgames.com/), starter project builds to a 7KB zip with [Roadroller](https://github.com/lifthrasiir/roadroller)
33
+ - Easily build a Windows executable with [Electron](https://www.electronjs.org/) for distribution on platforms like Steam
34
+ - Open Source with the [MIT license](https://github.com/KilledByAPixel/LittleJS/blob/main/LICENSE) so it can be used for anything you want
35
+
36
+ ## Builds
37
+
38
+ To easily include LittleJS in your game, you can use one of the 3 pre-built js files. These are also built automatically by the build scripts..
39
+
40
+ - [engine.all.js](https://github.com/KilledByAPixel/LittleJS/blob/main/engine/engine.all.js) - The full game engine with debug mode available
41
+ - [engine.all.release.js](https://github.com/KilledByAPixel/LittleJS/blob/main/engine/engine.all.release.js) - The engine optimized for release builds
42
+ - [engine.all.min.js](https://github.com/KilledByAPixel/LittleJS/blob/main/engine/engine.all.min.js) - The engine in release mode and minified
43
+
44
+ The hello world example includes a batch file [build.bat](https://github.com/KilledByAPixel/LittleJS/blob/main/build.bat) that compresses everything into a tiny zip file using Google Closure, UglifyJS, Roadroller, and ECT.
39
45
 
40
46
  ## Games Made With LittleJS
41
47
 
42
48
  - [Space Huggers](https://github.com/KilledByAPixel/SpaceHuggers) - A more developed version of the platformer example
43
49
  - Send me your games!
44
50
 
45
- ![LittleJS Logo](favicon.png)
51
+ ![LittleJS Logo](favicon.png)
package/build.bat CHANGED
@@ -58,6 +58,7 @@ if %ERRORLEVEL% NEQ 0 (
58
58
  )
59
59
 
60
60
  rem build the html, you can add html header and footers here
61
+ rem type ..\header.html >> index.html
61
62
  echo ^<body^>^<meta charset=utf-8^>^<script^> >> index.html
62
63
  type roadroller_%BUILD_FILENAME% >> index.html
63
64
  echo ^</script^> >> index.html