Example #1
0
        protected override void Perform(ActionEvent evt, Player player, MapElementInfo info, NVector pos,
                                        ActionHolder holder)
        {
            DataTerrain terrain = GameMgmt.Get().newMap.Terrain(pos);

            //which is possible?
            List <(string key, string value)> opts = new List <(string key, string value)>();
            int i = 0;

            while (holder.data.ContainsKey(i.ToString()))
            {
                var d = SplitHelper.Split(holder.data[i.ToString()]);
                if (terrain.id == d.key)
                {
                    opts.Add(d);
                }
                i++;
            }

            //found it?
            if (opts.Count == 0)
            {
                OnMapUI.Get().unitUI.ShowPanelMessageError($"No terraform possible for {terrain.Name()}");
                return;
            }

            Vector3Int v3 = new Vector3Int(pos.x, pos.y, 1); //TODO find right pos

            if (opts.Count == 1)
            {
                GameMgmt.Get().newMap.levels[pos.level]
                .SetTile(v3, opts[0].value == "remove" ? null : L.b.terrains[opts[0].value]);
                return;
            }

            //multiple?
            WindowPanelBuilder wpb = WindowPanelBuilder.Create($"Terraform {terrain.Name()}");

            foreach (var opt in opts)
            {
                wpb.panel.AddImageTextButton(CreateTitle(opt), terrain.Sprite(), () =>
                {
                    GameMgmt.Get().newMap.levels[pos.level]
                    .SetTile(v3, opt.value == "remove" ? null : L.b.terrains[opt.value]);
                    wpb.Close();
                });
            }

            wpb.AddClose();
            wpb.Finish();
        }
Example #2
0
        public override ActionHolder Create(string setting)
        {
            ActionHolder conf = base.Create(setting);

            conf.trigger = ActionEvent.Quest;

            foreach (var ele in SplitHelper.Separator(setting))
            {
                var s = SplitHelper.Split(ele);
                conf.data[s.key] = s.value;
            }

            return(conf);
        }
Example #3
0
        protected override void Perform(ActionEvent evt, Player player, MapElementInfo info, NVector pos,
                                        ActionHolder holder)
        {
            var i = SplitHelper.Split(holder.data["improvement"]);

            //set improvement
            L.b.improvements.Set(i.key, pos);

            //kill?
            if (i.value == "kill")
            {
                info.Kill();
            }
        }
Example #4
0
        public override void BuildPanel(ActionDisplaySettings sett)
        {
            base.BuildPanel(sett);

            //list it
            int i = 0;

            while (sett.holder.data.ContainsKey(i.ToString()))
            {
                var         d    = SplitHelper.Split(sett.holder.data[i.ToString()]);
                DataTerrain terr = L.b.terrains[d.key];
                sett.panel.AddImageLabel(CreateTitle(d), terr.Icon);
                i++;
            }
        }
        public MappingProfile()
        {
            CreateMap <DemoEntity, Demo>()
            .ForMember(dest => dest.Name, opts => opts.MapFrom(src => $"{src.FirstName} {src.LastName}"))
            .ForMember(dest => dest.Position, opts => opts.MapFrom(src => EnumHelper <Position> .GetDisplayValue(src.Position)))
            .ForMember(dest => dest.Offices, opts => opts.MapFrom(src => src.Office))
            .ReverseMap()
            .ForMember(dest => dest.FirstName, opts => opts.MapFrom(src => SplitHelper.Split(src.Name, ' ', 0)))
            .ForMember(dest => dest.LastName, opts => opts.MapFrom(src => SplitHelper.Split(src.Name, ' ', 1)));

            CreateMap <DemoNestedLevelOneEntity, DemoNestedLevelOne>()
            .ForMember(dest => dest.Extension, opts => opts.MapFrom(src => src.Extn))
            .ForMember(dest => dest.DemoNestedLevelTwos, opts => opts.MapFrom(src => src.DemoNestedLevelTwo))
            .ReverseMap();

            CreateMap <DemoNestedLevelTwoEntity, DemoNestedLevelTwo>()
            .ForMember(dest => dest.StartDates, opts => opts.MapFrom(src => src.StartDate))
            .ReverseMap();
        }
Example #6
0
 public override string Desc(Player player, string sett)
 {
     return($"Need the feature {SplitHelper.Split(sett).key}.");
 }
Example #7
0
        public override bool Check(Player player, string sett)
        {
            var v = SplitHelper.Split(sett);

            return(LSys.tem.options[v.key].Same(v.value));
        }
Example #8
0
 public override bool Check(Player player, string sett)
 {
     var v = SplitHelper.Split(sett);
     return L.b.gameOptions[v.key].Same(v.value);
 }
Example #9
0
        public override string Desc(Player player, string sett)
        {
            var s = SplitHelper.Split(sett);

            return($"You needs the {Name()} {s.key} and your enemy {s.value}.");
        }
Example #10
0
        public override bool Check(Player player, MapElementInfo onMap, string sett, NVector pos)
        {
            var s = SplitHelper.Split(sett);

            return(CheckMapElement(onMap, s.key) && CheckMapElement(S.MapElement(pos), s.value));
        }
Example #11
0
        public override bool Check(Player player, string sett)
        {
            var v = SplitHelper.Split(sett);

            return(player.GetFeature(v.key) == v.value);
        }
Example #12
0
        protected override void Perform(ActionEvent evt, Player player, ActionHolder holder)
        {
            var v = SplitHelper.Split(holder.data["feature"]);

            player.SetFeature(v.key, v.value);
        }