Esempio n. 1
0
        public static Node Parse(ParseState parsestate)
        {
            Operator @operator = parsestate.CurrentOperator;

            if (@operator != Operator.Equals && @operator != Operator.NotEquals)
            {
                return(null);
            }

            ++parsestate.TokenIndex;

            xnaMugen.StateType statetype = parsestate.ConvertCurrentToken <xnaMugen.StateType>();
            if (statetype == xnaMugen.StateType.Unchanged || statetype == xnaMugen.StateType.None)
            {
                return(null);
            }

            ++parsestate.TokenIndex;

            parsestate.BaseNode.Arguments.Add(@operator);
            parsestate.BaseNode.Arguments.Add(statetype);
            return(parsestate.BaseNode);
        }
Esempio n. 2
0
        public static bool Evaluate(Character character, ref bool error, Operator @operator, xnaMugen.StateType statetype)
        {
            if (character == null)
            {
                error = true;
                return(false);
            }

            if (statetype == xnaMugen.StateType.Unchanged || statetype == xnaMugen.StateType.None)
            {
                error = true;
                return(false);
            }

            switch (@operator)
            {
            case Operator.Equals:
                return(statetype == character.StateType);

            case Operator.NotEquals:
                return(statetype != character.StateType);

            default:
                error = true;
                return(false);
            }
        }
Esempio n. 3
0
        public static Boolean Evaluate(Object state, ref Boolean error, Operator @operator, xnaMugen.StateType statetype)
        {
            Combat.Character character = state as Combat.Character;
            if (character == null)
            {
                error = true;
                return(false);
            }

            if (statetype == xnaMugen.StateType.Unchanged || statetype == xnaMugen.StateType.None)
            {
                error = true;
                return(false);
            }

            switch (@operator)
            {
            case Operator.Equals:
                return(statetype == character.StateType);

            case Operator.NotEquals:
                return(statetype != character.StateType);

            default:
                error = true;
                return(false);
            }
        }