littlejsengine 1.9.9 → 1.10.2
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 +6 -0
- package/dist/littlejs.d.ts +107 -14
- package/dist/littlejs.esm.js +250 -102
- package/dist/littlejs.esm.min.js +1 -1
- package/dist/littlejs.js +226 -98
- package/dist/littlejs.min.js +1 -1
- package/dist/littlejs.release.js +208 -95
- package/examples/box2d/game.js +29 -10
- package/examples/box2d/gameObjects.js +485 -0
- package/examples/box2d/index.html +7 -5
- package/examples/box2d/scenes.js +28 -247
- package/examples/box2d/tiles.png +0 -0
- package/examples/breakout/game.js +1 -1
- package/examples/breakout/index.html +5 -4
- package/examples/breakoutTutorial/index.html +4 -3
- package/examples/electron/game.js +1 -1
- package/examples/electron/index.html +4 -3
- package/examples/empty/game.js +1 -1
- package/examples/empty/index.html +2 -1
- package/examples/htmlMenu/game.js +67 -0
- package/examples/htmlMenu/index.html +56 -0
- package/examples/htmlMenu/tiles.png +0 -0
- package/examples/index.html +33 -0
- package/examples/js13k/game.js +1 -1
- package/examples/js13k/index.html +17 -14
- package/examples/module/game.js +1 -1
- package/examples/module/index.html +3 -2
- package/examples/particles/index.html +4 -3
- package/examples/platformer/game.js +1 -1
- package/examples/platformer/gameCharacter.js +1 -0
- package/examples/platformer/gameEffects.js +0 -2
- package/examples/platformer/gameLevel.js +2 -2
- package/examples/platformer/gameObjects.js +1 -2
- package/examples/platformer/index.html +10 -9
- package/examples/puzzle/game.js +1 -1
- package/examples/puzzle/index.html +4 -3
- package/examples/starter/game.js +5 -5
- package/examples/starter/index.html +15 -14
- package/examples/stress/index.html +3 -2
- package/examples/typescript/game.js +1 -1
- package/examples/typescript/index.html +3 -2
- package/examples/uiSystem/game.js +134 -0
- package/examples/uiSystem/index.html +25 -0
- package/examples/uiSystem/tiles.png +0 -0
- package/jsconfig.json +11 -0
- package/package.json +1 -1
- package/plugins/box2d.js +116 -42
- package/plugins/postProcess.js +6 -7
- package/plugins/uiSystem.js +243 -0
- package/src/engine.js +48 -20
- package/src/engineAudio.js +22 -25
- package/src/engineDebug.js +18 -3
- package/src/engineDraw.js +101 -27
- package/src/engineExport.js +23 -4
- package/src/engineInput.js +9 -5
- package/src/engineObject.js +15 -12
- package/src/engineSettings.js +1 -1
- package/src/engineUtilities.js +1 -1
- package/src/engineWebGL.js +11 -4
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
<!DOCTYPE html><head>
|
|
2
|
-
<title>
|
|
2
|
+
<title>LittleJS Particle System Designer</title>
|
|
3
|
+
<meta charset=utf-8>
|
|
3
4
|
<meta name=apple-mobile-web-app-capable content=yes>
|
|
4
5
|
<meta name=mobile-web-app-capable content=yes>
|
|
5
6
|
<link rel=icon type=image/png href=../favicon.png>
|
|
@@ -9,7 +10,7 @@ button { margin:1px; }
|
|
|
9
10
|
</style>
|
|
10
11
|
</head><body>
|
|
11
12
|
|
|
12
|
-
<script src=../../dist/littlejs.js?
|
|
13
|
+
<script src=../../dist/littlejs.js?1100></script>
|
|
13
14
|
<script>
|
|
14
15
|
|
|
15
16
|
'use strict';
|
|
@@ -390,6 +391,6 @@ function gameRenderPost()
|
|
|
390
391
|
|
|
391
392
|
///////////////////////////////////////////////////////////////////////////////
|
|
392
393
|
// Startup LittleJS Engine
|
|
393
|
-
engineInit(gameInit, gameUpdate, gameUpdatePost, gameRender, gameRenderPost);
|
|
394
|
+
engineInit(gameInit, gameUpdate, gameUpdatePost, gameRender, gameRenderPost, ['tiles.png']);
|
|
394
395
|
|
|
395
396
|
</script>
|
|
@@ -81,7 +81,7 @@ function gameUpdate()
|
|
|
81
81
|
function getCameraTarget()
|
|
82
82
|
{
|
|
83
83
|
// camera is above player
|
|
84
|
-
const offset =
|
|
84
|
+
const offset = 200/cameraScale*percent(mainCanvasSize.y, 300, 600);
|
|
85
85
|
return player.pos.add(vec2(0, offset));
|
|
86
86
|
}
|
|
87
87
|
|
|
@@ -92,8 +92,6 @@ function explosion(pos, radius=3)
|
|
|
92
92
|
const p = percent(d, 2*radius, radius);
|
|
93
93
|
const force = o.pos.subtract(pos).normalize(p*radius*.2);
|
|
94
94
|
o.applyForce(force);
|
|
95
|
-
if (o.isDead && o.isDead())
|
|
96
|
-
o.angleVelocity += randSign()*rand(p*radius/4,.3);
|
|
97
95
|
});
|
|
98
96
|
|
|
99
97
|
// smoke
|
|
@@ -53,10 +53,10 @@ function buildLevel()
|
|
|
53
53
|
player = new Player(playerStartPos);
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
function loadLevel()
|
|
56
|
+
function loadLevel(level=0)
|
|
57
57
|
{
|
|
58
58
|
// load level data from an exported Tiled js file
|
|
59
|
-
const dataName = Object.keys(TileMaps)[
|
|
59
|
+
const dataName = Object.keys(TileMaps)[level];
|
|
60
60
|
const tileMapData = TileMaps[dataName];
|
|
61
61
|
levelSize = vec2(tileMapData.width, tileMapData.height);
|
|
62
62
|
initTileCollision(levelSize);
|
|
@@ -66,7 +66,7 @@ class Crate extends GameObject
|
|
|
66
66
|
{
|
|
67
67
|
constructor(pos)
|
|
68
68
|
{
|
|
69
|
-
super(pos, vec2(
|
|
69
|
+
super(pos, vec2(.999), spriteAtlas.crate, (randInt(4))*PI/2);
|
|
70
70
|
|
|
71
71
|
this.color = hsl(rand(),1,.8);
|
|
72
72
|
this.health = 5;
|
|
@@ -147,7 +147,6 @@ class Enemy extends GameObject
|
|
|
147
147
|
if (this.groundObject && rand() < .01 && this.pos.distance(player.pos) < 20)
|
|
148
148
|
{
|
|
149
149
|
this.velocity = vec2(rand(.1,-.1), rand(.4,.2));
|
|
150
|
-
sound_jump.play(this.pos, .4, 2);
|
|
151
150
|
}
|
|
152
151
|
|
|
153
152
|
// damage player if touching
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
<!DOCTYPE html><head>
|
|
2
|
-
<title>
|
|
2
|
+
<title>LittleJS Platforming Game</title>
|
|
3
|
+
<meta charset=utf-8>
|
|
3
4
|
<meta name=viewport content=width=device-width,height=device-height,initial-scale=1,maximum-scale=1>
|
|
4
5
|
<meta name=apple-mobile-web-app-capable content=yes>
|
|
5
6
|
<meta name=mobile-web-app-capable content=yes>
|
|
6
7
|
<link rel=icon type=image/png href=../favicon.png>
|
|
7
8
|
</head><body>
|
|
8
9
|
|
|
9
|
-
<script src=../../dist/littlejs.js?
|
|
10
|
-
<script src=gameObjects.js?
|
|
11
|
-
<script src=gameCharacter.js?
|
|
12
|
-
<script src=gamePlayer.js?
|
|
13
|
-
<script src=gameEffects.js?
|
|
14
|
-
<script src=gameLevel.js?
|
|
15
|
-
<script src=gameLevelData.js?
|
|
16
|
-
<script src=game.js?
|
|
10
|
+
<script src=../../dist/littlejs.js?1100></script>
|
|
11
|
+
<script src=gameObjects.js?1100></script>
|
|
12
|
+
<script src=gameCharacter.js?1100></script>
|
|
13
|
+
<script src=gamePlayer.js?1100></script>
|
|
14
|
+
<script src=gameEffects.js?1100></script>
|
|
15
|
+
<script src=gameLevel.js?1100></script>
|
|
16
|
+
<script src=gameLevelData.js?1100></script>
|
|
17
|
+
<script src=game.js?1100></script>
|
package/examples/puzzle/game.js
CHANGED
|
@@ -229,7 +229,7 @@ function gameRenderPost()
|
|
|
229
229
|
|
|
230
230
|
///////////////////////////////////////////////////////////////////////////////
|
|
231
231
|
// Startup LittleJS Engine
|
|
232
|
-
engineInit(gameInit, gameUpdate, gameUpdatePost, gameRender, gameRenderPost);
|
|
232
|
+
engineInit(gameInit, gameUpdate, gameUpdatePost, gameRender, gameRenderPost, ['tiles.png']);
|
|
233
233
|
|
|
234
234
|
///////////////////////////////////////////////////////////////////////////////
|
|
235
235
|
// find and remove all runs of 3 or higher
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
<!DOCTYPE html><head>
|
|
2
|
-
<title>
|
|
2
|
+
<title>LittleJS Puzzle Game</title>
|
|
3
|
+
<meta charset=utf-8>
|
|
3
4
|
<meta name=apple-mobile-web-app-capable content=yes>
|
|
4
5
|
<meta name=mobile-web-app-capable content=yes>
|
|
5
6
|
<link rel=icon type=image/png href=../favicon.png>
|
|
6
7
|
</head><body>
|
|
7
8
|
|
|
8
|
-
<script src=../../dist/littlejs.js?
|
|
9
|
-
<script src=game.js?
|
|
9
|
+
<script src=../../dist/littlejs.js?1100></script>
|
|
10
|
+
<script src=game.js?1100></script>
|
package/examples/starter/game.js
CHANGED
|
@@ -43,7 +43,7 @@ function gameInit()
|
|
|
43
43
|
// set tile data
|
|
44
44
|
const tileIndex = 1;
|
|
45
45
|
const direction = randInt(4)
|
|
46
|
-
const mirror = randInt(2);
|
|
46
|
+
const mirror = !randInt(2);
|
|
47
47
|
const color = randColor();
|
|
48
48
|
const data = new TileLayerData(tileIndex, direction, mirror, color);
|
|
49
49
|
tileLayer.setData(pos, data);
|
|
@@ -63,13 +63,13 @@ function gameInit()
|
|
|
63
63
|
// create particle emitter
|
|
64
64
|
particleEmitter = new ParticleEmitter(
|
|
65
65
|
vec2(16,9), 0, // emitPos, emitAngle
|
|
66
|
-
|
|
66
|
+
0, 0, 500, PI, // emitSize, emitTime, emitRate, emiteCone
|
|
67
67
|
tile(0, 16), // tileIndex, tileSize
|
|
68
68
|
hsl(1,1,1), hsl(0,0,0), // colorStartA, colorStartB
|
|
69
69
|
hsl(0,0,0,0), hsl(0,0,0,0), // colorEndA, colorEndB
|
|
70
70
|
2, .2, .2, .1, .05, // time, sizeStart, sizeEnd, speed, angleSpeed
|
|
71
71
|
.99, 1, 1, PI, // damping, angleDamping, gravityScale, cone
|
|
72
|
-
.05, .5,
|
|
72
|
+
.05, .5, true, true // fadeRate, randomness, collide, additive
|
|
73
73
|
);
|
|
74
74
|
particleEmitter.elasticity = .3; // bounce when it collides
|
|
75
75
|
particleEmitter.trailScale = 2; // stretch in direction of motion
|
|
@@ -108,7 +108,7 @@ function gameUpdatePost()
|
|
|
108
108
|
function gameRender()
|
|
109
109
|
{
|
|
110
110
|
// draw a grey square in the background without using webgl
|
|
111
|
-
drawRect(vec2(16,8), vec2(20,14), hsl(0,0,.6), 0,
|
|
111
|
+
drawRect(vec2(16,8), vec2(20,14), hsl(0,0,.6), 0, false);
|
|
112
112
|
|
|
113
113
|
// draw the logo as a tile
|
|
114
114
|
drawTile(vec2(21,5), vec2(4.5), tile(3,128));
|
|
@@ -125,4 +125,4 @@ function gameRenderPost()
|
|
|
125
125
|
|
|
126
126
|
///////////////////////////////////////////////////////////////////////////////
|
|
127
127
|
// Startup LittleJS Engine
|
|
128
|
-
engineInit(gameInit, gameUpdate, gameUpdatePost, gameRender, gameRenderPost);
|
|
128
|
+
engineInit(gameInit, gameUpdate, gameUpdatePost, gameRender, gameRenderPost, ['tiles.png']);
|
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
<!DOCTYPE html><head>
|
|
2
|
-
<title>
|
|
2
|
+
<title>LittleJS Starter Project</title>
|
|
3
|
+
<meta charset=utf-8>
|
|
3
4
|
<meta name=apple-mobile-web-app-capable content=yes>
|
|
4
5
|
<meta name=mobile-web-app-capable content=yes>
|
|
5
6
|
<link rel=icon type=image/png href=../favicon.png>
|
|
6
7
|
</head><body>
|
|
7
8
|
|
|
8
9
|
<!-- LittleJS Engine -->
|
|
9
|
-
<script src=../../src/engineDebug.js?
|
|
10
|
-
<script src=../../src/engineUtilities.js?
|
|
11
|
-
<script src=../../src/engineSettings.js?
|
|
12
|
-
<script src=../../src/engineObject.js?
|
|
13
|
-
<script src=../../src/engineDraw.js?
|
|
14
|
-
<script src=../../src/engineInput.js?
|
|
15
|
-
<script src=../../src/engineAudio.js?
|
|
16
|
-
<script src=../../src/engineTileLayer.js?
|
|
17
|
-
<script src=../../src/engineParticles.js?
|
|
18
|
-
<script src=../../src/engineMedals.js?
|
|
19
|
-
<script src=../../src/engineWebGL.js?
|
|
20
|
-
<script src=../../src/engine.js?
|
|
10
|
+
<script src=../../src/engineDebug.js?1100></script>
|
|
11
|
+
<script src=../../src/engineUtilities.js?1100></script>
|
|
12
|
+
<script src=../../src/engineSettings.js?1100></script>
|
|
13
|
+
<script src=../../src/engineObject.js?1100></script>
|
|
14
|
+
<script src=../../src/engineDraw.js?1100></script>
|
|
15
|
+
<script src=../../src/engineInput.js?1100></script>
|
|
16
|
+
<script src=../../src/engineAudio.js?1100></script>
|
|
17
|
+
<script src=../../src/engineTileLayer.js?1100></script>
|
|
18
|
+
<script src=../../src/engineParticles.js?1100></script>
|
|
19
|
+
<script src=../../src/engineMedals.js?1100></script>
|
|
20
|
+
<script src=../../src/engineWebGL.js?1100></script>
|
|
21
|
+
<script src=../../src/engine.js?1100></script>
|
|
21
22
|
|
|
22
23
|
<!-- Add your game scripts here -->
|
|
23
|
-
<script src=game.js?
|
|
24
|
+
<script src=game.js?1100></script>
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
<!DOCTYPE html><head>
|
|
2
|
-
<title>
|
|
2
|
+
<title>LittleJS Stress Test</title>
|
|
3
|
+
<meta charset=utf-8>
|
|
3
4
|
<meta name=apple-mobile-web-app-capable content=yes>
|
|
4
5
|
<meta name=mobile-web-app-capable content=yes>
|
|
5
6
|
<link rel=icon type=image/png href=../favicon.png>
|
|
6
7
|
</head><body>
|
|
7
8
|
|
|
8
9
|
<!-- LittleJS Engine -->
|
|
9
|
-
<script src=../../dist/littlejs.min.js?
|
|
10
|
+
<script src=../../dist/littlejs.min.js?1100></script>
|
|
10
11
|
<script>
|
|
11
12
|
|
|
12
13
|
/*
|
|
@@ -97,4 +97,4 @@ function gameRenderPost() {
|
|
|
97
97
|
}
|
|
98
98
|
///////////////////////////////////////////////////////////////////////////////
|
|
99
99
|
// Startup LittleJS Engine
|
|
100
|
-
LittleJS.engineInit(gameInit, gameUpdate, gameUpdatePost, gameRender, gameRenderPost);
|
|
100
|
+
LittleJS.engineInit(gameInit, gameUpdate, gameUpdatePost, gameRender, gameRenderPost, ['tiles.png']);
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
<!DOCTYPE html><head>
|
|
2
|
-
<title>
|
|
2
|
+
<title>LittleJS TypeScript Demo</title>
|
|
3
|
+
<meta charset=utf-8>
|
|
3
4
|
<meta name=apple-mobile-web-app-capable content=yes>
|
|
4
5
|
<meta name=mobile-web-app-capable content=yes>
|
|
5
6
|
<link rel=icon type=image/png href=../favicon.png>
|
|
6
7
|
</head><body>
|
|
7
8
|
|
|
8
9
|
<!-- Add your game scripts here -->
|
|
9
|
-
<script src=game.js?
|
|
10
|
+
<script src=game.js?1100 type=module></script>
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Little JS UI System Example
|
|
3
|
+
- Shows how to use the LittleJS UI plugin
|
|
4
|
+
- Modal windows, buttons, text, checkboxes, and more
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
'use strict';
|
|
8
|
+
|
|
9
|
+
// show the LittleJS splash screen
|
|
10
|
+
setShowSplashScreen(true);
|
|
11
|
+
|
|
12
|
+
// sound effects
|
|
13
|
+
const sound_click = new Sound([1,0]);
|
|
14
|
+
|
|
15
|
+
// UI system
|
|
16
|
+
let uiRoot, uiMenu;
|
|
17
|
+
const getMenuVisible =()=> uiMenu.visible;
|
|
18
|
+
const setMenuVisible =(visible)=> uiMenu.visible = visible;
|
|
19
|
+
|
|
20
|
+
function createUI()
|
|
21
|
+
{
|
|
22
|
+
// setup root to attach all ui elements to
|
|
23
|
+
uiRoot = new UIObject(vec2(mainCanvasSize.x/2,0));
|
|
24
|
+
const uiInfo = new UIText(vec2(0,50), vec2(1e3, 70),
|
|
25
|
+
'LittleJS UI System Example\nM = Toggle menu');
|
|
26
|
+
uiInfo.textColor = WHITE;
|
|
27
|
+
uiInfo.lineWidth = 8;
|
|
28
|
+
uiRoot.addChild(uiInfo);
|
|
29
|
+
|
|
30
|
+
// setup example menu
|
|
31
|
+
uiMenu = new UIObject(vec2(0,450));
|
|
32
|
+
uiRoot.addChild(uiMenu);
|
|
33
|
+
const uiBackground = new UIObject(vec2(0,0), vec2(450,550));
|
|
34
|
+
uiMenu.addChild(uiBackground);
|
|
35
|
+
|
|
36
|
+
// example large text
|
|
37
|
+
const textTitle = new UIText(vec2(0,-200), vec2(500, 90), 'Test Title');
|
|
38
|
+
uiMenu.addChild(textTitle);
|
|
39
|
+
textTitle.textColor = RED;
|
|
40
|
+
textTitle.lineWidth = 4;
|
|
41
|
+
textTitle.lineColor = BLUE;
|
|
42
|
+
|
|
43
|
+
// example multiline text
|
|
44
|
+
const textTest = new UIText(vec2(-60,-120), vec2(300, 50), 'Test Text\nSecond text line.')
|
|
45
|
+
uiMenu.addChild(textTest);
|
|
46
|
+
|
|
47
|
+
// example tile image
|
|
48
|
+
const tileTest = new UITile(vec2(150,-110), vec2(110), tile(3,128))
|
|
49
|
+
uiMenu.addChild(tileTest);
|
|
50
|
+
|
|
51
|
+
// example checkbox
|
|
52
|
+
const checkbox = new UICheckbox(vec2(-160,0), vec2(50));
|
|
53
|
+
uiMenu.addChild(checkbox);
|
|
54
|
+
checkbox.onClick = ()=>
|
|
55
|
+
{
|
|
56
|
+
checkbox.checked = !checkbox.checked;
|
|
57
|
+
console.log('Checkbox clicked');
|
|
58
|
+
sound_click.play(0,.5,checkbox.checked?4:1);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
// text attached to checkbox
|
|
62
|
+
const checkboxText = new UIText(vec2(200,0), vec2(300, 50), 'Test Checkbox');
|
|
63
|
+
checkbox.addChild(checkboxText);
|
|
64
|
+
|
|
65
|
+
// example button
|
|
66
|
+
const button1 = new UIButton(vec2(0,90), vec2(350, 70), 'Test Button', RED, 6, CYAN);
|
|
67
|
+
uiMenu.addChild(button1);
|
|
68
|
+
button1.onClick = ()=>
|
|
69
|
+
{
|
|
70
|
+
console.log('Button 1 clicked');
|
|
71
|
+
sound_click.play();
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// exit button
|
|
75
|
+
const button2 = new UIButton(vec2(0,190), vec2(350, 70), 'Exit Menu', RED, 6, CYAN);
|
|
76
|
+
uiMenu.addChild(button2);
|
|
77
|
+
button2.onClick = ()=>
|
|
78
|
+
{
|
|
79
|
+
console.log('Button 2 clicked');
|
|
80
|
+
sound_click.play(0,.5,2);
|
|
81
|
+
setMenuVisible(false);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
86
|
+
function gameInit()
|
|
87
|
+
{
|
|
88
|
+
initUISystem();
|
|
89
|
+
createUI();
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
93
|
+
function gameUpdate()
|
|
94
|
+
{
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
98
|
+
function gameUpdatePost()
|
|
99
|
+
{
|
|
100
|
+
// center ui
|
|
101
|
+
uiRoot.pos.x = mainCanvasSize.x/2;
|
|
102
|
+
|
|
103
|
+
// menu system
|
|
104
|
+
const menuVisible = getMenuVisible();
|
|
105
|
+
paused = menuVisible;
|
|
106
|
+
|
|
107
|
+
// toggle menu visibility
|
|
108
|
+
if (keyWasPressed('KeyM'))
|
|
109
|
+
setMenuVisible(!menuVisible);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
113
|
+
function gameRender()
|
|
114
|
+
{
|
|
115
|
+
// test game rendering
|
|
116
|
+
drawRect(vec2(), vec2(1e3), hsl(0,0,.2));
|
|
117
|
+
|
|
118
|
+
// test game rendering
|
|
119
|
+
drawRect(vec2(), vec2(1e3), hsl(0,0,.2));
|
|
120
|
+
for(let i=0; i<1e3; ++i)
|
|
121
|
+
{
|
|
122
|
+
const pos = vec2(30*Math.sin(i+time/9),20*Math.sin(i*i+time/9));
|
|
123
|
+
drawTile(pos, vec2(2), tile(3,128), hsl(i/9,1,.4), time+i, !(i%2), hsl(i/9,1,.1,0));
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
128
|
+
function gameRenderPost()
|
|
129
|
+
{
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
133
|
+
// Startup LittleJS Engine
|
|
134
|
+
engineInit(gameInit, gameUpdate, gameUpdatePost, gameRender, gameRenderPost, ['tiles.png']);
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<!DOCTYPE html><head>
|
|
2
|
+
<title>LittleJS Starter Project</title>
|
|
3
|
+
<meta charset=utf-8>
|
|
4
|
+
<meta name=apple-mobile-web-app-capable content=yes>
|
|
5
|
+
<meta name=mobile-web-app-capable content=yes>
|
|
6
|
+
<link rel=icon type=image/png href=../favicon.png>
|
|
7
|
+
</head><body>
|
|
8
|
+
|
|
9
|
+
<!-- LittleJS Engine -->
|
|
10
|
+
<script src=../../src/engineDebug.js?1100></script>
|
|
11
|
+
<script src=../../src/engineUtilities.js?1100></script>
|
|
12
|
+
<script src=../../src/engineSettings.js?1100></script>
|
|
13
|
+
<script src=../../src/engineObject.js?1100></script>
|
|
14
|
+
<script src=../../src/engineDraw.js?1100></script>
|
|
15
|
+
<script src=../../src/engineInput.js?1100></script>
|
|
16
|
+
<script src=../../src/engineAudio.js?1100></script>
|
|
17
|
+
<script src=../../src/engineTileLayer.js?1100></script>
|
|
18
|
+
<script src=../../src/engineParticles.js?1100></script>
|
|
19
|
+
<script src=../../src/engineMedals.js?1100></script>
|
|
20
|
+
<script src=../../src/engineWebGL.js?1100></script>
|
|
21
|
+
<script src=../../src/engine.js?1100></script>
|
|
22
|
+
|
|
23
|
+
<!-- Add your game scripts here -->
|
|
24
|
+
<script src=../../plugins/uiSystem.js?1100></script>
|
|
25
|
+
<script src=game.js?1100></script>
|
|
Binary file
|
package/jsconfig.json
ADDED