Allow devs to change the sounds of disguises
This commit is contained in:
parent
cd44c50f2e
commit
e659875347
@ -153,21 +153,45 @@ public enum DisguiseSound {
|
|||||||
return cancelSounds;
|
return cancelSounds;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setSound(SoundType type, Sound sound) {
|
||||||
|
setSound(type, CraftSound.getSound(sound));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSound(SoundType type, String sound) {
|
||||||
|
if (type == SoundType.CANCEL)
|
||||||
|
cancelSounds.add(sound);
|
||||||
|
else {
|
||||||
|
disguiseSounds.put(type, sound);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void removeSound(SoundType type, Sound sound) {
|
||||||
|
removeSound(type, CraftSound.getSound(sound));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void removeSound(SoundType type, String sound) {
|
||||||
|
if (type == SoundType.CANCEL)
|
||||||
|
cancelSounds.remove(sound);
|
||||||
|
else {
|
||||||
|
disguiseSounds.remove(type);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Used to check if this sound name is owned by this disguise sound.
|
* Used to check if this sound name is owned by this disguise sound.
|
||||||
*/
|
*/
|
||||||
public SoundType getType(String name, boolean ignoreDamage) {
|
public SoundType getType(String sound, boolean ignoreDamage) {
|
||||||
if (isCancelSound(name))
|
if (isCancelSound(sound))
|
||||||
return SoundType.CANCEL;
|
return SoundType.CANCEL;
|
||||||
if (disguiseSounds.containsKey(SoundType.STEP) && disguiseSounds.get(SoundType.STEP).startsWith("step.")
|
if (disguiseSounds.containsKey(SoundType.STEP) && disguiseSounds.get(SoundType.STEP).startsWith("step.")
|
||||||
&& name.startsWith("step."))
|
&& sound.startsWith("step."))
|
||||||
return SoundType.STEP;
|
return SoundType.STEP;
|
||||||
for (SoundType type : SoundType.values()) {
|
for (SoundType type : SoundType.values()) {
|
||||||
if (!disguiseSounds.containsKey(type) || type == SoundType.DEATH || (ignoreDamage && type == SoundType.HURT))
|
if (!disguiseSounds.containsKey(type) || type == SoundType.DEATH || (ignoreDamage && type == SoundType.HURT))
|
||||||
continue;
|
continue;
|
||||||
String s = disguiseSounds.get(type);
|
String s = disguiseSounds.get(type);
|
||||||
if (s != null) {
|
if (s != null) {
|
||||||
if (s.equals(name))
|
if (s.equals(sound))
|
||||||
return type;
|
return type;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user