|  |  |  | 
|---|
|  |  |  | FamilyPartyFB_QuestionTick = 'FamilyPartyFB_QuestionTick%s' #当前题出题时间 | 
|---|
|  |  |  | FamilyPartyFB_AnswerTick = 'FamilyPartyFB_AnswerTick%s' #答对时间 | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | AnswerState = 2 #开始答题活动状态 | 
|---|
|  |  |  | ## 玩家登录 | 
|---|
|  |  |  | #  @param None | 
|---|
|  |  |  | #  @return None | 
|---|
|  |  |  | 
|---|
|  |  |  | #刚登录的或刚进仙盟的补发最近的题目 | 
|---|
|  |  |  | gameWorld = GameWorld.GetGameWorld() | 
|---|
|  |  |  | state = gameWorld.GetDictByKey(ShareDefine.Def_Notify_WorldKey_FBFuncState % ChConfig.Def_FBMapID_FamilyParty) | 
|---|
|  |  |  | if state != 1: | 
|---|
|  |  |  | if state != AnswerState: | 
|---|
|  |  |  | return | 
|---|
|  |  |  | curFamilyid = curPlayer.GetFamilyID() | 
|---|
|  |  |  | if not curFamilyid: | 
|---|
|  |  |  | 
|---|
|  |  |  | familyID = family.GetID() | 
|---|
|  |  |  | gameWorld.SetDict(FamilyPartyFB_QuestionID % familyID, 0) | 
|---|
|  |  |  | gameWorld.SetDict(FamilyPartyFB_AnswerTick % familyID, 0) | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_FamilyPartyInfo, []) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if state == 0: | 
|---|
|  |  |  | #活动结算 前3名仙盟、答题王 | 
|---|
|  |  |  | GameWorld.Log(" 仙盟宴会结算 g_familyAnswerDict=%s, g_familyPartyTopInfo=%s"%(PyGameData.g_familyAnswerDict, PyGameData.g_familyPartyTopInfo)) | 
|---|
|  |  |  | 
|---|
|  |  |  | #开始出题 | 
|---|
|  |  |  | gameWorld = GameWorld.GetGameWorld() | 
|---|
|  |  |  | state = gameWorld.GetDictByKey(ShareDefine.Def_Notify_WorldKey_FBFuncState % ChConfig.Def_FBMapID_FamilyParty) | 
|---|
|  |  |  | if state != 1: | 
|---|
|  |  |  | if state != AnswerState: | 
|---|
|  |  |  | return | 
|---|
|  |  |  | allQuestionIDList = IpyGameDataPY.GetConfigEx('AllQuestionID') | 
|---|
|  |  |  | ipyMgr = IpyGameDataPY.IPY_Data() | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | gameWorld = GameWorld.GetGameWorld() | 
|---|
|  |  |  | state = gameWorld.GetDictByKey(ShareDefine.Def_Notify_WorldKey_FBFuncState % ChConfig.Def_FBMapID_FamilyParty) | 
|---|
|  |  |  | if state != 1: | 
|---|
|  |  |  | if state != AnswerState: | 
|---|
|  |  |  | return | 
|---|
|  |  |  |  | 
|---|
|  |  |  | curFamilyid = curPlayer.GetFamilyID() | 
|---|
|  |  |  | 
|---|
|  |  |  | ChContent = GameWorld.CodeToGBK(ChContent) | 
|---|
|  |  |  | ChContent = ChContent.strip() | 
|---|
|  |  |  | isRight = ChContent in answerList | 
|---|
|  |  |  | #    if curPlayer.GetMapID() != ChConfig.Def_FBMapID_FamilyParty: | 
|---|
|  |  |  | #        if isRight: | 
|---|
|  |  |  | #            PlayerControl.FamilyNotify(curFamilyid, 'FamilyPleaseIntoParty') | 
|---|
|  |  |  | #            PlayerControl.NotifyCode(curPlayer, 'FamilyNoIntoParty') | 
|---|
|  |  |  | #        return | 
|---|
|  |  |  | if curPlayer.GetMapID() != ChConfig.Def_FBMapID_FamilyParty: | 
|---|
|  |  |  | if isRight: | 
|---|
|  |  |  | PlayerControl.FamilyNotify(curFamilyid, 'FamilyPleaseIntoParty') | 
|---|
|  |  |  | PlayerControl.NotifyCode(curPlayer, 'FamilyNoIntoParty') | 
|---|
|  |  |  | return | 
|---|
|  |  |  |  | 
|---|
|  |  |  | playerID = curPlayer.GetID() | 
|---|
|  |  |  | GameWorld.DebugLog("    answer=%s  ChContent=%s"%(answerList, ChContent), playerID) | 
|---|