I have created an Script to connect the tiles that are near in my game. It works when I’m working on the editor but when I run the game or close the program, all the changes are erased. How to save the changes?
using UnityEngine;
using UnityEditor;
public class ConnectTilesButton
{
[MenuItem("Utils/Connect Tiles")]
public static void ConnectTiles()
{
Tile[] tiles = Resources.FindObjectsOfTypeAll<Tile>();
for (int i = 0; i < tiles.Length; i++)
{
Undo.RecordObject(tiles*, "removeTile");*
_ tiles*.PositionsConected.Clear();_
_ }*_
* for (int i = 0; i < tiles.Length; i++)*
* {*
_ Undo.RecordObject(tiles*, “addTile”);
for (int j = 0; j < tiles.Length; j++)
{_
if (tiles _!= tiles[j] || tiles.PositionsConected.Contains(tiles[j]))
{
if (Vector3.Distance(tiles.gameObject.transform.position, tiles[j].gameObject.transform.position) <= 1.1f)
{
Undo.RecordObject(tiles, “addTile”);
tiles.PositionsConected.Add(tiles[j]);
}
else*
* {
Undo.RecordObject(tiles, “removeTile”);
if (tiles.PositionsConected.Contains(tiles[j]))
tiles.PositionsConected.Remove(tiles[j]);
}
}
}
}
}
}*_