Skip to content

Commit 53c10ca

Browse files
committed
The grunt task now creates an optional version of Phaser without any Physics support built in. Quite a bit smaller now.
The grunt task now has a new `noUmd` option which builds Phaser without the UMD wrapper.
1 parent 4d28402 commit 53c10ca

13 files changed

Lines changed: 47201 additions & 233 deletions

Gruntfile.js

Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,134 @@ module.exports = function (grunt) {
146146
'src/particles/arcade/ArcadeParticles.js',
147147
'src/particles/arcade/Emitter.js',
148148

149+
'src/tilemap/Tile.js',
150+
'src/tilemap/Tilemap.js',
151+
'src/tilemap/TilemapLayer.js',
152+
'src/tilemap/TilemapParser.js',
153+
'src/tilemap/Tileset.js'
154+
],
155+
phaserNoPhysics: [
156+
'src/Intro.js',
157+
'src/pixi/Pixi.js',
158+
'src/Phaser.js',
159+
'src/utils/Utils.js',
160+
161+
'src/geom/Circle.js',
162+
'src/geom/Point.js',
163+
'src/geom/Rectangle.js',
164+
'src/geom/Line.js',
165+
'src/geom/Ellipse.js',
166+
'src/geom/Polygon.js',
167+
168+
'src/pixi/core/Matrix.js',
169+
'src/pixi/display/DisplayObject.js',
170+
'src/pixi/display/DisplayObjectContainer.js',
171+
'src/pixi/display/Sprite.js',
172+
'src/pixi/display/SpriteBatch.js',
173+
'src/pixi/filters/FilterBlock.js',
174+
'src/pixi/text/Text.js',
175+
'src/pixi/text/BitmapText.js',
176+
'src/pixi/display/Stage.js',
177+
'src/pixi/utils/EventTarget.js',
178+
'src/pixi/utils/Polyk.js',
179+
'src/pixi/renderers/webgl/utils/WebGLShaderUtils.js',
180+
'src/pixi/renderers/webgl/shaders/PixiShader.js',
181+
'src/pixi/renderers/webgl/shaders/PixiFastShader.js',
182+
'src/pixi/renderers/webgl/shaders/StripShader.js',
183+
'src/pixi/renderers/webgl/shaders/PrimitiveShader.js',
184+
'src/pixi/renderers/webgl/utils/WebGLGraphics.js',
185+
'src/pixi/renderers/webgl/WebGLRenderer.js',
186+
'src/pixi/renderers/webgl/utils/WebGLMaskManager.js',
187+
'src/pixi/renderers/webgl/utils/WebGLShaderManager.js',
188+
'src/pixi/renderers/webgl/utils/WebGLSpriteBatch.js',
189+
'src/pixi/renderers/webgl/utils/WebGLFastSpriteBatch.js',
190+
'src/pixi/renderers/webgl/utils/WebGLFilterManager.js',
191+
'src/pixi/renderers/webgl/utils/FilterTexture.js',
192+
'src/pixi/renderers/canvas/utils/CanvasMaskManager.js',
193+
'src/pixi/renderers/canvas/utils/CanvasTinter.js',
194+
'src/pixi/renderers/canvas/CanvasRenderer.js',
195+
'src/pixi/renderers/canvas/CanvasGraphics.js',
196+
'src/pixi/primitives/Graphics.js',
197+
'src/pixi/extras/TilingSprite.js',
198+
'src/pixi/textures/BaseTexture.js',
199+
'src/pixi/textures/Texture.js',
200+
'src/pixi/textures/RenderTexture.js',
201+
202+
'src/core/Camera.js',
203+
'src/core/State.js',
204+
'src/core/StateManager.js',
205+
'src/core/LinkedList.js',
206+
'src/core/Signal.js',
207+
'src/core/SignalBinding.js',
208+
'src/core/Filter.js',
209+
'src/core/Plugin.js',
210+
'src/core/PluginManager.js',
211+
'src/core/Stage.js',
212+
'src/core/Group.js',
213+
'src/core/World.js',
214+
'src/core/ScaleManager.js',
215+
'src/core/GameNoPhysics.js',
216+
217+
'src/input/Input.js',
218+
'src/input/Key.js',
219+
'src/input/Keyboard.js',
220+
'src/input/Mouse.js',
221+
'src/input/MSPointer.js',
222+
'src/input/Pointer.js',
223+
'src/input/Touch.js',
224+
'src/input/Gamepad.js',
225+
'src/input/SinglePad.js',
226+
'src/input/GamepadButton.js',
227+
'src/input/InputHandler.js',
228+
229+
'src/gameobjects/Events.js',
230+
'src/gameobjects/GameObjectFactory.js',
231+
'src/gameobjects/GameObjectCreator.js',
232+
'src/gameobjects/BitmapData.js',
233+
'src/gameobjects/Sprite.js',
234+
'src/gameobjects/Image.js',
235+
'src/gameobjects/TileSprite.js',
236+
'src/gameobjects/Text.js',
237+
'src/gameobjects/BitmapText.js',
238+
'src/gameobjects/Button.js',
239+
'src/gameobjects/Graphics.js',
240+
'src/gameobjects/RenderTexture.js',
241+
'src/gameobjects/SpriteBatch.js',
242+
'src/gameobjects/BitmapFont.js',
243+
244+
'src/system/Canvas.js',
245+
'src/system/Device.js',
246+
'src/system/RequestAnimationFrame.js',
247+
248+
'src/math/Math.js',
249+
'src/math/RandomDataGenerator.js',
250+
251+
'src/net/Net.js',
252+
253+
'src/tween/TweenManager.js',
254+
'src/tween/Tween.js',
255+
'src/tween/Easing.js',
256+
257+
'src/time/Time.js',
258+
'src/time/Timer.js',
259+
'src/time/TimerEvent.js',
260+
261+
'src/animation/AnimationManager.js',
262+
'src/animation/Animation.js',
263+
'src/animation/Frame.js',
264+
'src/animation/FrameData.js',
265+
'src/animation/AnimationParser.js',
266+
267+
'src/loader/Cache.js',
268+
'src/loader/Loader.js',
269+
'src/loader/LoaderParser.js',
270+
271+
'src/sound/Sound.js',
272+
'src/sound/SoundManager.js',
273+
274+
'src/utils/Debug.js',
275+
'src/utils/Color.js',
276+
149277
'src/tilemap/Tile.js',
150278
'src/tilemap/Tilemap.js',
151279
'src/tilemap/TilemapLayer.js',
@@ -167,12 +295,28 @@ module.exports = function (grunt) {
167295
},
168296
src: ['<%= src.phaser %>'],
169297
dest: '<%= compile_dir %>/phaser.js'
298+
},
299+
phaserNoPhysics: {
300+
options: {
301+
process: {
302+
data: {
303+
version: '<%= pkg.version %>.np',
304+
buildDate: '<%= grunt.template.today() %>'
305+
}
306+
}
307+
},
308+
src: ['<%= src.phaserNoPhysics %>'],
309+
dest: '<%= compile_dir %>/phaserNoPhysics.js'
170310
}
171311
},
172312
umd: {
173313
phaser: {
174314
src: '<%= concat.phaser.dest %>',
175315
dest: '<%= umd.phaser.src %>'
316+
},
317+
phaserNoPhysics: {
318+
src: '<%= concat.phaserNoPhysics.dest %>',
319+
dest: '<%= umd.phaserNoPhysics.src %>'
176320
}
177321
},
178322
uglify: {
@@ -182,6 +326,13 @@ module.exports = function (grunt) {
182326
},
183327
src: ['<%= umd.phaser.dest %>'],
184328
dest: '<%= compile_dir %>/phaser.min.js'
329+
},
330+
phaserNoPhysics: {
331+
options: {
332+
banner: '/*! Phaser v<%= pkg.version %>.np | (c) 2014 Photon Storm Ltd. */\n'
333+
},
334+
src: ['<%= umd.phaserNoPhysics.dest %>'],
335+
dest: '<%= compile_dir %>/phaserNoPhysics.min.js'
185336
}
186337
},
187338
examples: {
@@ -206,5 +357,6 @@ module.exports = function (grunt) {
206357

207358
grunt.registerTask('default', ['build', 'examples']);
208359
grunt.registerTask('build', ['clean', 'concat', 'umd', 'uglify']);
360+
grunt.registerTask('noUmd', ['clean', 'concat', 'uglify']);
209361

210362
};

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,8 @@ Updates:
143143
* Vastly improved visibility API support + pageshow/pagehide + focus/blur. Working across Chrome, IE, Firefox, iOS, Android (also fixes #161)
144144
* Pausing the game will now mute audio and resuming will un-mute, unless it was muted via the game (fixes #439)
145145
* ScaleManager has 2 new events: ScaleManager.enterFullScreen and ScaleManager.leaveFullScreen, so you can respond to fullscreen changes directly.
146+
* The grunt task now creates an optional version of Phaser without any Physics support built in. Quite a bit smaller now.
147+
* The grunt task now has a new `noUmd` option which builds Phaser without the UMD wrapper.
146148

147149

148150
Bug Fixes:

0 commit comments

Comments
 (0)