๋ฒ ๋ฅด๋์ ์ด๋ชฝ์ด์ค ๋ฐ๋ผ ๋ง๋ค๋ค๊ฐ UI ๋ฐ์ธ๋ฉ ํ๊ณ ์๋๋ฐ
์ด๋ฐ ๋ถ๋ถ์์ ๊ฐ ํ๋๋ฅผ ์ ๋ํฐ์์ ์ง์ ๋์ด์ ์ฐ๊ฒฐํ๋๊ฑฐ ๊ท์ฐฎ์์
ย ๋ฒํผ์ด๋ ํ ์คํธ ์ค๋ธ์ ํธ๋ฅผย enum์ ๊ฐ์ ์ด๋ฆ์ผ๋ก ๋ง๋ค ์ด ์ค ํย ๋ฃ๊ณ ,
ย ์๋์ ๊ฐ์ด ํด๋น์ด๋ฆ์ ๊ฐ์ง ์ค๋ธ์ ํธ๋ฅผ ์ฐพ์์ฃผ๋ ๋ฐฉ์์ผ๋ก ๋ฐ์ธ๋ฉ์ ํ ํ์(๋ฃจํค์ค์งฑ๋ ๋ฐฉ๋ฒ), ์ค๋ธ์ ํธ ํ์ ์ ๋ฐ๋ผ ์ด๋ํธ๋ฅผ ํด์ฃผ๊ฒ ํ๊ณ
์ด๋ํธ ํจ์์์๋ย ์๋์ ๊ฐ์ด ๋ฒํผ ํด๋ฆญ ์ ์ด๋ฒคํธ ์คํ์ ์ถ๊ฐ ํด ์ฃผ๊ณ
๋ฒํผ ํด๋ฆญ์ ๋งค๊ฐ๋ณ์๋ก ๋ฐ์์จ ํ๋๋ช (์ค๋ธ์ ํธ๋ช ์ด๋ ๊ฐ์)์ ํด๋นํ๋ ํ๋๋ฅผ ํด๋์ค์์ ์ฐพ์ ๊ทธ ๊ฐ์ ๋ณ๊ฒฝํด์ฃผ๊ฒ ํ๋๋ฐ
ํ๋๊ฐย ๋ณ๊ฒฝ์ ๋จ. ๊ทผ๋ฐ SyncHook์ด ๋์์ย ์ํจ.
์์ idx++๋ ํ๋๊ฐ์ ๋ฒํผํด๋ฆญ์๋ง๋ค 1์ฉ ์ถ๊ฐํด์ฃผ๋ ค๊ณ ํ ์คํธํ๋ ค๊ณ ํ๋๊ฑฐ์. unity์ ์ฐ๊ฒฐํด์ ํ๋ํ๋ ๋์ํ๋๊ฑฐ ๋ณด๋ฉด ํ๋๋ช ์ด ์ ๋๋ก 1์ฉ ์ถ๊ฐ๋๋๋ฐ
๋น๋ํ๋ฉด ์๋ฌ์์.
์ด๊ฑฐ ์ด๋ป๊ฒ ํด๊ฒฐํ ๋ฐฉ๋ฒ์ด ์์ผ๋ ค๋?
์ ์ฒด๋ฅผ ์ฌ๋ ค์ฃผ๋ฉด ์๋จ?
์ด๊ฒ ui ๋ฐ์ธ๋ฉํ๋ ํด๋์ค ๊ฑฐ์ ์ ๋ถ์ธ๋ฐ.... ์๋ถ๋ถ์ private enum Buttons{ EmergencyMeetingPlusButton,EmergencyMeetingMinusButton} ์ด๋ฐ์์ผ๋ก enum ์ ์ํด์ค๊ฑฐ ๋ง๊ณ ๋ ์์ด์. ํด๋์ค ์์ ๋ค๋ฅธ ํ๋๋ค [SyncVar(hook = nameof(SetEmergencyMeetingCooldewn_Hook))] private int EmergencyMeetingCooldown; [SerializeField] private TextMeshProUGUI EmergencyMeetingCooldownText; public void SetEmergencyMeetingCooldewn_Hook(int _, int value)
์ ํ๋ธ ๋ฒ ๋ฅด์งฑ์ ์ฌ๋งํ ํ๋๋ค์ ์ ๋ํฐ ํด ์์์ ์ง์ ๋๋๊ทธํด์ ์ค๋ธ์ ํธ๋ค์ ๋ฐ์ธ๋ํ๋ ๋ฐฉ์์ด๊ณ ๋ฃจํค์ค์งฑ์ ์ฝ๋์์์ ์๋ํํ์ฌ ๋ฐ์ธ๋ํ๋ ๋ฐฉ์์ด๋ผ, ๋ฒ ๋ฅด์งฑ ์ปจํ ์ธ ์ ๋ฃจํค์ค์งฑ์ ์๋ํ๋ฅผ ์ฌ์ฉํด๋ณธ๊ฑฐ์์. ๊ทผ๋ฐ ์๋ฌ.....
์ผ๋จ ButtonInit์์ ์ง์ญ๋ณ์ Obj๋ฅผ ๋ง๋ค์ด์ ๊ฑฐ๊ธฐ์๋ค ์จํด๋ฆญ์ ๋ฃ๊ธฐ๋ง ํจ. ์ด๋ฌ๋ฉด ButtonInit์์ ๋ฆฌํดํ๋ฉด Obj๋ ์ฌ๋ผ์ง๊ณ ์๋ฌด๊ฒ๋ ์ํ ๊ฒ ๋๋ ๊ฑฐ์์
์ด๊ฒ ๋ฌธ์ ๊ฐ ์๋ฒ๊ฐ ๊ฐ์ ์ ๋๋ก ์ฃผ์ง ๋ชปํด์. ์ด๋จ๋ ์๋ฌ๊ฐ ๋ฐ์ํ๋๋ฉด์. ์๋ฒ์์ ํ๋ฌ์ค๋ ๋ง์ด๋์ค ๋ฒํผ์ ๋๋ฌ์ ๊ฐ์ ์ ์กํ ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํด์. ์๋ฒ์ธก์ ๊ฐ์ ๋ณ๊ฒฝ๋๋๋ฐ, ๊ทธ๊ฒ SyncVar๋ก ์ธํด ๋๊ธฐํ๋ฅผ ์์ผ์ผ ํ๋๋ฐ, ๊ทธ๊ฒ ์๋์. ๊ทธ๋ฌ๋ ๋ฐ์ธ๋๋ผ๋์ง ๋ฒํผ ์ก์ ์ ๋ค ์ ์์ ์ผ๋ก ๋์๋๋ ๊ฑฐ์์.