Michael Hadley
bdea565586
Better optimized calc/recalc faces methods for tiles
...
These eliminate the need for the preventRecalc method from v2. If an individual tile is changed with putTileAt, only the min number of faces will be recalculated (vs all faces being recalculated in v2)
2017-11-21 19:16:46 -06:00
Michael Hadley
dd8bbfa625
Update SetCollision methods to track which indices have been set to collide
2017-11-21 19:13:43 -06:00
Michael Hadley
e3dbf7c2d0
Fixing internal method name typos
2017-11-21 19:07:22 -06:00
Felipe Alfonso
500da5d07f
Canvas GeometryMask rendering
2017-11-21 20:21:43 -03:00
Michael Hadley
105dc755ce
Tilemap & layers: optimized SetCollision methods
...
v2 was structured in a way where a full pass through ALL tiles would occur if SetCollisionBetween or SetCollisionByExclusion was used. That's a huge penalty for large tilemaps, so this version duplicates some loop code for the sake of speed.
2017-11-20 20:08:50 -06:00
Michael Hadley
21584f922c
Fix for last commit
2017-11-18 16:11:51 -06:00
Michael Hadley
3f14382951
Make naming consistent for accessing individual tiles (e.g. getTile vs getTileAt)
2017-11-18 15:41:26 -06:00
Michael Hadley
759252a078
Better handling of resizing a tilemap
...
Force the tilesets and tiles to inherit their tile size from the tilemap
2017-11-18 15:40:27 -06:00
Michael Hadley
e2960486a9
Filling out Tile with some methods & props from v2
2017-11-18 15:38:46 -06:00
Michael Hadley
b48d82daee
Format name typo
2017-11-18 08:41:57 -06:00
Michael Hadley
d2f72fbe58
Create CullTiles component to allow static and dynamic layers to cull when needed
...
Fixes performance issue with canvas static tile renderer on large maps
2017-11-18 08:31:59 -06:00
Michael Hadley
b5fb0b8879
Refactor in order to update TilemapCreator & TilemapFactory
2017-11-17 15:55:12 -06:00
Michael Hadley
f82217e868
Move Parse to tilemap/Parse
2017-11-17 15:54:18 -06:00
Michael Hadley
49854bfd1b
Format Typo
2017-11-17 15:49:32 -06:00
Michael Hadley
6da642bd99
Set alpha in dynamic layer canvas renderer
...
Set it directly because of the explicit save/restore commands throw the renderer's internal alpha out-of-sync
2017-11-17 15:31:41 -06:00
Michael Hadley
5535af2a17
Bug fix: tilemap layer renderer didn't account for layer xy position
2017-11-17 13:53:11 -06:00
Michael Hadley
09ed883f4d
Remove old todos in static layer
2017-11-17 13:52:32 -06:00
Michael Hadley
b8e8d9d3aa
Made data structure for maps and layers more explicit via classes & default props
2017-11-17 13:16:39 -06:00
Richard Davey
5f1c022866
lint fix
2017-11-17 18:29:50 +00:00
Michael Hadley
3266974ea0
Tilemap & layer WorldXY methods: get, has, put, remove
2017-11-17 07:58:33 -06:00
Richard Davey
6ccae5ec49
Particle Manager no longer uses BuildGameObject and instead manages its own addition to the system lists.
2017-11-17 13:30:29 +00:00
Richard Davey
d74018f3d0
Rogue null
check borked the creation of emitters when a null frame was specified.
2017-11-17 13:30:07 +00:00
Richard Davey
153d1a113a
Fixed factory name.
2017-11-17 13:29:33 +00:00
Richard Davey
f29d94356c
eslint tidy
2017-11-17 13:29:23 +00:00
Michael Hadley
b34d18e10c
World to Tile conversion on maps and layers - both accounting for camera scroll
2017-11-16 20:36:45 -06:00
Michael Hadley
205675c387
Tilemap: prevent methods from acting on a static tilemap layer & warn user
2017-11-16 19:58:35 -06:00
Michael Hadley
b34f8a9dcc
Associate tilemap layer data with the static or dynamic tilemap layer that "owns" it
...
This enforces 1x tilemap layer data <-> 1x static/dynamic tilemap layer and allows the Tilemap instance to look up the static/dynamic tilemap layer when needed.
2017-11-16 19:55:17 -06:00
Michael Hadley
83b7df2a73
Tilemap: destroy, removeAllLayers, setTileSize
2017-11-16 19:09:28 -06:00
Michael Hadley
63fb2e863f
Tilemap & layer: ReplaceByIndex, FindByIndex, SwapByIndex
2017-11-16 19:08:58 -06:00
Michael Hadley
4c306d60a7
Last Tileset API method to match v2
2017-11-16 15:25:45 -06:00
Michael Hadley
e6c6d1ddce
TIlemap & layers: GetTileAtWorldXY
2017-11-16 13:27:52 -06:00
Michael Hadley
c2268f3dee
PutTile, RemoveTile & Tile#Copy
2017-11-16 13:09:07 -06:00
Michael Hadley
2b08daff32
Tilemap: modularize empty map generators & add createBlankDynamicLayer
2017-11-16 11:44:24 -06:00
Richard Davey
a60562a634
'add' shouldn't control the update state.
2017-11-16 16:47:13 +00:00
Michael Hadley
efae7f5796
DynamicTilemapLayer updates that should have been in the last commit
2017-11-15 20:16:43 -06:00
Michael Hadley
355d9accf3
More tilemap & layer fun: Copy, FIll, Randomize, Shuffle, GetTilesWithin
...
Note: methods that mutate the tiles are not installed on StaticTilemapLayer
2017-11-15 20:06:07 -06:00
Michael Hadley
db5cab8494
Fix: wrong sign for canvas translation
2017-11-15 19:15:12 -06:00
Michael Hadley
b714e2afdf
Add methods for looping over & accessing groups of tiles to map & layers
2017-11-15 16:36:41 -06:00
Michael Hadley
74842aae1d
Tilemap & Layers: hasTileAt & better naming
2017-11-15 15:28:15 -06:00
Michael Hadley
1be6847a87
Tilemap: better naming, currentLayer -> currentLayerIndex
2017-11-15 15:05:11 -06:00
Michael Hadley
48f1e60743
Tilemap: reorder and add get/set layer
2017-11-15 14:55:26 -06:00
Michael Hadley
84a86ae0f7
Share GetTileAt across tilemap layers and tilemap
2017-11-15 13:50:56 -06:00
Michael Hadley
6d1b17258b
Add flip capability to dynamic webgl & canvas tilemap renderers
2017-11-14 20:45:05 -06:00
Michael Hadley
6f4f571f98
Canvas tilemap layers: add alpha support
2017-11-14 16:13:07 -06:00
Michael Hadley
ece0bf7811
Tilemap layers WIP - both layers now use new Tile class
2017-11-14 15:35:18 -06:00
Michael Hadley
13ded52c6b
New Tile class to be shared across static and dynamic layers
2017-11-14 15:34:33 -06:00
Michael Hadley
3f08689c44
Tilemap parsers: remove width & height parameters since they are inferred
2017-11-14 15:33:13 -06:00
Michael Hadley
bf19553135
Tilemap parsers: add ability to insert null instead of blank tile
2017-11-14 15:02:19 -06:00
Felipe Alfonso
0b91a9e95d
Fix RenderPass render target binding
2017-11-14 14:30:34 -03:00
Richard Davey
97efeff751
Removed the Pool classes and Manager as Group can now take on this role
2017-11-14 16:06:56 +00:00
Richard Davey
ac4f05bc6e
Large Group refactor (which will break lots of examples)
...
Removed all of the Action helpers. It just bulks the class out and you can call them directly with Phaser.Actions anyway. Also added Pool support so you can now easily use a Group as an object pool, with fast recycling, creation, seeding and max sizes.
2017-11-13 23:32:14 +00:00
Felipe Alfonso
812638a966
BitmapMask WebGL Rendering Working
2017-11-13 14:21:34 -03:00
Michael Hadley
a7424fa750
Progress on Tilemap - can now link tileset images and create layers
2017-11-11 10:38:52 -06:00
Richard Davey
beb652a6c8
Merge branch 'master' of https://github.com/photonstorm/phaser
2017-11-11 03:52:26 +00:00
Richard Davey
ee9e6ef690
Particles with an alpha of zero are no longer rendered
2017-11-11 03:51:54 +00:00
Richard Davey
795a2fa2ed
Added getCenter to the Bounds component
2017-11-11 03:51:28 +00:00
Michael Hadley
780bd76c6f
Tilemap Parsers: refactor csv parser into csv parser + 2D array parser
2017-11-10 21:38:42 -06:00
Michael Hadley
1ba75cd50c
ParseTiledJSON eslint auto fix
2017-11-10 17:13:11 -06:00
Michael Hadley
f9f6d95097
Tilemap: json tiled parser from v2
2017-11-10 15:57:38 -06:00
Michael Hadley
249fe58bba
Tileset: tile lookup features
2017-11-10 15:56:14 -06:00
Michael Hadley
a76a6535e0
CSV tilemap parser & dummy tiled json parser
2017-11-09 20:50:25 -06:00
Michael Hadley
1b1bc41f81
Adding CSV & JSON tilemaps to BaseLoader
2017-11-09 12:21:06 -06:00
Michael Hadley
0804bf7595
Rename static & dynamic tilemaps -> tilemap layer
2017-11-09 12:18:23 -06:00
Richard Davey
671dfcd569
Groups can now pass a config as the first argument.
...
They also have 2 new callbacks: createCallback and removeCallback.
2017-11-09 03:59:56 +00:00
Felipe Alfonso
a1957b9c6e
BitmapMask rendering progress. Still missing blend mode support specifically for it to work with particles
2017-11-08 15:14:14 -03:00
Richard Davey
b37c588e72
Merge branch 'master' of https://github.com/photonstorm/phaser
2017-11-08 03:52:03 +00:00
Richard Davey
488069b098
Fixed Container proxy
2017-11-08 03:52:00 +00:00
Felipe Alfonso
f968913c79
BitmapMask rendering progress
2017-11-07 17:37:16 -03:00
Richard Davey
c5ad6e6435
Merge branch 'master' of https://github.com/photonstorm/phaser
2017-11-07 01:32:55 +00:00
Richard Davey
e48273208f
Fixed update origin name change.
2017-11-07 01:32:53 +00:00
Felipe Alfonso
85daa827aa
Bitmap and Geometry Masking progress
2017-11-06 19:12:19 -03:00
Richard Davey
0d38e232e6
Both Static and Dynamic Tilemaps support the new property skipIndexZero
which allows them to skip over index 0 tiles. Works in both canvas and webgl. Fix #3052
2017-11-03 16:52:57 +00:00
Richard Davey
954e7ef025
Merge pull request #3086 from Twilrom/master
...
Some bug fixes
2017-11-03 13:22:38 +00:00
Jower
05a06b28c0
Fix incorrect and unnecessary uses of closePath
2017-11-03 13:45:55 +01:00
Richard Davey
5d8b22c460
Removed un-needed divide by zero check and renamed updateOrigin to updateDisplayOrigin to better reflect what it does
2017-11-03 10:25:25 +00:00
Richard Davey
e395ac628f
Container class tests.
2017-11-02 17:04:10 +00:00
Richard Davey
870b2a94fc
eslint fixes
2017-11-02 17:04:02 +00:00
Richard Davey
cb29497b69
Swapped displayOrigin setters. Fix #3084 .
2017-11-02 15:50:31 +00:00
Richard Davey
cae8e55558
getBounds now works regardless of scale or origin. Fix #3082
2017-11-02 00:30:04 +00:00
Richard Davey
6bfe450a4f
Added getTopLeft, getTopRight, getBottomLeft and getBottomRight to GetBounds component
2017-11-01 23:56:36 +00:00
Felipe Alfonso
9649347287
Static Tilemap WebGL Renderer now applies camera transform matrix correctly
2017-11-01 14:55:01 -03:00
Richard Davey
959a92069a
Fix #3077
2017-11-01 16:21:30 +00:00
Richard Davey
cf6b6eb418
EdgeZone has new updateSource and changeSource methods and seamless argument
2017-11-01 13:09:48 +00:00
Richard Davey
77937f73c7
RandomZone uses a local vec2 now which allows it to work properly with Curves and Paths
2017-11-01 13:09:30 +00:00
Richard Davey
ebca441d39
emitOnly with custom function now sets the correct one.
2017-10-30 17:04:03 +00:00
Richard Davey
3e3ff7d810
Massively refactored how the constructor is structured. Everything now handled in fromJSON or the setters.
2017-10-30 02:23:08 +00:00
Richard Davey
0a07ea91f8
Added loadConfig and toJSON
2017-10-30 02:22:21 +00:00
Richard Davey
7ea3fedd93
Added support for onEnter and onLeave Death Zones for Particles
2017-10-29 21:46:41 +00:00
Richard Davey
5616af917c
Added MoveTo support
2017-10-27 21:19:30 +01:00
Richard Davey
48b0c6c3ea
Removed old files
2017-10-27 21:19:21 +01:00
Richard Davey
12a92330e2
Added ability for particle frames to be either random or cycled, with quantity option
2017-10-27 14:51:52 +01:00
Richard Davey
6e95285acb
Added delay support
2017-10-27 12:31:37 +01:00
Richard Davey
b1c96773cc
Fixed EdgeZone gaps and added yoyo support. Updated emitter config.
2017-10-27 11:43:55 +01:00
Richard Davey
f85ae5d02b
Finished the new Zones.
2017-10-26 17:02:34 +01:00
Richard Davey
114ba2393c
Start of new Zone feature
2017-10-25 16:05:59 +01:00
Richard Davey
f2f64e12e7
Particle Manager has new processors and gravity well support
2017-10-25 16:05:48 +01:00
Richard Davey
a6578562f2
Emitter sends the processors to the particles
2017-10-25 16:05:35 +01:00
Richard Davey
80374dd8d5
Particles are now passed through optional extra processors
2017-10-25 16:05:22 +01:00
Richard Davey
fcaf4700aa
New GravityWell feature for the particle system
2017-10-25 16:05:04 +01:00
Richard Davey
8ab00112bf
Added support for drawing ellipses and arrays of points
2017-10-25 16:04:36 +01:00