| | |
| | | GameWorld.DebugAnswer(curPlayer, "本服公会未互通")
|
| | | return []
|
| | |
|
| | | def OnExec(curPlayer, msgList):
|
| | | ## 游戏服执行命令
|
| | | |
| | | isMainServer = GameWorld.IsMainServer()
|
| | | def OnExecCross(crossPlayer, msgList):
|
| | | if not msgList:
|
| | | if not isMainServer:
|
| | | return
|
| | | GameWorld.DebugAnswer(curPlayer, "-----%s-----" % GameWorld.GetCurrentDataTimeStr())
|
| | | GameWorld.DebugAnswer(curPlayer, "设置等级: Family lv 等级 经验")
|
| | | GameWorld.DebugAnswer(curPlayer, "设置徽章: Family e 徽章ID [剩余时间秒]")
|
| | | GameWorld.DebugAnswer(curPlayer, "设置贡献: Family c 今日贡献 累计贡献 [成员ID]")
|
| | | GameWorld.DebugAnswer(curPlayer, "设置离开: Family l 主动离开次数 被踢次数 上次是否主动 离开多久了")
|
| | | GameWorld.DebugAnswer(curPlayer, "添加成员: Family m 人数 [公会ID]")
|
| | | GameWorld.DebugAnswer(curPlayer, "成员离线: Family ml 成员ID 离线分钟数")
|
| | | GameWorld.DebugAnswer(curPlayer, "重置改名: Family n")
|
| | | GameWorld.DebugAnswer(curPlayer, "创建公会相关使用命令: CreateFamily")
|
| | | return
|
| | | if GameWorld.IsMainServer() and DBDataMgr.GetFamilyMgr().GetCurCrossServerID():
|
| | | # 本服公会已互通不再执行本服命令
|
| | | return
|
| | |
|
| | | crossPlayer = CrossPlayer.GetCrossPlayerMgr().FindCrossPlayer(curPlayer.GetPlayerID())
|
| | | if not crossPlayer:
|
| | | return
|
| | | |
| | | value = msgList[0]
|
| | | |
| | | # 都在本服执行的
|
| | | if value == "l":
|
| | | if not isMainServer:
|
| | | return
|
| | | leaveCnt = msgList[1] if len(msgList) > 1 else 0
|
| | | kickedCnt = msgList[2] if len(msgList) > 2 else 0
|
| | | lastVoluntarily = msgList[3] if len(msgList) > 3 else 0
|
| | | leavePassMinutes = msgList[4] if len(msgList) > 4 else 0
|
| | | leaveInfo = PlayerControl.SetLeaveFamilyInfo(curPlayer, leaveCnt, kickedCnt, lastVoluntarily)
|
| | | leaveTime = PlayerControl.SetLeaveFamilyTimeEx(curPlayer, int(time.time()) - leavePassMinutes * 60)
|
| | | GameWorld.DebugAnswer(curPlayer, "设置离开: Info=%s,%s" % (leaveInfo, GameWorld.ChangeTimeNumToStr(leaveTime)))
|
| | | return
|
| | | |
| | | if isMainServer:
|
| | | crossServerID = DBDataMgr.GetFamilyMgr().GetCurCrossServerID()
|
| | | if crossServerID:
|
| | | # 本服公会已互通不再执行本服命令
|
| | | return
|
| | | |
| | | familyID = crossPlayer.GetFamilyID()
|
| | | familyMgr = DBDataMgr.GetFamilyMgr()
|
| | | curFamily = familyMgr.FindFamily(familyID) if familyID else None
|
| | | if not curFamily:
|
| | | GameWorld.DebugAnswer(crossPlayer, "玩家未加入公会!")
|
| | | return
|
| | | |
| | | value = msgList[0]
|
| | | if value == "m":
|
| | | CreateFamily.OnExecCross(crossPlayer, msgList)
|
| | | return
|
| | |
|
| | | if GameWorld.IsCrossServer():
|
| | |
| | | return
|
| | | endTime = PlayerFamilyEmblem.GetActionEmblemEndTime(emblemActionObj)
|
| | | GameWorld.DebugAnswer(crossPlayer, "添加徽章(%s)到期:%s" % (emblemID, GameWorld.ChangeTimeNumToStr(endTime)))
|
| | | return
|
| | | |
| | | elif value == "m":
|
| | | CreateFamily.OnExec(crossPlayer, msgList)
|
| | | return
|
| | |
|
| | | elif value == "n":
|
| | |
| | | isSyncMem = True if syncMemIDList else False
|
| | | PlayerFamily.Sync_FamilyInfo(crossPlayer, syncMemIDList=syncMemIDList, isSyncMem=isSyncMem)
|
| | | return
|
| | |
|
| | | def OnExec(curPlayer, msgList):
|
| | | ## 游戏服执行命令
|
| | | |
| | | if not msgList:
|
| | | GameWorld.DebugAnswer(curPlayer, "-----%s-----" % GameWorld.GetCurrentDataTimeStr())
|
| | | GameWorld.DebugAnswer(curPlayer, "设置等级: Family lv 等级 经验")
|
| | | GameWorld.DebugAnswer(curPlayer, "设置徽章: Family e 徽章ID [剩余时间秒]")
|
| | | GameWorld.DebugAnswer(curPlayer, "设置贡献: Family c 今日贡献 累计贡献 [成员ID]")
|
| | | GameWorld.DebugAnswer(curPlayer, "设置离开: Family l 主动离开次数 被踢次数 上次是否主动 离开多久了")
|
| | | GameWorld.DebugAnswer(curPlayer, "添加成员: Family m 人数 [公会ID]")
|
| | | GameWorld.DebugAnswer(curPlayer, "成员离线: Family ml 成员ID 离线分钟数")
|
| | | GameWorld.DebugAnswer(curPlayer, "重置改名: Family n")
|
| | | GameWorld.DebugAnswer(curPlayer, "创建公会相关使用命令: CreateFamily")
|
| | | return
|
| | | |
| | | crossPlayer = CrossPlayer.GetCrossPlayerMgr().FindCrossPlayer(curPlayer.GetPlayerID())
|
| | | if not crossPlayer:
|
| | | return
|
| | | |
| | | value = msgList[0]
|
| | | |
| | | if value == "l":
|
| | | leaveCnt = msgList[1] if len(msgList) > 1 else 0
|
| | | kickedCnt = msgList[2] if len(msgList) > 2 else 0
|
| | | lastVoluntarily = msgList[3] if len(msgList) > 3 else 0
|
| | | leavePassMinutes = msgList[4] if len(msgList) > 4 else 0
|
| | | leaveInfo = PlayerControl.SetLeaveFamilyInfo(curPlayer, leaveCnt, kickedCnt, lastVoluntarily)
|
| | | leaveTime = PlayerControl.SetLeaveFamilyTimeEx(curPlayer, int(time.time()) - leavePassMinutes * 60)
|
| | | GameWorld.DebugAnswer(curPlayer, "设置离开: Info=%s,%s" % (leaveInfo, GameWorld.ChangeTimeNumToStr(leaveTime)))
|
| | | return
|
| | | |
| | | OnExecCross(crossPlayer, msgList)
|
| | | return
|