From be89e24ed3aa11260e5a7a1ef3ba10e88547cdd0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 22 十一月 2024 18:41:41 +0800
Subject: [PATCH] 10316 【越南】【英语】【BT】【砍树】新增属性(新增属性170~181;新增成就181、182、183)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/EffGetSet.py       |   12 ++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py           |   33 ++++++
 ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py                                |   33 ++++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py  |  115 +++++++++++++++++-----
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py |    9 +
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py              |   50 +++++++++
 6 files changed, 220 insertions(+), 32 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
index 8339ab4..1faabc5 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
@@ -736,6 +736,34 @@
 #法器防御百分比
 Def_Effect_FaQiDefPer = 169
 
+#坐骑幻化生命加成
+Def_Effect_HorseSkinMaxHPPer = 170 # 坐骑幻化生命加成
+#坐骑幻化攻击加成
+Def_Effect_HorseSkinAtkPer = 171 # 坐骑幻化攻击加成
+#坐骑幻化防御加成
+Def_Effect_HorseSkinDefPer = 172 # 坐骑幻化防御加成
+
+#称号生命加成
+Def_Effect_TitleMaxHPPer = 173 # 称号生命加成
+#称号攻击加成
+Def_Effect_TitleAtkPer = 174 # 称号攻击加成
+#称号防御加成
+Def_Effect_TitleDefPer = 175 # 称号防御加成
+
+#头像生命加成
+Def_Effect_FaceMaxHPPer = 176 # 头像生命加成
+#头像攻击加成
+Def_Effect_FaceAtkPer = 177 # 头像攻击加成
+#头像防御加成
+Def_Effect_FaceDefPer = 178 # 头像防御加成
+
+#头像框生命加成
+Def_Effect_FacePicMaxHPPer = 179 # 头像框生命加成
+#头像框攻击加成
+Def_Effect_FacePicAtkPer = 180 # 头像框攻击加成
+#头像框防御加成
+Def_Effect_FacePicDefPer = 181 # 头像框防御加成
+
 #增加%d物理伤害值,其中a值为伤害值
 Def_Effect_AddAtk = 1005
 #增加%d魔法伤害值,其中a值为伤害值
@@ -2151,7 +2179,10 @@
 SuccType_PassAdventure, #通关冒险 178
 SuccType_GatherTheSoulColor, #聚魂激活x品质x个 179
 SuccType_GatherTheSoulLV, #聚魂总等级x 180
-) = range(1, 181)
+SuccType_MineAreaCnt, #采集福地x次数 181
+SuccType_MineAreaSelfCnt, #采集自己福地x次数 182
+SuccType_MineAreaRobCnt, #采集他人福地x次数 183
+) = range(1, 184)
 
 # 节日红包成就类型
 FeastRedPackSuccessTypeList = range(SuccType_FeastRedPack_TalkWorld, SuccType_FeastRedPack_FBSweep + 1)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index 59cfdeb..772c3c5 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -79,7 +79,7 @@
 Def_BuffValue_Count = 3     # buff记录的value个数
 
 #游戏对象属性--------------------------------------------
-Def_Calc_AllAttrType_MAX = 180
+Def_Calc_AllAttrType_MAX = 192
 #基本属性BUFF计算,顺序与 ObjProperty_AttrByIndex 对应,同时也为buff效果ID同步通知策划
 TYPE_Calc_AttrList = (
 TYPE_Calc_Metal,                        # 金 1
@@ -273,6 +273,18 @@
 TYPE_Calc_FaQiMaxHPPer,                  # 法器生命百分比 
 TYPE_Calc_FaQiAtkPer,                    # 法器攻击百分比 
 TYPE_Calc_FaQiDefPer,                    # 法器防御百分比 
+TYPE_Calc_HorseSkinMaxHPPer,             # 坐骑幻化生命加成 180
+TYPE_Calc_HorseSkinAtkPer,               # 坐骑幻化攻击加成
+TYPE_Calc_HorseSkinDefPer,               # 坐骑幻化防御加成
+TYPE_Calc_TitleMaxHPPer,                 # 称号生命加成
+TYPE_Calc_TitleAtkPer,                   # 称号攻击加成
+TYPE_Calc_TitleDefPer,                   # 称号防御加成 185
+TYPE_Calc_FaceMaxHPPer,                  # 头像生命加成
+TYPE_Calc_FaceAtkPer,                    # 头像攻击加成
+TYPE_Calc_FaceDefPer,                    # 头像防御加成
+TYPE_Calc_FacePicMaxHPPer,               # 头像框生命加成
+TYPE_Calc_FacePicAtkPer,                 # 头像框攻击加成 190
+TYPE_Calc_FacePicDefPer,                 # 头像框防御加成
 ) = range(1, Def_Calc_AllAttrType_MAX)
 
 ## 支持大数值属性,超过20E
