-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathStageSound.java
67 lines (58 loc) · 1.75 KB
/
StageSound.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
import processing.core.*;
import processing.data.*;
import java.util.ArrayList;
import processing.sound.*;
class StageSound implements Serialization {
public static final Identifier ID = new Identifier("StageSound");
static transient skiny_mann source;
String path, name, type="sound";
protected transient int sound;
boolean isNarration = true;
StageSound(JSONObject input) {
name=input.getString("name");
path=input.getString("location");
if(!input.isNull("narration")){
isNarration = input.getBoolean("narration");
}
if(isNarration){
sound = source.soundHandler.registerLevelNarration(source.rootPath+path);
}else{
sound = source.soundHandler.registerLevelSound(source.rootPath+path);
}
}
StageSound(String Name, String location,boolean narration) {
name=Name;
path=location;
isNarration = narration;
if(isNarration){
sound = source.soundHandler.registerLevelNarration(source.rootPath+path);
}else{
sound = source.soundHandler.registerLevelSound(source.rootPath+path);
}
}
public StageSound(SerialIterator iterator){
path = iterator.getString();
name = iterator.getString();
isNarration = iterator.getBoolean();
}
JSONObject save() {
JSONObject out=new JSONObject();
out.setString("location", path);
out.setString("name", name);
out.setString("type", type);
out.setBoolean("narration", isNarration);
return out;
}
@Override
public SerializedData serialize() {
SerializedData data = new SerializedData(id());
data.addObject(SerializedData.ofString(path));
data.addObject(SerializedData.ofString(name));
data.addBool(isNarration);
return data;
}
@Override
public Identifier id() {
return ID;
}
}