hch
2018-08-22 e75c4e9dda0ef8c05f84e9cdd5cc7f14bd14d536
Merge branch 'master' of http://192.168.0.87:10010/r/SnxxServerCode
3个文件已修改
30 ■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
@@ -1663,6 +1663,8 @@
    aIceAtk = atkObj.GetIceAtk()        # 冰攻, 元素真伤, 玩家及NPC通用
    aIceAtk += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AddIceAtk)
    #------- 防守方
    dMinAtk = defObj.GetMinAtk()        # 防守方最小攻击
    dMaxAtk = defObj.GetMaxAtk()        # 防守方最大攻击
    dDef = defObj.GetDef()              # 防守方防御力
    dHP = GameObj.GetHP(defObj)                # 防守方当前血量
    dMaxHP = GameObj.GetMaxHP(defObj)          # 防守方最大血量
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py
@@ -1939,6 +1939,9 @@
        
    conditionType = curConditionNode.GetAttribute("type")
    moneyType = int(curConditionNode.GetAttribute("moneytype"))
    goldValue = curPlayer.GetGold()
    goldPaperValue = curPlayer.GetGoldPaper()
    silverValue = PlayerControl.GetSilver(curPlayer)
@@ -1949,6 +1952,8 @@
        return QuestRunnerValue.GetEval(conditionType, goldPaperValue, conditionValue)
    elif moneyType == IPY_GameWorld.TYPE_Price_Silver_Money:
        return QuestRunnerValue.GetEval(conditionType, silverValue, conditionValue)
    elif moneyType == ShareDefine.TYPE_Price_Gold_Paper_Money:
        return QuestRunnerValue.GetEval(conditionType, goldValue + goldPaperValue, conditionValue)
    else:
        GameWorld.Log("任务 = %s , moneytype = %s填错拉" % (curMission.GetMissionID() , moneyType) , curPlayer.GetPlayerID())
        return
@@ -3681,21 +3686,26 @@
    
    moneytype = int(curActionNode.GetAttribute("moneytype"))
    
    if moneytype not in ChConfig.Def_MoneyType_All:
        GameWorld.Log("##异常moneytype = %s填错拉" % (moneytype))
        return
#    if moneytype not in ChConfig.Def_MoneyType_All:
#        GameWorld.Log("##异常moneytype = %s填错拉" % (moneytype))
#        return
    
    curMissionID = 0
    if curMission == None:
        curMissionID = 0
    else:
        curMissionID = curMission.GetMissionID()
    #付钱
    if not PlayerControl.PayMoney(curPlayer, moneytype, value, ChConfig.Def_Cost_MissionDel, {"MissionID":curMissionID}):
    costMoneyList = PlayerControl.HaveMoneyEx(curPlayer, moneytype, value)
    if not costMoneyList:
        GameWorld.Log("##付费异常,玩家金钱不足,任务missionID = %s" % (curMissionID) , curPlayer.GetPlayerID())
        EventShell.DoExitEvent(curPlayer)
        return
    #付钱
    for moneyType, moneyNum in costMoneyList:
        if not PlayerControl.PayMoney(curPlayer, moneyType, moneyNum, ChConfig.Def_Cost_MissionDel, {"MissionID":curMissionID}):
            GameWorld.Log("##付费异常,玩家金钱不足,任务missionID = %s" % (curMissionID) , curPlayer.GetPlayerID())
            EventShell.DoExitEvent(curPlayer)
            return
    
    GameWorld.Login_Interface_GoldRec(curPlayer , 0 , 0 , 'MissionID_%s_Cost' % (curMissionID), moneytype, value)
    return
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -2009,7 +2009,7 @@
# @param canLock 是否可以锁定玩家(传送点不可锁定, 因为要跨地图寻路)
# @return 返回值无意义
# @remarks 玩家切换地图
def PlayerResetWorldPos(curPlayer, mapID, posX, posY, takeTruck, lineID= -1, msg='', canLock=True, exData1=0):
def PlayerResetWorldPos(curPlayer, mapID, posX, posY, takeTruck, lineID=-1, msg='', canLock=True, exData1=0):
    #更改: 死亡允许切换地图, 在副本中被怪打死, 副本时间到, 回收副本
#    if curPlayer.GetHP() <= 0 :
#        GameWorld.Log("死亡无法切换地图")
@@ -2084,6 +2084,10 @@
                return bossShuntLineID
        return tagLineID
    
    if curMapID == tagMapID:
        GameWorld.DebugLog("同地图切换坐标不处理分流!", playerID)
        return tagLineID
    # 可以用来常规分流的线路人数字典信息, 并不是所有线路都可以用来做人数分流的,比如中立地图有多条线用来分流boss,但是只有1条线可用来做常规的人数分流
    mapLineDict = IpyGameDataPY.GetFuncCfg("MapLine", 1)
    if tagMapID in mapLineDict: