물리 충돌 Y 좌표
phy_collision_y
는 두 개의 물리 엔진이 활성화된 인스턴스 간의 충돌에서 감지된 모든 점의 Y 좌표를 반환하는 읽기 전용 배열입니다.
문법
phy_collision_y[index]
반환값
- 실수 (단정도 부동 소수점 값) 또는 인스턴스에 물리 엔진이 활성화되어 있지 않은 경우 정의되지 않음.
예제
충돌 이벤트
다음 코드는 두 개의 물리 엔진이 활성화된 인스턴스 간의 충돌에서 정의된 모든 점에 입자를 생성합니다.
for(var i = 0; i < phy_collision_points; i += 1;){
part_particles_create(global.Sname, phy_collision_x[i], phy_collision_y[i], global.Spark, 5);
}
활용 예제
예제 번호 | 설명 |
---|---|
1 | 충돌 지점에 입자를 생성하여 시각적 효과를 추가하는 방법 |
2 | 충돌 지점에서 물체를 회전시키는 방법 |
3 | 충돌 지점에 따라 다른 행동을 수행하는 방법 |
4 | 충돌 지점에 따라 점수를 추가하는 방법 |
5 | 충돌 지점에 따라 사운드를 재생하는 방법 |
예제 코드 스니펫
- 입자 생성
gml for(var i = 0; i < phy_collision_points; i += 1;){ part_particles_create(global.Sname, phy_collision_x[i], phy_collision_y[i], global.Spark, 5); }
- 물체 회전
gml for(var i = 0; i < phy_collision_points; i += 1;){ instance_create_layer(phy_collision_x[i], phy_collision_y[i], "Instances", obj_rotating); }
- 행동 수행
gml for(var i = 0; i < phy_collision_points; i += 1;){ if(phy_collision_y[i] > 100){ // 특정 행동 수행 } }
- 점수 추가
gml for(var i = 0; i < phy_collision_points; i += 1;){ score += 10; // 충돌 시 점수 추가 }
- 사운드 재생
gml for(var i = 0; i < phy_collision_points; i += 1;){ audio_play_sound(snd_collision, 1, false); }