Skip to content

Commit b57b056

Browse files
committed
Revert to use emitters on macOS
1 parent 1ba7a3d commit b57b056

2 files changed

Lines changed: 70 additions & 70 deletions

File tree

scripts/play_sound/play_sound.gml

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ function play_sound() {
1515
var argument_5 = 0
1616
if (argument_count > 5) argument_5 = argument[5]
1717

18-
if (os_type != os_macosx) {
18+
//if (os_type != os_macosx) {
1919

2020
var ins, key, vol, pan, newemitter, emitter, pit, keyshift
2121
ins = argument_0
@@ -44,38 +44,38 @@ function play_sound() {
4444
ds_list_add(newemitter, argument_5)
4545
ds_list_add(emitters_to_remove, newemitter)
4646

47-
} else {
47+
//} else {
4848

49-
var ins, key, vol, pan, newemitter, emitter, pit, keyshift
50-
ins = argument_0
51-
key = argument_1
52-
vol = argument_2
53-
pan = argument_3
54-
pit = argument_4
49+
//var ins, key, vol, pan, newemitter, emitter, pit, keyshift
50+
//ins = argument_0
51+
//key = argument_1
52+
//vol = argument_2
53+
//pan = argument_3
54+
//pit = argument_4
5555

56-
if (!ins.loaded)
57-
return 0
58-
//emitter=audio_emitter_create()
59-
keyshift = key + (ins.key + (pit/100) - 78)
60-
var emitter_pitch = 0.5 * power(2, keyshift / 12)
61-
var emitter_gain = (vol / 100) * mastervol
62-
var emitter_x = 100
63-
if (realstereo = 0) emitter_x = pan
56+
//if (!ins.loaded)
57+
// return 0
58+
////emitter=audio_emitter_create()
59+
//keyshift = key + (ins.key + (pit/100) - 78)
60+
//var emitter_pitch = 0.5 * power(2, keyshift / 12)
61+
//var emitter_gain = (vol / 100) * mastervol
62+
//var emitter_x = 100
63+
//if (realstereo = 0) emitter_x = pan
6464

65-
var soundid = audio_play_sound_at(ins.sound, emitter_x, 0, 0, 100, 300, 1, false, current_time)
66-
audio_sound_gain(soundid, emitter_gain, 0)
67-
audio_sound_pitch(soundid, emitter_pitch)
65+
//var soundid = audio_play_sound_at(ins.sound, emitter_x, 0, 0, 100, 300, 1, false, current_time)
66+
//audio_sound_gain(soundid, emitter_gain, 0)
67+
//audio_sound_pitch(soundid, emitter_pitch)
6868

69-
sounds++
69+
//sounds++
7070

71-
//Schedule emitter to be deleted from memory
72-
newemitter = ds_list_create()
73-
ds_list_add(newemitter,soundid) //store emitter id
74-
var length = audio_sound_length(ins.sound) / (4) * (1/emitter_pitch)
75-
ds_list_add(newemitter, (get_timer() + length * 1000000)) //store moment at which the emitter should be removed
76-
ds_list_add(newemitter, argument_5)
77-
ds_list_add(emitters_to_remove, newemitter)
71+
////Schedule emitter to be deleted from memory
72+
//newemitter = ds_list_create()
73+
//ds_list_add(newemitter,soundid) //store emitter id
74+
//var length = audio_sound_length(ins.sound) / (4) * (1/emitter_pitch)
75+
//ds_list_add(newemitter, (get_timer() + length * 1000000)) //store moment at which the emitter should be removed
76+
//ds_list_add(newemitter, argument_5)
77+
//ds_list_add(emitters_to_remove, newemitter)
7878

79-
}
79+
//}
8080

8181
}
Lines changed: 42 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
function remove_emitters() {
22

3-
if (os_type != os_macosx) {
3+
//if (os_type != os_macosx) {
44

55
//Called from control_draw every frame
66
//Removes emitters from memory to prevent memory leaking
@@ -20,28 +20,28 @@ function remove_emitters() {
2020
}
2121
}
2222

23-
} else {
23+
//} else {
2424

25-
//Called from control_draw every frame
26-
//Removes emitters from memory to prevent memory leaking
27-
var pos, arr, emitterid, timetoremove
25+
////Called from control_draw every frame
26+
////Removes emitters from memory to prevent memory leaking
27+
//var pos, arr, emitterid, timetoremove
2828

29-
for(pos = 0; pos < ds_list_size(emitters_to_remove); pos++){
30-
arr = ds_list_find_value(emitters_to_remove,pos)
31-
32-
emitterid = ds_list_find_value(arr,0)
33-
timetoremove = ds_list_find_value(arr,1)
34-
35-
if(get_timer() >= timetoremove){
36-
ds_list_delete(emitters_to_remove,pos)
37-
//audio_emitter_free(emitterid)
38-
audio_stop_sound(emitterid)
39-
//log("freeing emitter with id " + string(emitterid))
40-
sounds--
41-
}
42-
}
43-
44-
}
29+
//for(pos = 0; pos < ds_list_size(emitters_to_remove); pos++){
30+
// arr = ds_list_find_value(emitters_to_remove,pos)
31+
32+
// emitterid = ds_list_find_value(arr,0)
33+
// timetoremove = ds_list_find_value(arr,1)
34+
35+
// if(get_timer() >= timetoremove){
36+
// ds_list_delete(emitters_to_remove,pos)
37+
// //audio_emitter_free(emitterid)
38+
// audio_stop_sound(emitterid)
39+
// //log("freeing emitter with id " + string(emitterid))
40+
// sounds--
41+
// }
42+
//}
43+
44+
//}
4545

4646
}
4747

