Пример #1
0
        private void RefreshShenJiFuWenProps(GameClient client)
        {
            Dictionary <int, ShenJiFuWenConfigData> tempShenJiConfig = null;

            lock (this.ConfigMutex)
            {
                tempShenJiConfig = this.ShenJiConfig;
            }
            double[] _ExtProps = new double[177];
            foreach (ShenJiFuWenData item in client.ClientData.ShenJiDataDict.Values)
            {
                ShenJiFuWenConfigData sConfigData = null;
                if (tempShenJiConfig.TryGetValue(item.ShenJiID, out sConfigData))
                {
                    ShenJiFuWenEffectData effect = sConfigData.GetEffect(item.Level);
                    for (int i = 0; i < _ExtProps.Length; i++)
                    {
                        _ExtProps[i] += effect.ExtProps[i];
                    }
                }
            }
            client.ClientData.PropsCacheManager.SetExtProps(new object[]
            {
                PropsSystemTypes.ShenJiFuWen,
                _ExtProps
            });
            client.delayExecModule.SetDelayExecProc(new DelayExecProcIds[]
            {
                DelayExecProcIds.RecalcProps,
                DelayExecProcIds.NotifyRefreshProps
            });
        }