From 167357e8425d0dc12f41ed5fdfd4d95f2c2a5aaf Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期四, 29 五月 2025 19:19:20 +0800 Subject: [PATCH] 16 卡牌服务端(删除旧版xml任务、镖车等不需要内容) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py | 174 --------------------------------------------------------- 1 files changed, 1 insertions(+), 173 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py index 30e0d4d..5dd3c73 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py @@ -30,24 +30,16 @@ import IPY_GameWorld import PlayerControl import NPCCommon -#import ItemControler import SkillCommon import EffGetSet import FBLogic -import EventShell import ReadChConfig import PetControl import GameMap -import PlayerTruck -#import PlayerPrestigeSys -import PlayerFamily -#import BossHurtMng import PassiveBuffEffMng -import PlayerSuccess import GameFuncComm import ShareDefine import SkillShell -import PlayerVip import FormulaControl import IpyGameDataPY import PyGameData @@ -216,49 +208,6 @@ curTagPlayer.GameServer_AddEnemy(curPlayer.GetID(), curPlayer.GetName()) return - -## 当玩家杀死镖车的时候触发 -# @param curPlayer 杀人者 -# @param defender 被杀者 -# @param tick 当前时间 -# @return None -# @remarks 函数详细说明. -def OnPlayerKillTruck(curPlayer, curTruck, tick): - - if curPlayer == None or curTruck == None: - return - - #区域 - curPlayerAreaType = GameMap.GetAreaTypeByMapPos(curPlayer.GetPosX(), curPlayer.GetPosY()) - truckAreaType = GameMap.GetAreaTypeByMapPos(curTruck.GetPosX(), curTruck.GetPosY()) - - #自由区域,合法,返回True - if curPlayerAreaType == IPY_GameWorld.gatFreePK or truckAreaType == IPY_GameWorld.gatFreePK: - return - - #家族区域,PK不是同一家族的玩家或其宠物,合法,返回True - if curPlayerAreaType == IPY_GameWorld.gatFamilyPK or truckAreaType == IPY_GameWorld.gatFamilyPK: - return - - #已经死亡了,不变色 - if GameObj.GetHP(curPlayer) <= 0: - return - - curPlayerNameColor = curPlayer.GetPlayerNameColor() - #自己如果不是白名就不变色 - if curPlayerNameColor != IPY_GameWorld.pncNormal: - return - - curTruckNameColor = PlayerTruck.GetTruckNameColor(curTruck) - if curTruckNameColor != IPY_GameWorld.pncNormal: - #目标玩家不是白名就不变色 - return - - #灰名(9) - #SkillCommon.AddBuffBySkillType(curPlayer , ChConfig.Def_SkillID_Gray , tick) - return - - ## 当玩家杀死玩家的时候触发 # @param curPlayer 杀人者 # @param defender 被杀者 @@ -268,12 +217,6 @@ def OnPlayerKillPlayer(curPlayer, defender, tick): PlayerState.SetPKStateTick(curPlayer, tick) - - #触发击杀玩家事件 - EventShell.EventResponse_OnKillEnemy(curPlayer, defender) - - #触发被杀事件 - EventShell.EventResponse_OnEnemyKill(defender, curPlayer) #通知 PlayerControl.NotifyCode(defender, "PK_lhs_318691", [curPlayer.GetName()]) @@ -731,10 +674,7 @@ return curTeam = curObj.GetTeam() - - #2012-04-23 jiang 攻击镖车只算个人伤害 - if curTagObj.GetGameObjType() == IPY_GameWorld.gotNPC and \ - curTagObj.GetGameNPCObjType() == IPY_GameWorld.gnotTruck or curTeam == None: + if curTeam == None: #无队伍,添加个人伤害 AddHurtValue(curTagObj, curObj.GetPlayerID(), ChConfig.Def_NPCHurtTypePlayer, hurtHP) return True @@ -1791,10 +1731,6 @@ #设置宠物剩余血量 PetControl.SetPetHP(defObj, remainHP) - elif defObj.GetGameNPCObjType() == IPY_GameWorld.gnotTruck: - remainHP = max(PlayerTruck.GetTruckDestroyMinHP(defObj), remainHP) - GameObj.SetHP(defObj, remainHP) - elif defObj.GetType() == ChConfig.ntHelpBattleRobot: remainHP = min(dHP, max(GameObj.GetMaxHP(defObj)/2, remainHP)) # 助战机器人剩余血量不能少于一半 GameObj.SetHP(defObj, remainHP) @@ -2697,10 +2633,6 @@ return (taget.GetPlayerAction() == IPY_GameWorld.paDie) elif tagetType == IPY_GameWorld.gotNPC: - if taget.GetGameNPCObjType() == IPY_GameWorld.gnotTruck: - #镖车判定是否可以攻击( 损坏的镖车是无敌的 GetCanAttack = 0 ) - return (not taget.GetCanAttack()) - return (taget.GetCurAction() == IPY_GameWorld.laNPCDie) GameWorld.Log('###GetIsDead = %s ' % (tagetType)) @@ -2902,67 +2834,6 @@ #敌人关系,可PK,可加减益buff return ChConfig.Type_Relation_Enemy , ChConfig.Def_PASysMessage_None -#def GetPeaceBuff(curPlayer): -# return SkillCommon.FindBuffByID(curPlayer, ChConfig.Def_SkillID_Peace)[0] - -## 获取玩家和镖车的关系 -# @param curPlayer: 攻击方实例 -# @param curTagTruck: 镖车实例 -# @return: 可否攻击 -def GetPlayerAndTruckRelation(curPlayer, curTagTruck): - - if curPlayer == None or curTagTruck == None: - return ChConfig.Type_Relation_None, ChConfig.Def_PASysMessage_None - - #攻击方玩家区域 - curPlayerAreaType = GameMap.GetAreaTypeByMapPos(curPlayer.GetPosX(), curPlayer.GetPosY()) - - #镖车所在区域 - truckAreaType = GameMap.GetAreaTypeByMapPos(curTagTruck.GetPosX(), curTagTruck.GetPosY()) - - #攻击方或镖车在安全区 - if curPlayerAreaType == IPY_GameWorld.gatSafe or truckAreaType == IPY_GameWorld.gatSafe: - return ChConfig.Type_Relation_None, ChConfig.Def_PASysMessage_IsSafeArea - - #攻守双方不在同一区域,不可PK,不可加增益buff - if curPlayerAreaType != truckAreaType: - return ChConfig.Type_Relation_None, ChConfig.Def_PASysMessage_CurAreaNotPK - - curTagPlayer = NPCCommon.GetSummonNPCOwner(IPY_GameWorld.gotPlayer, curTagTruck) - if curTagPlayer: - if curPlayer.GetID() == curTagPlayer.GetID(): - #不能攻击自己的镖车 - return ChConfig.Type_Relation_None, ChConfig.Def_PASysMessage_None - - if not GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_Truck): - #Truck_hgg_31379:功能未开启,不能攻击镖车 - PlayerControl.NotifyCode(curPlayer, "Truck_hgg_31379", [GameFuncComm.GetFuncLimitLV(ShareDefine.GameFuncID_Truck)]) - return ChConfig.Type_Relation_None, ChConfig.Def_PASysMessage_None - - curTruckOTeamID = PlayerTruck.GetTruckTeamID(curTagTruck) - curTruckFamilyID = PlayerTruck.GetTruckFamilyID(curTagTruck) - curTruckNameColor = PlayerTruck.GetTruckNameColor(curTagTruck) - - #普通区域 - if curPlayerAreaType == IPY_GameWorld.gatNormal: - #和平模式 - if curPlayer.GetAttackMode() == IPY_GameWorld.amPeace : - #如镖车主人不是红名也不是黄名,则给系统提示:不可攻击 - if curTruckNameColor not in [IPY_GameWorld.pncGray, IPY_GameWorld.pncRed]: - return ChConfig.Type_Relation_Friend , ChConfig.Def_PASysMessage_CurAreaNotPK - - curPlayerTeamID = curPlayer.GetTeamID() # 攻击方队伍ID - curPlayerFamilyID = curPlayer.GetFamilyID() # 攻击方家族ID - if curPlayerTeamID and curTruckOTeamID and curTruckOTeamID == curPlayerTeamID: - #攻击方和镖车主人同队伍 - return ChConfig.Type_Relation_Friend , ChConfig.Def_PASysMessage_NotAttackTeam - - if curTruckFamilyID and curPlayerFamilyID and curTruckFamilyID == curPlayerFamilyID: - #攻击方和镖车主人同家族 - return ChConfig.Type_Relation_Friend , ChConfig.Def_PASysMessage_NotAttackFamily - - return ChConfig.Type_Relation_Enemy, ChConfig.Def_PASysMessage_None - def IsPKProtectTime(): ## 是否是PK保护时间段 pkProtecTimeList = IpyGameDataPY.GetFuncEvalCfg("PKConfig", 1) @@ -3066,53 +2937,10 @@ defendPkValue = defender.GetPKValue() # 防守者pk值 defendFightPower = PlayerControl.GetFightPower(defender) # 防守者战斗力 -# #今日杀人获得威望值 -# prestigeByDay = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_KillPlayerAddPrestige) -# -# addPrestige = int(eval(ReadChConfig.GetChConfig("KillPlayerPrestige"))) -# if addPrestige > 0: -# maxPrestigeByDay = ReadChConfig.GetEvalChConfig("KillPlayerMaxPrestigeByDay") -# if prestigeByDay < maxPrestigeByDay: -# #没超过每日杀人获得威望最大值, 给予威望 -# addPrestige = min(addPrestige, maxPrestigeByDay - prestigeByDay) -# PlayerPrestigeSys.AddPrestigeOffcialLV(curPlayer, addPrestige, ChConfig.Def_AddPrestige_Kill) -# PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_KillPlayerAddPrestige, prestigeByDay + addPrestige) -# else: -# #GeRen_wll_0:今日获得威望已达上限 -# PlayerControl.NotifyCode(curPlayer, "PK_liubo_372238") -# -# elif addPrestige < 0: -# GameWorld.ErrLog("KillPlayerPrestige计算结果:%s" % addPrestige) - #恶名值 curPlayer.SetInfamyValue(min(attackNotoriety + ChConfig.Def_KillValue_Notoriety, ChConfig.Def_UpperLimit_DWord)) - #活跃度 -# activeByDay = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_KillPlayerAddActive) -# addActiveValue = int(eval(ReadChConfig.GetChConfig("KillPlayerFamilyAvtive"))) -# if addActiveValue > 0 and curPlayer.GetFamilyID() != 0: -# maxAvtiveByDay = ReadChConfig.GetEvalChConfig("KillPlayerMaxAvtiveByDay") -# if activeByDay < maxAvtiveByDay: -# addActiveValue = min(addActiveValue, maxAvtiveByDay - activeByDay) -# PlayerFamily.AddPlayerFamilyActiveValue(curPlayer, addActiveValue, True, \ -# PlayerFamily.Def_AddFAVReason_KillPlayer) -# PlayerControl.NotifyCode(curPlayer, "GeRen_admin_425673", [addActiveValue]) -# PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_KillPlayerAddActive, activeByDay + addActiveValue) -# else: -# PlayerControl.NotifyCode(curPlayer, "PK_liubo_161795") -# -# elif addActiveValue < 0: -# GameWorld.ErrLog("KillPlayerFamilyAvtive计算结果:%s" % addActiveValue) - - #---防守者 - #威望值 -# lostPrestige = int(eval(ReadChConfig.GetChConfig("BeKilledPlayerPrestige"))) -# if lostPrestige > 0: -# PlayerPrestigeSys.SubPrestigeOffcialLV(defender, lostPrestige, ChConfig.Def_SubPrestige_BeKilled) -# elif lostPrestige < 0: -# GameWorld.ErrLog("BeKilledPlayerPrestige计算结果:%s" % lostPrestige) - #恶名值 defender.SetInfamyValue(max(defendNotoriety - ChConfig.Def_BeKilledValue_Notoriety, 0)) return -- Gitblit v1.8.0