/// <summary> /// 初始化玩家的转生加成属性 /// </summary> public void InitPlayerChangeLifePorperty(GameClient client) { if (client.ClientData.ChangeLifeCount > 0) { int nOccupation = client.ClientData.Occupation; Dictionary <int, ChangeLifeDataInfo> dicTmp = null; if (!m_ChangeLifeInfoList.TryGetValue(nOccupation, out dicTmp) || dicTmp == null) { return; } ChangeLifeDataInfo dataTmp = new ChangeLifeDataInfo(); if (!dicTmp.TryGetValue(client.ClientData.ChangeLifeCount, out dataTmp) || dataTmp == null) { return; } ChangeLifePropertyInfo tmpProp = null; tmpProp = dataTmp.Propertyinfo; if (tmpProp == null) { return; } ActivationChangeLifeProp(client, tmpProp); } }
/// <summary> /// 处理转生属性 /// </summary> public void ActivationChangeLifeProp(GameClient client, ChangeLifePropertyInfo tmpProp) { client.ClientData.RoleChangeLifeProp.ResetChangeLifeProps(); if (tmpProp.PhyAttackMin >= 0 && tmpProp.AddPhyAttackMinValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.PhyAttackMin] += tmpProp.AddPhyAttackMinValue; } if (tmpProp.PhyAttackMax >= 0 && tmpProp.AddPhyAttackMaxValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.PhyAttackMax] += tmpProp.AddPhyAttackMaxValue; } if (tmpProp.MagAttackMin >= 0 && tmpProp.AddMagAttackMinValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.MagAttackMin] += tmpProp.AddMagAttackMinValue; } if (tmpProp.MagAttackMax >= 0 && tmpProp.AddMagAttackMaxValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.MagAttackMax] += tmpProp.AddMagAttackMaxValue; } if (tmpProp.PhyDefenseMin >= 0 && tmpProp.AddPhyDefenseMinValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.PhyDefenseMin] += tmpProp.AddPhyDefenseMinValue; } if (tmpProp.PhyDefenseMax >= 0 && tmpProp.AddPhyDefenseMaxValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.PhyDefenseMax] += tmpProp.AddPhyDefenseMaxValue; } if (tmpProp.MagDefenseMin >= 0 && tmpProp.AddMagDefenseMinValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.MagDefenseMin] += tmpProp.AddMagDefenseMinValue; } if (tmpProp.MagDefenseMax >= 0 && tmpProp.AddMagDefenseMaxValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.MagDefenseMax] += tmpProp.AddMagDefenseMaxValue; } if (tmpProp.HitProp >= 0 && tmpProp.AddHitPropValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.HitProp] += tmpProp.AddHitPropValue; } if (tmpProp.DodgeProp >= 0 && tmpProp.AddDodgePropValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.DodgeProp] += tmpProp.AddDodgePropValue; } if (tmpProp.MaxLifeProp >= 0 && tmpProp.AddMaxLifePropValue > 0) { client.ClientData.RoleChangeLifeProp.ChangeLifeSecondProps[tmpProp.MaxLifeProp] += tmpProp.AddMaxLifePropValue; } }
public void AddFrom(ChangeLifePropertyInfo info) { this.AddPhyAttackMinValue += info.AddPhyAttackMinValue; this.AddPhyAttackMaxValue += info.AddPhyAttackMaxValue; this.AddMagAttackMinValue += info.AddMagAttackMinValue; this.AddMagAttackMaxValue += info.AddMagAttackMaxValue; this.AddPhyDefenseMinValue += info.AddPhyDefenseMinValue; this.AddPhyDefenseMaxValue += info.AddPhyDefenseMaxValue; this.AddMagDefenseMinValue += info.AddMagDefenseMinValue; this.AddMagDefenseMaxValue += info.AddMagDefenseMaxValue; this.AddHitPropValue += info.AddHitPropValue; this.AddDodgePropValue += info.AddDodgePropValue; this.AddMaxLifePropValue += info.AddMaxLifePropValue; }