예제 #1
0
        public override void Read()
        {
            var itemgroup = new CollectionItem();

            var items = new AreaItems();

            var item = new SingleItem();

            foreach (string s in Strings)
            {
                if (s.StartsWith("// "))
                {
                    continue;
                }

                if (s.StartsWith("//"))
                {
                    items = new AreaItems {
                        Name = s.Replace("//", "")
                    };

                    continue;
                }

                if (string.IsNullOrEmpty(s))
                {
                    continue;
                }

                if (s.StartsWith("0x"))
                {
                    if (items.Color != System.Windows.Media.Colors.Black)
                    {
                        Items.List.Add(items);
                    }
                    items.Color = ReadColorFromInt(s);
                    itemgroup   = new CollectionItem();
                    Items.List.Add(items);
                    continue;
                }
                itemgroup = new CollectionItem();
                var str = s.Split('/');
                itemgroup.Name = str.Last();
                var s1 = str[0].Split(separator, StringSplitOptions.RemoveEmptyEntries).ToList();

                itemgroup.Percent = int.Parse(s1.First());

                s1.Remove(s1.First());

                for (int index = 0; index < s1.Count; index++)
                {
                    DivideEtImpera(index, s1, ref item, itemgroup);
                }

                items.List.Add(itemgroup);
            }
        }
예제 #2
0
 public AreaColor()
 {
     Color              = Colors.Black;
     TextureIndex       = 0;
     Index              = 0;
     Min                = 0;
     Max                = 0;
     Name               = "";
     _list              = new ObservableCollection <CircleMountain>();
     Type               = TypeColor.None;
     _items             = new AreaItems();
     _transitionTexture = new ObservableCollection <AreaTransitionTexture>();
     _transitionItems   = new ObservableCollection <AreaTransitionItem>();
     _coast             = new AreaTransitionItemCoast();
     _transitionCliff   = new ObservableCollection <AreaTransitionCliffTexture>();
     _SmoothCoast       = new ObservableCollection <CircleMountain>();
     _coastAltitude     = 0;
     _cliffCoast        = false;
 }
예제 #3
0
 public void SetGroupe(IAreaContents areaItem, string value)
 {
     foreach (var group in Grouped)
     {
         if (group.Value.IndexOf(areaItem) > 0)
         {
             group.Value.Remove(areaItem);
             if (group.Value.Count == 0)
             {
                 Grouped.Remove(value);
             }
             break;
         }
     }
     if (!string.IsNullOrEmpty(value))
     {
         if (!Grouped.ContainsKey(value))
         {
             Grouped[value] = new AreaItems();
         }
         Grouped[value].Add(areaItem);
     }
 }