Fix for the ShChaos sound not playing.

This commit is contained in:
GlenCFL 2017-12-08 01:42:00 -05:00
parent c9caed7e6b
commit 86ff670fb0
1 changed files with 78 additions and 78 deletions

View File

@ -231,7 +231,7 @@ namespace Filtration.ViewModels
public bool HasSound => Block.HasBlockItemOfType<SoundBlockItem>(); public bool HasSound => Block.HasBlockItemOfType<SoundBlockItem>();
public bool HasPositionalSound => Block.HasBlockItemOfType<PositionalSoundBlockItem>(); public bool HasPositionalSound => Block.HasBlockItemOfType<PositionalSoundBlockItem>();
public bool HasAudioVisualBlockItems => AudioVisualBlockItems.Any(); public bool HasAudioVisualBlockItems => AudioVisualBlockItems.Any();
private void OnSwitchBlockItemsViewCommand() private void OnSwitchBlockItemsViewCommand()
@ -338,63 +338,63 @@ namespace Filtration.ViewModels
return blockCount < blockItem.MaximumAllowed; return blockCount < blockItem.MaximumAllowed;
} }
private string ComputeFilePartFromNumber(string identifier) private string ComputeFilePartFromNumber(string identifier)
{ {
if (Int32.TryParse(identifier, out int x)) if (Int32.TryParse(identifier, out int x))
{ {
if (x <= 9) if (x <= 9)
{ {
return "AlertSound_0" + x + ".wav"; return "AlertSound_0" + x + ".wav";
} }
else else
{ {
return "AlertSound_" + x + ".wav"; return "AlertSound_" + x + ".wav";
} }
} }
return ""; return "";
} }
private string ComputeFilePartFromID(string identifier) private string ComputeFilePartFromID(string identifier)
{ {
string filePart; string filePart;
switch (identifier) { switch (identifier) {
case "ShGeneral": case "ShGeneral":
filePart = "SH22General.wav"; filePart = "SH22General.wav";
break; break;
case "ShBlessed": case "ShBlessed":
filePart = "SH22Blessed.wav"; filePart = "SH22Blessed.wav";
break; break;
case "SH22Chaos": case "ShChaos":
filePart = "SH22Chaos.wav"; filePart = "SH22Chaos.wav";
break; break;
case "ShDivine": case "ShDivine":
filePart = "SH22Divine.wav"; filePart = "SH22Divine.wav";
break; break;
case "ShExalted": case "ShExalted":
filePart = "SH22Exalted.wav"; filePart = "SH22Exalted.wav";
break; break;
case "ShMirror": case "ShMirror":
filePart = "SH22Mirror.wav"; filePart = "SH22Mirror.wav";
break; break;
case "ShAlchemy": case "ShAlchemy":
filePart = "SH22Alchemy.wav"; filePart = "SH22Alchemy.wav";
break; break;
case "ShFusing": case "ShFusing":
filePart = "SH22Fusing.wav"; filePart = "SH22Fusing.wav";
break; break;
case "ShRegal": case "ShRegal":
filePart = "SH22Regal.wav"; filePart = "SH22Regal.wav";
break; break;
case "ShVaal": case "ShVaal":
filePart = "SH22Vaal.wav"; filePart = "SH22Vaal.wav";
break; break;
default: default:
filePart = ComputeFilePartFromNumber(identifier); filePart = ComputeFilePartFromNumber(identifier);
break; break;
} }
return filePart; return filePart;
} }
private void OnPlaySoundCommand() private void OnPlaySoundCommand()
@ -403,32 +403,32 @@ namespace Filtration.ViewModels
var prefix = "Resources/AlertSounds/"; var prefix = "Resources/AlertSounds/";
var filePart = ComputeFilePartFromID(identifier); var filePart = ComputeFilePartFromID(identifier);
if (filePart == "") if (filePart == "")
{ {
return; return;
} }
else else
{ {
_mediaPlayer.Open(new Uri(prefix + filePart, UriKind.Relative)); _mediaPlayer.Open(new Uri(prefix + filePart, UriKind.Relative));
_mediaPlayer.Play(); _mediaPlayer.Play();
} }
} }
private void OnPlayPositionalSoundCommand() private void OnPlayPositionalSoundCommand()
{ {
var identifier = BlockItems.OfType<PositionalSoundBlockItem>().First().Value; var identifier = BlockItems.OfType<PositionalSoundBlockItem>().First().Value;
var prefix = "Resources/AlertSounds/"; var prefix = "Resources/AlertSounds/";
var filePart = ComputeFilePartFromID(identifier); var filePart = ComputeFilePartFromID(identifier);
if (filePart == "") if (filePart == "")
{ {
return; return;
} }
else else
{ {
_mediaPlayer.Open(new Uri(prefix + filePart, UriKind.Relative)); _mediaPlayer.Open(new Uri(prefix + filePart, UriKind.Relative));
_mediaPlayer.Play(); _mediaPlayer.Play();
} }
} }
private void OnBlockItemChanged(object sender, EventArgs e) private void OnBlockItemChanged(object sender, EventArgs e)