Randomizes the indexes of a rectangular region of tiles (in tile coordinates) within the specified layer. Each tile will receive a new index. New indexes are drawn from the given weightedIndexes array. An example weighted array:
[ { index: 6, weight: 4 }, // Probability of index 6 is 4 / 8 { index: 7, weight: 2 }, // Probability of index 7 would be 2 / 8 { index: 8, weight: 1.5 }, // Probability of index 8 would be 1.5 / 8 { index: 26, weight: 0.5 } // Probability of index 27 would be 0.5 / 8 ]
The probability of any index being picked is (the indexs weight) / (sum of all weights). This method only modifies tile indexes and does not change collision information.
If no layer is specified, the maps current layer is used.
name | type | arguments | description |
---|---|---|---|
weightedIndexes | Array.<object> |
An array of objects to randomly draw from during randomization. They should be in the form: { index: 0, weight: 4 } or { index: [0, 1], weight: 4 } if you wish to draw from multiple tile indexes. |
|
tileX | number | <optional> |
The left most tile index (in tile coordinates) to use as the origin of the area. |
tileY | number | <optional> |
The top most tile index (in tile coordinates) to use as the origin of the area. |
width | number | <optional> |
How many tiles wide from the |
height | number | <optional> |
How many tiles tall from the |
layer | string | number | Phaser.Tilemaps.TilemapLayer | <optional> |
The tile layer to use. If not given the current layer is used. |
Return this Tilemap object, or null if the layer given was invalid.