@@ -3424,6 +3436,18 @@
 Def_PlayerKey_MissSucessRate = "MissSucessRate"   # 闪避成功率
 Def_PlayerKey_CurePer = "CurePer"   # 治疗加成 默认百分百
 Def_PlayerKey_BeHurtPer = "BeHurtPer"   # 加深受到伤害百分比
+Def_PlayerKey_TitleMaxHPPer = "TitleMaxHPPer"   # 称号生命加成
+Def_PlayerKey_TitleAtkPer = "TitleAtkPer"   # 称号攻击加成
+Def_PlayerKey_TitleDefPer = "TitleDefPer"   # 称号防御加成
+Def_PlayerKey_FaceMaxHPPer = "FaceMaxHPPer"   # 头像生命加成
+Def_PlayerKey_FaceAtkPer = "FaceAtkPer"   # 头像攻击加成
+Def_PlayerKey_FaceDefPer = "FaceDefPer"   # 头像防御加成
+Def_PlayerKey_FacePicMaxHPPer = "FacePicMaxHPPer"   # 头像框生命加成
+Def_PlayerKey_FacePicAtkPer = "FacePicAtkPer"   # 头像框攻击加成
+Def_PlayerKey_FacePicDefPer = "FacePicDefPer"   # 头像框防御加成
+Def_PlayerKey_HorseSkinMaxHPPer = "HorseSkinMaxHPPer"   # 坐骑幻化生命加成
+Def_PlayerKey_HorseSkinAtkPer = "HorseSkinAtkPer"   # 坐骑幻化攻击加成
+Def_PlayerKey_HorseSkinDefPer = "HorseSkinDefPer"   # 坐骑幻化防御加成
 Def_PlayerKey_HorseAtkPer = "HorseAtkPer"   # 坐骑攻击百分比
 Def_PlayerKey_HorseMaxHPPer = "HorseMaxHPPer"   # 坐骑生命加成
 Def_PlayerKey_PetAtkPer = "PetAtkPer"   # 灵宠攻击加成
