Пример #1
0
        private static SavConfigClass.Condition ParseSavClassConditionElement(XElement xElement)
        {
            // TODO - do something about this disgusting function

            SavConfigClass.Condition ret = null;
            XElement conditionElement    = xElement.Element(ElementNameSavCondition);

            if (conditionElement != null)
            {
                ret = new SavConfigClass.Condition();
                foreach (XElement allowedPawnElement in conditionElement.Elements(ElementNameSavConditionPawn))
                {
                    if (allowedPawnElement.Value == SavSlot.MainPawn.ToString())
                    {
                        ret.AllowedPawns.Add(SavSlot.MainPawn);
                    }
                    else if (allowedPawnElement.Value == SavSlot.Pawn1.ToString())
                    {
                        ret.AllowedPawns.Add(SavSlot.Pawn1);
                    }
                    else if (allowedPawnElement.Value == SavSlot.Pawn2.ToString())
                    {
                        ret.AllowedPawns.Add(SavSlot.Pawn2);
                    }
                }
                // if no allowed Pawns specified, allow all through
                if (ret.AllowedPawns.Count == 0)
                {
                    ret.AllowedPawns.Add(SavSlot.MainPawn);
                    ret.AllowedPawns.Add(SavSlot.Pawn1);
                    ret.AllowedPawns.Add(SavSlot.Pawn2);
                }
                ret.IsWriteOnly = conditionElement.Element(ElementNameSavConditionWriteOnly) != null;
            }
            return(ret);
        }
Пример #2
0
        private static SavConfigClass.Condition ParseSavClassConditionElement(XElement xElement)
        {
            // TODO - do something about this disgusting function

            SavConfigClass.Condition ret = null;
            XElement conditionElement = xElement.Element(ElementNameSavCondition);
            if (conditionElement != null)
            {
                ret = new SavConfigClass.Condition();
                foreach (XElement allowedPawnElement in conditionElement.Elements(ElementNameSavConditionPawn))
                {
                    if (allowedPawnElement.Value == SavSlot.MainPawn.ToString())
                    {
                        ret.AllowedPawns.Add(SavSlot.MainPawn);
                    }
                    else if (allowedPawnElement.Value == SavSlot.Pawn1.ToString())
                    {
                        ret.AllowedPawns.Add(SavSlot.Pawn1);
                    }
                    else if (allowedPawnElement.Value == SavSlot.Pawn2.ToString())
                    {
                        ret.AllowedPawns.Add(SavSlot.Pawn2);
                    }
                }
                // if no allowed Pawns specified, allow all through
                if (ret.AllowedPawns.Count == 0)
                {
                    ret.AllowedPawns.Add(SavSlot.MainPawn);
                    ret.AllowedPawns.Add(SavSlot.Pawn1);
                    ret.AllowedPawns.Add(SavSlot.Pawn2);
                }
                ret.IsWriteOnly = conditionElement.Element(ElementNameSavConditionWriteOnly) != null;
            }
            return ret;
        }