| | |
| | | updEmblemID = random.choice(defaultEmblemIDList) if defaultEmblemIDList else 0
|
| | | GameWorld.Log("仙盟佩戴徽章过期恢复随机默认徽章! familyID=%s,emblemID=%s,endTime=%s,updEmblemID=%s" % (familyID, emblemID, endTime, updEmblemID))
|
| | | family.SetEmblemID(updEmblemID)
|
| | | family.Broadcast_FamilyChange()
|
| | | PlayerFamily.Broadcast_FamilyChange(familyID, PlayerFamily.FamilyChangeType_EChange)
|
| | | return
|
| | |
|
| | | def GetFamilyEmblemActionData(familyID, emblemID):
|
| | |
| | | familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(familyID, actionType)
|
| | | for index in range(familyAction.Count()):
|
| | | familyActionObj = familyAction.At(index)
|
| | | if emblemID == familyActionObj.GetValue1():
|
| | | if emblemID == GetActionEmblemID(familyActionObj):
|
| | | return familyActionObj
|
| | | return
|
| | |
|
| | |
| | | actionType = ShareDefine.Def_ActionType_FamilyEmblem
|
| | | familyAction = DBDataMgr.GetFamilyActionMgr().GetFamilyAction(familyID, actionType)
|
| | | emblemActionObj = familyAction.AddAction()
|
| | | emblemActionObj.SetTime(curTime)
|
| | | emblemActionObj.SetFamilyId(familyID)
|
| | | emblemActionObj.SetActionType(actionType)
|
| | |
|
| | | if not emblemActionObj:
|
| | | return
|
| | |
| | | SetActionEmblemEndTime(emblemActionObj, updEndTime)
|
| | |
|
| | | # ֪ͨ
|
| | | #PlayerFamilyAction.SendFamilyAction(emblemActionObj)
|
| | | PlayerFamily.SendFamilyAction(emblemActionObj)
|
| | | return emblemActionObj
|
| | |
|
| | | def OnChangeFamilyEmblem(curPlayer, emblemID):
|
| | | def OnChangeFamilyEmblem(curPlayer, emblemID, emblemWord=""):
|
| | | ## 修改仙盟徽章
|
| | | playerID = curPlayer.GetPlayerID()
|
| | | familyID = curPlayer.GetFamilyID()
|
| | | familyManager = PlayerFamily.GetFamilyMgr()
|
| | | curFamily = familyManager.FindFamily(familyID)
|
| | | if familyID <= 0:
|
| | | return
|
| | | familyMgr = DBDataMgr.GetFamilyMgr()
|
| | | curFamily = familyMgr.FindFamily(familyID)
|
| | | if not curFamily:
|
| | | return
|
| | | familyID = curFamily.GetID()
|
| | | |
| | | if curFamily.GetLeaderID() != playerID:
|
| | | GameWorld.DebugLog("只有盟主可以修改徽章!", playerID)
|
| | | return
|
| | |
| | | GameWorld.Log("该徽章已过期! familyID=%s,emblemID=%s,endTime=%s" % (familyID, emblemID, endTime))
|
| | | return
|
| | |
|
| | | GameWorld.DebugLog("更换仙盟徽章! familyID=%s,emblemID=%s" % (familyID, emblemID), playerID)
|
| | | GameWorld.DebugLog("更换仙盟徽章! familyID=%s,emblemID=%s,emblemWord=%s" % (familyID, emblemID, GameWorld.CodeToGbk(emblemWord)), playerID)
|
| | | curFamily.SetEmblemID(emblemID)
|
| | | #PlayerFamily.SendPack_MapServer_PlayerFamilyRefresh(curFamily)
|
| | | curFamily.Broadcast_FamilyChange()
|
| | | return
|
| | | if emblemWord:
|
| | | curFamily.SetEmblemWord(emblemWord)
|
| | | PlayerFamily.Sync_FamilyInfo(curPlayer)
|
| | | PlayerFamily.Broadcast_FamilyChange(familyID, PlayerFamily.FamilyChangeType_EChange, excludeIDList=[playerID])
|
| | | return True
|