Пример #1
0
    public void SetAbility(int garrAbilityID, FollowerDetailView followerDetailView)
    {
        GarrAbilityRec record = StaticDB.garrAbilityDB.GetRecord(garrAbilityID);

        if (record == null)
        {
            Debug.LogWarning("Invalid garrAbilityID " + garrAbilityID);
            return;
        }
        this.m_abilityNameText.set_text(record.Name);
        this.m_abilityDescription.set_text(WowTextParser.parser.Parse(record.Description, 0));
        this.m_abilityDescription.set_supportRichText(WowTextParser.parser.IsRichText());
        this.m_abilityDisplay.SetAbility(garrAbilityID, true, true, null);
        FollowerInventoryListItem[] componentsInChildren = this.m_equipmentListContent.GetComponentsInChildren <FollowerInventoryListItem>(true);
        FollowerInventoryListItem[] array = componentsInChildren;
        for (int i = 0; i < array.Length; i++)
        {
            FollowerInventoryListItem followerInventoryListItem = array[i];
            Object.DestroyImmediate(followerInventoryListItem.get_gameObject());
        }
        bool        active     = true;
        IEnumerator enumerator = PersistentEquipmentData.equipmentDictionary.get_Values().GetEnumerator();

        try
        {
            while (enumerator.MoveNext())
            {
                MobileFollowerEquipment mobileFollowerEquipment = (MobileFollowerEquipment)enumerator.get_Current();
                GarrAbilityRec          record2 = StaticDB.garrAbilityDB.GetRecord(mobileFollowerEquipment.GarrAbilityID);
                if (record2 != null)
                {
                    if ((record2.Flags & 64u) == 0u)
                    {
                        FollowerInventoryListItem followerInventoryListItem2 = Object.Instantiate <FollowerInventoryListItem>(this.m_equipmentListItemPrefab);
                        followerInventoryListItem2.get_transform().SetParent(this.m_equipmentListContent.get_transform(), false);
                        followerInventoryListItem2.SetEquipment(mobileFollowerEquipment, followerDetailView, garrAbilityID);
                        active = false;
                    }
                }
            }
        }
        finally
        {
            IDisposable disposable = enumerator as IDisposable;
            if (disposable != null)
            {
                disposable.Dispose();
            }
        }
        this.m_noEquipmentMessage.get_gameObject().SetActive(active);
    }
Пример #2
0
    private void UpdateEquipmentDisplay(int garrAbilityID, FollowerDetailView followerDetailView)
    {
        FollowerInventoryListItem[] componentsInChildren = this.m_equipmentListContent.GetComponentsInChildren <FollowerInventoryListItem>(true);
        FollowerInventoryListItem[] array = componentsInChildren;
        for (int i = 0; i < array.Length; i++)
        {
            FollowerInventoryListItem followerInventoryListItem = array[i];
            Object.DestroyImmediate(followerInventoryListItem.get_gameObject());
        }
        bool        active     = true;
        IEnumerator enumerator = PersistentEquipmentData.equipmentDictionary.get_Values().GetEnumerator();

        try
        {
            while (enumerator.MoveNext())
            {
                MobileFollowerEquipment mobileFollowerEquipment = (MobileFollowerEquipment)enumerator.get_Current();
                GarrAbilityRec          record = StaticDB.garrAbilityDB.GetRecord(mobileFollowerEquipment.GarrAbilityID);
                if (record != null)
                {
                    if ((record.Flags & 64u) == 0u)
                    {
                        FollowerInventoryListItem followerInventoryListItem2 = Object.Instantiate <FollowerInventoryListItem>(this.m_equipmentListItemPrefab);
                        followerInventoryListItem2.get_transform().SetParent(this.m_equipmentListContent.get_transform(), false);
                        followerInventoryListItem2.SetEquipment(mobileFollowerEquipment, followerDetailView, garrAbilityID);
                        active = false;
                    }
                }
            }
        }
        finally
        {
            IDisposable disposable = enumerator as IDisposable;
            if (disposable != null)
            {
                disposable.Dispose();
            }
        }
        this.m_noEquipmentMessage.get_gameObject().SetActive(active);
    }
