From afea2d9d4b9cb6d0982c02a775e8198fc2421c53 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期五, 08 十二月 2023 18:21:28 +0800 Subject: [PATCH] 10019 【砍树】回合战斗(增加抗连击、反击、抗反击、吸血、抗吸血属性,玩家及NPC属性接口通用;连击、反击属性效果支持;) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameObj.py | 90 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 90 insertions(+), 0 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameObj.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameObj.py index 4d4d88d..78078e5 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameObj.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameObj.py @@ -178,3 +178,93 @@ gameObj.SetDict(ChConfig.Def_PlayerKey_BloodShiledHurt, value % ShareDefine.Def_PerPointValue) gameObj.SetDict(ChConfig.Def_PlayerKey_BloodShiledHurtEx, value / ShareDefine.Def_PerPointValue) return + +def GetAtkSpeed(gameObj): + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + return gameObj.GetBattleValEx1() + return gameObj.GetDictByKey(ChConfig.AttrName_AtkSpeed) +def SetAtkSpeed(gameObj, value): + ## 攻击速度 + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + gameObj.SetBattleValEx1(value, True) + else: + gameObj.SetDict(ChConfig.AttrName_AtkSpeed, value) + return + +#---暴击概率---- 都是用 gameObj.GetSuperHitRate() gameObj.SetSuperHitRate() +def GetSuperHitRateReduce(gameObj): return gameObj.GetDictByKey(ChConfig.Def_PlayerKey_SuperHitRateReduce) +def SetSuperHitRateReduce(gameObj, value): + ## 抗暴击概率 + gameObj.SetDict(ChConfig.Def_PlayerKey_SuperHitRateReduce, value) + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + PlayerControl.SendPropertyRefresh(gameObj, ShareDefine.CDBPlayerRefresh_SuperHitRateReduce, value) + return + +def GetFaintRate(gameObj): return gameObj.GetDictByKey(ChConfig.Def_PlayerKey_AttrFaintRate) +def SetFaintRate(gameObj, value): + ## 击晕概率 + gameObj.SetDict(ChConfig.Def_PlayerKey_AttrFaintRate, value) + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + PlayerControl.SendPropertyRefresh(gameObj, ShareDefine.CDBPlayerRefresh_FaintRate, value) + return +def GetFaintDefRate(gameObj): return gameObj.GetDictByKey(ChConfig.Def_PlayerKey_AttrFaintDefRate) +def SetFaintDefRate(gameObj, value): + ## 抗击晕概率 + gameObj.SetDict(ChConfig.Def_PlayerKey_AttrFaintDefRate, value) + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + PlayerControl.SendPropertyRefresh(gameObj, ShareDefine.CDBPlayerRefresh_FaintDefRate, value) + return + +def GetComboRate(gameObj): return gameObj.GetDictByKey(ChConfig.Def_PlayerKey_AttrComboRate) +def SetComboRate(gameObj, value): + ## 连击概率 + gameObj.SetDict(ChConfig.Def_PlayerKey_AttrComboRate, value) + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + PlayerControl.SendPropertyRefresh(gameObj, ShareDefine.CDBPlayerRefresh_ComboRate, value) + return +def GetComboDefRate(gameObj): return gameObj.GetDictByKey(ChConfig.AttrName_ComboDefRate) +def SetComboDefRate(gameObj, value): + ## 抗连击概率 + gameObj.SetDict(ChConfig.AttrName_ComboDefRate, value) + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + PlayerControl.SendPropertyRefresh(gameObj, ShareDefine.CDBPlayerRefresh_ComboDefRate, value) + return +def GetComboDamPer(gameObj): return gameObj.GetDictByKey(ChConfig.Def_PlayerKey_AttrComboDamPer) +def SetComboDamPer(gameObj, value): + ## 连击伤害 + gameObj.SetDict(ChConfig.Def_PlayerKey_AttrComboDamPer, value) + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + PlayerControl.SendPropertyRefresh(gameObj, ShareDefine.CDBPlayerRefresh_ComboDamPer, value) + return + +def GetAtkBackRate(gameObj): return gameObj.GetDictByKey(ChConfig.AttrName_AtkBackRate) +def SetAtkBackRate(gameObj, value): + ## 反击概率 + gameObj.SetDict(ChConfig.AttrName_AtkBackRate, value) + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + PlayerControl.SendPropertyRefresh(gameObj, ShareDefine.CDBPlayerRefresh_AtkBackRate, value) + return +def GetAtkBackDefRate(gameObj): return gameObj.GetDictByKey(ChConfig.AttrName_AtkBackDefRate) +def SetAtkBackDefRate(gameObj, value): + ## 抗反击概率 + gameObj.SetDict(ChConfig.AttrName_AtkBackDefRate, value) + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + PlayerControl.SendPropertyRefresh(gameObj, ShareDefine.CDBPlayerRefresh_AtkBackDefRate, value) + return + +def GetSuckHPPer(gameObj): return gameObj.GetDictByKey(ChConfig.AttrName_SuckHPPer) +def SetSuckHPPer(gameObj, value): + ## 吸血比率 + gameObj.SetDict(ChConfig.AttrName_SuckHPPer, value) + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + PlayerControl.SendPropertyRefresh(gameObj, ShareDefine.CDBPlayerRefresh_SuckHPPer, value) + return +def GetSuckHPDefPer(gameObj): return gameObj.GetDictByKey(ChConfig.AttrName_SuckHPDefPer) +def SetSuckHPDefPer(gameObj, value): + ## 抗吸血比率 + gameObj.SetDict(ChConfig.AttrName_SuckHPDefPer, value) + if gameObj.GetGameObjType() == IPY_GameWorld.gotPlayer: + PlayerControl.SendPropertyRefresh(gameObj, ShareDefine.CDBPlayerRefresh_SuckHPDefPer, value) + return + + \ No newline at end of file -- Gitblit v1.8.0