From 0b314dd1d9f0c39e8d86de7e996c62836aa19aca Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 03 十一月 2025 15:01:04 +0800
Subject: [PATCH] 16 卡牌服务端(删除翅膀;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py | 130 ------------------------------------------
1 files changed, 2 insertions(+), 128 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py
index defb857..e77f12f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py
@@ -40,8 +40,6 @@
import DataRecordPack
import NetPackCommon
import FBCommon
-import PlayerActivity
-import PlayerSuccess
import PlayerPrestigeSys
import GY_Query_BossFirstKill
import FormulaControl
@@ -107,12 +105,6 @@
# NPC等级
if hasattr(curNPC, "GetCurLV"):
return max(curNPC.GetCurLV(), curNPC.GetLV())
- if curPlayer and PlayerControl.GetRealmDifficulty(curPlayer):
- npcID = curNPC.GetNPCID()
- needRealmLV = PlayerControl.GetDifficultyRealmLV(PlayerControl.GetRealmDifficulty(curPlayer))
- realmNPCIpyData = IpyGameDataPY.GetIpyGameDataNotLog("NPCRealmStrengthen", npcID, needRealmLV)
- if realmNPCIpyData:
- return realmNPCIpyData.GetLV()
return curNPC.GetLV()
def GetNPCDataPy(npcID):
@@ -905,73 +897,6 @@
return
def OnPlayerKillBoss(curPlayer, npcID, mapID, isCrossServer):
- npcData = GameWorld.GetGameData().FindNPCDataByID(npcID)
- if not npcData:
- return
- killBossCntLimitDict = IpyGameDataPY.GetFuncCfg('KillBossCntLimit', 1)
- limitIndex = GameWorld.GetDictValueByKey(killBossCntLimitDict, npcID)
- if limitIndex != None:
- totalKey = ChConfig.Def_PDict_Boss_KillCntTotal % limitIndex
- totalCnt = min(curPlayer.NomalDictGetProperty(totalKey, 0) + 1, ChConfig.Def_UpperLimit_DWord)
- PlayerControl.NomalDictSetProperty(curPlayer, totalKey, totalCnt)
- #今日杀怪次数+1
- key = ChConfig.Def_PDict_Boss_KillCnt % limitIndex
- newCnt = curPlayer.NomalDictGetProperty(key, 0) + 1
- PlayerControl.NomalDictSetProperty(curPlayer, key, newCnt)
- GameWorld.DebugLog("更新击杀Boss次数: index=%s, todayCnt=%s, totalCnt=%s" % (limitIndex, newCnt, totalCnt), curPlayer.GetPlayerID())
-
- dataDict = {"objID":npcID, "bossID":npcID, "touchCnt":newCnt, "totalCnt":totalCnt,
- "AccID":curPlayer.GetAccID(), "PlayerID":curPlayer.GetPlayerID()}
- DataRecordPack.SendEventPack("AddKillBossCnt", dataDict, curPlayer)
- PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_FeastRedPack_KillBoss, 1, [limitIndex])
- PlayerState.SetBossStateExit(curPlayer)
-
- if isCrossServer:
- return
-
- if limitIndex == ShareDefine.Def_Boss_Func_World:
- # 世界BOSS击杀成就
- PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_KillWorldBoss, 1)
- # 每日活动
- PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_WorldBOSS)
- PlayerBossReborn.AddBossRebornActionCnt(curPlayer, ChConfig.Def_BRAct_WorldBOSS, 1)
- PlayerWeekParty.AddWeekPartyActionCnt(curPlayer, ChConfig.Def_WPAct_WorldBOSS, 1)
- PlayerFeastTravel.AddFeastTravelTaskValue(curPlayer, ChConfig.Def_FeastTravel_WorldBoss, 1)
- PlayerActLogin.AddLoginAwardActionCnt(curPlayer, ChConfig.Def_LoginAct_WorldBOSS, 1)
- PlayerActTask.AddActTaskValue(curPlayer, ChConfig.ActTaskType_WorldBoss, 1)
- #PlayerZhanling.AddZhanlingValue(curPlayer, PlayerZhanling.ZhanlingType_Huanjingge, 1)
- PlayerTongTianLing.AddTongTianTaskValue(curPlayer, ChConfig.TTLTaskType_WorldBoss, 1)
-
- elif limitIndex == ShareDefine.Def_Boss_Func_Home:
- #BOSS之家
- # BOSS之家BOSS击杀成就
- PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_KillBossHomeBoss, 1)
- # 每日活动
- PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_BOSSHome)
- PlayerBossReborn.AddBossRebornActionCnt(curPlayer, ChConfig.Def_BRAct_BOSSHome, 1)
- PlayerWeekParty.AddWeekPartyActionCnt(curPlayer, ChConfig.Def_WPAct_BOSSHome, 1)
- 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)
-# 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)
-# 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)
- if ipyData:
- GY_Query_BossFirstKill.SetPlayerFirstKillBoss(curPlayer, npcID)
- #Boss投资
- PlayerGoldInvest.OnKillBoss(curPlayer, npcID)
return
#################################################
@@ -3200,9 +3125,7 @@
FBLogic.DoFB_DropOwner(curPlayer , curNPC)
else:
if GetNPCLV(curNPC) >= curPlayer.GetLV() - IpyGameDataPY.GetFuncCfg('DailyQuestKillMonster'):
- PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_KillNPC)
PlayerActTask.AddActTaskValue(curPlayer, ChConfig.ActTaskType_KillNPC)
- PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_FeastRedPack_KillSpecificNPC, 1, [npcID])
#PlayerPrestigeSys.AddRealmTaskValue(curPlayer, PlayerPrestigeSys.RealmTaskType_KillNPC, 1)
if ChConfig.IsGameBoss(curNPC):
@@ -3228,10 +3151,6 @@
#不是普通NPC
elif npcObjType != IPY_GameWorld.gnotNormal:
return
- npcID = curNPC.GetNPCID()
- #GameWorld.DebugLog("__MissionOnKillNPC isFeel=%s" % (isFeel), curPlayer.GetPlayerID())
- #击杀特定NPC成就
- PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_KillSpecificNPC, 1, [npcID])
return
def __GetIsLog(self):
@@ -3274,47 +3193,7 @@
# @return 返回值, 获得经验
# @remarks 获得经验, 可能是小数
def __GetExp(self, playerLV, isTeam=False, player=None):
- curNPC = self.__Instance
- baseExp = 0
- #玩家不在副本中
- if GameWorld.GetMap().GetMapFBType() != IPY_GameWorld.fbtNull:
- baseExp = FBLogic.OnGetNPCExp(player, curNPC)
- if baseExp > 0:
- return baseExp
-
- npcID = curNPC.GetNPCID()
- realmLV = PlayerControl.GetDifficultyRealmLV(curNPC.GetSightLevel())
- realmNPCIpyData = IpyGameDataPY.GetIpyGameDataNotLog("NPCRealmStrengthen", npcID, realmLV)
- if realmNPCIpyData:
- baseExp = realmNPCIpyData.GetExp()
- npcLV = realmNPCIpyData.GetLV()
- else:
- baseExp = curNPC.GetExp()
- npcLV = curNPC.GetLV()
-
- if baseExp == 0:
- #GameWorld.Log("杀怪经验异常,该NPC = %s,无经验"%(curNPC.GetID()))
- return 0
-
- playerID = 0 if not player else player.GetPlayerID()
- # 如果是队伍,则按伤害贡献度计算所获得经验比例
- if isTeam:
- if not player:
- return 0
- hurtPer = AttackCommon.GetTeamPlayerHurtPer(player, curNPC)
- if not hurtPer:
- return 0
- #GameWorld.DebugLog("队员击杀基础经验: npcID=%s,baseExp=%s,hurtPer=%s" % (curNPC.GetNPCID(), baseExp, hurtPer), playerID)
- baseExp *= hurtPer
- #else:
- # GameWorld.DebugLog("个人击杀基础经验: npcID=%s,baseExp=%s" % (curNPC.GetNPCID(), baseExp), playerID)
-
- #经验衰减公式 = max(杀怪经验 * max(1-max(玩家等级-怪物等级-10,0)*0.02),0),1)
- exp = eval(FormulaControl.GetCompileFormula("ExpAttenuation", IpyGameDataPY.GetFuncCfg("ExpAttenuation", 1)))
- #exp = CalcNPCExp(baseExp, playerLV, npcLV)
- #GameWorld.DebugLog("击杀NPC最终基础经验: npcID=%s,npcLV=%s,playerLV=%s,baseExp=%s,exp=%s"
- # % (curNPC.GetNPCID(), npcLV, playerLV, baseExp, exp), playerID)
- return exp
+ return 0
#---------------------------------------------------------------------
@@ -3731,12 +3610,7 @@
npcData = GameWorld.GetGameData().FindNPCDataByID(npcID)
if not npcData:
return 0
- needRealmLV = PlayerControl.GetDifficultyRealmLV(PlayerControl.GetRealmDifficulty(curPlayer))
- realmNPCIpyData = IpyGameDataPY.GetIpyGameDataNotLog("NPCRealmStrengthen", npcID, needRealmLV)
- if realmNPCIpyData:
- baseExp = realmNPCIpyData.GetExp()
- else:
- baseExp = npcData.GetExp()
+ baseExp = npcData.GetExp()
if not baseExp:
return 0
npcLV = npcData.GetLV()
--
Gitblit v1.8.0