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 }); }