Merge branch 'master' of http://192.168.0.87:10010/r/SnxxServerCode
| | |
| | | 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) # 防守方最大血量
|
| | |
| | |
|
| | | conditionType = curConditionNode.GetAttribute("type")
|
| | | moneyType = int(curConditionNode.GetAttribute("moneytype"))
|
| | | |
| | | |
| | | |
| | | goldValue = curPlayer.GetGold()
|
| | | goldPaperValue = curPlayer.GetGoldPaper()
|
| | | silverValue = PlayerControl.GetSilver(curPlayer)
|
| | |
| | | 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
|
| | |
| | |
|
| | | 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
|
| | |
| | | # @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("死亡无法切换地图")
|
| | |
| | | return bossShuntLineID
|
| | | return tagLineID
|
| | |
|
| | | if curMapID == tagMapID:
|
| | | GameWorld.DebugLog("同地图切换坐标不处理分流!", playerID)
|
| | | return tagLineID
|
| | | |
| | | # 可以用来常规分流的线路人数字典信息, 并不是所有线路都可以用来做人数分流的,比如中立地图有多条线用来分流boss,但是只有1条线可用来做常规的人数分流
|
| | | mapLineDict = IpyGameDataPY.GetFuncCfg("MapLine", 1)
|
| | | if tagMapID in mapLineDict:
|