@@ -4904,6 +4928,9 @@
     ShareDefine.Def_Effect_HorseAtkPer:[[TYPE_Calc_HorseAtkPer], False, TYPE_NoLinear],
     ShareDefine.Def_Effect_HorseMaxHPPer:[[TYPE_Calc_HorseMaxHPPer], False, TYPE_NoLinear],
     ShareDefine.Def_Effect_HorseTrainAttrPer:[[TYPE_Calc_HorseTrainAttrPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_HorseSkinMaxHPPer:[[TYPE_Calc_HorseSkinMaxHPPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_HorseSkinAtkPer:[[TYPE_Calc_HorseSkinAtkPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_HorseSkinDefPer:[[TYPE_Calc_HorseSkinDefPer], False, TYPE_NoLinear],
     ShareDefine.Def_Effect_PetTrainAttrPer:[[TYPE_Calc_PetTrainAttrPer], False, TYPE_NoLinear],
     ShareDefine.Def_Effect_GuardTrainAttrPer:[[TYPE_Calc_GuardTrainAttrPer], False, TYPE_NoLinear],
     ShareDefine.Def_Effect_WingTrainAttrPer:[[TYPE_Calc_WingTrainAttrPer], False, TYPE_NoLinear],
@@ -4913,6 +4940,15 @@
     ShareDefine.Def_Effect_WingHPPer:[[TYPE_Calc_WingHPPer], False, TYPE_NoLinear],
     ShareDefine.Def_Effect_SuiteBasePer:[[TYPE_Calc_SuiteBasePer], False, TYPE_NoLinear],
     ShareDefine.Def_Effect_PlusBaseAtkPer:[[TYPE_Calc_PlusBaseAtkPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_TitleMaxHPPer:[[TYPE_Calc_TitleMaxHPPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_TitleAtkPer:[[TYPE_Calc_TitleAtkPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_TitleDefPer:[[TYPE_Calc_TitleDefPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_FaceMaxHPPer:[[TYPE_Calc_FaceMaxHPPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_FaceAtkPer:[[TYPE_Calc_FaceAtkPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_FaceDefPer:[[TYPE_Calc_FaceDefPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_FacePicMaxHPPer:[[TYPE_Calc_FacePicMaxHPPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_FacePicAtkPer:[[TYPE_Calc_FacePicAtkPer], False, TYPE_NoLinear],
+    ShareDefine.Def_Effect_FacePicDefPer:[[TYPE_Calc_FacePicDefPer], False, TYPE_NoLinear],
     }
 
 # 各功能点交叉非线性属性影响提升
@@ -4940,6 +4976,18 @@
                                                 TYPE_Calc_AttrMaxHP, TYPE_Calc_AttrDEF],
                         TYPE_Calc_PetTrainAttrPer:[TYPE_Calc_AttrATKMin, TYPE_Calc_AttrATKMax, 
                                                 TYPE_Calc_AttrMaxHP, TYPE_Calc_AttrDEF],
+                        TYPE_Calc_HorseSkinMaxHPPer:[TYPE_Calc_AttrMaxHP],
+                        TYPE_Calc_HorseSkinAtkPer:[TYPE_Calc_AttrATKMin, TYPE_Calc_AttrATKMax],
+                        TYPE_Calc_HorseSkinDefPer:[TYPE_Calc_AttrDEF],
+                        TYPE_Calc_TitleMaxHPPer:[TYPE_Calc_AttrMaxHP],
+                        TYPE_Calc_TitleAtkPer:[TYPE_Calc_AttrATKMin, TYPE_Calc_AttrATKMax],
+                        TYPE_Calc_TitleDefPer:[TYPE_Calc_AttrDEF],
+                        TYPE_Calc_FaceMaxHPPer:[TYPE_Calc_AttrMaxHP],
+                        TYPE_Calc_FaceAtkPer:[TYPE_Calc_AttrATKMin, TYPE_Calc_AttrATKMax],
+                        TYPE_Calc_FaceDefPer:[TYPE_Calc_AttrDEF],
+                        TYPE_Calc_FacePicMaxHPPer:[TYPE_Calc_AttrMaxHP],
+                        TYPE_Calc_FacePicAtkPer:[TYPE_Calc_AttrATKMin, TYPE_Calc_AttrATKMax],
+                        TYPE_Calc_FacePicDefPer:[TYPE_Calc_AttrDEF],
                         TYPE_Calc_WingTrainAttrPer:[TYPE_Calc_AttrATKMin, TYPE_Calc_AttrATKMax, 
                                                 TYPE_Calc_AttrMaxHP, TYPE_Calc_AttrDEF],
                         TYPE_Calc_GuardTrainAttrPer:[TYPE_Calc_AttrATKMin, TYPE_Calc_AttrATKMax, 
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
index e2c1fef..64ccc8b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -4897,29 +4897,41 @@
         #GameWorld.DebugLog("基础层级: %s" % baseAttrList, playerID)
         
         #        功能点交叉影响非线性层对应属性基值列表
-        funcAttrPerInfo = {ChConfig.TYPE_Calc_BaseAtkAddPer:baseAttrList,
-                           ChConfig.TYPE_Calc_BaseMaxHPAddPer:baseAttrList,
-                           ChConfig.TYPE_Calc_BaseDefAddPer:baseAttrList,
-                           ChConfig.TYPE_Calc_BaseHitAddPer:baseAttrList,
-                           ChConfig.TYPE_Calc_BaseMissAddPer:baseAttrList,
-                           ChConfig.TYPE_Calc_FaQiMaxHPPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_FaQi],
-                           ChConfig.TYPE_Calc_FaQiAtkPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_FaQi],
-                           ChConfig.TYPE_Calc_FaQiDefPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_FaQi],
-                           ChConfig.TYPE_Calc_GodWeaponMaxHPPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_GodWeapon],
-                           ChConfig.TYPE_Calc_GodWeaponAtkPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_GodWeapon],
-                           ChConfig.TYPE_Calc_StoneMaxHPPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Stone],
-                           ChConfig.TYPE_Calc_StoneAtkPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Stone],
-                           ChConfig.TYPE_Calc_StoneBasePer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Stone],
-                           ChConfig.TYPE_Calc_RealmBasePer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Prestige],
-                           ChConfig.TYPE_Calc_HorseAtkPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Horse],
-                           ChConfig.TYPE_Calc_HorseMaxHPPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Horse],
-                           ChConfig.TYPE_Calc_HorseTrainAttrPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_HorseTarin],
-                           ChConfig.TYPE_Calc_PetTrainAttrPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_PetTarin],
-                           ChConfig.TYPE_Calc_GuardTrainAttrPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_GuardTarin],
-                           ChConfig.TYPE_Calc_WingTrainAttrPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_WingTarin],
-                           ChConfig.TYPE_Calc_PeerlessWeaponTrainAttrPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_PeerlessWeaponTrain],
-                           ChConfig.TYPE_Calc_PeerlessWeapon2TrainAttrPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_PeerlessWeapon2Train],
-                           ChConfig.TYPE_Calc_LianTiAttrPer:funcAttrInfoList[ChConfig.Def_CalcAttrFunc_LianTi],
+        funcAttrPerInfo = {ChConfig.TYPE_Calc_BaseAtkAddPer:[baseAttrList],
+                           ChConfig.TYPE_Calc_BaseMaxHPAddPer:[baseAttrList],
+                           ChConfig.TYPE_Calc_BaseDefAddPer:[baseAttrList],
+                           ChConfig.TYPE_Calc_BaseHitAddPer:[baseAttrList],
+                           ChConfig.TYPE_Calc_BaseMissAddPer:[baseAttrList],
+                           ChConfig.TYPE_Calc_FaQiMaxHPPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_FaQi]],
+                           ChConfig.TYPE_Calc_FaQiAtkPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_FaQi]],
+                           ChConfig.TYPE_Calc_FaQiDefPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_FaQi]],
+                           ChConfig.TYPE_Calc_GodWeaponMaxHPPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_GodWeapon]],
+                           ChConfig.TYPE_Calc_GodWeaponAtkPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_GodWeapon]],
+                           ChConfig.TYPE_Calc_StoneMaxHPPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Stone]],
+                           ChConfig.TYPE_Calc_StoneAtkPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Stone]],
+                           ChConfig.TYPE_Calc_StoneBasePer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Stone]],
+                           ChConfig.TYPE_Calc_RealmBasePer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Prestige]],
+                           ChConfig.TYPE_Calc_HorseAtkPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Horse]],
+                           ChConfig.TYPE_Calc_HorseMaxHPPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Horse]],
+                           ChConfig.TYPE_Calc_HorseTrainAttrPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_HorseTarin]],
+                           ChConfig.TYPE_Calc_PetTrainAttrPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_PetTarin]],
+                           ChConfig.TYPE_Calc_GuardTrainAttrPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_GuardTarin]],
+                           ChConfig.TYPE_Calc_WingTrainAttrPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_WingTarin]],
+                           ChConfig.TYPE_Calc_PeerlessWeaponTrainAttrPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_PeerlessWeaponTrain]],
+                           ChConfig.TYPE_Calc_PeerlessWeapon2TrainAttrPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_PeerlessWeapon2Train]],
+                           ChConfig.TYPE_Calc_LianTiAttrPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_LianTi]],
+                           ChConfig.TYPE_Calc_HorseSkinMaxHPPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_HorseSkin], funcAttrInfoList[ChConfig.Def_CalcAttrFunc_HorseStar]],
+                           ChConfig.TYPE_Calc_HorseSkinAtkPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_HorseSkin], funcAttrInfoList[ChConfig.Def_CalcAttrFunc_HorseStar]],
+                           ChConfig.TYPE_Calc_HorseSkinDefPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_HorseSkin], funcAttrInfoList[ChConfig.Def_CalcAttrFunc_HorseStar]],
+                           ChConfig.TYPE_Calc_TitleMaxHPPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Dienstgrad], funcAttrInfoList[ChConfig.Def_CalcAttrFunc_TitleStar]],
+                           ChConfig.TYPE_Calc_TitleAtkPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Dienstgrad], funcAttrInfoList[ChConfig.Def_CalcAttrFunc_TitleStar]],
+                           ChConfig.TYPE_Calc_TitleDefPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Dienstgrad], funcAttrInfoList[ChConfig.Def_CalcAttrFunc_TitleStar]],
+                           ChConfig.TYPE_Calc_FaceMaxHPPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Face]],
+                           ChConfig.TYPE_Calc_FaceAtkPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Face]],
+                           ChConfig.TYPE_Calc_FaceDefPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_Face]],
+                           ChConfig.TYPE_Calc_FacePicMaxHPPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_FacePic]],
+                           ChConfig.TYPE_Calc_FacePicAtkPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_FacePic]],
+                           ChConfig.TYPE_Calc_FacePicDefPer:[funcAttrInfoList[ChConfig.Def_CalcAttrFunc_FacePic]],
                            }
         #    3.2 统计各功能之间非线性属性交叉影响累加
         funcCrossAttrPerInfoDict = {} # 百分比交叉影响所提升的属性值 {功能属性编号:{提升的属性类型:数值, ...}, ...}
