예제 #1
0
        public AreaTextures FindByIndex(int id)
        {
            AreaTextures text = null;

            if (_fast != null)
            {
                _fast.TryGetValue(id, out text);
            }
            return(text);
        }
        public void GetData(Action <object, Exception> callback)
        {
            var areatexture = new AreaTextures()
            {
                Index = 10, Name = "DataVirtual"
            };
            var random = new Random();

            for (var index = 0; index < 10; index++)
            {
                areatexture.List.Add(random.Next(1, 100));
                areatexture.AreaTransitionTexture.List.Add(
                    new EssenceUDK.MapMaker.Elements.Textures.TextureTransition.AreaTransitionTexture()
                {
                    TextureIdTo = random.Next(10, 150), Name = String.Format("Land Trnasition {0}", index)
                });
                areatexture.CollectionAreaItems.List.Add(

                    new EssenceUDK.MapMaker.Elements.Items.ItemsTransition.AreaTransitionItem()
                {
                    TextureIdTo = random.Next(10, 150),
                    Name        = String.Format("TransitionItems_{0}", index)
                });
            }
            foreach (
                LineType lineType in
                Enum.GetValues(typeof(LineType)))
            {
                foreach (var direction in Enum.GetValues(typeof(EssenceUDK.MapMaker.Elements.Direction)))
                {
                    foreach (var trans in areatexture.AreaTransitionTexture.List)
                    {
                        for (var i = 0; i < 10; i++)
                        {
                            trans.AddElement(lineType, (int)direction, random.Next(0, 100));
                        }
                    }
                    foreach (var trans in areatexture.CollectionAreaItems.List)
                    {
                        for (var i = 0; i < 10; i++)
                        {
                            trans.AddElement(lineType, (int)direction, random.Next(0, 100));
                        }
                    }
                }
            }

            callback(areatexture, null);
        }
        private AreaTextureViewModel()
        {
            CopyTexture = new RelayCommand(() =>
            {
                _clone = (AreaTextures)MapSdk.CloneSdkObject(SelectedAreaTextures);
            },
                                           () => SelectedAreaTextures != null
                                           );

            AddTexture = new RelayCommand(() =>
            {
                Textures.List.Add(new AreaTextures());
                RaisePropertyChanged(() => Textures);
            }, () => Textures != null);

            RemoveTexture = new RelayCommand(() =>
            {
                Textures.List.Remove(SelectedAreaTextures);
                SelectedAreaTextures = null;
            }, () => SelectedAreaTextures != null);


            AddTransitionTexture = new RelayCommand(() =>
            {
                SelectedAreaTextures.AreaTransitionTexture.List.Add(new AreaTransitionTexture());
            }, () => SelectedAreaTextures != null);


            AddTransitionItem = new RelayCommand(() =>
            {
                SelectedAreaTextures.CollectionAreaItems.List.Add(new AreaTransitionItem());
            }, () => SelectedAreaTextures != null);



            var viewModelSdk = ServiceLocator.Current.GetInstance <MapMakerSdkViewModel>();

            viewModelSdk.PropertyChanged += (sender, eventarg) => { RaisePropertyChanged(); };
        }