Pull request #22: sauvegarder la position / échelle locale
Merge in CGD/gather-and-defend from bug/LevelEditor/ResizeAndMoveTilemaps to main * commit '6c96d31544b44fc4ff86c501829ed7a426e344ad': sauvegarder la position / échelle locale
This commit is contained in:
commit
ede4cbdf5c
@ -122,8 +122,8 @@ Important considerations :
|
|||||||
var tilemap = new GameObject(tilemapData.Key).AddComponent<Tilemap>();
|
var tilemap = new GameObject(tilemapData.Key).AddComponent<Tilemap>();
|
||||||
tilemap.tileAnchor = Vector3.zero;
|
tilemap.tileAnchor = Vector3.zero;
|
||||||
tilemap.gameObject.AddComponent<TilemapRenderer>();
|
tilemap.gameObject.AddComponent<TilemapRenderer>();
|
||||||
tilemapData.LoadToTilemap(tilemap);
|
|
||||||
tilemap.transform.SetParent(targ.transform);
|
tilemap.transform.SetParent(targ.transform);
|
||||||
|
tilemapData.LoadToTilemap(tilemap);
|
||||||
}
|
}
|
||||||
_infoText = string.Empty;
|
_infoText = string.Empty;
|
||||||
EditorSceneManager.MarkAllScenesDirty();
|
EditorSceneManager.MarkAllScenesDirty();
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -314,6 +314,8 @@ MonoBehaviour:
|
|||||||
_isTrigger: 0
|
_isTrigger: 0
|
||||||
_renderOrder: 0
|
_renderOrder: 0
|
||||||
_renderLayer: Default
|
_renderLayer: Default
|
||||||
|
_position: {x: 0, y: 0}
|
||||||
|
_scale: {x: 1, y: 1}
|
||||||
- _key: Entities
|
- _key: Entities
|
||||||
_tiles:
|
_tiles:
|
||||||
- _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2}
|
- _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2}
|
||||||
@ -409,6 +411,8 @@ MonoBehaviour:
|
|||||||
_isTrigger: 0
|
_isTrigger: 0
|
||||||
_renderOrder: 1
|
_renderOrder: 1
|
||||||
_renderLayer: Default
|
_renderLayer: Default
|
||||||
|
_position: {x: 0, y: 0}
|
||||||
|
_scale: {x: 1, y: 1}
|
||||||
- _key: Spawners
|
- _key: Spawners
|
||||||
_tiles:
|
_tiles:
|
||||||
- _tile: {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2}
|
- _tile: {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2}
|
||||||
@ -432,3 +436,5 @@ MonoBehaviour:
|
|||||||
_isTrigger: 0
|
_isTrigger: 0
|
||||||
_renderOrder: 2
|
_renderOrder: 2
|
||||||
_renderLayer: Default
|
_renderLayer: Default
|
||||||
|
_position: {x: 0, y: 0}
|
||||||
|
_scale: {x: 1, y: 1}
|
||||||
|
|||||||
@ -314,6 +314,8 @@ MonoBehaviour:
|
|||||||
_isTrigger: 0
|
_isTrigger: 0
|
||||||
_renderOrder: 0
|
_renderOrder: 0
|
||||||
_renderLayer: Default
|
_renderLayer: Default
|
||||||
|
_position: {x: 0, y: 0}
|
||||||
|
_scale: {x: 1, y: 1}
|
||||||
- _key: Entities
|
- _key: Entities
|
||||||
_tiles: []
|
_tiles: []
|
||||||
_isInvisible: 0
|
_isInvisible: 0
|
||||||
@ -321,6 +323,8 @@ MonoBehaviour:
|
|||||||
_isTrigger: 0
|
_isTrigger: 0
|
||||||
_renderOrder: 1
|
_renderOrder: 1
|
||||||
_renderLayer: Default
|
_renderLayer: Default
|
||||||
|
_position: {x: 0, y: 0}
|
||||||
|
_scale: {x: 1, y: 1}
|
||||||
- _key: Spawners
|
- _key: Spawners
|
||||||
_tiles:
|
_tiles:
|
||||||
- _tile: {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2}
|
- _tile: {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2}
|
||||||
@ -344,3 +348,5 @@ MonoBehaviour:
|
|||||||
_isTrigger: 0
|
_isTrigger: 0
|
||||||
_renderOrder: 2
|
_renderOrder: 2
|
||||||
_renderLayer: Default
|
_renderLayer: Default
|
||||||
|
_position: {x: 0, y: 0}
|
||||||
|
_scale: {x: 1, y: 1}
|
||||||
|
|||||||
@ -26,11 +26,18 @@ namespace GatherAndDefend.LevelEditor
|
|||||||
private int _renderOrder;
|
private int _renderOrder;
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private string _renderLayer;
|
private string _renderLayer;
|
||||||
|
[SerializeField]
|
||||||
|
private Vector2 _position;
|
||||||
|
[SerializeField]
|
||||||
|
private Vector2 _scale;
|
||||||
|
|
||||||
public string Key => _key;
|
public string Key => _key;
|
||||||
|
|
||||||
public void LoadToTilemap(Tilemap reference)
|
public void LoadToTilemap(Tilemap reference)
|
||||||
{
|
{
|
||||||
|
reference.transform.localPosition = _position;
|
||||||
|
reference.transform.localScale = _scale;
|
||||||
|
|
||||||
var rend = reference.GetComponent<TilemapRenderer>();
|
var rend = reference.GetComponent<TilemapRenderer>();
|
||||||
rend.sortingOrder = _renderOrder;
|
rend.sortingOrder = _renderOrder;
|
||||||
rend.sortingLayerName = _renderLayer;
|
rend.sortingLayerName = _renderLayer;
|
||||||
@ -63,7 +70,8 @@ namespace GatherAndDefend.LevelEditor
|
|||||||
_isInvisible = reference.gameObject.layer == INVISIBLE_LAYER;
|
_isInvisible = reference.gameObject.layer == INVISIBLE_LAYER;
|
||||||
_renderLayer = reference.GetComponent<TilemapRenderer>().sortingLayerName;
|
_renderLayer = reference.GetComponent<TilemapRenderer>().sortingLayerName;
|
||||||
_renderOrder = reference.GetComponent<TilemapRenderer>().sortingOrder;
|
_renderOrder = reference.GetComponent<TilemapRenderer>().sortingOrder;
|
||||||
|
_position = reference.transform.localPosition;
|
||||||
|
_scale = reference.transform.localScale;
|
||||||
|
|
||||||
_tiles = new List<TileData>();
|
_tiles = new List<TileData>();
|
||||||
|
|
||||||
@ -95,6 +103,8 @@ namespace GatherAndDefend.LevelEditor
|
|||||||
{nameof(_isTrigger), _isTrigger },
|
{nameof(_isTrigger), _isTrigger },
|
||||||
{nameof(_renderOrder), _renderOrder },
|
{nameof(_renderOrder), _renderOrder },
|
||||||
{nameof(_renderLayer), _renderLayer },
|
{nameof(_renderLayer), _renderLayer },
|
||||||
|
{nameof(_position), new float[]{_position.x, _position.y, 0 } },
|
||||||
|
{nameof(_scale), new float[]{ _scale.x, _scale.y, 0 } },
|
||||||
{nameof(_tiles), _tiles.FindAll(x => !(x.Tile is LevelTile))
|
{nameof(_tiles), _tiles.FindAll(x => !(x.Tile is LevelTile))
|
||||||
.Select(x => new Dictionary<string, object>() {
|
.Select(x => new Dictionary<string, object>() {
|
||||||
{nameof(x.Position), new float[] { x.Position.x, x.Position.y, x.Position.z } },
|
{nameof(x.Position), new float[] { x.Position.x, x.Position.y, x.Position.z } },
|
||||||
@ -116,6 +126,8 @@ namespace GatherAndDefend.LevelEditor
|
|||||||
var trigger = dict[nameof(_isTrigger)].ToBool();
|
var trigger = dict[nameof(_isTrigger)].ToBool();
|
||||||
var renderOrder = dict[nameof(_renderOrder)].ToInt();
|
var renderOrder = dict[nameof(_renderOrder)].ToInt();
|
||||||
var renderLayer = dict[nameof(_renderLayer)].ToString();
|
var renderLayer = dict[nameof(_renderLayer)].ToString();
|
||||||
|
var position = dict[nameof(_position)].ToVector3();
|
||||||
|
var scale = dict[nameof(_scale)].ToVector3();
|
||||||
var tiles = dict[nameof(_tiles)];
|
var tiles = dict[nameof(_tiles)];
|
||||||
|
|
||||||
//get grid
|
//get grid
|
||||||
@ -132,6 +144,8 @@ namespace GatherAndDefend.LevelEditor
|
|||||||
tilemap.gameObject.AddComponent<TilemapRenderer>();
|
tilemap.gameObject.AddComponent<TilemapRenderer>();
|
||||||
tilemap.transform.SetParent(grid.transform);
|
tilemap.transform.SetParent(grid.transform);
|
||||||
}
|
}
|
||||||
|
tilemap.transform.localPosition = position;
|
||||||
|
tilemap.transform.localScale = scale;
|
||||||
renderer = tilemap.GetComponent<TilemapRenderer>();
|
renderer = tilemap.GetComponent<TilemapRenderer>();
|
||||||
|
|
||||||
//populate tilemap according to specs
|
//populate tilemap according to specs
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user