@@ -4935,15 +4947,20 @@
                 # 使用的基值目标功能索引
                 attrRate = addAttrPer / float(ChConfig.Def_MaxRateValue)
                 addAttrTypeList = ChConfig.FuncNoLinearAttrDict[noLineAttrType]
-                useAttrDict = funcAttrPerInfo[noLineAttrType][ChConfig.CalcAttr_Battle] # 默认增加的是战斗线性
+                useFuncAttrList = funcAttrPerInfo[noLineAttrType]
                 for attrType in addAttrTypeList:
-                    # 默认提升的属性在线性战斗属性里
-                    if attrType not in useAttrDict:
+                    addValue = 0
+                    for useAttrList in useFuncAttrList:
+                        useAttrDict = useAttrList[ChConfig.CalcAttr_Battle] # 默认增加的是战斗线性
+                        # 默认提升的属性在线性战斗属性里
+                        if attrType not in useAttrDict:
+                            continue
+                        baseValue = useAttrDict[attrType] # 只是用到目标功能的基值
+                        addValue += int(baseValue * attrRate)
+                        #GameWorld.DebugLog("    i=%s,calcID=%s,per=%s,rate=%s,baseValue=%s,attrType=%s,addValue=%s" % (i, noLineAttrType, addAttrPer, attrRate, baseValue, attrType, addValue), playerID)
+                    if addValue <= 0:
                         continue
