| | |
| | | if GameWorld.GetMap().GetMapFBType() != IPY_GameWorld.fbtNull:
|
| | | return
|
| | |
|
| | | crossNotifyList = []
|
| | | isCrossServer = GameWorld.IsCrossServer()
|
| | | atkServerGroupID = PlayerControl.GetPlayerServerGroupID(attacker)
|
| | | defServerGroupID = PlayerControl.GetPlayerServerGroupID(defender)
|
| | | lineID = GameWorld.GetGameWorld().GetLineID()
|
| | | # 杀人玩家有帮会
|
| | | if attacker.GetFamilyID() > 0:
|
| | |
| | | notifyCode = 'PK_pan_318691'
|
| | | paramList = [defFamilyMemberLv, defName, defMapID, atkName,defPosX, defPosY, lineID]
|
| | |
|
| | | PlayerControl.FamilyNotify(defFamilyID, notifyCode, paramList)
|
| | |
|
| | | if isCrossServer:
|
| | | crossNotifyList.append(PlayerControl.GetCrossFamilyNotifyInfo(defFamilyID, notifyCode, paramList))
|
| | | else:
|
| | | PlayerControl.FamilyNotify(defFamilyID, notifyCode, paramList)
|
| | | |
| | | # 有职位被杀,全服广播
|
| | | if defFamilyMemberLv <= 0:
|
| | | return
|
| | | if defFamilyMemberLv > 0:
|
| | | defFamilyName = defender.GetFamilyName()
|
| | |
|
| | | defFamilyName = defender.GetFamilyName()
|
| | |
|
| | | killCnt = attacker.GetDictByKey(ChConfig.Def_PlayerKey_KillPlayerCnt % defender.GetPlayerID()) + 1
|
| | | attacker.SetDict(ChConfig.Def_PlayerKey_KillPlayerCnt % defender.GetPlayerID(), killCnt)
|
| | | #被杀重置击杀数
|
| | | defender.SetDict(ChConfig.Def_PlayerKey_KillPlayerCnt % attacker.GetPlayerID(), 0)
|
| | | |
| | | killPlayerNotifyDict = IpyGameDataPY.GetFuncEvalCfg('FamilyKilledNotify')
|
| | | |
| | | killKeys = sorted(killPlayerNotifyDict.keys())
|
| | | notifyKey = 0 |
| | | for killCntKey in killKeys:
|
| | | if killCnt < killCntKey:
|
| | | break
|
| | | notifyKey = killCntKey
|
| | | if notifyKey in killPlayerNotifyDict:
|
| | | notifyMark = killPlayerNotifyDict[notifyKey]
|
| | | PlayerControl.WorldNotify(0, notifyMark, [atkName, defMapID, defFamilyName, defFamilyMemberLv, defName])
|
| | | killCnt = attacker.GetDictByKey(ChConfig.Def_PlayerKey_KillPlayerCnt % defender.GetPlayerID()) + 1
|
| | | attacker.SetDict(ChConfig.Def_PlayerKey_KillPlayerCnt % defender.GetPlayerID(), killCnt)
|
| | | #被杀重置击杀数
|
| | | defender.SetDict(ChConfig.Def_PlayerKey_KillPlayerCnt % attacker.GetPlayerID(), 0)
|
| | | |
| | | killPlayerNotifyDict = IpyGameDataPY.GetFuncEvalCfg('FamilyKilledNotify')
|
| | | |
| | | killKeys = sorted(killPlayerNotifyDict.keys())
|
| | | notifyKey = 0 |
| | | for killCntKey in killKeys:
|
| | | if killCnt < killCntKey:
|
| | | break
|
| | | notifyKey = killCntKey
|
| | | if notifyKey in killPlayerNotifyDict:
|
| | | notifyMark = killPlayerNotifyDict[notifyKey]
|
| | | msgParamList = [atkName, defMapID, defFamilyName, defFamilyMemberLv, defName]
|
| | | if isCrossServer:
|
| | | crossNotifyList.append(PlayerControl.GetCrossWorldNotifyInfo(0, notifyMark, msgParamList))
|
| | | if atkServerGroupID != defServerGroupID:
|
| | | PlayerControl.NotifyCode(attacker, notifyMark, msgParamList)
|
| | | else:
|
| | | PlayerControl.WorldNotify(0, notifyMark, msgParamList)
|
| | | |
| | | if crossNotifyList:
|
| | | PlayerControl.CrossNotify([defServerGroupID], crossNotifyList)
|
| | |
|
| | | return
|
| | |
|