| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #---------------------------------------------------------------------  | 
| #  | 
| #---------------------------------------------------------------------  | 
| ##@package GY_Query_GMTForbidTalk.py  | 
| # @todo: gm¹¤¾ß·âºÅ  | 
| #  | 
| # @author: wdb  | 
| # @date 2012-06-14  | 
| # @version 1.2  | 
| #  | 
| # @note:   | 
| # @change: "2012-08-10 15:00" zhangxi ÐÞ¸ÄOSS¼Ç¼  | 
| # @change: "2014-09-05 16:30" hxp Ôö¼Ó¿ÉÉèÖýûÑÔʱ³¤  | 
| #---------------------------------------------------------------------  | 
| """Version = 2014-09-05 16:30"""  | 
| #---------------------------------------------------------------------  | 
| import IPY_GameWorld  | 
| import ChConfig  | 
| import GameWorld  | 
| import DataRecordPack  | 
| import PlayerControl  | 
| #---------------------------------------------------------------------  | 
| #È«¾Ö±äÁ¿  | 
| #---------------------------------------------------------------------  | 
|   | 
| #---------------------------------------------------------------------  | 
| #Â߼ʵÏÖ  | 
| ## ÇëÇóÂß¼  | 
| #  @param query_Type ÇëÇóÀàÐÍ  | 
| #  @param query_ID ÇëÇóµÄÍæ¼ÒID  | 
| #  @param packCMDList ·¢°üÃüÁî [GMÕʺŠ, ³ÖÐøÊ±¼ä , ·â´æÔÒò]  | 
| #  @param tick µ±Ç°Ê±¼ä  | 
| #  @return "True" or "False" or ""  | 
| #  @remarks º¯ÊýÏêϸ˵Ã÷.  | 
| def DoLogic(query_Type, query_ID, packCMDList, tick):  | 
|     GameWorld.DebugLog("GY_Query_GMTForbidTalk packCMDList=%s" % str(packCMDList))  | 
| #    curFindPlayer = GameWorld.GetPlayerManager().FindPlayerByID(query_ID)  | 
| #  | 
| #    if not curFindPlayer or curFindPlayer.IsEmpty():  | 
| #        return ''  | 
| #      | 
| #    curFindPlayer.SetAccState(curFindPlayer.GetAccState()|pow(2, ChConfig.Def_PysForbidTalk))  | 
| #    curFindName = curFindPlayer.GetPlayerName()  | 
| #    #Á÷Ïò  | 
| #    DataRecordPack.DR_ToolGMOperate(query_ID, curFindName, curFindPlayer.GetAccID(), 'GMT_FobidTalk')  | 
|       | 
|     # ÔÚÏßʱ¿ÉÉ趨½ûÑÔʱ³¤£»ÀëÏßÔòÔÚUserDBResponseÖ´ÐÐ״̬½ûÑÔ  | 
|     # ¹Ê½â½ûʱÐèÁ½ÖÖÇé¿ö¶¼½â³ý  | 
|     curFindPlayer = GameWorld.GetPlayerManager().FindPlayerByID(query_ID)  | 
|       | 
|     if not curFindPlayer or curFindPlayer.IsEmpty():  | 
|         return ''  | 
|       | 
|     curFindPlayer_GMOper = curFindPlayer.GetGMOperManager()  | 
|     gmOper = curFindPlayer_GMOper.AddGMOper(IPY_GameWorld.gmForbidTalk)  | 
|     lastTime = int(packCMDList[0])  | 
|     gmOper.SetGMAccID(curFindPlayer.GetAccID())  | 
|     gmOper.SetLastTime(lastTime)  | 
|       | 
|     GameWorld.DebugLog("    ½â½ûʱ¼ä=%s" % str(gmOper.GetEndTime()))  | 
|       | 
|     curFindPlayer_GMOper.Sync_SaveToDB()  | 
|       | 
|     PlayerControl.SetGMForbidenTalk(curFindPlayer, 1)  | 
|     #PlayerControl.NotifyCode(curFindPlayer, "GeRen_chenxin_80731", [lastTime])  | 
|       | 
|     curFindName = curFindPlayer.GetPlayerName()  | 
|     #Á÷Ïò  | 
|     DataRecordPack.DR_ToolGMOperate(query_ID, curFindName, curFindPlayer.GetAccID(), 'GMT_FobidTalk')  | 
|     return  | 
|   | 
|   | 
|   | 
|   |