Esempio n. 1
0
        private void PluginManager_PluginRequestCharSet(object sender, PluginRequestCharSetEventArgs e)
        {
            IEnumerable <CharSet> source = null;

            if (e.SetType == null)
            {
                source = csManager.CharSets.Sprites.Concat(csManager.CharSets.Tiles);
            }
            else if (e.SetType.Value == CharSetType.Sprite)
            {
                source = csManager.CharSets.Sprites;
            }
            else
            {
                source = csManager.CharSets.Tiles;
            }


            if (e.Id != null)
            {
                source = source.Where(cs => cs.Id == e.Id.Value);
            }

            if (!string.IsNullOrWhiteSpace(e.Name))
            {
                source = source.Where(cs => cs.Name == e.Name);
            }

            if (e.SetType != null)
            {
                source = source.Where(cs => cs.SetType == e.SetType.Value);
            }

            e.FoundCharSets = source.ToArray();
        }
Esempio n. 2
0
        internal CharSet[] PluginRequestCharSet(Guid?Id, string SetName, CharSetType?SetType)
        {
            if (RequestCharSet != null)
            {
                PluginRequestCharSetEventArgs e = new PluginRequestCharSetEventArgs {
                    Id = Id, Name = SetName, SetType = SetType
                };
                RequestCharSet(this, e);
                return(e.FoundCharSets);
            }

            return(null);
        }