1. Grass_spawn ์ Grass ๊ฐ ์ธ์คํด์ค ๋ ์ํ๋ก ์์ํจ
GS
ใดG
2. ์ ํธ Hurtbox ๊ฐ ์์
Grass ์ GrassEffect ๋ฅผ ์ธ์คํด์คํ๊ณ
์ ํธ grassDestroyed ๋ฅผ ๋ณด๋ด๊ณ
Grass GrassEffect ๊ฐ์ด queue_free ๋จ
GS
ใดG
ใดGE
->
GS
3. ์ ํธ grassDestroyed ๋ฅผ ๋ฐ์ Grass_spawn ์ Grass ๋ฅผ ๋ค์ ์ธ์คํด์คํจ
GS
ใดG`
1-2-3-2-3-2-3-... ์ด๋ ๊ฒ ๋ง๋ค๊ณ ์ถ์๋ฐ
1-2-3-2 ์์ ๋ฉ์ถฐ
๋ง์ง๋ง 2๋ฒ์์
์ ํธ Hurtbox ๊ฐ ์์
Grass_spawn ์ GrassEffect ๋ฅผ ์ธ์คํด์คํ๊ณ
Grass GrassEffect ๊ฐ์ด queue_free ๋จ
์ด๊ฑด ๋ค ๋๋๋ฐ
print("์น์ค") ์ด๋ฐ๊ฑฐ ๋ผ์๋ณด๋๊น
2๋ฒ์์ ์ ํธ grassDestoryed ๊ฐ ์๋ณด๋ด์ง๊ฑฐ๋
3๋ฒ์์ ์๋ฐ์์ง
์ ํธ ๋ค์ ๋ณด๋ด๊ฑฐ๋ ๋ฐ์ผ๋ ค๋ฉด ๋ค๋ฅธ ์ฝ๋ ์จ์ผ๋์ ์ด๊ธฐํํด์ผ๋๋๊ฑฐ ์์?
Grass.gd
Grass_spawn.gd
1๋ฒ์งค emit_signal("grassDestroyed") ๊ฐ ์๋๊ฑฐ๋
2๋ฒ์งค func _on_Grass_grassDestroyed(): ๊ฐ ์๋
destoryed ๋์๋ ์คํ๋ ๋ค ๊ณ ์นจ
3์์ Grass๋ฅผ ์์ฑํ๊ณ ๊ทธ Grass์ grassDestroyed์๊ทธ๋์ Grass_spawn์ ์ฐ๊ฒฐํด์ค์ผํจ
Grass ์ฌ์์ connect("grassDestroyed", get_parent(), "_on_Grass_grassDestroyed") ๋ก ํ๋๋ฐ ์ค๋ฅ์์ get_parent()๊ฐ Grass_spawn ์ ๋ฏธ YSort๋ก ๋๋ฒ๋ ท๋๋ฐ ์ด์ผ๋๊ฑฐ์
add_childํ ๋ ๊ทธ๋ฅ ๋ํ๋๊ฒ ์๋๋ผ ์์ get_parent()ํด์ grass spwan ๋ถ๋ชจ ๋ ธ๋ํํ ๋ฃ์ด์คซ์ผ๋๊น ๊ธ์ตธ
grasseffect ๊บผ ๋ฒ ๊ผ๋๋ ์ด๋ ๊ฒ ๋ฌ๋ค ๋๋ฌด ๊ณ ๋ง์ผ
๊ณ ๋๊ฐค๋ ์ค์
์ฅ ๊ทธ๋ฌ๋ค ์๊ทธ๋ ์ฐ๊ฒฐํ ๋ถ๋ถ์ด ์๋ณด์ด๋๋ฐ ํน์ ์ธ์คํํฐ์์๋ง ์ฐ๊ฒฐํด์ค๊ฑฐ์?
๊ทธ๊ฑด๊ฐ๋ด
์คํฌ๋ฆฝํธ๋ก ์ธ์คํด์ค ์์ฑํ์ ๋ ์คํฌ๋ฆฝํธ๋ก ์ฐ๊ฒฐํด์ค์ผ๋จ ready ํจ์ ๋ถ๋ถ์์
์ธ์คํํฐ์์ ์ฐ๊ฒฐํด์ค ์ธ์คํด์ค๋ ์คํฌ๋ฆฝํธ๋ก ๋ง๋ค์ด์ง ์ธ์คํด์ค๋ ๊ฐ์ ์ฌ์ด์ง๋ง ๋ค๋ฅธ id์๋
์ด๋ฏธ ์๋ํฐ ํ๋ฉด์ ์๋์ ๋ค๋ผ๋ฆฌ๋ ์ธ์คํํฐ๋ก ์ฐ๊ฒฐํด์ค๋๋
ํด๋ดค์ ใณ ๊ทผ๋ฐ ์๋์ฒ๋ผ ๋จ