littlejsengine 1.3.5 → 1.4.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.
- package/README.md +7 -4
- package/engine/engine.all.js +112 -74
- package/engine/engine.all.min.js +1 -1
- package/engine/engine.all.release.js +113 -75
- package/engine/engine.js +30 -27
- package/engine/engineDebug.js +1 -1
- package/engine/engineDraw.js +13 -5
- package/engine/engineInput.js +2 -2
- package/engine/engineRelease.js +2 -2
- package/engine/engineSettings.js +2 -1
- package/engine/engineTileLayer.js +1 -1
- package/engine/engineUtilities.js +62 -36
- package/engine/engineWebGL.js +1 -1
- package/engine/index.d.ts +34 -8
- package/examples/breakout/index.html +3 -3
- package/examples/particles/index.html +14 -14
- package/examples/platformer/game.js +1 -1
- package/examples/platformer/gameObjects.js +2 -2
- package/examples/platformer/index.html +5 -5
- package/examples/puzzle/index.html +2 -2
- package/examples/stress/index.html +1 -1
- package/game.js +1 -1
- package/index.html +13 -13
- package/package.json +1 -1
package/engine/index.d.ts
CHANGED
|
@@ -568,6 +568,26 @@ declare class Vector2 {
|
|
|
568
568
|
* @return {String} */
|
|
569
569
|
toString(digits?: float): string;
|
|
570
570
|
}
|
|
571
|
+
/**
|
|
572
|
+
* Create a color object with RGBA values
|
|
573
|
+
* @param {Number} [r=1]
|
|
574
|
+
* @param {Number} [g=1]
|
|
575
|
+
* @param {Number} [b=1]
|
|
576
|
+
* @param {Number} [a=1]
|
|
577
|
+
* @return {Color}
|
|
578
|
+
* @memberof Utilities
|
|
579
|
+
*/
|
|
580
|
+
declare function colorRGBA(r?: number, g?: number, b?: number, a?: number): Color;
|
|
581
|
+
/**
|
|
582
|
+
* Create a color object with HSLA values
|
|
583
|
+
* @param {Number} [h=0]
|
|
584
|
+
* @param {Number} [s=0]
|
|
585
|
+
* @param {Number} [l=1]
|
|
586
|
+
* @param {Number} [a=1]
|
|
587
|
+
* @return {Color}
|
|
588
|
+
* @memberof Utilities
|
|
589
|
+
*/
|
|
590
|
+
declare function colorHSLA(h?: number, s?: number, l?: number, a?: number): Color;
|
|
571
591
|
/**
|
|
572
592
|
* Color object (red, green, blue, alpha) with some helpful functions
|
|
573
593
|
* @example
|
|
@@ -629,6 +649,9 @@ declare class Color {
|
|
|
629
649
|
* @param {Number} [alpha=1]
|
|
630
650
|
* @return {Color} */
|
|
631
651
|
setHSLA(h?: number, s?: number, l?: number, a?: number): Color;
|
|
652
|
+
/** Returns this color expressed in hsla format
|
|
653
|
+
* @return {Array} */
|
|
654
|
+
getHSLA(): any[];
|
|
632
655
|
/** Returns a new color that has each component randomly adjusted
|
|
633
656
|
* @param {Number} [amount=.05]
|
|
634
657
|
* @param {Number} [alphaAmount=0]
|
|
@@ -640,16 +663,13 @@ declare class Color {
|
|
|
640
663
|
/** Returns this color expressed as 32 bit integer RGBA value
|
|
641
664
|
* @return {Number} */
|
|
642
665
|
rgbaInt(): number;
|
|
643
|
-
/** Returns this color expressed as a hex code
|
|
644
|
-
* @return {String} */
|
|
645
|
-
hex(): string;
|
|
646
|
-
/** Returns this color expressed in hsla format
|
|
647
|
-
* @return {Array} */
|
|
648
|
-
getHSLA(): any[];
|
|
649
666
|
/** Set this color from a hex code
|
|
650
667
|
* @param {String} hex - html hex code
|
|
651
668
|
* @return {Color} */
|
|
652
669
|
setHex(hex: string): Color;
|
|
670
|
+
/** Returns this color expressed as a hex code
|
|
671
|
+
* @return {String} */
|
|
672
|
+
getHex(): string;
|
|
653
673
|
}
|
|
654
674
|
/**
|
|
655
675
|
* Timer object tracks how long has passed since it was set
|
|
@@ -689,13 +709,17 @@ declare class Timer {
|
|
|
689
709
|
/** Returns this timer expressed as a string
|
|
690
710
|
* @return {String} */
|
|
691
711
|
toString(): string;
|
|
712
|
+
/** Get how long since elapsed, returns 0 if not set (returns negative if currently active)
|
|
713
|
+
* @return {Number} */
|
|
714
|
+
valueOf(): number;
|
|
692
715
|
}
|
|
693
716
|
/** The max size of the canvas, centered if window is larger
|
|
694
717
|
* @type {Vector2}
|
|
695
718
|
* @default
|
|
696
719
|
* @memberof Settings */
|
|
697
720
|
declare let canvasMaxSize: Vector2;
|
|
698
|
-
/** Fixed size of the canvas, if enabled
|
|
721
|
+
/** Fixed size of the canvas, if enabled canvas size never changes
|
|
722
|
+
* - you may also need to set mainCanvasSize if using screen space coords in startup
|
|
699
723
|
* @type {Vector2}
|
|
700
724
|
* @default
|
|
701
725
|
* @memberof Settings */
|
|
@@ -991,11 +1015,13 @@ declare let overlayContext: CanvasRenderingContext2D;
|
|
|
991
1015
|
* @memberof Draw */
|
|
992
1016
|
declare let mainCanvasSize: Vector2;
|
|
993
1017
|
/** Convert from screen to world space coordinates
|
|
1018
|
+
* - if calling outside of render, you may need to manually set mainCanvasSize
|
|
994
1019
|
* @param {Vector2} screenPos
|
|
995
1020
|
* @return {Vector2}
|
|
996
1021
|
* @memberof Draw */
|
|
997
1022
|
declare function screenToWorld(screenPos: Vector2): Vector2;
|
|
998
1023
|
/** Convert from world to screen space coordinates
|
|
1024
|
+
* - if calling outside of render, you may need to manually set mainCanvasSize
|
|
999
1025
|
* @param {Vector2} worldPos
|
|
1000
1026
|
* @return {Vector2}
|
|
1001
1027
|
* @memberof Draw */
|
|
@@ -1627,7 +1653,7 @@ declare const gl_VERTEX_BYTE_STRIDE: number;
|
|
|
1627
1653
|
/** Name of engine */
|
|
1628
1654
|
declare const engineName: "LittleJS";
|
|
1629
1655
|
/** Version of engine */
|
|
1630
|
-
declare const engineVersion: "1.
|
|
1656
|
+
declare const engineVersion: "1.4.0";
|
|
1631
1657
|
/** Frames per second to update objects
|
|
1632
1658
|
* @default */
|
|
1633
1659
|
declare const frameRate: 60;
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
<link rel=icon type=image/png href=../../favicon.png>
|
|
6
6
|
</head><body>
|
|
7
7
|
|
|
8
|
-
<script src=../../engine/engine.all.js?
|
|
9
|
-
<script src=game.js?
|
|
10
|
-
<script src=gameObjects.js?
|
|
8
|
+
<script src=../../engine/engine.all.js?112></script>
|
|
9
|
+
<script src=game.js?112></script>
|
|
10
|
+
<script src=gameObjects.js?112></script>
|
|
@@ -15,18 +15,18 @@ button
|
|
|
15
15
|
</style>
|
|
16
16
|
</head><body>
|
|
17
17
|
|
|
18
|
-
<script src=../../engine/engineDebug.js?
|
|
19
|
-
<script src=../../engine/engineUtilities.js?
|
|
20
|
-
<script src=../../engine/engineSettings.js?
|
|
21
|
-
<script src=../../engine/engineObject.js?
|
|
22
|
-
<script src=../../engine/engineDraw.js?
|
|
23
|
-
<script src=../../engine/engineInput.js?
|
|
24
|
-
<script src=../../engine/engineAudio.js?
|
|
25
|
-
<script src=../../engine/engineTileLayer.js?
|
|
26
|
-
<script src=../../engine/engineParticles.js?
|
|
27
|
-
<script src=../../engine/engineMedals.js?
|
|
28
|
-
<script src=../../engine/engineWebGL.js?
|
|
29
|
-
<script src=../../engine/engine.js?
|
|
18
|
+
<script src=../../engine/engineDebug.js?112></script>
|
|
19
|
+
<script src=../../engine/engineUtilities.js?112></script>
|
|
20
|
+
<script src=../../engine/engineSettings.js?112></script>
|
|
21
|
+
<script src=../../engine/engineObject.js?112></script>
|
|
22
|
+
<script src=../../engine/engineDraw.js?112></script>
|
|
23
|
+
<script src=../../engine/engineInput.js?112></script>
|
|
24
|
+
<script src=../../engine/engineAudio.js?112></script>
|
|
25
|
+
<script src=../../engine/engineTileLayer.js?112></script>
|
|
26
|
+
<script src=../../engine/engineParticles.js?112></script>
|
|
27
|
+
<script src=../../engine/engineMedals.js?112></script>
|
|
28
|
+
<script src=../../engine/engineWebGL.js?112></script>
|
|
29
|
+
<script src=../../engine/engine.js?112></script>
|
|
30
30
|
<script>
|
|
31
31
|
|
|
32
32
|
'use strict';
|
|
@@ -103,7 +103,7 @@ function gameInit()
|
|
|
103
103
|
if (type == 'color')
|
|
104
104
|
{
|
|
105
105
|
const color = particleSystem[name];
|
|
106
|
-
defaultValue = color.
|
|
106
|
+
defaultValue = color.getHex();
|
|
107
107
|
}
|
|
108
108
|
else if (type == 'alpha')
|
|
109
109
|
{
|
|
@@ -277,7 +277,7 @@ function updateSetting(setting, save=1)
|
|
|
277
277
|
if (type == 'color')
|
|
278
278
|
{
|
|
279
279
|
const color = particleSystem[name];
|
|
280
|
-
input.value = color.
|
|
280
|
+
input.value = color.getHex();
|
|
281
281
|
}
|
|
282
282
|
else if (type == 'alpha')
|
|
283
283
|
{
|
|
@@ -25,7 +25,7 @@ class GameObject extends EngineObject
|
|
|
25
25
|
// flash white when damaged
|
|
26
26
|
if (!this.isDead() && this.damageTimer.isSet())
|
|
27
27
|
{
|
|
28
|
-
const a = .5*percent(this.damageTimer
|
|
28
|
+
const a = .5*percent(this.damageTimer, .15, 0);
|
|
29
29
|
this.additiveColor = new Color(a,a,a,0);
|
|
30
30
|
}
|
|
31
31
|
else
|
|
@@ -134,7 +134,7 @@ class Enemy extends GameObject
|
|
|
134
134
|
render()
|
|
135
135
|
{
|
|
136
136
|
// bounce by changing size
|
|
137
|
-
const bounceTime = this.bounceTime
|
|
137
|
+
const bounceTime = this.bounceTime*6;
|
|
138
138
|
this.drawSize = vec2(1-.1*Math.sin(bounceTime), 1+.1*Math.sin(bounceTime));
|
|
139
139
|
|
|
140
140
|
// make bottom flush
|
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
<link rel=icon type=image/png href=../../favicon.png>
|
|
6
6
|
</head><body>
|
|
7
7
|
|
|
8
|
-
<script src=../../engine/engine.all.js?
|
|
9
|
-
<script src=gameObjects.js?
|
|
10
|
-
<script src=gamePlayer.js?
|
|
11
|
-
<script src=gameEffects.js?
|
|
12
|
-
<script src=gameLevel.js?
|
|
8
|
+
<script src=../../engine/engine.all.js?112></script>
|
|
9
|
+
<script src=gameObjects.js?112></script>
|
|
10
|
+
<script src=gamePlayer.js?112></script>
|
|
11
|
+
<script src=gameEffects.js?112></script>
|
|
12
|
+
<script src=gameLevel.js?112></script>
|
|
13
13
|
<script src=game.js?103></script>
|
package/game.js
CHANGED
|
@@ -14,7 +14,7 @@ let particleEmiter;
|
|
|
14
14
|
const sound_click = new Sound([.5,.5]);
|
|
15
15
|
|
|
16
16
|
// medals
|
|
17
|
-
const medal_example = new Medal(0, 'Example Medal', '
|
|
17
|
+
const medal_example = new Medal(0, 'Example Medal', 'Welcome to LittleJS!');
|
|
18
18
|
medalsInit('Hello World');
|
|
19
19
|
|
|
20
20
|
///////////////////////////////////////////////////////////////////////////////
|
package/index.html
CHANGED
|
@@ -6,21 +6,21 @@
|
|
|
6
6
|
</head><body>
|
|
7
7
|
|
|
8
8
|
<!-- LittleJS engine scripts -->
|
|
9
|
-
<script src=engine/engineDebug.js?
|
|
10
|
-
<script src=engine/engineUtilities.js?
|
|
11
|
-
<script src=engine/engineSettings.js?
|
|
12
|
-
<script src=engine/engineObject.js?
|
|
13
|
-
<script src=engine/engineDraw.js?
|
|
14
|
-
<script src=engine/engineInput.js?
|
|
15
|
-
<script src=engine/engineAudio.js?
|
|
16
|
-
<script src=engine/engineTileLayer.js?
|
|
17
|
-
<script src=engine/engineParticles.js?
|
|
18
|
-
<script src=engine/engineMedals.js?
|
|
19
|
-
<script src=engine/engineWebGL.js?
|
|
20
|
-
<script src=engine/engine.js?
|
|
9
|
+
<script src=engine/engineDebug.js?112></script>
|
|
10
|
+
<script src=engine/engineUtilities.js?112></script>
|
|
11
|
+
<script src=engine/engineSettings.js?112></script>
|
|
12
|
+
<script src=engine/engineObject.js?112></script>
|
|
13
|
+
<script src=engine/engineDraw.js?112></script>
|
|
14
|
+
<script src=engine/engineInput.js?112></script>
|
|
15
|
+
<script src=engine/engineAudio.js?112></script>
|
|
16
|
+
<script src=engine/engineTileLayer.js?112></script>
|
|
17
|
+
<script src=engine/engineParticles.js?112></script>
|
|
18
|
+
<script src=engine/engineMedals.js?112></script>
|
|
19
|
+
<script src=engine/engineWebGL.js?112></script>
|
|
20
|
+
<script src=engine/engine.js?112></script>
|
|
21
21
|
|
|
22
22
|
<!-- You can also include all engine scripts like this... -->
|
|
23
23
|
<!-- <script src=engine/engine.all.js></script> -->
|
|
24
24
|
|
|
25
25
|
<!-- Add your game scripts here -->
|
|
26
|
-
<script src=game.js?
|
|
26
|
+
<script src=game.js?112></script>
|