示例#1
0
 private void Update()
 {
     this.m_currentVisibleZone = null;
     if (this.m_currentMapMission > 0)
     {
         this.m_secondsMissionHasBeenSelected += Time.deltaTime;
     }
     if (this.m_invasionNotification.gameObject.activeSelf)
     {
         long num = LegionfallData.GetCurrentInvasionExpirationTime() - GarrisonStatus.CurrentTime();
         num = ((num <= 0L) ? 0L : num);
         if (num > 0L)
         {
             this.m_invasionTimeRemainingDuration.FormatDurationString((int)num, false);
             this.m_invasionTimeRemaining.text = this.m_invasionTimeRemainingDuration.DurationString;
         }
         else
         {
             this.m_invasionNotification.gameObject.SetActive(false);
             if (this.m_mapInfo_BrokenIsles.gameObject.activeSelf)
             {
                 this.SetMapViewSize_BrokenIsles();
             }
             else
             {
                 this.SetMapViewSize_Argus();
             }
             Main.instance.RequestWorldQuests();
         }
     }
 }
示例#2
0
    private void HandleInvasionPOIChanged()
    {
        JamMobileAreaPOI currentInvasionPOI = LegionfallData.GetCurrentInvasionPOI();

        if (currentInvasionPOI == null)
        {
            this.m_invasionNotification.gameObject.SetActive(false);
        }
        else
        {
            this.m_invasionNotification.gameObject.SetActive(true);
            this.m_invasionTitle.text = currentInvasionPOI.Description;
            long num = LegionfallData.GetCurrentInvasionExpirationTime() - GarrisonStatus.CurrentTime();
            num = ((num <= 0L) ? 0L : num);
            this.m_invasionTimeRemainingDuration.FormatDurationString((int)num, false);
            this.m_invasionTimeRemaining.text = this.m_invasionTimeRemainingDuration.DurationString;
        }
        if (this.m_mapInfo_BrokenIsles.gameObject.activeSelf)
        {
            this.SetMapViewSize_BrokenIsles();
        }
        else
        {
            this.SetMapViewSize_Argus();
        }
    }
    private void OnEnable()
    {
        this.SetVisibility(LegionfallData.HasAccess());
        PinchZoomContentManager pinchZoomManager = this.m_pinchZoomManager;

        pinchZoomManager.ZoomFactorChanged = (Action <bool>)Delegate.Combine(pinchZoomManager.ZoomFactorChanged, new Action <bool>(this.OnZoomChanged));
        Main instance = Main.instance;

        instance.ContributionInfoChangedAction = (Action)Delegate.Combine(instance.ContributionInfoChangedAction, new Action(this.HandleContributionInfoChanged));
    }
 private void Update()
 {
     if (this.m_invasionZoneNameArea.activeSelf)
     {
         long num = LegionfallData.GetCurrentInvasionExpirationTime() - GarrisonStatus.CurrentTime();
         num = ((num <= 0L) ? 0L : num);
         if (num <= 0L)
         {
             this.m_invasionZoneNameArea.SetActive(false);
             this.m_zoneNameArea.SetActive(this.zoneNameTag.Length > 0);
         }
     }
 }
    private void HandleInvasionPOIChanged()
    {
        JamMobileAreaPOI currentInvasionPOI = LegionfallData.GetCurrentInvasionPOI();

        if (currentInvasionPOI != null && currentInvasionPOI.AreaPoiID == this.m_invasionPOIID)
        {
            this.m_invasionZoneNameArea.SetActive(true);
            this.m_zoneNameArea.SetActive(false);
        }
        else
        {
            this.m_invasionZoneNameArea.SetActive(false);
            this.m_zoneNameArea.SetActive(this.zoneNameTag.Length > 0);
        }
    }