-                    baseValue = useAttrDict[attrType] # 只是用到目标功能的基值
-                    addValue = int(baseValue * attrRate)
                     addAttrDict[attrType] = addAttrDict.get(attrType, 0) + addValue
-                    #GameWorld.DebugLog("    attrID=%s,per=%s,rate=%s,baseValue=%s,attrType=%s,addValue=%s" % (noLineAttrType, addAttrPer, attrRate, baseValue, attrType, addValue), playerID)
                     
             if addAttrDict:
                 # 增加的数值统计到百分比属性所属功能点
@@ -7274,6 +7291,46 @@
 def GetBeHurtPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_BeHurtPer)
 def SetBeHurtPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_BeHurtPer, value)
 
+# 称号生命加成
+def GetTitleMaxHPPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_TitleMaxHPPer)
+def SetTitleMaxHPPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_TitleMaxHPPer, value)
+# 称号攻击加成
+def GetTitleAtkPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_TitleAtkPer)
+def SetTitleAtkPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_TitleAtkPer, value)
+# 称号防御加成
+def GetTitleDefPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_TitleDefPer)
+def SetTitleDefPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_TitleDefPer, value)
+
+# 头像生命加成
+def GetFaceMaxHPPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_FaceMaxHPPer)
+def SetFaceMaxHPPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_FaceMaxHPPer, value)
+# 头像攻击加成
+def GetFaceAtkPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_FaceAtkPer)
+def SetFaceAtkPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_FaceAtkPer, value)
+# 头像防御加成
+def GetFaceDefPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_FaceDefPer)
+def SetFaceDefPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_FaceDefPer, value)
+
+# 头像框生命加成
+def GetFacePicMaxHPPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_FacePicMaxHPPer)
+def SetFacePicMaxHPPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_FacePicMaxHPPer, value)
+# 头像框攻击加成
+def GetFacePicAtkPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_FacePicAtkPer)
+def SetFacePicAtkPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_FacePicAtkPer, value)
+# 头像框防御加成
+def GetFacePicDefPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_FacePicDefPer)
+def SetFacePicDefPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_FacePicDefPer, value)
+
+# 坐骑幻化生命加成
+def GetHorseSkinMaxHPPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_HorseSkinMaxHPPer)
+def SetHorseSkinMaxHPPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_HorseSkinMaxHPPer, value)
+# 坐骑幻化攻击加成
+def GetHorseSkinAtkPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_HorseSkinAtkPer)
+def SetHorseSkinAtkPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_HorseSkinAtkPer, value)
+# 坐骑幻化防御加成
+def GetHorseSkinDefPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_HorseSkinDefPer)
+def SetHorseSkinDefPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_HorseSkinDefPer, value)
+
 # 坐骑攻击百分比
 def GetHorseAtkPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_HorseAtkPer)
 def SetHorseAtkPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_HorseAtkPer, value)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py
