public static Effect ParseEffect(XElement node) { string soundname = node.RequireAttribute("name").Value; bool playing = node.TryAttribute <bool>("playing", true); return(entity => { entity.GetOrCreateComponent("Sound"); SoundMessage msg = new SoundMessage(entity, soundname, playing); entity.SendMessage(msg); }); }
public static Effect ParseEffect(XElement node) { string soundname = node.RequireAttribute("name").Value; bool playing = node.TryAttribute<bool>("playing", true); return entity => { entity.GetOrCreateComponent("Sound"); SoundMessage msg = new SoundMessage(entity, soundname, playing); entity.SendMessage(msg); }; }
public override void Message(IGameMessage msg) { SoundMessage sound = msg as SoundMessage; if (sound != null) { sounds.Add(sound.SoundName); if (sound.Playing) { Engine.Instance.SoundSystem.PlaySfx(sound.SoundName); } else { Engine.Instance.SoundSystem.StopSfx(sound.SoundName); } } }