| | |
| | | }
|
| | | }
|
| | |
|
| | | //<FamilyID,<ActionType,<EmblemId,FamilyAction>>>
|
| | | public Dictionary<int, Dictionary<int, Dictionary<int, HA403_tagGCFamilyActionInfo.tagGCFamilyAction>>> familyActions = new Dictionary<int, Dictionary<int, Dictionary<int, HA403_tagGCFamilyActionInfo.tagGCFamilyAction>>>();
|
| | | //<EmblemId,FamilyAction>
|
| | | Dictionary<int, HA403_tagGCFamilyActionInfo.tagGCFamilyAction> familyActions = new Dictionary<int, HA403_tagGCFamilyActionInfo.tagGCFamilyAction>();
|
| | |
|
| | | public event Action ChooseEmblemIdChangeEvent; //切换标签页
|
| | | public event Action<int, int> UpdateFamilyActionEvent;
|
| | |
| | | private bool TryGetfamilyAction(int emblemId, out HA403_tagGCFamilyActionInfo.tagGCFamilyAction familyAction)
|
| | | {
|
| | | familyAction = new HA403_tagGCFamilyActionInfo.tagGCFamilyAction();
|
| | | int familyId = (int)PlayerDatas.Instance.baseData.FamilyId;
|
| | | if (!familyActions.TryGetValue((int)PlayerDatas.Instance.baseData.FamilyId, out var familyActionDict) || familyActionDict == null)
|
| | | return false;
|
| | | if (!familyActionDict.TryGetValue(FamilyActionsType, out var infoDict) || infoDict == null)
|
| | | return false;
|
| | | if (!infoDict.TryGetValue(emblemId, out var info) || info == null)
|
| | | if (!familyActions.TryGetValue(emblemId, out var info) || info == null)
|
| | | return false;
|
| | | familyAction = info;
|
| | | return true;
|
| | |
| | | return true;
|
| | | }
|
| | |
|
| | | internal void UpdateFamilyAction(HA403_tagGCFamilyActionInfo vNetData)
|
| | | public void UpdateFamilyAction(HA403_tagGCFamilyActionInfo vNetData)
|
| | | {
|
| | | if (!familyActions.ContainsKey((int)vNetData.FamilyID))
|
| | | {
|
| | | familyActions[(int)vNetData.FamilyID] = new Dictionary<int, Dictionary<int, HA403_tagGCFamilyActionInfo.tagGCFamilyAction>>();
|
| | | }
|
| | | if (!familyActions[(int)vNetData.FamilyID].ContainsKey(vNetData.ActionType))
|
| | | {
|
| | | familyActions[(int)vNetData.FamilyID][vNetData.ActionType] = new Dictionary<int, HA403_tagGCFamilyActionInfo.tagGCFamilyAction>();
|
| | | }
|
| | | if (vNetData.ActionType != FamilyActionsType || PlayerDatas.Instance.baseData == null || (int)vNetData.FamilyID != (int)PlayerDatas.Instance.baseData.FamilyId)
|
| | | return;
|
| | | for (int i = 0; i < vNetData.FamilyActionList.Length; i++)
|
| | | {
|
| | | HA403_tagGCFamilyActionInfo.tagGCFamilyAction familyAction = vNetData.FamilyActionList[i];
|
| | | familyActions[(int)vNetData.FamilyID][vNetData.ActionType][(int)familyAction.Value1] = familyAction;
|
| | | familyActions[(int)familyAction.Value1] = familyAction;
|
| | | }
|
| | | UpdateFamilyActionEvent?.Invoke((int)vNetData.FamilyID, vNetData.ActionType);
|
| | | }
|