@@ -53,7 +53,7 @@ function remove_emitters_all() {
5353
if (layerid < 0) layerid = 0
5454
if (layerto < layerid) layerto = layerid
5555

56-
if (os_type != os_macosx) {
56+
//if (os_type != os_macosx) {
5757

5858
var pos, arr, emitterid, timetoremove
5959

@@ -77,29 +77,29 @@ function remove_emitters_all() {
7777

7878
}
7979

80-
} else {
80+
//} else {
8181

82-
var pos, arr, emitterid, timetoremove, soundlayer
82+
// var pos, arr, emitterid, timetoremove, soundlayer
8383

84-
for (var i = 0; i < 3; i++) {
84+
// for (var i = 0; i < 3; i++) {
8585

86-
for(pos = 0; pos < ds_list_size(emitters_to_remove); pos++){
87-
arr = ds_list_find_value(emitters_to_remove,pos)
86+
// for(pos = 0; pos < ds_list_size(emitters_to_remove); pos++){
87+
// arr = ds_list_find_value(emitters_to_remove,pos)
8888

89-
emitterid = ds_list_find_value(arr,0)
90-
timetoremove = ds_list_find_value(arr,1)
91-
soundlayer = ds_list_find_value(arr, 2)
89+
// emitterid = ds_list_find_value(arr,0)
90+
// timetoremove = ds_list_find_value(arr,1)
91+
// soundlayer = ds_list_find_value(arr, 2)
9292

93-
if(layerid = 0 || (soundlayer >= layerid && soundlayer <= layerto)){
94-
ds_list_delete(emitters_to_remove,pos)
95-
//audio_emitter_free(emitterid)
96-
audio_stop_sound(emitterid)
97-
//log("freeing emitter with id " + string(emitterid))
98-
sounds--
99-
}
100-
}
101-
102-
}
103-
104-
}
93+
// if(layerid = 0 || (soundlayer >= layerid && soundlayer <= layerto)){
94+
// ds_list_delete(emitters_to_remove,pos)
95+
// //audio_emitter_free(emitterid)
96+
// audio_stop_sound(emitterid)
97+
// //log("freeing emitter with id " + string(emitterid))
98+
// sounds--
99+
// }
100+
// }
101+
102+
// }
103+
104+
//}
105105
}

0 commit comments

Comments
 (0)