| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #---------------------------------------------------------------------  | 
| ##@package ChConfig  | 
| # @todo: ³£Á¿¶¨Òå  | 
| #  | 
| # @author panwei  | 
| # @date 2010-4-30ÏÂÎç01:46:32  | 
| # @version 2.1  | 
| #  | 
| # @change: "2010-05-21 17:30" zhengyang Ìí¼Ó×¢ÊÍ  | 
| # @change: "2010-06-24 14:10" adaws ÐÂÔögameserverÇëÇóÀàÐÍ queryType_CheckNameHasDirty   | 
| # @change: "2010-10-08 11:05" panwei °Î³ý·þÎñÆ÷°æ±¾¿ØÖÆ´úÂë    | 
| # @change: "2013-08-23 15:00" hxp Ôö¼Ó½øÈ븱±¾¿ç·þÇëÇóÀàÐÍ    | 
| # @change: "2013-09-18 15:00" xmnathan ÐÂÔöÅÅÐаñÀàÐÍ  | 
| # @change: "2014-09-12 17:00" xmnathan Ôö¼ÓÖ°Òµ´óÀඨÒå  | 
| # @change: "2014-10-22 17:30" xmnathan µ÷Õû¿ª·þ»î¶¯ÅÅÐаñ¼Ç¼Ãû´Î¸öÊý  | 
| # @change: "2014-11-11 16:30" xmnathan Ôö¼Ó³äÖµÅÅÐаñ  | 
| # @change: "2014-12-17 14:50" ljd Ôö¼ÓͼÌÚÅÅÐаñ  | 
| #---------------------------------------------------------------------  | 
| """Version = 2014-12-17 14:50"""  | 
| #---------------------------------------------------------------------  | 
| import os  | 
| import IPY_GameServer  | 
| import ShareDefine  | 
| #---------------------------------------------------------------------  | 
| #GameServer·þÎñÆ÷²¿Êð֮ǰÇë¸ù¾ÝĿ¼ʵ¼ÊÇé¿ö¸ü¸ÄÏÂÁвÎÊý  | 
| #GameServerPath Îªµ±Ç°µÄGameServerµÄ¸ùĿ¼  | 
| GameServerPath = os.getcwd() + "\\"  | 
| ScriptPath = GameServerPath + "Script"  | 
|   | 
| #---------------------------------------------------------------------  | 
|   | 
| #---------------------------------------------------------------------  | 
| ## ³õʼ»¯½Å±¾  | 
| # @param ÎÞ  | 
| # @return ·µ»ØÖµÎÞÒâÒå  | 
| # @remarks ³õʼ»¯½Å±¾  | 
| def InitPython():  | 
|     global GameServerPath  | 
|     ScriptPath = GameServerPath+"Script"  | 
|   | 
| #---------------------------------------------------------------------  | 
| ## »ñµÃ½Å±¾Â·¾¶  | 
| # @param ÎÞ  | 
| # @return ·µ»ØÖµ, ½Å±¾Â·¾¶  | 
| # @remarks »ñµÃ½Å±¾Â·¾¶  | 
| def GetAppPath():  | 
|     return GameServerPath  | 
|   | 
| ##»ñµÃDB·¾¶  | 
| # @param ÎÞ²ÎÊý  | 
| # @return ·µ»ØÖµµ±Ç°µÄDB·¾¶  | 
| def GetDBPath():  | 
|     return GameServerPath.split("CoreServerGroup")[0]+ "db\\PyMongoDataServer\\"  | 
|   | 
| def GetServerRootPath():  | 
|     ##»ñÈ¡·þÎñÆ÷¸ù·¾¶  | 
|     return GameServerPath.split("CoreServerGroup")[0]  | 
|   | 
| #------Ö÷½ÇÏà¹ØÉ趨  | 
| #Ö÷½Ç·¢ÐÍÁбí [Ö°Òµ:·¢ÐÍÁбí]  | 
| Def_RoleHair = {  | 
|                  ShareDefine.PlayerJob_Warrior : [  | 
|                      [10000], #ÄÐ  | 
|                      [10000], #Å®  | 
|                                                  ],   | 
|   | 
|                 ShareDefine.PlayerJob_Wizard : [  | 
|                      [10001], #ÄÐ  | 
|                      [10001], #Å®  | 
|                                                  ],   | 
|   | 
|                 ShareDefine.PlayerJob_Assassin : [  | 
|                      [10002], #ÄÐ  | 
|                      [10002], #Å®  | 
|                                                  ],  | 
|   | 
|                 ShareDefine.PlayerJob_Chaplain : [  | 
|                      [10003], #ÄÐ  | 
|                      [10003], #Å®  | 
|                                                  ],    | 
|   | 
|                 ShareDefine.PlayerJob_Knight : [  | 
|                      [10008], #ÄÐ  | 
|                      [10008], #Å®  | 
|                                                  ],    | 
|   | 
|                 ShareDefine.PlayerJob_ForceUser : [  | 
|                      [10009], #ÄÐ  | 
|                      [10009], #Å®  | 
|                                                  ],    | 
|   | 
|                 ShareDefine.PlayerJob_BowMaster : [  | 
|                      [10010], #ÄÐ  | 
|                      [10010], #Å®  | 
|                                                  ],    | 
|                 }  | 
|   | 
| #Ö÷½ÇÁ³ÐÍÁбí [Ö°Òµ:Á³ÐÍÁбí]  | 
| Def_RoleFace = {   | 
|                 ShareDefine.PlayerJob_Warrior : [  | 
|                      [10004], #ÄÐ  | 
|                      [10004], #Å®  | 
|                                                 ],  | 
|               | 
|                 ShareDefine.PlayerJob_Wizard : [  | 
|                      [10005], #ÄÐ  | 
|                      [10005], #Å®  | 
|                                                ],   | 
|   | 
|                 ShareDefine.PlayerJob_Assassin : [  | 
|                      [10006], #ÄÐ  | 
|                      [10006], #Å®  | 
|                                                  ],  | 
|   | 
|                 ShareDefine.PlayerJob_Chaplain : [  | 
|                      [10007], #ÄÐ  | 
|                      [10007], #Å®  | 
|                                                  ],  | 
|                   | 
|                 ShareDefine.PlayerJob_Knight : [  | 
|                      [10011], #ÄÐ  | 
|                      [10011], #Å®  | 
|                                                  ],    | 
|   | 
|                 ShareDefine.PlayerJob_ForceUser : [  | 
|                      [10012], #ÄÐ  | 
|                      [10012], #Å®  | 
|                                                  ],    | 
|   | 
|                 ShareDefine.PlayerJob_BowMaster : [  | 
|                      [10013], #ÄÐ  | 
|                      [10013], #Å®  | 
|                                                  ],    | 
|                 }  | 
| #Íæ¼Òʱ¼äµÄ¼Ç¼¸ñʽ  | 
| TYPE_Time_Format = "%Y-%m-%d %H:%M:%S"  | 
|   | 
| #ÄêÔÂÈÕ¸ñʽ  | 
| TYPE_Time_YmdFormat = "%Y-%m-%d"  | 
|   | 
| #ÊýÖµÉÏÏÞ(20ÒÚ)  | 
| Def_UpperLimit_DWord = ShareDefine.Def_UpperLimit_DWord  | 
| #Ö§³Ö³¬20ÒÚÊýÖµµÄÊýÖµµãµ¥Î»ÊýÖµ, 1ÒÚ  | 
| Def_PerPointValue = ShareDefine.Def_PerPointValue  | 
|   | 
| #²é¿´FBÏÔʾ½çÃæ´¦Àí¼ä¸ô  | 
| Def_Show_Fb_Event_Tick = 3000  | 
|   | 
| #ÇëÇóÇå¿Õʱ¼ä(120000Ãë)(2·ÖÖÓ)  | 
| Def_EventClearTime = 120000  | 
|   | 
| #Íæ¼ÒÀ뿪ºó¸±±¾±£´æÊ±¼ä  | 
| Def_EmptyFBKeepTime = 5 * 60 * 1000     #5·ÖÖÓ  | 
|   | 
| #ÏÂÏߺóÍ˳ö¶ÓÎé±£»¤Ê±³¤, Í¬¸±±¾µÄ¹Ø±Õ±£»¤Ê±³¤  | 
| Def_CountdownLeaveTeamTime = 5 * 60 * 1000     #5·ÖÖÓ  | 
|   | 
| #×é¶ÓÔÚÏß»ØÓ¦¼ä¸ô  | 
| Def_Team_OnlineConfirmTick = 120000  | 
|   | 
| #¶ÓÎé×îСÈËÊý  | 
| Def_Team_MinPlayerCount = 1  | 
|   | 
| #¶ÓÎé×î´óÈËÊý  | 
| Def_Team_MaxPlayerCount = ShareDefine.Def_Team_MaxPlayerCount  | 
|   | 
| #À뿪¶ÓÎé¹ã²¥¿Í»§¶ËÐÅÏ¢  | 
| Def_Team_Sync_LeaveMsg_Self = 0           #×Ô¼ºÀ뿪  | 
| Def_Team_Sync_LeaveMsg_OtherKick = 1      #±»ÈËÌß³ö  | 
|   | 
| #Íæ¼ÒÔÚÏßÏìӦʱ¼ä  | 
| #ÏìÓ¦´íÎóʱ¼ä×î´óÏÞÖÆ´ÎÊý  | 
| Def_PlayerOnLineReply_ErrorCount = 100       #100  | 
| #ÔÊÐíÏìÓ¦ÑÓ³Ù¼ä¸ôʱ¼ä,5Ãë  | 
| Def_PlayerOnLineReply_NoteTick = 5000       #5000  | 
| #ÏìÓ¦ÑÓ³Ù×î´ó¼ä¸ôʱ¼ä,10Ãë  | 
| Def_PlayerOnLineReply_MaxTick = 30000        #30000  | 
| #¿Í»§¶Ë·ÅËÍÏìÓ¦·â°ü¼ä¸ô,30Ãë  | 
| Def_PlayerOnLineReply_ClientReply = 30000    #30000  | 
| #ÔÚÏß»ØÓ¦´íÎóʱ¼ä  | 
| Def_PlayerOnLineReply_Error_Tick = Def_PlayerOnLineReply_ClientReply * 2 #Def_PlayerOnLineReply_ClientReply * 2   | 
|   | 
| #---------ïÚ³µÏà¹Ø  | 
| #ïÚ³µÏûʧʱ¼ä,5·ÖÖÓ  | 
| Def_PlayerTruckLogoffTick = 1000 * 60 * 5    | 
|   | 
| #---------¼Ò×åÏà¹Ø  | 
| Def_PlayerGetFamilyInfoTick = 1000      #Íæ¼ÒÇëÇóµÃµ½¼Ò×åÐÅÏ¢µÄʱ¼ä(1Ãë)  | 
| #¼ÓÈë¼Ò×åµÄ×îСµÈ¼¶  | 
| Def_Family_JionMinLV = 0  | 
| #·þÎñÆ÷¼Ò×å×î´óÊýÁ¿  | 
| Def_Family_MaxCnt = 2000  | 
| #¼Ò×å×î´óµÈ¼¶  | 
| Def_Family_MaxLv = 10  | 
|   | 
| #ɾ³ýNÌìǰÉêÇë¼ÓÈë¼Ò×åµÄÐÅÏ¢  | 
| Def_Family_ClearRequestAddNote_Day = 3  | 
|   | 
| #¼Ò×åÅäÖñíË÷Òý  | 
| (  | 
| Def_FamilySetting_MaxMemberCnt,       #×î´ó³ÉÔ±Êý  | 
| Def_FamilySetting_MaxHuFaCnt  ,       #×î´ó»¤·¨Êý  | 
| Def_FamilySetting_MaxZhangLaoCnt,     #×î´ó³¤ÀÏÊý  | 
| Def_FamilySetting_LvUpCost,           #¼Ò×åÉý¼¶ÐèÒªÏûºÄÉý¼¶ËùÐè×ʽð  | 
| Def_FamilySetting_WeekMissionMoneyMax,#ÿÖÜÈÎÎñ×î´ó¿É»ñµÃÏÉÃË×ʽð  | 
| Def_FamilySetting_BossFBCnt,          #BOSS¸±±¾´ÎÊý  | 
| Def_FamilySetting_Max,                #±í³¤¶ÈÒì³£(±ØÐë·Å×îºó)  | 
| ) = range(0, 6 + 1)  | 
| FamilySettingDict = {  | 
|                      Def_FamilySetting_MaxMemberCnt:'MemberCnt',  | 
|                      Def_FamilySetting_MaxHuFaCnt:'DeputyLeaderCnt',  | 
|                      Def_FamilySetting_MaxZhangLaoCnt:'EliteCnt',  | 
|                      Def_FamilySetting_LvUpCost:'NeedMoney',  | 
|                      Def_FamilySetting_WeekMissionMoneyMax:'WeekMissionMoneyMax',  | 
|                      Def_FamilySetting_BossFBCnt:'BossFBCnt',  | 
|                      }  | 
|   | 
| #¼Ò×å³ÉÔ±½Ó¿Ú¶ÔÓ¦¼Ò×åÅäÖñíË÷Òý  | 
| Def_FamilyPowLvChangeFamilySettingDict ={  | 
|                                          IPY_GameServer.fmlMember:Def_FamilySetting_MaxMemberCnt,  | 
|                                          IPY_GameServer.fmlCounsellor:Def_FamilySetting_MaxZhangLaoCnt,  | 
|                                          IPY_GameServer.fmlViceLeader:Def_FamilySetting_MaxHuFaCnt,  | 
|                                          }  | 
|   | 
| #¼Ò×åְλ¶ÔӦȨÏÞ±í  | 
| #===============================================================================  | 
| # enum    TFamilyMemberLV  | 
| # {  | 
| #    fmlMember = 0,      ///<ÆÕͨ³ÉÔ±  | 
| #    fmlCounsellor,      ///<³¤ÀÏ  | 
| #    fmlViceLeader,      ///<»¤·¨  | 
| #    fmlLeader,          ///<×峤  | 
| # };  | 
| #===============================================================================  | 
| #{¼Ò×åµÈ¼¶:[Def_PurviewDictKey_]}  | 
| Def_Family_MemberLVList =[  | 
|                           IPY_GameServer.fmlLeader,  | 
|                           IPY_GameServer.fmlViceLeader,  | 
|                           IPY_GameServer.fmlCounsellor,  | 
|                           IPY_GameServer.fmlMember,  | 
|                           ]  | 
|                             | 
| (  | 
| Def_PurviewDictKey_CanCall,               #ÊÇ·ñÓÐÕÐÈËȨÏÞ  | 
| Def_PurviewDictKey_CanChangeFamilyJob,    #ÊÇ·ñ¿ÉÒÔ±ä¸üְλ  | 
| Def_PurviewDictKey_CanBroadcast,          #ÊÇ·ñ¿ÉÒÔ·¢²¼¹«¸æ  | 
| Def_PurviewDictKey_CanFamilyLvUp,         #ÊÇ·ñ¿ÉÒÔÉý¼¶¼Ò×å  | 
| Def_PurviewDictKey_CanClearPack,          #ÊÇ·ñ¿ÉÒÔÇåÀí±¦¿â  | 
| Def_PurviewDictKey_CanKickMember,         #ÊÇ·ñ¿ÉÒÔÌß³ö³ÉÔ±  | 
| Def_PurviewDictKey_CanOpenBoss,           #ÊÇ·ñ¿ÉÒÔ¿ªÆôbossÕ½  | 
| Def_PurviewDictKey_CanSendRedPacket,      #ÊÇ·ñ¿ÉÒÔ¿ªÆôºì°ü  | 
| ) = range(0, 8)  | 
|   | 
| #²é¿´ËùÓмÒ×åµÄʱºò, Ò»Ò³ÄÜÏÔʾ¶àÉÙ¸ö  | 
| Def_ViewAllFamilyPageCount = 15  | 
| #---------------------------------------------------------------------  | 
|   | 
| #ÖØ¶ÁµÄÎļþºó׺ÃûÁÐ±í   | 
| TYPE_Load_Module_Ext = ["py", "pyc"]  | 
|   | 
| #´´½¨¼Ò×å,×î´ó×Ö·ûÊý  | 
| Def_CreatFamily_MaxStr = 33  | 
| #´´½¨½ÇÉ«,×î´ó×Ö·ûÊý£¬ UTF8ÊÇ3¸ö×Ö½Ú ×îÉÙ3¸ö×Öĸ  ×î´ó5ÖÐÎļÓ1¸ö×Öĸ  | 
| Def_CreatRole_MaxStr = 16  | 
| Def_CreatRole_MinStr = 3  | 
|   | 
|   | 
| #---------------------------------------------------------------------  | 
| #ÅÅÐаæ(1Ãë)  | 
| Def_PlayerBillboard_Tick = 1000  | 
| #---------------------------------------------------------------------  | 
| #×î´ó±¶ÂÊ  | 
| Def_MaxRateValue = ShareDefine.Def_MaxRateValue  | 
| #---------------------------------------------------------------------  | 
| #GM»î¶¯,ÌØÊâдËÀID,²»ÄÜÓëÈÎÎñID³åÍ»  | 
| #ÌØÊâ»î¶¯,È«·þ¾Ñé±¶ÂÊ  | 
| Def_GY_GM_Game_DoubleExp = 123456  | 
| #ÌØÊâ»î¶¯,È«·þµôÂä±¶ÂÊ  | 
| Def_GY_GM_Game_DropRate = 123457  | 
|   | 
| #ÌØÊâ»î¶¯,È«·þ¹«¸æ  | 
| Def_GY_GM_Game_Broadcast = 122222  | 
|   | 
| #¹«¸æ×î´ó³¤¶È  | 
| Def_GY_GM_Game_Broadcast_MaxLen = 200  | 
| #---------------------------------------------------------------------  | 
| TYPE_GetActivePlayerCount = 0     #²é¿´µØÍ¼µÄ»î¶¯ÈËÊý  | 
| TYPE_SendTimeToMapServer = 1      #ͬ²½µØÍ¼·þÎñÆ÷ʱ¼ä  | 
| TYPE_SendServerState = 2          #»Ø±¨·þÎñÆ÷״̬  | 
| TYPE_ReadDateBaseGM = 3           #¶¨Ê±¶ÁÈ¡Êý¾Ý¿âÖÐÐèÒªÖ´ÐеÄGMÃüÁî  | 
| TYPE_ImpeachTick = 4              #¾Ù±¨¼ä¸ô30Ãë  | 
| TYPE_WatchBillboardPrize = 5      #²é¿´½±ÀøÅÅÐаæ1Ãë  | 
| TYPE_SendMsg_RouteServer = 6      #·¢ËÍÏûÏ¢µ½RouteServer  | 
| TYPE_EvenByTime = 7               #ÓÎϷʼþ´¦Àí  | 
| TYPE_ActionOpenAndClose = 8       #»î¶¯¿ªÆôºÍ¹Ø±Õ¼ä¸ô  | 
| TYPE_ActionNotify = 9             #¹Ì¶¨ÊÀ½ç¹ã²¥¼ä¸ô(±ØÐë1·ÖÖÓ)  | 
| TYPE_ActionGoOn = 10              #ÖØÆô·þÎñÆ÷»î¶¯¿ªÆô  | 
| TYPE_FamilyBattleStart = 11       #¼Ò×åÕù°ÔÈü¿ªÆô¼ä¸ô  | 
| TYPE_MapServerRunningState = 12   #µØÍ¼·þÎñÆ÷״̬´¦Àí(³¬¹ýʱ¼äδÏìÓ¦»ÒµÆ)  | 
| TYPE_RefreshSceneTeam = 13        #ˢг¡¾°¶ÓÎé  | 
| TYPE_ReloadScript = 14            #½Å±¾Reload¼ä¸ô  | 
| TYPE_FamilyTechProcess = 15       #¼Ò×å¿Æ¼¼Ñ»·´¦Àí¼ä¸ô  | 
| TYPE_LeaderImpeachTick = 16  #°ïÖ÷µ¯ÛÀÑ»·µ÷Óà  | 
| TYPE_MSBattleStart = 17       #¿ç·þÈü¿ªÆô¼ä¸ô  | 
| TYPE_SpanServerMatching = 18  #ԤѡÌÔÌÈüÆ¥Åä¼ä¸ô  | 
| TYPE_SendDBCommandTick = 19  #²Ù×÷DB×î´ó»ØÓ¦¼ä¸ô  | 
| TYPE_MergeWarPreMatching = 20  #ԤѡÌÔÌÈüÆ¥Åä¼ä¸ô  | 
| TYPE_ActionOpenAndCloseByDayCount = 21  # ´¦Àí¸ù¾Ý¿ª·þÌìÊý»î¶¯¿ªÆôºÍ¹Ø±Õ  | 
| TYPE_ActionOpenAndCloseByDayCountGoOn = 22  # ÖØÆô·þÎñÆ÷»î¶¯¿ªÆô´¦Àí¸ù¾Ý¿ª·þÌìÊý»î¶¯¿ªÆôºÍ¹Ø±Õ  | 
| TYPE_ViewGameWallowInfoTick = 23  # ²éѯ·À³ÁÃÔÐÅϢʱ¼ä¼ä¸ô  | 
| TYPE_MergeBroadcastTick = 24  # ¿ç·þ¹ã²¥Ê±ÖÓµ÷Óüä¸ô  | 
| TYPE_NewYearAnimalProcessTick = 25  # ÄêÊÞ½±ÀøÊ±¼ä´¦Àí¼ä¸ô  | 
| TYPE_WorldBossOnlineCntTick = 26  # ¶¨Ê±ÊÀ½çBOSSË¢ÐÂʱ¼ä¼ÆËã ÔÚÏßÍæ¼ÒÊýÁ¿  | 
| TYPE_TimeShopProcessTick = 27  # ¶¨Ê±É̵괦Àí¼ä¸ô  | 
| TYPE_WorldBossProcessTick = 28  # BOSSÖØÉú¼ì²é¼ä¸ô  | 
|   | 
| TYPE_Tick_Time = [  | 
|                   1000 * 60 * 3 ,  #0 ²é¿´µØÍ¼µÄ»î¶¯ÈËÊý 3·ÖÖÓ/´Î   | 
|                   1000 * 60     ,  #1 Í¬²½µØÍ¼·þÎñÆ÷ʱ¼ä 1·ÖÖÓ/´Î  | 
|                   1000 * 60 * 5 ,  #2 »Ø±¨·þÎñÆ÷״̬ , 5·ÖÖÓ/´Î  | 
|                   1000 * 30     ,  #3 ¶¨Ê±¶ÁÈ¡Êý¾Ý¿âÖÐÐèÒªÖ´ÐеÄGMÃüÁî   30s/´Î  | 
|                   1000 * 30     ,  #4 ¾Ù±¨¼ä¸ô30Ãë  | 
|                   1000          ,  #5 ²éѯ½±ÀøÅÅÐÐ°æ  | 
|                   1000 * 30     ,  #6 ·¢ËÍÏûÏ¢µ½RouteServer  | 
|                   1000 * 6      ,  #7 ÓÎϷʼþ´¦Àí  | 
|                   1000 * 5      ,  #8 »î¶¯¿ªÆôºÍ¹Ø±Õ¼ä¸ô 5Ãë/´Î  | 
|                   1000 * 60     ,  #9 ¹Ì¶¨ÊÀ½ç¹ã²¥¼ä¸ô(±ØÐë1·ÖÖÓ)  | 
|                   1000 * 60     ,  #10 ÖØÆô·þÎñÆ÷»î¶¯¿ªÆô  | 
|                   1000 * 60     ,  #11 ¼Ò×åÕù°ÔÈü¿ªÆô¼ä¸ô  | 
|                   1000 * 60     ,  #12 µØÍ¼·þÎñÆ÷״̬´¦Àí(³¬¹ýʱ¼äδÏìÓ¦»ÒµÆ)  | 
|                   1000 * 60 * 5 ,  #13 Ë¢ÐÂÈ«ÊÀ½çÖеĶÓÎéÊý  | 
|                   1000 * 2      ,  #14 ½Å±¾Reload¼ä¸ô  | 
|                   1000 * 5      ,  #15 ¼Ò×å¿Æ¼¼Ñ»·´¦Àí¼ä¸ô  | 
|                   1000 * 60     ,  #16 °ïÖ÷µ¯ÛÀÑ»·µ÷Óà  | 
|                   1000 * 60     ,  #17 ¿ç·þÈü¿ªÆô¼ä¸ô  | 
|                   1000 * 2      ,  #18 Ô¤Ñ¡ÌÔÌÈüÆ¥Åä¼ä¸ô  | 
|                   1000 * 30     ,  #19 ²Ù×÷DB×î´ó»ØÓ¦¼ä¸ô  | 
|                   1000 * 2      ,  #20 Ô¤Ñ¡ÌÔÌÈüÆ¥Åä¼ä¸ô  | 
|                   1000 * 5      ,  #21 ´¦Àí¸ù¾Ý¿ª·þÌìÊý»î¶¯¿ªÆôºÍ¹Ø±Õ  | 
|                   1000 * 60     ,  #22 ´¦Àí¸ù¾Ý¿ª·þÌìÊý»î¶¯¿ªÆôºÍ¹Ø±Õ  | 
|                   1000 * 2      ,  #23 ²éѯ·À³ÁÃÔÐÅϢʱ¼ä¼ä¸ô  | 
|                   1000 * 25     ,  #24 ¿ç·þ¹ã²¥Ê±ÖÓµ÷Óüä¸ô  | 
|                   1000 * 60     ,  #25 ÄêÊÞ½±ÀøÊ±¼ä´¦Àí¼ä¸ô  | 
|                   1000 * 60 * 5     ,  #26 ¶¨Ê±ÊÀ½çBOSSË¢ÐÂʱ¼ä¼ÆËã ÔÚÏßÍæ¼ÒÊýÁ¿  | 
|                   1000 * 60     ,  #27 ¶¨Ê±É̵괦Àí¼ä¸ô  | 
|                   1000 * 1     ,  #28 BOSSÖØÉú¼ì²é¼ä¸ô  | 
|                  ]  | 
|   | 
| TYPE_Tick_Count = len(TYPE_Tick_Time)  | 
|   | 
| #µØÍ¼·þÎñÆ÷¶à¾ÃδÏìÓ¦»Òµô  | 
| Def_Tick_MapServer_MssNone = 1000 * 60 * 5  | 
|   | 
| #---------------------------------------------------------------------  | 
| #ÊÀ½ç·þÎñÆ÷×ÖµäKey¶¨Òå  | 
| Def_WorldKey_ProcessMinute = 'ProcessMinute'                 #ÿ·ÖÖÓ´¦Àí£¬¼Ç¼ÉÏÒ»´Î´¦ÀíµÄ·ÖÖÓ  | 
| Def_WorldKey_SavePlayer = 'SavePlayer'                       #±£´æÍæ¼ÒµÄÊôÐÔ½øÊý¾Ý¿â(23:50´æ·þÎñÆ÷ÅÅÃûǰ50µÄÍæ¼ÒÊý¾Ý)  | 
| Def_WorldKey_ExamType = 'Def_WorldKey_ExamType'              #´ðÌâÀàÐÍ  | 
| Def_WorldKey_ExamStep = 'Def_WorldKey_ExamStep'              #´ðÌâ²½Öè  | 
| Def_WorldKey_ExamStepTick = 'Def_WorldKey_ExamStepTick'      #´ðÌâ²½ÖèTick  | 
| Def_WorldKey_ExamBeginTick = 'Def_WorldKey_ExamBeginTick'    #´ðÌ⿪ʼʱ¼ä´Á  | 
| Def_WorldKey_ExamSendSubjectCnt = 'ExamSendSubjectCnt'       #µ±Ç°·¢Ìâ×ÜÊý  | 
| Def_WorldKey_BossIsAlive = 'BossIsAlive_%s'                  #bossÊÇ·ñ»î×Å  | 
| Def_WorldKey_IsGameWorldInit = 'IsGameWorldInit'             #GameWoldÊÇ·ñ³õʼ»¯Íê³É  | 
| Def_WorldKey_OperationActionState = "State_%s"               #ÔËÓª»î¶¯×´Ì¬£¬²ÎÊýΪ(ÔËÓª»î¶¯Ãû)  | 
| Def_WorldKey_BossRebornNeedPoint = "BossRebornNeedPoint"     #boss¸´»îÐèÒª×ܵãÊý  | 
| Def_WorldKey_CrossBossIsAlive = 'CrossBossIsAlive_%s_%s'     #¿ç·þbossÊÇ·ñ»î×Å£¬²ÎÊý(zoneID, bossID)  | 
| Def_WorldKey_GameWorldInitOK = 'GameWorldInitOK'             #GameWoldÊÇ·ñ³õʼ»¯Íê³ÉOK  | 
| Def_WorldKey_CrossPKZoneSeasonID = "CrossPKZoneSeasonID_%s"  #¿ç·þPKÈüÇø¶ÔÓ¦Èü¼¾£¬¿ç·þ·þÎñÆ÷¿ØÖÆ£¬²ÎÊý£¨zoneID£©  | 
| Def_WorldKey_CrossPKZoneSeasonState = "CrossPKZoneSeasonState_%s" #¿ç·þPKÈüÇøÈü¼¾×´Ì¬£¬¿ç·þ·þÎñÆ÷¿ØÖÆ£¬²ÎÊý£¨zoneID£©0-먦Æô£¬1-¿ªÆôÖУ¬2-ÒѽáÊø  | 
| Def_WorldKey_CrossPKBillboardSyncTick = "CrossPKBillboardSyncTick_%s_%s" #¿ç·þPK±¾Èü¼¾ÅÅÐаñͬ²½tick£¬²ÎÊý£¨zoneID, seasonID£©  | 
| Def_WorldKey_CrossSetPlayerAttrTick = "CrossSetPlayerAttrTick" #ͬ²½ÉèÖÿç·þÍæ¼ÒÊôÐÔÖµtick  | 
| #---------------------------------------------------------------------  | 
| #¸öÈËʱ¼ä¼ä¸ô  | 
| TYPE_Player_Tick_Requestkey = 0                       # Íæ¼ÒÇëÇó´¦Àí¼ä¸ô  | 
| TYPE_Player_Tick_ViewFamilyVSInfoKey = 1              # ²éѯ¼Ò×åÕù°ÔÈü±¨Ãû±í  | 
| TYPE_Player_Tick_ViewFamilyWarRaceInfoKey = 2         # ²éѯȡµÃ¼Ò×åÅÅλսÐÅÏ¢  | 
| TYPE_Player_Tick_QueryTeamInfoKey = 3                 # ²éѯ³¡¾°¶ÓÎé  | 
| TYPE_Player_Tick_LvUpFamilyTechKey = 4                # °ï»á¿Æ¼¼Éý¼¶  | 
| TYPE_Player_Tick_ViewVsRoomKey = 5                    # ²éѯ¾º¼¼³¡ÐÅÏ¢  | 
| TYPE_Player_Tick_ViewBillboardRange = 6               # ²éѯ²¿·Ö°ñµ¥µÄ·¶Î§  | 
| TYPE_Player_Tick_AddFamilyReply = 7                   # ¼ÓÈë¼Ò×åÉóºËÇé¿ö  | 
| TYPE_Player_Tick_QueryFamilySacrific = 8              # ²éѯ¼Ò×åÉÏÏãÇé¿ö  | 
| TYPE_Player_Tick_MSBattlePlayerTick = 9               # ²é¿´¿ç·þÈü²ÎÈüÈËÔ±ÐÅÏ¢  | 
| TYPE_Player_Tick_MergeRegister = 10                   # ¿ç·þÈü±¨Ãû(ÉÏ´«Êý¾Ý)/²éѯÕ˺Åʱ¼ä¼ä¸ô  | 
| TYPE_Player_Tick_MSBattleViewTick = 11                # ²é¿´¿ç·þÈü¶ÔÕ½ÐÅÏ¢  | 
| TYPE_Player_Tick_MSBattlePledgeTick = 12              # ²é¿´¿ç·þÈüѺעÐÅÏ¢  | 
| TYPE_Player_Tick_Def_ViewUniversalGameRec = 13        # ²éÑ¯Íæ¼ÒÐÅϢͨÓüǼ  | 
| Def_PlayerKey_QueryPlayerNewerKingKey = 14            # ²éѯ°Ôµ¶ÐÂÈËÍõ»î¶¯ÐÅÏ¢¼ä¸ô  | 
| TYPE_Player_Tick_SyncClientTick = 15                  # Í¬²½¿Í»§¶Ëʱ¼ä  | 
| TYPE_Player_Tick_QueryMapFestivalNPCCnt = 16          # ²éѯµØÍ¼»î¶¯¹Ö¸öÊý  | 
| TYPE_Player_Tick_QueryRecommendNearbyKey = 17         # ²éÑ¯ÍÆ¼ö×é¶ÓµÄ¸½½üÍæ¼Ò  | 
| TYPE_Player_Tick_EnterFBTeamAskTick = 18              # ÇëÇó½øÈë/Æ¥Åä×é¶Ó¸±±¾¼ä¸ô  | 
|   | 
| TYPE_Player_Tick_Time = [  | 
|                          1000 * 60 * 10,     #0 Íæ¼ÒÇëÇó´¦Àí¼ä¸ô 10Ãë´¦ÀíÒ»´Î  | 
|                          1000 * 1,      #1 ²éѯ¼Ò×åÕù°ÔÈü±¨Ãû±í  | 
|                          1000 * 1,      #2 ²éѯȡµÃ¼Ò×åÅÅλսÐÅÏ¢  | 
|                          1000 * 1,      #3 ²éѯ³¡¾°¶ÓÎé, ²ß»®ÒªÇó1Ãë  | 
|                          1000 * 10,     #4 °ï»á¿Æ¼¼Éý¼¶  | 
|                          1000 * 1,      #5 ²éѯ¾º¼¼³¡ÐÅÏ¢  | 
|                          1000 * 1,      #6 ²éѯ²¿·Ö°ñµ¥µÄ·¶Î§  | 
|                          1000 * 2,      #7 ¼ÓÈë¼Ò×åÉóºËÇé¿ö  | 
|                          1000 * 1,      #8 ²éѯ¼Ò×åÉÏÏãÇé¿ö  | 
|                          1000 * 1,      #9 ²é¿´¿ç·þÈü²ÎÈüÈËÔ±ÐÅÏ¢  | 
|                          1000 * 5,      #10 ¿ç·þÈü±¨Ãû(ÉÏ´«Êý¾Ý)/²éѯÕ˺Åʱ¼ä¼ä¸ô  | 
|                          1000 * 1,      #11 ²é¿´¿ç·þÈü¶ÔÕ½ÐÅÏ¢  | 
|                          1000 * 1,      #12 ²é¿´¿ç·þÈüѺעÐÅÏ¢  | 
|                          1000 * 1,      #13 ²éÑ¯Íæ¼ÒÐÅϢͨÓüǼ  | 
|                          1000 * 1,      #14 ²éѯ°Ôµ¶ÐÂÈËÍõ»î¶¯ÐÅÏ¢¼ä¸ô  | 
|                          1000 * 60 * 10,      #15 Í¬²½¿Í»§¶Ëʱ¼ä  | 
|                          1000 * 10,     #16 ²éѯµØÍ¼»î¶¯¹Ö¸öÊý  | 
|                          1000 * 1,      #17 ²éÑ¯ÍÆ¼ö×é¶ÓµÄ¸½½üÍæ¼Ò, ²ß»®ÒªÇó1Ãë  | 
|                          1000 * 5,      #18 ÇëÇó½øÈë/Æ¥Åä×é¶Ó¸±±¾¼ä¸ô  | 
|                          ]  | 
|   | 
| #------------------------------------------------------------------------------   | 
| #¸öÈ˱£´æ¼ä¸ô×Öµä  | 
| Def_PlayerKey_Save = 'SavePlayerData'  # ±£´æÍæ¼Ò×Öµä  | 
|   | 
| Def_PlayerKey_Save_Tick_Default = 1000 * 60 * 60 * 5           #ĬÈÏΪ5Сʱ  | 
| Def_PlayerKey_Save_Tick = {  | 
|                            1: 1000 * 60 * 60 * 1 ,     #1000ÈË1Сʱ±£´æÒ»´Î  | 
|                            2: 1000 * 60 * 60 * 2 ,     #2000ÈË2Сʱ±£´æÒ»´Î  | 
|                            3: 1000 * 60 * 60 * 3 ,     #3000ÈË3Сʱ±£´æÒ»´Î  | 
|                            4: 1000 * 60 * 60 * 4 ,     #4000ÈË4Сʱ±£´æÒ»´Î  | 
|                            5: 1000 * 60 * 60 * 5 ,     #5000ÈË5Сʱ±£´æÒ»´Î  | 
|                            }  | 
|   | 
| Def_PlayerKey_PrivateTalk = 'PrivateTalk'          #×·×ÙÃÜÆµ(1:¿ªÆô 0:¹Ø±Õ)  | 
| #---------------------------------------------------------------------  | 
| #GM¹¤¾ß»Ø¸´Öµ  | 
| Def_GMTool_Succeed = 1  | 
| Def_GMTool_Fail = 250  | 
| #---------------------------------------------------------------------  | 
| #ÅÅÐа浥ҳ×î´óÊýÁ¿  | 
| Def_Billboard_MaxCnt = 100  | 
| #---------------------------------------------------------------------  | 
| #ÇëÇóÀàÐÍ(ÐèÒªºÍMapServerÖеÄÒ»ÖÂ)  | 
| Def_QueryType_Count = 55  | 
| (  | 
| queryType_sqtPlayer,                  #²éÑ¯Íæ¼Ò  | 
| queryType_sqtFamilyWar,               #¼Ò×åÕ½  | 
| queryType_sqtTruck,                   #æô³µID  | 
| queryType_sqtPlayerByName,            #ÓÃÃû×Ö²éÑ¯Íæ¼Ò  | 
| queryType_sqtPlayerByAccID,           #ÓÃAccID²éÑ¯Íæ¼Ò  | 
| queryType_sqtTeamCount,               #²éѯ¶ÓÎé³ÉÔ±ÊýÄ¿  | 
| queryType_sqtMission_2010031,         #²éѯÈÎÎñ  | 
| queryType_sqtDataServer_GMCommand,    #ÍÑ»ú¹¤¾ß, ÊÀ½ç·þÎñÆ÷ÇëÇóµØÍ¼·þÎñÆ÷ÐÅÏ¢  | 
| queryType_FamilyBattle,               #ÇëÇó¼Ò×åÕù°ÔÕ½  | 
| queryType_sqtSend_Family_Item,        #ÇëÇó¼Ò×åËÍ×ʽð½±Àø  | 
| queryType_sqtRefresh_Family_Info,     #ÇëÇóÍæ¼ÒµÇ½ÊÇ·ñ¼Ò×峤  | 
| queryType_ViewFamilyBattle ,          #ÇëÇó²é¿´¼Ò×åÕù°ÔÈü¶ÔÕ½±í  | 
| queryType_KingXiHongMing ,            #¹úÍõÏ´ºìÃû  | 
| queryType_CheckNameHasDirty,          #¼ì²éÃû×ÖÖÐÊÇ·ñÓÐÔà×Ö  | 
| queryType_DelJionFamilyBattleItem,    #ɾ³ý±¨Ãû¼Ò×åÕù°ÔÈüµÀ¾ß  | 
| queryType_GoldPlatformBuyGold,        #Ôª±¦½»Òׯ½Ì¨, Éú³ÉÇó¹ºÔª±¦¶©µ¥  | 
| queryType_GoldPlatformSaleGold,       #Ôª±¦½»Òׯ½Ì¨, ³öÊÛÔª±¦  | 
| queryType_GoldPlatUnclaimedGold,      #Ôª±¦½»Òׯ½Ì¨, ÁìȡδÁìȡԪ±¦ÐÅÏ¢  | 
| queryType_GoldPlatOverdueGold,        #Ôª±¦½»Òׯ½Ì¨, ÁìÈ¡¹ýÆÚ¶©µ¥Òø×Ó  | 
| queryType_SCQDBAddBillboardPoint,     #ɳ³¡Çïµã±ø, ÀÛ¼ÓÍæ¼ÒÅÅÐаñ»ý·Ö  | 
| queryType_SCQDBGiveReword,            #ɳ³¡Çïµã±ø, ÉêÇëÁìÈ¡½±Àø  | 
| queryType_AcceptOrRefuseFamilywar,    #½ÓÊÜ»òÕ߾ܾø¼Ò×åÕ½  | 
| queryType_JionExam,                   #±¨Ãû´ðÌâ  | 
| queryType_GmOpenFB,                   #GM¿ªÆô¸±±¾  | 
| queryType_ViewVsRoom,                 #²é¿´¾º¼¼³¡  | 
| queryType_AddFamilyAction,            #¼Ò×åÐÐΪ¼Ç¼  | 
| queryType_DelFamilyAction,            #¼Ò×åÐÐΪɾ³ý  | 
| queryType_FBPassRec,                  #¸±±¾Í¨¹Ø¼Ç¼  | 
| queryType_FBPassInfo,                 #ÇëÇ󸱱¾Í¨¹ØÐÅÏ¢¸ø¿Í»§¶Ë  | 
| queryType_FamilyArrest,               #ÇëÇó¼Ò×åÐüÉÍÈÎÎñÐÅÏ¢  | 
| queryType_UniversalGameRec,           #Íæ¼ÒͨÓÃÐÅÏ¢¼Ç¼±í  | 
| queryType_RequestIsFamily,            #²éÑ¯Íæ¼ÒÊÇ·ñ»¹ÔÚÉêÇëµÄ¼Ò×åÉêÇëÁбíÖÐ  | 
| queryType_CanOnThreeDay,              #²éѯ¸ÃÍæ¼ÒÊÇ·ñ¿ÉÒÔOnThreeDay  | 
| queryType_NotePlayerFamilyInfo,       #ÇëÇó¼ÇÂ¼Íæ¼Ò¼Ò×åÐÅÏ¢ÓÃÓÚ¿ª·þ»î¶¯½±ÀøÁìÈ¡  | 
| queryType_CampaignPlayerFamily,       #²éѯ¿ª·þ»î¶¯ÆÚ¼äÍæ¼ÒËùÔÚ¼Ò×å  | 
| queryType_NoteTruckOwnerInfo,         #ÇëÇó²éÕÒÍæ¼ÒïÚ³µ²¢¼Ç¼²¿·ÖÊôÐÔ  | 
| queryType_ActionThemePlace,           #ÇëÇó²éÕÒÖ÷ÌâÖܻÅÅÃû  | 
| queryType_FamilyImpeach,              #Íæ¼ÒʹÓõ¯ÛÀ·û  | 
| queryType_RequestJoinVsRoomSuper,     #ÑûÇë¼ÓÈë  | 
| queryType_ResponsesJoinVsRoomSuper,   #¾º¼¼³¡ÑûÇë»ØÓ¦  | 
| queryType_SyncJoinVsRoomSuper,        #¾º¼¼³¡ÑûÇë֪ͨ  | 
| queryType_SyncJoinPlayerVsPlayer,     #ÇдèÑûÇë»ØÓ¦  | 
| queryType_VsRoomSuperAward,           #¾º¼¼³¡½±Àø  | 
| queryType_QuerDoubleExp,              #ÇëÇó±¾ÖÜË«±¶¾Ñé  | 
| queryType_BeginSpanServer,            #Æ¥Åä¿ç·þԤѡÈü  | 
| queryType_JoinSpanServer,             #±¨Ãû¿ç·þԤѡÈü  | 
| queryType_SpanServerBattleResult,     #¿ç·þÈü½á¹û  | 
| queryType_CreatPlayerVsPlayer,        #´´½¨Çд跿¼ä  | 
| queryType_JoinPlayerVsPlayer,         #¼ÓÈëÇд跿¼ä  | 
| queryType_JoinMergeWarPre,            #±¨ÃûÍò¹úÌÔÌÈü  | 
| queryType_UpdatePlayerName,           #½ÇÉ«¸ÄÃû  | 
| queryType_ServerRewardNotify,         #È«·þ½±ÀøÌáʾ  | 
| queryType_EnterFB,                    #½øÈ븱±¾  | 
| queryType_NPCInfo,                    #²éѯNPCInfo  | 
| queryType_NPCCnt,                     #²éѯNPCÊýÁ¿  | 
| ) = range(0, Def_QueryType_Count)  | 
| #------------------------------------------------------------------------------   | 
| #¼Ò×åijÐÐΪÀàÐͱ£´æµÄÌõÊý  | 
| ActionTypeSaveCnt = {  | 
|               ShareDefine.Def_ActionType_FamilyPray:10 ,    #¼Ò×åÆí¸£  | 
|               ShareDefine.Def_ActionType_FamilyArrest:7,     #¼Ò×åÐüÉÍ  | 
|               ShareDefine.Def_ActionType_FamilyAdd:30,       #ÉêÇë½øÈë¼Ò×å  | 
|               ShareDefine.Def_ActionType_FamilyMember:1,       #¼Ç¼¼Ò×å³ÉÔ±ÐÅÏ¢  | 
|               ShareDefine.Def_ActionType_LeaderImpeachTime:1,  # ×峤ÏÂÏßÁ˶à¾Ã  | 
|               ShareDefine.Def_ActionType_FamilyBossFB:1,  # ¼Ç¼¼Ò×åboss¸±±¾ÐÅÏ¢  | 
|               ShareDefine.Def_ActionType_FamilyStore:30,       #²Ö¿â²Ù×÷¼Ç¼  | 
|               ShareDefine.Def_ActionType_OfficerModelEquip:10,  # ¼Ç¼¼Ò×åÓÐְλµÄ³ÉԱģÐÍ×°±¸ÐÅÏ¢(ÃËÖ÷+¸±ÃËÖ÷*2+Õ½¶·¶Ó³¤*5)  | 
|               ShareDefine.Def_ActionType_FamilyEvent:50,  # ¼Ç¼¼Ò×åʼþ  | 
|               }  | 
|   | 
| #²éѯÎÞÏÞÖÆ¼Ò×åµÄÐÐΪÀàÐÍÁÐ±í  | 
| Def_QueryNoLimit_ActionTypeList = [ShareDefine.Def_ActionType_OfficerModelEquip]  | 
| #------------------------------------------------------------------------------   | 
|   | 
| #Íæ¼ÒͨÓÃÐÅÏ¢¼Ç¼ÀàÐͱ£´æµÄÌõÊý  | 
| UniversalGameRecTypeSaveCnt = {  | 
|                                 ShareDefine.Def_UniversalGameRecType_BossDropGoodItemInfo:100,    #bossµôÂäºÃÎïÆ·ÐÅÏ¢  | 
|                                 ShareDefine.Def_UniversalGameRecType_HijackTruck:10,     #½ÙïÚ  | 
|                                 ShareDefine.Def_UniversalGameRecType_Reward:1000000,     #½±Àø  | 
|                                 ShareDefine.Def_UniversalGameRecType_GrabRedAllRecord:1000000,   #ÇÀºì°ü×ܼǼ  | 
|                                 ShareDefine.Def_UniversalGameRecType_GrabRedNewRecord:1000000,   #ÇÀºì°ü¿ÉÇÀÐÅÏ¢¼Ç¼  | 
|                                 ShareDefine.Def_UniversalGameRecType_GrabRedOldRecord:1000000,   #ÇÀºì°üÒÑÇÀÍêÐÅÏ¢¼Ç¼  | 
|                                 ShareDefine.Def_UniversalGameRecType_FamilyRedPacketAllRecord:1000000,   #ÏÉÃ˺ì°ü×ܼǼ  | 
|                                 ShareDefine.Def_UniversalGameRecType_FamilyRedPacketGrabRecord:10000000,   #ÏÉÃ˺ì°üÒÑÇÀÐÅÏ¢¼Ç¼  | 
|                                 ShareDefine.Def_UniversalGameRecType_DujieHelpAllRecord:500,   #¶É½Ù¸±±¾»¤·¨×ܼǼ  | 
|                                 ShareDefine.Def_UniversalGameRecType_DujieHelpRecord:10000,   #¶É½Ù¸±±¾»¤·¨Ïêϸ¼Ç¼  | 
|                                 ShareDefine.Def_UniversalGameRecType_ZhuXianBossRecord:100,   #ÖïÏÉBOSS½áËã¼Ç¼  | 
|                                 ShareDefine.Def_UniversalGameRecType_LuckyTreasure:5,   #ÐÒÔ˼ø±¦¼Ç¼  | 
|                                 ShareDefine.Def_UniversalGameRecType_FeastWish:30,   #½ÚÈÕ×£¸£´ó½±¼Ç¼  | 
|                               }  | 
| #---------------------------------------------------------------------  | 
| #±È½Ï±êʶ  | 
| Def_Cmp_Lower = -1                #СÓÚ  | 
| Def_Cmp_Equ = 0                   #µÈÓÚ  | 
| Def_Cmp_Greater = 1               #´óÓÚ  | 
|   | 
| #-----------»î¶¯Ïà¹Ø---------------------------------------------------------  | 
| #»î¶¯±êʶ  | 
| Def_Action_Count = 4  | 
| (  | 
| Def_Action_Close,                #¹Ø±Õ±êʶ  | 
| Def_Action_Open,                 #¿ªÆô±êʶ  | 
| Def_Action_Going,                #»î¶¯³ÖÐøÖÐ  | 
| Def_Action_Pause,                #»î¶¯ÔÝÍ£  | 
| ) = range( Def_Action_Count )  | 
|   | 
| #---ÅÅÐаñ--------------------------------------------------------------------  | 
| #ÅÅÐаñ±£´æÀàÐÍ  | 
| (  | 
|     Def_BT_SaveType_NoSaveDB,       #²»±£´æÊý¾Ý¿â  | 
|     Def_BT_SaveType_SaveDB,         #±£´æÊý¾Ý¿â  | 
| ) = range(0, 1 + 1)  | 
|   | 
| #ÅÅÐаñÉϰñ¸öÊý(ºÍBillboardTypeÆ¥Åä), ×¢Ê͵ôµÄΪÔÝʱ²»ÓõÄÅÅÐаñ  | 
| Def_BT_Cnt = {  | 
|             ShareDefine.Def_BT_LV                       : 100,           #¸öÈ˵ȼ¶ÈÕ°ñ  | 
|             ShareDefine.Def_BT_FightPower               : 100,           #¸öÈËÕ½¶·Á¦  | 
|             ShareDefine.Def_BT_FightPower_Warrior       : 100,           #½£ÐÞÕ½¶·Á¦  | 
|             ShareDefine.Def_BT_FightPower_Wizard        : 100,           #µÀʦս¶·Á¦  | 
|             ShareDefine.Def_BT_FightPower_Assassin      : 100,           #ǹºÀÕ½¶·Á¦  | 
|             ShareDefine.Def_BT_FightPower_Horse         : 100,           #×øÆïÕ½¶·Á¦×ܰñ  | 
|             ShareDefine.Def_BT_FightPower_Pet           : 100,           #³èÎï×ÜÕ½Á¦°ñ  | 
|             ShareDefine.Def_BT_TrialTower               : 100,           #ÌìÉñÖ®Ëþ°ñ  | 
|             ShareDefine.Def_BT_SkyTower                 : 100,           #ÌìÐÇËþ°ñ  | 
|             ShareDefine.Def_BT_OffLineEfficient         : 100,           #ÍÑ»úЧÂʰñ  | 
|             ShareDefine.Def_BT_Realm                    : 100,           #¾³½ç°ñ  | 
|             ShareDefine.Def_BT_TotalRecharge            : 100,           #³äÖµ°ñ  | 
|               | 
|             ShareDefine.Def_BT_Campaign_Plus            : 100,           #Ç¿»¯Õ½Á¦(¿ª·þ»î¶¯°ñ)  | 
|             ShareDefine.Def_BT_Campaign_Horse           : 100,           #×øÆïÕ½Á¦(¿ª·þ»î¶¯°ñ)    | 
|             ShareDefine.Def_BT_Campaign_StoneLV         : 100,           #±¦Ê¯µÈ¼¶(¿ª·þ»î¶¯°ñ)  | 
|             ShareDefine.Def_BT_Campaign_LV              : 100,           #³å¼¶ÅÅÐÐ(¿ª·þ»î¶¯°ñ)  | 
|             ShareDefine.Def_BT_Campaign_RealmLV         : 100,           #¾³½çµÈ¼¶(¿ª·þ»î¶¯°ñ)  | 
|             ShareDefine.Def_BT_Campaign_FightPower      : 100,           #Õ½Á¦ÅÅÐÐ(¿ª·þ»î¶¯°ñ)  | 
|             ShareDefine.Def_BT_Campaign_RuneLV          : 100,           #·ûÓ¡µÈ¼¶(¿ª·þ»î¶¯°ñ)  | 
|             ShareDefine.Def_BT_Campaign_GodWeaponLV     : 100,           #Éñ±øµÈ¼¶(¿ª·þ»î¶¯°ñ)  | 
|             ShareDefine.Def_BT_Campaign_Recharge        : 100,           #ÀۼƳäÖµ(¿ª·þ»î¶¯°ñ)  | 
|             ShareDefine.Def_BT_Campaign_PetLV           : 100,           #Áé³èµÈ¼¶(¿ª·þ»î¶¯°ñ)    | 
|             ShareDefine.Def_BT_Campaign_LingGen         : 100,           #Áé¸ù×ܵã(¿ª·þ»î¶¯°ñ)    | 
|             ShareDefine.Def_BT_Campaign_StarLV          : 100,           #ÉýÐǵȼ¶(¿ª·þ»î¶¯°ñ)    | 
|             ShareDefine.Def_BT_Campaign_Wash            : 100,           #Ï´Á·Õ½Á¦(¿ª·þ»î¶¯°ñ)  | 
|             ShareDefine.Def_BT_FCCostGold               : 5,             #Ïû·ÑÅÅÐаñ(ÏɽçÊ¢µä)  | 
|             ShareDefine.Def_BT_NewFCCostGold            : 5,             #Ïû·ÑÅÅÐаñ(ÏɽçÊ¢µä)  | 
|               | 
|             ShareDefine.Def_BT_Arena                    : 1000,          #¾º¼¼³¡°ñ  | 
|             ShareDefine.Def_BT_Environment              : 20,            #»·±£°ñ (À¬»ø·ÖÀà»î¶¯)  | 
|             ShareDefine.Def_BT_CharmTotal               : 100,           #÷ÈÁ¦×ܰñ  | 
|             ShareDefine.Def_BT_CharmWeek                : 100,           #÷ÈÁ¦Öܰñ  | 
|             ShareDefine.Def_BT_CharmDay                 : 100,           #÷ÈÁ¦ÈÕ°ñ  | 
|             ShareDefine.Def_BT_BossTrialSubmit          : 1000,          #bossƾ֤ (bossÀúÁ·»î¶¯)  | 
|             }  | 
|   | 
| #ÅÅÐаñ±£´æÀàÐÍ(ºÍBillboardTypeÆ¥Åä), Ä¬Èϱ£´æ, Èç¹û²»±£´æ£¬¿ÉÅäÖýøÈ¥  | 
| Def_BT_SaveType = {  | 
|                    }  | 
|   | 
|   | 
|   | 
| #-----´ðÌâ-------------------------  | 
| #Ìâ¿âÀàÐͶÔÓ¦µÄÌâ¿âÃû  | 
| Def_ExamSubjectNameDict = { ShareDefine.Def_Game_Exam_ZGTX : 'Exam_ZGTX',  | 
|                             ShareDefine.Def_Game_Exam_BSL  : 'Exam_BSL' ,  | 
|                             ShareDefine.Def_Game_Exam_JQBD : 'Exam_JQBD',  | 
|                             ShareDefine.Def_Game_Exam_ZXH  : 'Exam_ZXH' ,  | 
|                           }  | 
|   | 
| #Ìâ¿âÀàÐͶÔÓ¦µÄÌâ¿âÅÅÐаñ  | 
| Def_ExamSubjectBTDict =   {   | 
|                           }  | 
|   | 
| #½ûֹʹÓÃ10 01²é¿´µÄÅÅÐаñ  | 
| Def_InterdictLook_BT_Type = []  | 
|   | 
| #Íæ¼ÒÊý¾Ý²É¼¯·þÎñ¶ËÊý¾Ý°æ±¾ºÅ  | 
| Def_DataCollect_Ver = 1.0  | 
| #Íæ¼ÒÊý¾Ý²É¼¯¼ÓÃÜkey  | 
| Def_PlayerDataCollect_Key = 0x86  | 
|   | 
| #---SetDict  Íæ¼Ò×ֵ䲻´æÊý¾Ý¿â---  | 
| Def_Player_NoSave_Dict_PlayerExamRightCnt = 'PlayerExamRightCnt_1_%s'  # Íæ¼Ò´ðÌâÕýÈ·ÊýÁ¿  | 
| Def_Player_NoSave_Dict_PlayerExamCRightCnt = 'PlayerExamCRightCnt_1_%s'  # Íæ¼Ò´ðÌâÁ¬ÐøÕýÈ·ÊýÁ¿  | 
|   | 
| Def_PlayerKey_KillFamilyPlayer = "KillFamilyPlayer_2_%s"  # É±ËÀ²Î¼Ó°ï»áÕù°ÔÕ½µÄ°ï»á¸÷¸öÍæ¼Ò(°ïÖ÷¡¢»¤·¨¡¢³¤ÀÏ)´ÎÊý  | 
| Def_PlayerKey_KillFamilyPlayerCnt = "KillFamilyPlayerCnt_3"  # É±ËÀ²Î¼Ó°ï»áÕù°ÔÕ½µÄ°ï»áÍæ¼Ò(°ïÖ÷¡¢»¤·¨¡¢³¤ÀÏ)×ÜÈËÊý  | 
|   | 
| Def_PlayerKey_BoonActionNoticeType = "BoonActionNoticeType_4_%s"  # ¸£Àû»î¶¯Í¨Öª¹ýµÄÀàÐÍ  | 
|   | 
| Def_PlayerKey_PyTableType = "PyTableType"  #²éѯµÄpytableÀàÐÍ  | 
| Def_PlayerKey_IsStopSendDBCommand = "StopSendDBCom"  #ÊÇ·ñÍ£Ö¹·¢ËÍÊý¾Ý¿â²Ù×÷ÃüÁî  | 
| Def_PlayerKey_SendDBComTick = "SendDBComTick"  #·¢ËÍDBÃüÁîʱ¼ä  | 
|   | 
| Def_PlayerKey_CrossRegisterMap = "CrossRegisterMap"  #¿ç·þ×¢²á»î¶¯µØÍ¼, dataMapID  | 
| Def_PlayerKey_MergeRegisterRoomID = "MergeRegisterRoomID"  #µ±Ç°ÉÏ´«Êý¾ÝµÄroomID  | 
| Def_PlayerKey_IsLoginToMergeServer = "IsLoginToMergeServer"  #ÊÇ·ñÒªµÇ½¿ç·þ·þÎñÆ÷  | 
| Def_PlayerKey_IsCrossPKMatching = "IsCrossPKMatching"  #ÊÇ·ñ¿ç·þÆ¥ÅäÖÐ  | 
|   | 
| Def_PlayerKey_PlayerFromPID = "PlayerFromPID"  #pid  | 
|   | 
| Def_PDict_LoginMapID = "LoginMapID"  #µÇ¼´¦ÀíʱµÄµØÍ¼ID  | 
|   | 
| Def_PlayerKey_OnGotoMergeServerTick = "OnGotoMergeServerTick"  #¼´½«Ìø×ªµ½¿ç·þ·þÎñÆ÷µÄʱ¼ä  | 
|   | 
| Def_OnlineType = "onlinetype"   # ÔÚÏßÇé¿ö Çø·ÖÍÑ»ú¹ÒÔÚÏß    C++Ò²ÔÚÓÃÐÞ¸ÄÐè֪ͨ  | 
| Def_TJGTime = "TJGTime"   # Ê£ÓàÍÑ»úʱ¼ä  | 
|   | 
| Def_ForbiddenTalk = "ForbiddenTalk"   # ½ûÑÔ  | 
| Def_TalkTick = "ForbiddenTalk"   # ÁÄÌì¼ä¸ô  | 
|   | 
| Def_PlayerKey_ViewCrossPKBillboardTick = "ViewCrossPKBillboardTick_%s_%s"  #²éѯPKÅÅÐаñtick£¬²ÎÊý£¨zoneID, seasonID£©  | 
|   | 
| #Ö÷³ÇµØÍ¼¡¢çÎç¿×Ú  | 
| Def_FBMapID_MainCity = 10010  | 
| #¶É½Ù¸±±¾  | 
| Def_FBMapID_DuJie = 31110  | 
| #ÏÉÃËÁªÈü  | 
| Def_FBMapID_FamilyWar = 31220  | 
| #ÏÉÃËÑç»á  | 
| Def_FBMapID_FamilyParty = 31230  | 
| #Õ½Ã˸±±¾-Òì½çÈëÇÖ¡¢ÊØÎÀÈË»Ê  | 
| Def_FBMapID_FamilyInvade = 31170  | 
| #·âħ̳  | 
| Def_FBMapID_SealDemon = 52010  | 
| #ÖïÏÉBOSS  | 
| Def_FBMapID_ZhuXianBoss = 31380  | 
| #ÏÉħ֮Õù  | 
| Def_FBMapID_XMZZ = 31010  | 
| #ÏÉÃËboss¸±±¾  | 
| Def_FBMapID_FamilyBossMap = 31210  | 
| #¶àÏÉÃËBoss  | 
| Def_FBMapID_AllFamilyBoss = 31260  | 
| #×ÚÃÅÊÔÁ¶  | 
| Def_FBMapID_MunekadoTrial = 60010  | 
| #»ìÂÒÑýÓò  | 
| Def_FBMapID_ChaosDemon = 31180  | 
| #ÌÖ·¥Ñýħ  | 
| Def_FBMapID_KillDevil = 31280  | 
| #æ´»ÊÒż£  | 
| Def_FBMapID_QueenRelics = 51010  | 
| #¿ç·þ¾º¼¼³¡  | 
| Def_FBMapID_CrossRealmPK = 32010  | 
| #¿ç·þÅÅλ  | 
| Def_FBMapID_CrossChampionship = 32070  | 
| #¿ç·þÅîÀ³Ïɾ³  | 
| Def_FBMapID_CrossPenglai = 32020  | 
| #¿ç·þħ»¯Ö®µØ  | 
| Def_FBMapID_CrossDemonLand = 32080  | 
| #¿ç·þÑýÍõ  | 
| Def_FBMapID_CrossDemonKing = 32030  | 
| #±¾·þÑýÍõ  | 
| Def_FBMapID_DemonKing = 22030  | 
| #Æï³èBoss  | 
| Def_FBMapID_HorsePetBoss = 31200  | 
| #¿ç·þÁé²ÝÔ°  | 
| Def_FBMapID_CrossGrasslandLing = 32040  | 
| #¿ç·þÏɲÝÔ°  | 
| Def_FBMapID_CrossGrasslandXian = 32050  | 
| #¿ç·þÕ½³¡  | 
| Def_FBMapID_CrossBattlefield = 32060  | 
| #ÇéÔµ¸±±¾  | 
| Def_FBMapID_Love = 31300  | 
|   | 
| #ÐèҪˢÊÀ½çBOSSµÄ¸±±¾  | 
| WorldBossFBMapIDList = [Def_FBMapID_SealDemon, Def_FBMapID_ZhuXianBoss, Def_FBMapID_DemonKing]  | 
| #¿ç·þµØÍ¼  | 
| Def_CrossMapIDList = [Def_FBMapID_CrossRealmPK, Def_FBMapID_CrossPenglai, Def_FBMapID_CrossDemonLand, Def_FBMapID_CrossDemonKing, Def_FBMapID_CrossGrasslandLing, Def_FBMapID_CrossGrasslandXian]  | 
| #¿ç·þ·ÖÇøÀàÐÍÅäÖÃ, Ã»ÅäÖõÄĬÈÏ CrossZoneComm  | 
| Def_CrossZoneTypeName = {0:"CrossZoneComm", # ÌØÊâ0£¬Ä¬Èϳ£¹æ·ÖÇø  | 
|                          Def_FBMapID_CrossPenglai:"CrossZoneComm",  | 
|                          Def_FBMapID_CrossDemonLand:"CrossZoneComm",  | 
|                          Def_FBMapID_CrossRealmPK:"CrossZonePK",  | 
|                          Def_FBMapID_CrossDemonKing:"CrossZonePK",  | 
|                          Def_FBMapID_CrossGrasslandLing:"CrossZonePK",  | 
|                          Def_FBMapID_CrossGrasslandXian:"CrossZonePK",  | 
|                          Def_FBMapID_CrossBattlefield:"CrossZonePK",  | 
|                          Def_FBMapID_CrossChampionship:"CrossZonePK",  | 
|                          }  | 
| #¿ç·þ·ÖÇø¶ÔÓ¦µØÍ¼ÅäÖñíÃû - ½öÊÊÓÃÓڹ̶¨µØÍ¼¼°ÐéÄâ·ÖÏߵĿç·þÍæ·¨  | 
| Def_CrossZoneMapTableName = {Def_FBMapID_CrossPenglai:"CrossPenglaiZoneMap",  | 
|                              Def_FBMapID_CrossDemonLand:"CrossDemonLandZoneMap",  | 
|                              }  | 
| #ÐèÒª¶¯Ì¬·ÖÅäÏß·µÄ¿ç·þµØÍ¼  | 
| Def_CrossDynamicLineMap = [Def_FBMapID_CrossDemonKing, Def_FBMapID_CrossGrasslandLing, Def_FBMapID_CrossGrasslandXian]  | 
|   | 
| #ÐèҪͳ¼Æ¸±±¾¹¦ÄÜÏß·IDÈËÊýµÄ¿ç·þµØÍ¼  | 
| Def_NeedCountFBFuncLinePlayerCrossMap = [Def_FBMapID_CrossDemonKing]  | 
|   | 
| #ͬϵְҵö¾Ù  | 
| JOB_TYPY_COUNT = 5  | 
| (  | 
| TYPE_NONE,          #ÎÞ  | 
| TYPE_WARRIOR,       #սʿϵ/ǹ  | 
| TYPE_WIZARD,        #·¨Ê¦Ïµ/ÕÈ  | 
| TYPE_ASSASSIN,      #¹ÊÖϵ/½£  | 
| TYPE_CHAPLAIN,      #ħ½£Ïµ  | 
| ) = range(0 , JOB_TYPY_COUNT)  | 
|   | 
| #Ö°ÒµÀà±ð¶ÔÓ¦×Öµä  | 
| JOB_TYPE_DICT = {  | 
| ShareDefine.PlayerJob_Warrior : TYPE_WARRIOR,      #½£Ê¿¶ÔӦսʿϵ  | 
| ShareDefine.PlayerJob_Wizard : TYPE_WIZARD,        #·¨Ê¦¶ÔÓ¦·¨Ê¦Ïµ  | 
| ShareDefine.PlayerJob_Assassin : TYPE_ASSASSIN,    #¹ÊÖ¶ÔÓ¦¹ÊÖϵ  | 
| ShareDefine.PlayerJob_Chaplain : TYPE_CHAPLAIN,    #ħ½£¶ÔӦħ½£Ïµ  | 
| ShareDefine.PlayerJob_Knight : TYPE_WARRIOR,       #ÆïÊ¿¶ÔӦսʿϵ  | 
| ShareDefine.PlayerJob_ForceUser : TYPE_WIZARD,     #ħµ¼¶ÔÓ¦·¨Ê¦Ïµ  | 
| ShareDefine.PlayerJob_BowMaster : TYPE_ASSASSIN,   #ÉäÊÖ¶ÔÓ¦¹ÊÖϵ  | 
| ShareDefine.PlayerJob_Max : TYPE_CHAPLAIN,         #ħ½£¶ÔӦħ½£Ïµ  | 
| }  | 
|   | 
| # Óʼþ£¨²¹³¥£©Ä¬ÈÏ·¢¼þÈË, ¾ßÌå×ö»î¶¯ÔÙ¶¨  | 
| Def_Mail_SenderSys = "SenderSys"    # Ä¬ÈÏÓʼþ·¢ËÍÈË  | 
|   | 
| # Êú¸Ü  | 
| Def_Str_Montant = "|"  | 
|   | 
| # 0 ²»ÔÚÏß  1 ÔÚÏß 2 ÍÑ»úÔÚÏß   | 
| Def_Offline = 0  | 
| Def_Online = 1  | 
| Def_OnlineNoClient = 2  | 
|   | 
| # ·Ö×é 1 ×î½üÁªÏµÈË 2 ºÃÓÑ 3 ³ðÈË 4 ºÚÃûµ¥ 5 Ç×ÃÜ  | 
| (  | 
| Def_SocialGroup_Contacts,  | 
| Def_SocialGroup_Friend,  | 
| Def_SocialGroup_Enemy,  | 
| Def_SocialGroup_Black,  | 
| Def_SocialGroup_Intimacy,  | 
| ) = range(1, 6)  | 
|   | 
| Def_CDBPlayerRefresh_Online = "OnlineType"  | 
|   | 
|   | 
| # µØÍ¼ÀàÐÍ  | 
| MapFBType = (  | 
|     fbtNull,            # 0³£¹æµØÍ¼  | 
|     fbtSingle,          # 1µ¥È˸±±¾  | 
|     fbtTeam,            # 2×é¶Ó¸±±¾  | 
|     fbtFamily,          # 3¼Ò×帱±¾  | 
|     fbtFamilyWar,       # 4¼Ò×åÕ½¸±±¾  | 
|     fbtCountryExam,     # 5¹ú¼Ò´ðÌâ  | 
|     fbtCountry,         # 6¹ú¼Ò¸±±¾  | 
|     fbtAllByCountry,    # 7ÕóÓª¸±±¾  | 
|     fbtAll,             # 8ËùÓÐ  | 
|     fbtVsRoom,          # 9PK·¿¼ä  | 
| ) = range(10)  | 
|   | 
| #VIPÌØÈ¨±àºÅÁбí, Ê¹Óõ½¾ßÌåÌØÈ¨Ê±£¬ÐÞ¸ÄϾßÌåµÄÃüÃû  | 
| VIPPrivilegeList = (  | 
| VIPPrivilege_VIPKillNPCAddAtk, #1 vip·¨±¦-¼Ó¹¥ - ·ÏÆú  | 
| VIPPrivilege_2, #2 vip±¦Ê¯¿×-·ÏÆú£¬¶Á¹¦ÄÜÅäÖñí GemOpenVip  | 
| VIPPrivilege_TeamVIPBuff, #3 VIPbuff-¹¥ÊØÍ¬ÃË, ×é¶ÓÊôÐÔ¼Ó³É  | 
| VIPPrivilege_BourseTax, #4 ½»Ò×˰¼õÃâ¶î¶È(Íò·Ö±È)  | 
| VIPPrivilege_5, #5 Ë½ÈËÃØÊ飨ÏûÏ¢ÍÆËÍ£©  | 
| VIPPrivilege_FreeTransport, #6 Ãâ·Ñ´«ËÍ  | 
| VIPPrivilege_7, #7 ×Ô¶¯ÏÉÃËÈÎÎñ - Ç°¶Ë  | 
| VIPPrivilege_CollTimeReduceRate, #8 ²É¼¯´óʦ, ²ÉÆìʱ¼ä¼õÉÙÍò·Ö±È  | 
| VIPPrivilege_9, #9 °ÙÕ½²»ËÀ - ·ÏÆú  | 
| VIPPrivilege_FightExpRate,    #10 É±¹Ö¾ÑéÌáÉý(Íò·Ö±È)  | 
| VIPPrivilege_EatItem,    #11 ÍÌÊÉ×°±¸¾ÑéÌáÉý(Íò·Ö±È)  | 
| VIPPrivilege_NPCSPRate,    #12 É±¹ÖSPÖµ(Íò·Ö±È)  | 
| VIPPrivilege_MoneyPray,    #13 ½ð±ÒÆíÔ¸  | 
| VIPPrivilege_ExpPray, #14 ¾ÑéÆíÔ¸  | 
| VIPPrivilege_15,    #15 ¸öÈËboss¶îÍâ´ÎÊý - ¸±±¾×ܱíͳһ´¦Àí  | 
| VIPPrivilege_BossHome,    #16 bossÖ®¼Ò²ãÊýȨÏÞ  | 
| VIPPrivilege_17,    #17 Áé³è¸±±¾¹ºÂò´ÎÊý - ¸±±¾×ܱíͳһ´¦Àí  | 
| VIPPrivilege_18,    #18 Ï´Á¶¸±±¾¹ºÂò´ÎÊý - ¸±±¾×ܱíͳһ´¦Àí  | 
| VIPPrivilege_19,    #19 ÐéÎÞ½ûµØ¶îÍâ´ÎÊý - ¸±±¾×ܱíͳһ´¦Àí  | 
| VIPPrivilege_20,    #20 Äº¹âÉñÃí¹ºÂò´ÎÊý  | 
| VIPPrivilege_21,    #21 ¶ñħÉîÔ¨¹ºÂò´ÎÊý - ¸±±¾×ܱíͳһ´¦Àí  | 
| VIPPrivilege_22,    #22 ºÚ°µÖ®ÃŹºÂò´ÎÊý  | 
| VIPPrivilege_FamilyGoldPack,    #23 ÏÉÃË×êʯºì°ü  | 
| VIPPrivilege_BoursePwd,    #24 ¼¯ÊÐÉϼÜʹÓÃÃÜÂë  | 
| VIPPrivilege_25,    #25 ·âħ̳¹ºÂò´ÎÊý - ¸±±¾×ܱíͳһ´¦Àí  | 
| VIPPrivilege_BoursePwd,    #26 VIP±»¶¯¼¼Äܿסª¡ªVIP4רÊô±»¶¯¼¼ÄÜ¿×  | 
| VIPPrivilege_BOSSHomeKillLimit,    #27 BOSSÖ®¼ÒÆ£ÀÍÖµÉÏÏÞ  | 
| VIPPrivilege_FMTDouble,    #28 ·âħ̳˫±¶»÷ɱ  | 
| VIPPrivilege_29,    #29 æ´»ÊÒż£¹ºÂò´ÎÊý - ¸±±¾×ܱíͳһ´¦Àí  | 
| VIPPrivilege_BindJadeWheel,    #30 °óÓñתÅÌ´ÎÊý  | 
| VIPPrivilege_PrayElixir,    #31 µ¤Ò©Æí¸£´ÎÊý  | 
| VIPPrivilege_32,    #32 ·âħ̳×Ô¶¯ÌôÕ½  | 
| VIPPrivilege_33,    #33  | 
| VIPPrivilege_34,    #34  | 
| ) = range(1, 35)  | 
|   | 
| #ÓÎÏ·»õ±ÒÀ´Ô´ÀàÐͶ¨Òå  | 
| (  | 
| Def_GiveMoney_Unknown, # Î´Öª 0  | 
| Def_GiveMoney_GM,  | 
| Def_GiveMoney_CTG,  | 
| Def_GiveMoney_GMTCTG,  | 
| Def_GiveMoney_CoinToGold,  | 
| Def_GiveMoney_SuperAccountCreate, # ´´½ÇÔùËÍ 5  | 
| Def_GiveMoney_Mission, # ÈÎÎñ  | 
| Def_GiveMoney_Pray, # Æíµ»  | 
| Def_GiveMoney_UseItem, # Ê¹ÓÃÎïÆ·  | 
| Def_GiveMoney_Pickup, # Ê°È¡  | 
| Def_GiveMoney_Bourse, # ½»Ò×Ëù 10  | 
| Def_GiveMoney_GoldInvest, # °ó×êͶ×Ê  | 
| Def_GiveMoney_Recover, # ×ÊÔ´ÕÒ»Ø  | 
| Def_GiveMoney_RedPacket, # ºì°ü  | 
| Def_GiveMoney_RefineGift, # Á¶Öƽ±Àø  | 
| Def_GiveMoney_Mail, # Óʼþ£¨²¹³¥£© 15  | 
| Def_GiveMoney_RuneDecompose, # ·ûÓ¡  | 
| Def_GiveMoney_Warehouse, # ²Ö¿â  | 
| Def_GiveMoney_SellPackItem, # ³öÊÛ±³°üÎïÆ·  | 
| Def_GiveMoney_CollectNPC, # ²É¼¯NPC  | 
| Def_GiveMoney_BossFirstKill, # BossÊ×ɱ  | 
| Def_GiveMoney_21,  | 
| Def_GiveMoney_Trade, # ½»Ò×  | 
| Def_GiveMoney_Truck, # ÔËïÚ  | 
| Def_GiveMoney_FreeGoods, # ¼«Æ·°×Äà  | 
| Def_GiveMoney_BindJadeWheel, # °óÓñתÅÌ 25  | 
| Def_GiveMoney_GatherSoulDecompose, #¾Û»ê·Ö½â 26  | 
| Def_GiveMoney_AuctionBidReturn, #ÅÄÂô¾º¼Û·µ»¹  | 
| Def_GiveMoney_AuctionGain, #ÅÄÂô»ñµÃÀûÈó  | 
| ) = range(1000, 1000 + 29)  | 
|   | 
| Def_ItemID_GoldMoney = 20               # Ö±½Ó¸øÏÉÓñ  | 
| Def_ItemID_GoldPaper = 30               # Ö±½Ó¸ø°óÓñ/Áéʯ  | 
| Def_ItemID_SilverPaper = 500               # Ö±½Ó¸ø½ðƱÎïÆ·  | 
| Def_ItemID_GongdePoint = 530               # Ö±½Ó¸ø¹¦µÂµã  | 
| # »õ±ÒÀàÐͶÔÓ¦Ö±½Ó¸ø»õ±ÒÎïÆ·ID  | 
| MoneyItemIDDict = {IPY_GameServer.TYPE_Price_Gold_Money:Def_ItemID_GoldMoney,  | 
|                    IPY_GameServer.TYPE_Price_Gold_Paper:Def_ItemID_GoldPaper,  | 
|                    IPY_GameServer.TYPE_Price_Silver_Paper:Def_ItemID_SilverPaper,  | 
|                    ShareDefine.TYPE_Price_GongdePoint:Def_ItemID_GongdePoint,  | 
|                    }  | 
|   |