using UnityEngine;
using UnityEngine.UI;
using System.Linq;
public class level_bar : MonoBehaviour
{
ย ย public Transform dori;ย // A ์ค๋ธ์ ํธ์ Transform ์ปดํฌ๋ํธ๋ฅผ ํ ๋น
ย ย public Slider sliderUI;ย // ์ฌ๋ผ์ด๋ ๋ฐ UI๋ฅผ ํ ๋น
ย ย private void OnEnable()
ย ย {
ย ย ย ย // end ํ๊ทธ๋ฅผ ๊ฐ์ง๊ณ ์๋ ์ค๋ธ์ ํธ๋ค ์ค์์ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ฒ์ ์ฐพ์
ย ย ย ย GameObject closestEndObject = FindClosestEndObject();
ย ย ย ย if (closestEndObject != null)
ย ย ย ย {
ย ย ย ย ย ย // closestEndObject ์ค๋ธ์ ํธ์ doriย ์ค๋ธ์ ํธ ์ฌ์ด์ y ์ขํ ๊ฑฐ๋ฆฌ ๊ณ์ฐ
ย ย ย ย ย ย float distance = Mathf.Abs(ghost.position.y - closestEndObject.transform.position.y);
ย ย ย ย ย ย // A ๋ณ์์ ๊ฑฐ๋ฆฌ ๊ฐ ์ ์ฅ (์ ๋๊ฐ)
ย ย ย ย ย ย float A = distance;
ย ย ย ย ย ย // ๋๋ฒ๊ทธ ๋ก๊ทธ ์ถ๋ ฅ
ย ย ย ย ย ย Debug.Log("A: " + A);
ย ย ย ย }
ย ย ย ย else
ย ย ย ย {
ย ย ย ย ย ย Debug.Log("No end objects found.");
ย ย ย ย }
ย ย }
ย ย // ํ๋ก์ ํธ ๋ด์์ blueย ํ๊ทธ๋ฅผ ๊ฐ์ง๊ณ ์๋ ์ค๋ธ์ ํธ๋ค ์ค์์ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ฒ์ ์ฐพ์ ๋ฐํ
ย ย private GameObject FindClosestEndObject()
ย ย {
ย ย ย ย GameObject[] endObjects = GameObject.FindGameObjectsWithTag("Blue");
ย ย ย ย if (endObjects.Length > 0)
ย ย ย ย {
ย ย ย ย ย ย GameObject closestObject = endObjects.OrderBy(o => Vector3.Distance(o.transform.position, ghost.position)).First();
ย ย ย ย ย ย return closestObject;
ย ย ย ย }
ย ย ย ย return null;
ย ย }
}
๋ฌธ์ ์์ด ๋ณด์ด๋๋ฐ ๋ญ๊ฐ ๋ฌธ์ ์ธ์ง ๋ชจ๋ฅด๊ฒ ๋ค์ ใ ํใ ใ ใ ใ ใ ใ
๋ชจ๋ ์ค์ Debug.Log ๋ฃ๊ณ ์ด๋๋ถํฐ ์๋ค์ด์ค๋์ง ๋ณธ๋ค์์ ํด๋น ์ฝ๋ ์์ ๋ชปํ๊ฒ ์ผ๋ฉด ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ๊ณ ๊ณ ๋ ๋๊น์ง ํ๋๊ฑฐ์ ๊ณ ๊ณ
๋ณดํต ์ด๋ฐ๊ฑด ๋ฉ์๋ ์์์ฐจ์ด๋๋ฐ OnEnable์ด ๋ฐ๋๋๋ ํ์ด๋ฐ์ ๋๊ฐ ์ฐพ๋ Blueํ๊ทธ๋ฅผ ๊ฐ์ง์ ๊ฐ ์ ๋๋ก ํ์ฑํ ๋์๋์ง๋ถํฐ ๋ณด์ ๊ฑ๋ค๊ฐ ๋ญ start์์ init์ ํ๋ค๊ฑฐ๋ ํ๋ฉด ๋ชป์ฐพ์์๋์์ง
Blue ํ๊ทธ ์ค๋ธ์ ํธ๊ฐ ํญ์ ํ์ฑํ ๋์ด์๋ ๊ฑด ํ๋๋ผ๋๊ฑฐ ๋ด์ ๊ทธ๊ฑธ ํญ์ ํ๊ฐ๋ง ๋จ๊ฒจ๋๋ ์ ๋ FindClosestEndObject() ๋ถ๋ฆฌ๋ ํ์ด๋ฐ์ด๋ ์๊ฐ๋ ค์ ๊ทธ๋ฐ๊ฑฐ์ผ์๋? ์๋๋ฉด ๊ฒ์ ์ค๋ธ์ ํธ ์์ฒด์ ๋ฌธ์ ์ผ์๋ ์์ผ๋ GameObject[] endObjects = GameObject.FindGameObjectsWithTag("Blue"); ๋ฐ๋ก ๋ฐ์ Debug.Log($"end object num: {endObjects.Length}"); ๊ฐ์๊ฑฐ ๋ฃ๊ฑฐ๋ ์๋๋ฉด ๋๋ฒ๊ฑฐ ๋๋ ค์ ์ค๋จ์ ์ฐ์ด์ ์ง์ง ์๋ฌด๊ฒ๋ ๋ชป์ฐพ๊ณ ์๋์ง ํ์ธํด๋ดฅ