index 6722046..a2fc6a3 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py
@@ -23,6 +23,8 @@
 import PlayerActTask
 import NetPackCommon
 import ItemControler
+import PlayerSuccess
+import ShareDefine
 import ItemCommon
 import GameWorld
 
@@ -200,6 +202,7 @@
     addEnergyUsed = 0
     awardItemDict = {}
     robCount = 0 # 抢劫数
+    selfCount = 0 # 自己数量
     GUIDList = []
     for awardInfo in awardInfoList:
         GUID, awardTime, workerCount, areaPlayerID, mineID, itemLV, itemID, itemCount = awardInfo
@@ -208,6 +211,8 @@
             addEnergyUsed += workerCount
         if playerID != areaPlayerID:
             robCount += 1
+        else:
+            selfCount += 1
         awardItemDict[itemID] = awardItemDict.get(itemID, 0) + itemCount
         GUIDList.append(GUID)
         GameWorld.DebugLog("结算福地奖励! areaPlayerID=%s,mineID=%s,itemLV=%s,itemID=%s,itemCount=%s,awardTime=%s,isToday=%s,workerCount=%s %s" 
@@ -219,7 +224,11 @@
         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineWorkerEnergyUsed, energyUsed)
         GameWorld.DebugLog("    增加福地工人已用精力! addEnergyUsed=%s,updEnergyUsed=%s" % (addEnergyUsed, energyUsed), playerID)
         
+    PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_MineAreaCnt, selfCount + robCount)
+    if selfCount:
+        PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_MineAreaSelfCnt, selfCount)
     if robCount:
+        PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_MineAreaRobCnt, robCount)
         OnAddMineTreasureProgress(curPlayer, robCount, False)
         
     SyncPlayerMineAreaInfo(curPlayer)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
index 8339ab4..1faabc5 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
@@ -736,6 +736,34 @@
 #法器防御百分比
 Def_Effect_FaQiDefPer = 169
 
+#坐骑幻化生命加成
+Def_Effect_HorseSkinMaxHPPer = 170 # 坐骑幻化生命加成
+#坐骑幻化攻击加成
+Def_Effect_HorseSkinAtkPer = 171 # 坐骑幻化攻击加成
+#坐骑幻化防御加成
+Def_Effect_HorseSkinDefPer = 172 # 坐骑幻化防御加成
+
+#称号生命加成
+Def_Effect_TitleMaxHPPer = 173 # 称号生命加成
+#称号攻击加成
+Def_Effect_TitleAtkPer = 174 # 称号攻击加成
+#称号防御加成
+Def_Effect_TitleDefPer = 175 # 称号防御加成
+
+#头像生命加成
+Def_Effect_FaceMaxHPPer = 176 # 头像生命加成
+#头像攻击加成
+Def_Effect_FaceAtkPer = 177 # 头像攻击加成
+#头像防御加成
+Def_Effect_FaceDefPer = 178 # 头像防御加成
+
+#头像框生命加成
+Def_Effect_FacePicMaxHPPer = 179 # 头像框生命加成
+#头像框攻击加成
+Def_Effect_FacePicAtkPer = 180 # 头像框攻击加成
+#头像框防御加成
+Def_Effect_FacePicDefPer = 181 # 头像框防御加成
+
 #增加%d物理伤害值,其中a值为伤害值
 Def_Effect_AddAtk = 1005
 #增加%d魔法伤害值,其中a值为伤害值
