| | |
| | |
|
| | | #发送未拾取的物品给玩家
|
| | | if mapID in ChConfig.Def_SendUnPickItemMailMapIDList and unPickItemDict:
|
| | | isCrossServer = GameWorld.IsCrossServer()
|
| | | playerServerGroupIDDict = PyGameData.g_crossPlayerServerGroupIDInfo.get(copyMapID, {})
|
| | | for ownerID, mailItemList in unPickItemDict.items():
|
| | | GameWorld.Log("发送未拾取的物品给玩家: %s" % mailItemList, ownerID)
|
| | | if isCrossServer:
|
| | | serverGroupID = playerServerGroupIDDict.get(ownerID, 0)
|
| | | # 删除旧版发送邮件,如果功能还有需要,可使用新版本发送邮件 PlayerMail
|
| | | else:
|
| | | PlayerControl.SendMailByKey("ItemNoPickUp", [ownerID], mailItemList, [gameWorld.GetMapID()])
|
| | | |
| | | PlayerControl.SendMailByKey("ItemNoPickUp", [ownerID], mailItemList, [gameWorld.GetMapID()])
|
| | | |
| | | playerManager = gameWorld.GetMapCopyPlayerManager()
|
| | |
|
| | | GameServer_DynamicLineMapStateChange(gameWorld, IPY_GameWorld.fbosClosed)
|
| | |
| | | FreeOrClearFBByAutoSize(gameWorld)
|
| | |
|
| | | gameWorld.SetPropertyID(0)
|
| | | PyGameData.g_crossPlayerServerGroupIDInfo.pop(copyMapID, None)
|
| | | return
|
| | |
|
| | | def GameServer_DynamicLineMapStateChange(gameWorld, state):
|
| | |
| | | #通知RouteServer 消息
|
| | | __ProcessRouteServer(gameWorld, tick)
|
| | |
|
| | | #定时检测关闭超时文件
|
| | | EventReport.OnTimeCloseScribeTxt()
|
| | | |
| | | #地图自定义随机刷怪
|
| | | NPCRealmRefresh.ProcessRealmNPCRefresh(gameWorld, tick)
|
| | | return
|
| | |
| | | # @remarks 函数详细说明 每条分线都会触发该函数
|
| | | def InitGameWorld(tick):
|
| | | gameWorld = GameWorld.GetGameWorld()
|
| | | ItemCommon.InitPyItem()
|
| | | #处理副本逻辑
|
| | | FBLogic.OnInit(tick)
|
| | | #初始化地图时钟
|