コード例 #1
0
    // Update is called once per frame
    void FixedUpdate()
    {
        timer = hudTimer.solveFTimer();
        if (threat.ini)
        {
            //if (!CheckcachedDistance(testDistance))
            //{
            threat.SetThreatDistance(testDistance);
            cachedDistance = testDistance;
            //Debug.Log("cached");
            // }



            threat.UpdateHud(timer);
            //TMP = threat.GetDebugTMP();
            //debugArrowTimer = threat.GetArrowTimer();
            //debugGetSetEnergy = threat.GetSetEnergy();
        }
        else if (!threat.ini)
        {
            threat.SetHudType(hudTypes.combat);
            threat.SetThreatDistance(10f);
            cachedDistance = 10;
        }

        if (hudBall.ballini)
        {
            if (!checkCachedBombs(bombs) || !checkCachedPB(PBamount))
            {
                hudBall.SetBombParams(PBamount, 1, bombs, false);
                cachedBombs = bombs;
                cachedPBs   = PBamount;
            }
        }
        else if (!hudBall.ballini)
        {
            hudBall.SetBombParams(1, 1, 3, true);
            cachedBombs = 3;
            cachedPBs   = 1;
        }

        if (hudMissiles.missIni == true)
        {
            hudMissiles.UpdateHud(timer);
            if (!checkCachedmissiles(currMiss))
            {
                hudMissiles.SetNumMissiles(currMiss);
                hudMissiles.SetIsMissilesActive(true);
                if (!missileTimerRunning)
                {
                    missileTimerRunning = true;
                }
                else
                {
                    mRenderTime = 0;
                }

                cachedCurrMis = currMiss;
            }
            missActiveTimer();
            debugMissilesActive = hudMissiles.GetIsMissilesActive();
            if (!checkCachedMaxmissiles(maxMiss))
            {
                hudMissiles.SetMissileCapacity(maxMiss);
                cachedMaxMiss = maxMiss;
            }
            //invStatus = hudMissiles.GetInvStatus();

            //warningPulse = hudMissiles.debugWarnPulse;
            //missileAlpha = hudMissiles.debugMissileWarningAlpha;
        }
        else if (!hudMissiles.missIni)
        {
            hudMissiles.missInit(5, 5, false);
            cachedCurrMis = 5;
            cachedMaxMiss = 5;
        }

        if (hudHealth.initHealth)
        {
            hudHealth.SetEnergyLow(IsEnergyLow());
            //if (hudAnimator)
            //{
            //if (IsEnergyLow())
            //  hudAnimator.StopPlayback();
            //else
            //      hudAnimator.StartPlayback();

            //}
            //else
            //{
            UpdateEnergyLow(tempTimer());
            hudHealth.UpdateHud(timer, energyLowPulse);
            //}



            //DebugWarningPulse = energyLowPulse;
            //debugLowTimer = energyLowTimer;


            if (!checkCachedEnergy(currEnergy))
            {
                hudHealth.SetCurrEnergy(currEnergy, false);
                cachedCurrEnergy = currEnergy;
            }
            if (!checkCachedtanks(numTanks))
            {
                hudHealth.SetNumFilledEnergyTanks(numTanks);
                cachedNumTanks = numTanks;
            }
            if (!checkCachedTotalTanks(totalTanks))
            {
                hudHealth.SetNumTotalEnergyTanks(totalTanks);
                cachedTotalTanks = totalTanks;
            }
            if (!checkCachedHudType(hudType))
            {
                hudHealth.setHudType(hudType);
                cachedHudType = hudType;
            }

            //if (!chechCachedHealthP(HealthP)&&hudHealth.GetCalculateMode()==hudEnergyBar.CalculateMode.manual)
            //{
            //    hudHealth.SetHealthP(HealthP);
            //    cachedHealthP = HealthP;
            //}
        }
        else if (!hudHealth.initHealth)
        {
            if (hudType == hudTypes.combat)
            {
                hudHealth.initValues(hudTypes.combat, 100f, 6, 1, false);
            }
            else
            {
                hudHealth.initValues(hudType, 100f, 6, 1, false);
            }
            cachedCurrEnergy = 100;
            cachedNumTanks   = 0;
            cachedTotalTanks = 6;
            cachedHudType    = hudType;
        }

        if (hudBossEnergy.bossIni && activeBoss == true)
        {
            if (!chechCachedBossHealth(bossHealth))
            {
                hudBossEnergy.SetCurrHealth(bossHealth);


                debugBossHealth    = hudBossEnergy.GetCurrentHealth();
                debugBossMaxHealth = hudBossEnergy.GetMaxEnergy();
            }
            //if (!chechCachedBossP(bossHealthP))
            //{
            //    hudBossEnergy.SetHealthPer(bossHealthP);
            //    cachedBossHealthP = bossHealthP;
            //}
            hudBossEnergy.SetAlpha(bossAlpha(timer));
            hudBossEnergy.hudUpdate(timer);
            //debugColor = hudBossEnergy.debugColor;
        }
        else if (!hudBossEnergy.bossIni && activeBoss == true)
        {
            boss.SetActive(true);
            hudBossEnergy.SetBossParams(true, "Example Name", "Example Sub", bossHealth, 100f);
            cachedBossHealth = bossHealth;
        }
        else if (activeBoss == false)
        {
            boss.SetActive(false);
        }
        if (hudType == hudTypes.combat)
        {
            BallHud.SetActive(false);
            if (!CombatHud.activeInHierarchy || !Helmet.activeInHierarchy)
            {
                CombatHud.SetActive(true);
                Helmet.SetActive(true);
            }
        }
        else if (hudType == hudTypes.ball)
        {
            CombatHud.SetActive(false);
            Helmet.SetActive(false);
            if (!BallHud.activeInHierarchy)
            {
                BallHud.SetActive(true);
            }
        }
        threat.Draw();
    }