예제 #1
0
        public override Enums.Response ProcessPacket(LightingConsole console, int type)
        {
            MlPal.Flag mlType = MlPal.GetFlag(MlPalType);
            if (!console.Paletten.TryGetValue(mlType, out List <MlPal> list))
            {
                return(Enums.Response.BadCmd);
            }

            if (Absolute)
            {
                list.Clear();
            }

            foreach (ConfEntry entry in Entries)
            {
                list.Add(new MlPal(mlType, entry.Text, entry.Palno));
            }

            return(Enums.Response.OK);
        }
예제 #2
0
        private void Handle(List <MlPal> pals, LightingConsole console)
        {
            MlPal pal = pals.Find(x => x.PalNo == Palno);

            if (pal == null)
            {
                pal = new MlPal((MlPal.Flag)GetPalType(Mlpaltype), string.Empty, (short)Palno);
                pals.Add(pal);
            }
            else
            {
                pal.BetSk.Clear();
            }
            foreach (ushort item in SKTable)
            {
                SK sk = console.Stromkreise[item];
                if (sk is null)
                {
                    continue;
                }
                pal.BetSk.Add(sk);
            }
        }
예제 #3
0
        public override Enums.Response ProcessPacket(LightingConsole console, int type)
        {
            if (!console.Paletten.TryGetValue(Enums.GetEnum <MlPal.Flag>(Type), out List <MlPal> list))
            {
                return(Enums.Response.BadCmd);
            }

            foreach (MLPalPrefab pre in Pallets)
            {
                MlPal pal = list.Find(x => x.PalNo == pre.palno);
                if (pal is null)
                {
                    pal = new MlPal(MlPal.GetFlag(pre.paltype), pre.Name, pre.palno);
                    list.Add(pal);
                }
                else
                {
                    // TODO: not update?
                    //pal.Name = pre.Name;
                    pal.Number = pre.palno / 10.0;
                }
            }
            return(Enums.Response.OK);
        }