Ejemplo n.º 1
0
    /// <summary>
    /// 数值属性变化处理
    /// </summary>
    /// <param name="data"></param>
    public bool UpdateNumProp(entity_update_Numproperty data)
    {
        if (data.nPropID >= (int)m_PropertyMaxLimit || m_objMaster == null)
        {
            return(false);
        }
        // 取得更新前数值
        int nOldValue = m_numprops[data.nPropID];

        // 更新数值
        m_numprops[data.nPropID] = data.nValue;

        if (data.isRaiseIprEvent == 1)
        {
            EntityNumPropEventArgs e = new EntityNumPropEventArgs();
            e.data.nEntityID    = data.uID;         // 显示层的实体ID
            e.data.nPBUID       = data.nPBUID;
            e.data.nPropID      = data.nPropID;     // 属性ID
            e.data.nValue       = data.nValue;      // 属性数值
            e.data.nBeforeValue = nOldValue;        // 更新前数据
            e.data.nOtherData   = data.nOtherData;  // 状态数据
            e.objev             = m_objMaster;      // 实体对象

            EntityFactory.RaiseIprEvent(e);
        }

        OnAfterUpdateNumProp(data.nPropID, data.nValue, nOldValue, data.nOtherData);
        return(true);
    }
Ejemplo n.º 2
0
        /// <summary>
        /// 数值属性变化处理
        /// </summary>
        /// <param name="data"></param>
        public bool OnCommand_UpdateNumProp(entity_update_Numproperty data)
        {
            if (this.Property == null)
            {
                return(false);
            }

            // 更新属性
            return(this.Property.UpdateNumProp(data));
        }