示例#6
0
    public void InitPanel(int contributionID, int questID)
    {
        if (this.m_grayscaleShader != null)
        {
            Material material = new Material(this.m_grayscaleShader);
            this.m_buildingTitleBanner.material = material;
        }
        this.m_questID                    = questID;
        this.m_contributionID             = contributionID;
        this.m_buildingName.font          = GeneralHelpers.LoadFancyFont();
        this.m_buildingState.font         = GeneralHelpers.LoadStandardFont();
        this.m_buildingDescription.font   = GeneralHelpers.LoadStandardFont();
        this.m_costLabel.font             = GeneralHelpers.LoadStandardFont();
        this.m_cost.font                  = GeneralHelpers.LoadStandardFont();
        this.m_contributeButtonLabel.font = GeneralHelpers.LoadStandardFont();
        this.m_cantContributeText.font    = GeneralHelpers.LoadStandardFont();
        this.m_cantContributeText.text    = StaticDB.GetString("CANT_CONTRIBUTE", "You can only contribute when the building is under construction.");
        this.m_healthText.font            = GeneralHelpers.LoadStandardFont();
        this.m_gotLootLabel.font          = GeneralHelpers.LoadStandardFont();
        this.m_gotLootLabel.text          = StaticDB.GetString("YOU_RECEIVED_ITEM", "You received item: (PH)");
        this.m_gotLootItemName.font       = GeneralHelpers.LoadStandardFont();
        this.m_gotLootArea.SetActive(false);
        if (!LegionfallData.legionfallDictionary.ContainsKey(contributionID))
        {
            return;
        }
        MobileContribution contribution = ((LegionfallData.MobileContributionData)LegionfallData.legionfallDictionary[contributionID]).contribution;

        this.m_buildingStateImageFrame_building.gameObject.SetActive(false);
        this.m_buildingStateImageFrame_active.gameObject.SetActive(false);
        this.m_buildingStateImageFrame_underAttack.gameObject.SetActive(false);
        this.m_buildingStateImageFrame_destroyed.gameObject.SetActive(false);
        this.m_contributeArea.SetActive(false);
        this.m_cantContributeArea.SetActive(true);
        this.m_healthText.gameObject.SetActive(true);
        this.m_buildingTitleBanner.material.SetFloat("_GrayscaleAmount", (contribution.State != 4) ? 0f : 1f);
        this.m_buildingTitleBanner.color = ((contribution.State != 4) ? Color.white : Color.gray);
        this.m_progressFillGlow.gameObject.SetActive(false);
        int num;

        switch (contribution.State)
        {
        case 1:
            this.m_progressFillGlow.gameObject.SetActive(true);
            num = contribution.UitextureAtlasMemberIDUnderConstruction;
            this.m_buildingState.text  = StaticDB.GetString("UNDER_CONSTRUCTION", "Under Construction (PH)");
            this.m_buildingState.color = new Color(1f, 0.8235f, 0f, 1f);
            this.m_buildingStateImageFrame_building.gameObject.SetActive(true);
            this.m_contributeArea.SetActive(true);
            this.m_cantContributeArea.SetActive(false);
            this.m_progressFillBar.sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_BarFilling_UnderConstruction");
            break;

        case 2:
            num = contribution.UitextureAtlasMemberIDActive;
            this.m_buildingState.text  = StaticDB.GetString("BUILDING_ACTIVE", "Building Active (PH)");
            this.m_buildingState.color = new Color(0f, 1f, 0f, 1f);
            this.m_buildingStateImageFrame_active.gameObject.SetActive(true);
            this.m_progressFillBar.sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_BarFilling_Active");
            break;

        case 3:
            num = contribution.UitextureAtlasMemberIDUnderAttack;
            this.m_buildingState.text  = StaticDB.GetString("UNDER_ATTACK", "Under Attack (PH)");
            this.m_buildingState.color = new Color(1f, 0f, 0f, 1f);
            this.m_buildingStateImageFrame_underAttack.gameObject.SetActive(true);
            this.m_progressFillBar.sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_BarFilling_UnderAttack");
            break;

        case 4:
            num = contribution.UitextureAtlasMemberIDDestroyed;
            this.m_buildingState.text  = StaticDB.GetString("DESTROYED", "Destroyed (PH)");
            this.m_buildingState.color = new Color(0.6f, 0.6f, 0.6f, 1f);
            this.m_buildingStateImageFrame_destroyed.gameObject.SetActive(true);
            this.m_progressFillBar.sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_BarFilling_UnderConstruction");
            break;

        default:
            return;
        }
        Sprite sprite = null;

        switch (num)
        {
        case 6318:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_CommandCenter_Active-v2");
            break;

        case 6319:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_CommandCenter_Destroyed-v2");
            break;

        case 6320:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_CommandCenter_UnderAttack-v2");
            break;

        case 6321:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_CommandCenter_UnderConstruction-v2");
            break;

        case 6322:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_MageTower_Active-v2");
            break;

        case 6323:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_MageTower_Destroyed-v2");
            break;

        case 6324:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_MageTower_UnderAttack-v2");
            break;

        case 6325:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_MageTower_UnderConstruction-v2");
            break;

        case 6326:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_NetherDisruptor_Active-v2");
            break;

        case 6327:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_NetherDisruptor_Destroyed-v2");
            break;

        case 6328:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_NetherDisruptor_UnderAttack-v2");
            break;

        case 6329:
            sprite = Resources.Load <Sprite>("LegionfallDialog/LegionfallCompanion_NetherDisruptor_UnderConstruction-v2");
            break;
        }
        if (sprite != null)
        {
            this.m_buildingStateImage.sprite = sprite;
        }
        this.m_buildingName.text                 = contribution.Name;
        this.m_buildingDescription.text          = GeneralHelpers.LimitZhLineLength(contribution.Description, 16);
        this.m_progressFillBar.fillAmount        = contribution.UnitCompletion;
        this.m_progressFillGlow.anchorMin        = new Vector2(this.m_progressFillBar.fillAmount, 0.5f);
        this.m_progressFillGlow.anchorMax        = new Vector2(this.m_progressFillBar.fillAmount, 0.5f);
        this.m_progressFillGlow.anchoredPosition = Vector2.zero;
        if (contribution.State == 3)
        {
            this.m_healthText.text = StaticDB.GetString("TIME_LEFT", "Time Left (PH):") + " 123 Hours";
        }
        else
        {
            this.m_healthText.text = ((int)(this.m_progressFillBar.fillAmount * 100f)).ToString() + "%";
        }
        this.m_costLabel.text = StaticDB.GetString("COST", null);
        if (LegionfallData.WarResources() >= contribution.ContributionCurrencyCost)
        {
            this.m_cost.text = LegionfallData.WarResources().ToString("N0") + "/" + contribution.ContributionCurrencyCost;
            this.m_contributeButton.interactable = true;
            this.m_contributeButtonLabel.color   = new Color(1f, 0.859f, 0f, 1f);
        }
        else
        {
            this.m_cost.text = string.Concat(new object[]
            {
                "<color=#ff0000ff>",
                LegionfallData.WarResources().ToString("N0"),
                "</color>/",
                contribution.ContributionCurrencyCost
            });
            this.m_contributeButton.interactable = false;
            this.m_contributeButtonLabel.color   = new Color(0.6f, 0.6f, 0.6f, 1f);
        }
        this.m_currencyIcon.sprite        = GeneralHelpers.LoadCurrencyIcon(contribution.ContributionCurrencyType);
        this.m_contributeButtonLabel.text = StaticDB.GetString("CONTRIBUTE", "Contribute (PH)");
        SpellDisplay[] componentsInChildren = this.m_buffArea.GetComponentsInChildren <SpellDisplay>();
        foreach (SpellDisplay spellDisplay in componentsInChildren)
        {
            Object.DestroyImmediate(spellDisplay.gameObject);
        }
        foreach (int spell2 in contribution.Spell)
        {
            SpellDisplay spellDisplay2 = Object.Instantiate <SpellDisplay>(this.m_legionfallBuffSpellDisplayPrefab);
            spellDisplay2.transform.SetParent(this.m_buffArea, false);
            spellDisplay2.SetSpell(spell2);
            spellDisplay2.SetLocked(contribution.State != 2 && contribution.State != 3);
        }
        iTween.Stop(base.gameObject);
        this.m_progressBarGlow.color      = new Color(1f, 1f, 1f, 0f);
        this.m_progressFillGlowGlow.color = new Color(1f, 1f, 1f, 0f);
    }
 private void HandleContributionInfoChanged()
 {
     this.SetVisibility(LegionfallData.HasAccess());
 }