파티클 시스템의 모든 발사기 제거하기
part_emitter_destroy_all
함수는 지정된 파티클 시스템에서 모든 정의된 발사기를 제거하고 메모리에서 삭제합니다. 이 함수는 발사기에서 생성되는 모든 파티클을 중지시키며, 이미 생성된 파티클은 시스템에서 제거되지 않습니다. 발사기가 더 이상 필요하지 않을 때 이 함수를 호출하여 메모리 누수와 오류를 방지해야 합니다.
문법
part_emitter_destroy_all( ps );
인수
인수 | 타입 | 설명 |
---|---|---|
ps | Particle System Instance | 발사기를 제거할 파티클 시스템 |
반환값
- N/A
예제
if (lives == 0) {
part_emitter_destroy_all(global.Sname);
room_goto(rm_Menu);
}
위의 코드는 내장된 전역 변수 lives
를 확인하고, 값이 0일 경우 모든 파티클 발사기를 제거한 후 방을 변경합니다.
활용 예제
예제 1: 게임 오버 시 발사기 제거
if (game_over) {
part_emitter_destroy_all(global.particle_system);
}
이 코드는 게임 오버 상태일 때 모든 발사기를 제거합니다.
예제 2: 레벨 클리어 시 발사기 제거
if (level_cleared) {
part_emitter_destroy_all(global.current_particle_system);
}
레벨이 클리어되면 현재 파티클 시스템의 모든 발사기를 제거합니다.
예제 3: 특정 조건에서 발사기 제거
if (score >= 1000) {
part_emitter_destroy_all(global.score_based_particle_system);
}
점수가 1000 이상일 때 특정 파티클 시스템의 발사기를 제거합니다.
예제 4: 재사용을 위한 발사기 제거
if (should_reset) {
part_emitter_destroy_all(global.reusable_particle_system);
}
재사용을 위해 특정 조건이 충족되면 발사기를 제거합니다.