| | |
| | | # 暗金boss
|
| | | if ChConfig.IsGameBoss(curNPC):
|
| | | # 通知GameServer boss状态 封魔坛在副本里单独处理
|
| | | ipyData = IpyGameDataPY.GetIpyGameDataNotLog('BOSSInfo', npcid)
|
| | | if ipyData and ipyData.GetMapID() not in [ChConfig.Def_FBMapID_SealDemon, ChConfig.Def_FBMapID_ZhuXianBoss]:
|
| | | GameServe_GameWorldBossState(npcid, 0)
|
| | | #GameWorld.GetGameWorld().SetGameWorldDict(ChConfig.Map_NPC_WorldBossDeadTick % npcid, GameWorld.GetGameWorld().GetTick())
|
| | | #因为存在boss分流,所以用gameFB字典,但是存活状态还是用GameWorld字典
|
| | | GameWorld.GetGameFB().SetGameFBDict(ChConfig.Map_NPC_WorldBossDeadTick % npcid, GameWorld.GetGameWorld().GetTick())
|
| | | #ipyData = IpyGameDataPY.GetIpyGameDataNotLog('BOSSInfo', npcid)
|
| | | #if ipyData and ipyData.GetMapID() not in [ChConfig.Def_FBMapID_SealDemon, ChConfig.Def_FBMapID_ZhuXianBoss]:
|
| | | # GameServe_GameWorldBossState(npcid, 0)
|
| | | # #GameWorld.GetGameWorld().SetGameWorldDict(ChConfig.Map_NPC_WorldBossDeadTick % npcid, GameWorld.GetGameWorld().GetTick())
|
| | | # #因为存在boss分流,所以用gameFB字典,但是存活状态还是用GameWorld字典
|
| | | # GameWorld.GetGameFB().SetGameFBDict(ChConfig.Map_NPC_WorldBossDeadTick % npcid, GameWorld.GetGameWorld().GetTick())
|
| | |
|
| | | ChNPC.OnNPCSetDead(curNPC)
|
| | |
|
| | |
| | | PlayerFeastTravel.AddFeastTravelTaskValue(curPlayer, ChConfig.Def_FeastTravel_BossHome, 1)
|
| | | PlayerActTask.AddActTaskValue(curPlayer, ChConfig.ActTaskType_BossHome, 1)
|
| | |
|
| | | if mapID == ChConfig.Def_FBMapID_CrossPenglai:
|
| | | #跨服蓬莱仙境
|
| | | PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_CrossPenglai)
|
| | | PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_KillCrossPenglaiBoss, 1)
|
| | | PlayerGubao.AddGubaoItemEffValue(curPlayer, PlayerGubao.GubaoEffType_KillCrossPenglaiBoss, 1)
|
| | | PlayerActTask.AddActTaskValue(curPlayer, ChConfig.ActTaskType_CrossPenglaiBoss, 1)
|
| | | elif mapID == ChConfig.Def_FBMapID_CrossDemonLand:
|
| | | #跨服魔化之地
|
| | | PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_CrossDemonLand)
|
| | | PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_KillCrossDemonLandBoss, 1)
|
| | | PlayerGubao.AddGubaoItemEffValue(curPlayer, PlayerGubao.GubaoEffType_KillCrossDemonLandBoss, 1)
|
| | | PlayerActTask.AddActTaskValue(curPlayer, ChConfig.ActTaskType_CrossDemonLandBoss, 1)
|
| | | if mapID in [ChConfig.Def_FBMapID_CrossPenglai, ChConfig.Def_FBMapID_CrossDemonLand]:
|
| | | PlayerTongTianLing.AddTongTianTaskValue(curPlayer, ChConfig.TTLTaskType_CrossBoss, 1)
|
| | | # if mapID == ChConfig.Def_FBMapID_CrossPenglai:
|
| | | # #跨服蓬莱仙境
|
| | | # PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_CrossPenglai)
|
| | | # PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_KillCrossPenglaiBoss, 1)
|
| | | # PlayerGubao.AddGubaoItemEffValue(curPlayer, PlayerGubao.GubaoEffType_KillCrossPenglaiBoss, 1)
|
| | | # PlayerActTask.AddActTaskValue(curPlayer, ChConfig.ActTaskType_CrossPenglaiBoss, 1)
|
| | | # elif mapID == ChConfig.Def_FBMapID_CrossDemonLand:
|
| | | # #跨服魔化之地
|
| | | # PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_CrossDemonLand)
|
| | | # PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_KillCrossDemonLandBoss, 1)
|
| | | # PlayerGubao.AddGubaoItemEffValue(curPlayer, PlayerGubao.GubaoEffType_KillCrossDemonLandBoss, 1)
|
| | | # PlayerActTask.AddActTaskValue(curPlayer, ChConfig.ActTaskType_CrossDemonLandBoss, 1)
|
| | | # if mapID in [ChConfig.Def_FBMapID_CrossPenglai, ChConfig.Def_FBMapID_CrossDemonLand]:
|
| | | # PlayerTongTianLing.AddTongTianTaskValue(curPlayer, ChConfig.TTLTaskType_CrossBoss, 1)
|
| | |
|
| | | # 个人首杀记录
|
| | | ipyData = IpyGameDataPY.GetIpyGameDataNotLog("BOSSFirstKill", npcID)
|
| | |
| | | #杀死NPC, 触发任务
|
| | | self.__EventKillNpc()
|
| | |
|
| | | mapID = GameWorld.GetMap().GetMapID()
|
| | | killerName = "" if not self.__Killer else self.__Killer.GetPlayerName()
|
| | | # 记录boss击杀信息的NPC
|
| | | bossIpyData = IpyGameDataPY.GetIpyGameDataListNotLog('BOSSInfo', npcID)
|
| | | if bossIpyData and mapID not in [ChConfig.Def_FBMapID_ZhuXianBoss, ChConfig.Def_FBMapID_SealDemon]:
|
| | | killerIDList = [player.GetPlayerID() for player in self.__ownerPlayerList]
|
| | | GameServer_KillGameWorldBoss(curNPC.GetNPCID(), killerName, 0, True, killerIDList)
|
| | | #mapID = GameWorld.GetMap().GetMapID()
|
| | | #killerName = "" if not self.__Killer else self.__Killer.GetPlayerName()
|
| | | ## 记录boss击杀信息的NPC
|
| | | #bossIpyData = IpyGameDataPY.GetIpyGameDataListNotLog('BOSSInfo', npcID)
|
| | | #if bossIpyData and mapID not in [ChConfig.Def_FBMapID_ZhuXianBoss, ChConfig.Def_FBMapID_SealDemon]:
|
| | | # killerIDList = [player.GetPlayerID() for player in self.__ownerPlayerList]
|
| | | # GameServer_KillGameWorldBoss(curNPC.GetNPCID(), killerName, 0, True, killerIDList)
|
| | |
|
| | | if npcID == IpyGameDataPY.GetFuncCfg("BossRebornServerBoss", 3):
|
| | | PlayerControl.WorldNotify(0, "BossRebornBossKilled", [curNPC.GetNPCID()])
|