From d196d101b54ca95a1343399841d6b4e1117143b7 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 04 六月 2025 14:53:08 +0800
Subject: [PATCH] 16 卡牌服务端(GMT命令个人邮件、全服邮件相关;)
---
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