[GDevelop]식에 등장하는 대상은 축소 대상이 아니다!

2739 단어 Gdevelop게임 제작
"GDevelop의 "활동"을 정확히 이해"페이지에서 설명한 바와 같이 GDevelop의 활동은 조건부로 대상을 축소하지만, 실제로는 대상을 축소하지 않는 경우도 있다😅
객체가 방정식에 나타나면
그나저나'식'은 조건과 동작의 입력 화면 옆에 붙어 있는 칸에 입력된 문자와 수량을 가리키는 w(정확히 문자열이면'문자열식')
그럼 우리 서둘러 구체적인 예를 들자.
예를 들면 이런 장면이 있어요. ↓.

이런이벤트가 있다면↓

조건에 따라 GreyTank1의 X 좌표가 480보다 작은지 여부를 결정합니다.
언뜻 보기에는 X 좌표가 480보다 작은 그레이 탱크1로 축소돼 이 조건을 충족하는 왼쪽 객차 두 칸만 삭제되는 것처럼 보이지만 실제로는 모든 그레이 탱크1이 삭제된다.
(또는 GreyTank1은 삭제되지 않습니다. 이유는 다음과 같습니다.)
여기서 참조하는 Grey Tank1은 필터링 대상이 아니기 때문입니다.
실제로 사용되는 조건은 "두 수치 비교"인데 GreyTank1은 공식에서 참조↓

따라서 GreyTank1은 축소된 객체가 아닙니다.
또 이 조건의 그레이 탱크1은 세 칸 중(GDevelop 내부)의 첫 칸을 말한다.
1절 X 좌표가 480보다 작으면 모든 GreyTank1(축소되지 않음)이 삭제되고 480 이상이면 부적합하므로 동작이 수행되지 않습니다.(즉, 어떤 Grey Tank1도 사라지지 않는다는 뜻)
위 예에서 조건인'두 수치 비교'가 아니라 대상의 조건인'대상의 X위치 비교'를 활용하면 ↓ 축소가 가능하다

하지만 상대가 꼭 원하는 조건이 있는 것은 아니다.
예를 들어, 객체의 점 위치(PointX()나 PointY())를 비교할 수 있는 조건은 아직 마련되지 않았습니다.
이 경우 조건을 사용하여 "두 수치 비교"를 사용할 수 있지만 방정식에 나타나는 객체는 축소된 객체가 아닙니다.
그럼 어떻게 하면 좋을까요? 아래의 그림처럼'실례별로 반복되는'사건과 조합하여 개별 판정을 통해 원하는 처리를 실현할 수 있습니다.

이번 사례처럼 단순한 조건이라면 간과할 일은 없겠죠. 하지만 더 복잡한 조건을 만들 때 부주의로 밀어넣고 "어? 정말 미안한데..."라며 귀중한 휴일을 모두 소비하는 저처럼 이런 사람이 되지 않도록 주의하세요.😭
※ 이번 기고는 "GDevelop 무료 게임 제작 도구로 쓰러뜨린 블로그"에서 시작된 이식&개정판입니다.

좋은 웹페이지 즐겨찾기