Пример #3
0
    private void UpdateEquipmentDisplay(int garrAbilityID, FollowerDetailView followerDetailView)
    {
        FollowerInventoryListItem[] componentsInChildren = this.m_equipmentListContent.GetComponentsInChildren <FollowerInventoryListItem>(true);
        foreach (FollowerInventoryListItem followerInventoryListItem in componentsInChildren)
        {
            Object.DestroyImmediate(followerInventoryListItem.gameObject);
        }
        bool        active     = true;
        IEnumerator enumerator = PersistentEquipmentData.equipmentDictionary.Values.GetEnumerator();

        try
        {
            while (enumerator.MoveNext())
            {
                object obj = enumerator.Current;
                MobileFollowerEquipment mobileFollowerEquipment = (MobileFollowerEquipment)obj;
                GarrAbilityRec          record = StaticDB.garrAbilityDB.GetRecord(mobileFollowerEquipment.GarrAbilityID);
                if (record != null)
                {
                    if ((record.Flags & 64u) == 0u)
                    {
                        FollowerInventoryListItem followerInventoryListItem2 = Object.Instantiate <FollowerInventoryListItem>(this.m_equipmentListItemPrefab);
                        followerInventoryListItem2.transform.SetParent(this.m_equipmentListContent.transform, false);
                        followerInventoryListItem2.SetEquipment(mobileFollowerEquipment, followerDetailView, garrAbilityID);
                        active = false;
                    }
                }
            }
        }
        finally
        {
            IDisposable disposable;
            if ((disposable = (enumerator as IDisposable)) != null)
            {
                disposable.Dispose();
            }
        }
        this.m_noEquipmentMessage.gameObject.SetActive(active);
    }
    public void Init(FollowerDetailView followerDetailView, int abilityToReplace)
    {
        this.m_followerDetailView = followerDetailView;
        this.m_abilityToReplace   = abilityToReplace;
        FollowerInventoryListItem[] componentsInChildren = this.m_equipmentInventoryContent.GetComponentsInChildren <FollowerInventoryListItem>(true);
        foreach (FollowerInventoryListItem followerInventoryListItem in componentsInChildren)
        {
            Object.DestroyImmediate(followerInventoryListItem.gameObject);
        }
        int         num        = 0;
        IEnumerator enumerator = PersistentEquipmentData.equipmentDictionary.Values.GetEnumerator();

        try
        {
            while (enumerator.MoveNext())
            {
                object obj = enumerator.Current;
                MobileFollowerEquipment item = (MobileFollowerEquipment)obj;
                if (num == 0)
                {
                    GameObject gameObject = Object.Instantiate <GameObject>(this.m_headerPrefab);
                    gameObject.transform.SetParent(this.m_equipmentInventoryContent.transform, false);
                    FollowerInventoryListItem component = gameObject.GetComponent <FollowerInventoryListItem>();
                    component.SetHeaderText("Equipment");
                }
                GameObject gameObject2 = Object.Instantiate <GameObject>(this.m_followerInventoryListItemPrefab);
                gameObject2.transform.SetParent(this.m_equipmentInventoryContent.transform, false);
                FollowerInventoryListItem component2 = gameObject2.GetComponent <FollowerInventoryListItem>();
                component2.SetEquipment(item, followerDetailView, abilityToReplace);
                num++;
            }
        }
        finally
        {
            IDisposable disposable;
            if ((disposable = (enumerator as IDisposable)) != null)
            {
                disposable.Dispose();
            }
        }
        if (num == 0)
        {
            GameObject gameObject3 = Object.Instantiate <GameObject>(this.m_headerPrefab);
            gameObject3.transform.SetParent(this.m_equipmentInventoryContent.transform, false);
            FollowerInventoryListItem component3 = gameObject3.GetComponent <FollowerInventoryListItem>();
            component3.SetHeaderText(StaticDB.GetString("NO_EQUIPMENT", null));
        }
        int         num2        = 0;
        IEnumerator enumerator2 = PersistentArmamentData.armamentDictionary.Values.GetEnumerator();

        try
        {
            while (enumerator2.MoveNext())
            {
                object obj2 = enumerator2.Current;
                MobileFollowerArmamentExt item2 = (MobileFollowerArmamentExt)obj2;
                if (num2 == 0)
                {
                    GameObject gameObject4 = Object.Instantiate <GameObject>(this.m_headerPrefab);
                    gameObject4.transform.SetParent(this.m_equipmentInventoryContent.transform, false);
                    FollowerInventoryListItem component4 = gameObject4.GetComponent <FollowerInventoryListItem>();
                    component4.SetHeaderText("Armaments");
                }
                GameObject gameObject5 = Object.Instantiate <GameObject>(this.m_followerInventoryListItemPrefab);
                gameObject5.transform.SetParent(this.m_equipmentInventoryContent.transform, false);
                FollowerInventoryListItem component5 = gameObject5.GetComponent <FollowerInventoryListItem>();
                component5.SetArmament(item2, followerDetailView);
                num2++;
            }
        }
        finally
        {
            IDisposable disposable2;
            if ((disposable2 = (enumerator2 as IDisposable)) != null)
            {
                disposable2.Dispose();
            }
        }
        if (num == 0)
        {
            GameObject gameObject6 = Object.Instantiate <GameObject>(this.m_headerPrefab);
            gameObject6.transform.SetParent(this.m_equipmentInventoryContent.transform, false);
            FollowerInventoryListItem component6 = gameObject6.GetComponent <FollowerInventoryListItem>();
            component6.SetHeaderText(StaticDB.GetString("NO_ARMAMENTS", null));
        }
    }