@@ -2151,7 +2179,10 @@
 SuccType_PassAdventure, #通关冒险 178
 SuccType_GatherTheSoulColor, #聚魂激活x品质x个 179
 SuccType_GatherTheSoulLV, #聚魂总等级x 180
-) = range(1, 181)
+SuccType_MineAreaCnt, #采集福地x次数 181
+SuccType_MineAreaSelfCnt, #采集自己福地x次数 182
+SuccType_MineAreaRobCnt, #采集他人福地x次数 183
+) = range(1, 184)
 
 # 节日红包成就类型
 FeastRedPackSuccessTypeList = range(SuccType_FeastRedPack_TalkWorld, SuccType_FeastRedPack_FBSweep + 1)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/EffGetSet.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/EffGetSet.py
index 681a06a..ee9deb3 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/EffGetSet.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/EffGetSet.py
@@ -219,6 +219,18 @@
    [lambda curObj:PlayerControl.GetFaQiMaxHPPer(curObj), lambda curObj, value:PlayerControl.SetFaQiMaxHPPer(curObj, value), 0, 0, 0],  # 法器生命百分比
    [lambda curObj:PlayerControl.GetFaQiAtkPer(curObj), lambda curObj, value:PlayerControl.SetFaQiAtkPer(curObj, value), 0, 0, 0],  # 法器攻击百分比
    [lambda curObj:PlayerControl.GetFaQiDefPer(curObj), lambda curObj, value:PlayerControl.SetFaQiDefPer(curObj, value), 0, 0, 0],  # 法器防御百分比
+   [lambda curObj:PlayerControl.GetHorseSkinMaxHPPer(curObj), lambda curObj, value:PlayerControl.SetHorseSkinMaxHPPer(curObj, value), 0, 0, 0],  # 坐骑幻化生命加成
+   [lambda curObj:PlayerControl.GetHorseSkinAtkPer(curObj), lambda curObj, value:PlayerControl.SetHorseSkinAtkPer(curObj, value), 0, 0, 0],  # 坐骑幻化攻击加成
+   [lambda curObj:PlayerControl.GetHorseSkinDefPer(curObj), lambda curObj, value:PlayerControl.SetHorseSkinDefPer(curObj, value), 0, 0, 0],  # 坐骑幻化防御加成
+   [lambda curObj:PlayerControl.GetTitleMaxHPPer(curObj), lambda curObj, value:PlayerControl.SetTitleMaxHPPer(curObj, value), 0, 0, 0],  # 称号生命加成
+   [lambda curObj:PlayerControl.GetTitleAtkPer(curObj), lambda curObj, value:PlayerControl.SetTitleAtkPer(curObj, value), 0, 0, 0],  # 称号攻击加成
+   [lambda curObj:PlayerControl.GetTitleDefPer(curObj), lambda curObj, value:PlayerControl.SetTitleDefPer(curObj, value), 0, 0, 0],  # 称号防御加成
+   [lambda curObj:PlayerControl.GetFaceMaxHPPer(curObj), lambda curObj, value:PlayerControl.SetFaceMaxHPPer(curObj, value), 0, 0, 0],  # 头像生命加成
+   [lambda curObj:PlayerControl.GetFaceAtkPer(curObj), lambda curObj, value:PlayerControl.SetFaceAtkPer(curObj, value), 0, 0, 0],  # 头像攻击加成
+   [lambda curObj:PlayerControl.GetFaceDefPer(curObj), lambda curObj, value:PlayerControl.SetFaceDefPer(curObj, value), 0, 0, 0],  # 头像防御加成
+   [lambda curObj:PlayerControl.GetFacePicMaxHPPer(curObj), lambda curObj, value:PlayerControl.SetFacePicMaxHPPer(curObj, value), 0, 0, 0],  # 头像框生命加成
+   [lambda curObj:PlayerControl.GetFacePicAtkPer(curObj), lambda curObj, value:PlayerControl.SetFacePicAtkPer(curObj, value), 0, 0, 0],  # 头像框攻击加成
+   [lambda curObj:PlayerControl.GetFacePicDefPer(curObj), lambda curObj, value:PlayerControl.SetFacePicDefPer(curObj, value), 0, 0, 0],  # 头像框防御加成
 ]
 
 ## 通过索引获得属性值

--
Gitblit v1.8.0