mirror of
https://github.com/photonstorm/phaser
synced 2024-12-23 11:33:28 +00:00
updated dynamic layer and tilemap
This commit is contained in:
parent
f17aef0abf
commit
1a88ff95ba
4 changed files with 14 additions and 26 deletions
|
@ -2345,7 +2345,7 @@ var Tilemap = new Class({
|
||||||
|
|
||||||
if (layer === null) { return null; }
|
if (layer === null) { return null; }
|
||||||
|
|
||||||
return TilemapComponents.TileToWorldX(tileX, camera, layer);
|
return TilemapComponents.TileToWorldX(tileX, camera, layer, this.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2370,7 +2370,7 @@ var Tilemap = new Class({
|
||||||
|
|
||||||
if (layer === null) { return null; }
|
if (layer === null) { return null; }
|
||||||
|
|
||||||
return TilemapComponents.TileToWorldY(tileX, camera, layer);
|
return TilemapComponents.TileToWorldY(tileX, camera, layer, this.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2397,7 +2397,7 @@ var Tilemap = new Class({
|
||||||
|
|
||||||
if (layer === null) { return null; }
|
if (layer === null) { return null; }
|
||||||
|
|
||||||
return TilemapComponents.TileToWorldXY(tileX, tileY, point, camera, layer);
|
return TilemapComponents.TileToWorldXY(tileX, tileY, point, camera, layer, this.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2468,7 +2468,7 @@ var Tilemap = new Class({
|
||||||
|
|
||||||
if (layer === null) { return null; }
|
if (layer === null) { return null; }
|
||||||
|
|
||||||
return TilemapComponents.WorldToTileX(worldX, snapToFloor, camera, layer);
|
return TilemapComponents.WorldToTileX(worldX, snapToFloor, camera, layer, this.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2493,7 +2493,7 @@ var Tilemap = new Class({
|
||||||
|
|
||||||
if (layer === null) { return null; }
|
if (layer === null) { return null; }
|
||||||
|
|
||||||
return TilemapComponents.WorldToTileY(worldY, snapToFloor, camera, layer);
|
return TilemapComponents.WorldToTileY(worldY, snapToFloor, camera, layer,this.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2521,7 +2521,7 @@ var Tilemap = new Class({
|
||||||
|
|
||||||
if (layer === null) { return null; }
|
if (layer === null) { return null; }
|
||||||
|
|
||||||
return TilemapComponents.WorldToTileXY(worldX, worldY, snapToFloor, point, camera, layer);
|
return TilemapComponents.WorldToTileXY(worldX, worldY, snapToFloor, point, camera, layer, this.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -28,9 +28,7 @@ var TileToWorldY = function (tileY, camera, layer)
|
||||||
if (tilemapLayer)
|
if (tilemapLayer)
|
||||||
{
|
{
|
||||||
if (camera === undefined) { camera = tilemapLayer.scene.cameras.main; }
|
if (camera === undefined) { camera = tilemapLayer.scene.cameras.main; }
|
||||||
|
|
||||||
layerWorldY = (tilemapLayer.y + camera.scrollY * (1 - tilemapLayer.scrollFactorY));
|
layerWorldY = (tilemapLayer.y + camera.scrollY * (1 - tilemapLayer.scrollFactorY));
|
||||||
|
|
||||||
tileHeight *= tilemapLayer.scaleY;
|
tileHeight *= tilemapLayer.scaleY;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -27,19 +27,11 @@ var WorldToTileX = function (worldX, snapToFloor, camera, layer, orientation)
|
||||||
if (snapToFloor === undefined) { snapToFloor = true; }
|
if (snapToFloor === undefined) { snapToFloor = true; }
|
||||||
|
|
||||||
var tileWidth = layer.baseTileWidth;
|
var tileWidth = layer.baseTileWidth;
|
||||||
var tileHeight = layer.baseTileHeight;
|
|
||||||
var tilemapLayer = layer.tilemapLayer;
|
var tilemapLayer = layer.tilemapLayer;
|
||||||
|
|
||||||
if (tilemapLayer)
|
if (tilemapLayer)
|
||||||
{
|
{
|
||||||
if (camera === undefined) { camera = tilemapLayer.scene.cameras.main; }
|
if (camera === undefined) { camera = tilemapLayer.scene.cameras.main; }
|
||||||
|
|
||||||
// Find the world position relative to the static or dynamic layer's top left origin,
|
|
||||||
// factoring in the camera's vertical scroll
|
|
||||||
worldY = worldY - (tilemapLayer.y + camera.scrollY * (1 - tilemapLayer.scrollFactorY));
|
|
||||||
|
|
||||||
tileHeight *= tilemapLayer.scaleY;
|
|
||||||
|
|
||||||
// Find the world position relative to the static or dynamic layer's top left origin,
|
// Find the world position relative to the static or dynamic layer's top left origin,
|
||||||
// factoring in the camera's horizontal scroll
|
// factoring in the camera's horizontal scroll
|
||||||
worldX = worldX - (tilemapLayer.x + camera.scrollX * (1 - tilemapLayer.scrollFactorX));
|
worldX = worldX - (tilemapLayer.x + camera.scrollX * (1 - tilemapLayer.scrollFactorX));
|
||||||
|
@ -52,10 +44,8 @@ var WorldToTileX = function (worldX, snapToFloor, camera, layer, orientation)
|
||||||
? Math.floor(worldX / tileWidth)
|
? Math.floor(worldX / tileWidth)
|
||||||
: worldX / tileWidth;
|
: worldX / tileWidth;
|
||||||
} else if (orientation === "isometric") {
|
} else if (orientation === "isometric") {
|
||||||
return snapToFloor
|
console.warn('With isometric map types you have to use the WorldToTileXY function.');
|
||||||
? Math.floor((worldX/(tileWidth/2) + worldY/(tileHeight/2))/2)
|
return null
|
||||||
: ((worldX/(tileWidth/2) + worldY/(tileHeight/2))/2);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -1178,7 +1178,7 @@ var DynamicTilemapLayer = new Class({
|
||||||
*/
|
*/
|
||||||
tileToWorldX: function (tileX, camera)
|
tileToWorldX: function (tileX, camera)
|
||||||
{
|
{
|
||||||
return TilemapComponents.TileToWorldX(tileX, camera, this.layer);
|
return TilemapComponents.TileToWorldX(tileX, camera, this.layer, this.tilemap.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1195,7 +1195,7 @@ var DynamicTilemapLayer = new Class({
|
||||||
*/
|
*/
|
||||||
tileToWorldY: function (tileY, camera)
|
tileToWorldY: function (tileY, camera)
|
||||||
{
|
{
|
||||||
return TilemapComponents.TileToWorldY(tileY, camera, this.layer);
|
return TilemapComponents.TileToWorldY(tileY, camera, this.layer, this.tilemap.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1215,7 +1215,7 @@ var DynamicTilemapLayer = new Class({
|
||||||
*/
|
*/
|
||||||
tileToWorldXY: function (tileX, tileY, point, camera)
|
tileToWorldXY: function (tileX, tileY, point, camera)
|
||||||
{
|
{
|
||||||
return TilemapComponents.TileToWorldXY(tileX, tileY, point, camera, this.layer);
|
return TilemapComponents.TileToWorldXY(tileX, tileY, point, camera, this.layer, this.tilemap.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1268,7 +1268,7 @@ var DynamicTilemapLayer = new Class({
|
||||||
*/
|
*/
|
||||||
worldToTileX: function (worldX, snapToFloor, camera)
|
worldToTileX: function (worldX, snapToFloor, camera)
|
||||||
{
|
{
|
||||||
return TilemapComponents.WorldToTileX(worldX, snapToFloor, camera, this.layer);
|
return TilemapComponents.WorldToTileX(worldX, snapToFloor, camera, this.layer, this.tilemap.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1286,7 +1286,7 @@ var DynamicTilemapLayer = new Class({
|
||||||
*/
|
*/
|
||||||
worldToTileY: function (worldY, snapToFloor, camera)
|
worldToTileY: function (worldY, snapToFloor, camera)
|
||||||
{
|
{
|
||||||
return TilemapComponents.WorldToTileY(worldY, snapToFloor, camera, this.layer);
|
return TilemapComponents.WorldToTileY(worldY, snapToFloor, camera, this.layer, this.tilemap.orientation);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1307,7 +1307,7 @@ var DynamicTilemapLayer = new Class({
|
||||||
*/
|
*/
|
||||||
worldToTileXY: function (worldX, worldY, snapToFloor, point, camera)
|
worldToTileXY: function (worldX, worldY, snapToFloor, point, camera)
|
||||||
{
|
{
|
||||||
return TilemapComponents.WorldToTileXY(worldX, worldY, snapToFloor, point, camera, this.layer);
|
return TilemapComponents.WorldToTileXY(worldX, worldY, snapToFloor, point, camera, this.layer, this.tilemap.orientation);
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in a new issue