Пример #5
0
    public void Init(FollowerDetailView followerDetailView, int abilityToReplace)
    {
        this.m_followerDetailView = followerDetailView;
        this.m_abilityToReplace   = abilityToReplace;
        FollowerInventoryListItem[] componentsInChildren = this.m_equipmentInventoryContent.GetComponentsInChildren <FollowerInventoryListItem>(true);
        FollowerInventoryListItem[] array = componentsInChildren;
        for (int i = 0; i < array.Length; i++)
        {
            FollowerInventoryListItem followerInventoryListItem = array[i];
            Object.DestroyImmediate(followerInventoryListItem.get_gameObject());
        }
        int         num        = 0;
        IEnumerator enumerator = PersistentEquipmentData.equipmentDictionary.get_Values().GetEnumerator();

        try
        {
            while (enumerator.MoveNext())
            {
                MobileFollowerEquipment item = (MobileFollowerEquipment)enumerator.get_Current();
                if (num == 0)
                {
                    GameObject gameObject = Object.Instantiate <GameObject>(this.m_headerPrefab);
                    gameObject.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false);
                    FollowerInventoryListItem component = gameObject.GetComponent <FollowerInventoryListItem>();
                    component.SetHeaderText("Equipment");
                }
                GameObject gameObject2 = Object.Instantiate <GameObject>(this.m_followerInventoryListItemPrefab);
                gameObject2.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false);
                FollowerInventoryListItem component2 = gameObject2.GetComponent <FollowerInventoryListItem>();
                component2.SetEquipment(item, followerDetailView, abilityToReplace);
                num++;
            }
        }
        finally
        {
            IDisposable disposable = enumerator as IDisposable;
            if (disposable != null)
            {
                disposable.Dispose();
            }
        }
        if (num == 0)
        {
            GameObject gameObject3 = Object.Instantiate <GameObject>(this.m_headerPrefab);
            gameObject3.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false);
            FollowerInventoryListItem component3 = gameObject3.GetComponent <FollowerInventoryListItem>();
            component3.SetHeaderText(StaticDB.GetString("NO_EQUIPMENT", null));
        }
        int         num2        = 0;
        IEnumerator enumerator2 = PersistentArmamentData.armamentDictionary.get_Values().GetEnumerator();

        try
        {
            while (enumerator2.MoveNext())
            {
                MobileFollowerArmament item2 = (MobileFollowerArmament)enumerator2.get_Current();
                if (num2 == 0)
                {
                    GameObject gameObject4 = Object.Instantiate <GameObject>(this.m_headerPrefab);
                    gameObject4.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false);
                    FollowerInventoryListItem component4 = gameObject4.GetComponent <FollowerInventoryListItem>();
                    component4.SetHeaderText("Armaments");
                }
                GameObject gameObject5 = Object.Instantiate <GameObject>(this.m_followerInventoryListItemPrefab);
                gameObject5.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false);
                FollowerInventoryListItem component5 = gameObject5.GetComponent <FollowerInventoryListItem>();
                component5.SetArmament(item2, followerDetailView);
                num2++;
            }
        }
        finally
        {
            IDisposable disposable2 = enumerator2 as IDisposable;
            if (disposable2 != null)
            {
                disposable2.Dispose();
            }
        }
        if (num == 0)
        {
            GameObject gameObject6 = Object.Instantiate <GameObject>(this.m_headerPrefab);
            gameObject6.get_transform().SetParent(this.m_equipmentInventoryContent.get_transform(), false);
            FollowerInventoryListItem component6 = gameObject6.GetComponent <FollowerInventoryListItem>();
            component6.SetHeaderText(StaticDB.GetString("NO_ARMAMENTS", null));
        }
    }