From b63f2f2458257e9ef4ab67d0a0748fd5ec2948ae Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 30 十月 2019 17:26:40 +0800 Subject: [PATCH] 8318 【恺英】老服创角限制优化 --- ServerPython/CoreServerGroup/GameServer/Script/Player/CreateRole.py | 17 +++++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/CreateRole.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/CreateRole.py index 1b5d3a6..2692310 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/Player/CreateRole.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/CreateRole.py @@ -83,6 +83,10 @@ PlayerControl.NotifyCode(curPlayer, "CreatSuccess") return + if CheckIsServerCreateRoleLimit(curPlayer): + PlayerControl.NotifyCode(curPlayer, "ServerCreateRoleLimit") + return + # CD保护 createSafeTick = 3000 accID = curPlayer.GetAccID() @@ -243,6 +247,19 @@ #DataRecordPack.DR_CreateRole(curPlayer.GetAccID(), sendPack_Name, sendPack_Job) return #--------------------------------------------------------------------- +def CheckIsServerCreateRoleLimit(curPlayer): + ## 服务器是否创角限制 + groupID = GameWorld.GetServerGroupID() + ipyDataMgr = IpyGameDataPY.IPY_Data() + for i in xrange(ipyDataMgr.GetCreateRoleLimitServerCount()): + ipyData = ipyDataMgr.GetCreateRoleLimitServerByIndex(i) + if groupID in ipyData.GetLimitServerGroupIDList(): + return True + for idA, idB in ipyData.GetLimitServerGroupIDRangeList(): + if idA <= groupID <= idB: + return True + return False + ## 检查玩家名字是否合法(这里的PlayerName为过滤完空格的名字) # @param curPlayer 当前玩家 # @param playerName 玩家名称 -- Gitblit v1.8.0