Пример #1
0
        public static bool EvaluteAssignment(Agent pAgent, Property opl, Property opr, behaviac.CMethodBase opr_m)
        {
            bool bValid = false;

            if (opl != null)
            {
                if (opr_m != null)
                {
                    object returnValue = opr_m.Invoke(pAgent);

                    Agent pParentOpl = opl.GetParentAgent(pAgent);
                    opl.SetValue(pParentOpl, returnValue);

                    bValid = true;
                }
                else if (opr != null)
                {
                    Agent pParentL = opl.GetParentAgent(pAgent);
                    Agent pParentR = opr.GetParentAgent(pAgent);

                    opl.SetFrom(pParentR, opr, pParentL);

                    bValid = true;
                }
            }

            return bValid;
        }
Пример #2
0
        public static bool EvaluteAssignment(Agent pAgent, Property opl, Property opr, behaviac.CMethodBase opr_m)
        {
            bool bValid = false;

            if (opr_m != null)
            {
                object returnValue = opr_m.Invoke(pAgent);

                Agent pParentOpl = opl.GetParentAgent(pAgent);
                opl.SetValue(pParentOpl, returnValue);

                bValid = true;
            }
            else if (opr != null && opl != null)
            {
                Agent pParentL = opl.GetParentAgent(pAgent);
                Agent pParentR = opr.GetParentAgent(pAgent);

                opl.SetFrom(pParentR, opr, pParentL);

                bValid = true;
            }
            else
            {
                //Debug.Check(false);
            }

            return(bValid);
        }