๋ชน ์์ฑ ์๊ณ ๋ฆฌ์ฆ ๋ฐฐ์ธ๋ ค๋ค ํธ์์ก ๋์คํฌ ์ํ๋ง ์ด๋ผ๊ณ ๋ฐฐ์ ์
ํธ์์ก ์๊ณ ๋ฆฌ์ฆ์ด ๋ญํ๋๊ฑฐ๋ฉด
์๋ฌด๋ฐ ๋ณด์ ์์ด ๊ทธ๋ฅ ๋๋ค์์ฑํ๋๊ฑธ
๊ฐ๊ฒฉ์๊ฒ ๋ฐ๊ฟ์ค
์ด ์๊ณ ๋ฆฌ์ฆ์ ์จ์ ๋ฆฌ์คํธ ๋ฒกํฐํ ์ํค๊ธด ์ฌ์ ์, ์๋ฃ๋ ๋ง์๊ณ
ํด๋น ์๊ณ ๋ฆฌ์ฆ์ด ๋ด๊ฐ ์ค์ ํ Enum๊ฐ์ ์ง๋ย ํ์ผ๋งต๊ณผ ๋น๊ตํ๊ธฐ์ ์ด์ธ์ ์ด๋ ค์์ด ์์์
์์๋ก ๋๊ฐ๊ณ ๊ผด๋ฐํ๋ฉด์ ์ฌ๋ฆฌ์ ๋ฆฌ ํ์ํ ๊ฒ์ฒ๋ผ ํ๋ฉด์ ์ข ํด๋งด;
์ด์จ๋ ์ฌ์์ ์ฐจํด์ ์ด๋ป๊ฒ๋ ํด๊ฒฐํจ
List<Vector2Int> vector2ints = new List<Vector2Int>();
ย ย ย ย for (int i = 0; i < pointsInt.Count; i++)
ย ย ย ย {
ย ย ย ย ย ย Vector3Int vector3Int = new Vector3Int(pointsInt[i].x, pointsInt[i].y,0);
ย ย ย ย ย ย if(tilemap.HasTile(vector3Int))
ย ย ย ย ย ย {
ย ย ย ย ย ย ย ย Tile tile = tilemap.GetTile<Tile>(vector3Int);
ย ย ย ย ย ย ย ย tileGrid.TilesDictionary.TryGetValue((int)poissonSamp.spawnTileType, out Tile outTile);
ย ย ย ย ย ย ย ย if(tile == outTile)
ย ย ย ย ย ย ย ย {
ย ย ย ย ย ย ย ย ย ย vector2ints.Add(new Vector2Int(vector3Int.x, vector3Int.y));
ย ย ย ย ย ย ย ย }
ย ย ย ย ย ย ย ย ย
ย ย ย ย ย ย }
ย ย ย ย ย ย else
ย ย ย ย ย ย {
ย ย ย ย ย ย ย ย Debug.LogError("Cant find tile on " + vector3Int);
ย ย ย ย ย ย }
ย ย ย ย }
ํด๋น ์์น์ ํ์ผ์ ๊ตฌํ๊ณ ย dictionary์ 'ํ' ํ์ผ์ด ๊ฐ์์ง ๋น๊ตํดย
๋ง๋ค๋ฉด ํด๋น์์น์ '๋ ธ๋ฃจ' ํ๋ฆฌํน ์์ฑ์ํค๊ฒ๋
(7์ ๋ฐฉํฅ 2๊ฐ์ ๋๊ทธ๋ผ๋ฏธ๋ฅผ ์ ์ธํ) ์์ ๋๊ทธ๋ผ๋ฏธ๋ค์ด ํ๋ณด์๋ค์ด๊ณ , ํฐ ๋๊ทธ๋ผ๋ฏธ๊ฐ ๋น์ ์์
๋น์ ์ ์ค ์ 'ํ'์ '๋๋ฌด'ย ํ์ผ๊ณผ ๊ฒน์น๋๊ฒ ๋ณด์ผํ ๋ฐ ๋์ค์ ํด๊ฒฐํ ์์
๋๊ธ 0