-
Notifications
You must be signed in to change notification settings - Fork 7.1k
/
GetCullTilesFunction.js
48 lines (45 loc) · 1.27 KB
/
GetCullTilesFunction.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/**
* @author Richard Davey <rich@photonstorm.com>
* @copyright 2020 Photon Storm Ltd.
* @license {@link https://opensource.org/licenses/MIT|MIT License}
*/
var CONST = require('../const/ORIENTATION_CONST');
var CullTiles = require('./CullTiles');
var HexagonalCullTiles = require('./HexagonalCullTiles');
var IsometricCullTiles = require('./IsometricCullTiles');
var NOOP = require('../../utils/NOOP');
var StaggeredCullTiles = require('./StaggeredCullTiles');
/**
* Gets the correct function to use to cull tiles, based on the map orientation.
*
* @function Phaser.Tilemaps.Components.GetCullTilesFunction
* @since 3.50.0
*
* @param {number} orientation - The Tilemap orientation constant.
*
* @return {function} The function to use to cull tiles for the given map type.
*/
var GetCullTilesFunction = function (orientation)
{
if (orientation === CONST.ORTHOGONAL)
{
return CullTiles;
}
else if (orientation === CONST.HEXAGONAL)
{
return HexagonalCullTiles;
}
else if (orientation === CONST.STAGGERED)
{
return StaggeredCullTiles;
}
else if (orientation === CONST.ISOMETRIC)
{
return IsometricCullTiles;
}
else
{
return NOOP;
}
};
module.exports = GetCullTilesFunction;