V Jednote ako môžem zastaviť večné matematika závierky?

0

Otázka

Otázka je jednoduchá, ale nemôžem pre život mi, na to prísť.

Moja logika ide, ako je tento

// Static floats are StatBase.maxHealth = 0 and rStat.maxHealth = 70

class rStat : Monobehaviour
{

    
    public bool nomatter = false;

    void Update()
    {
        if (Input.GetMouseButtonDown(0))
        {
            nomatter = true;
        }


        if (nomatter == true)
        {
            healthcalc();
        }

        void healthcalc()
        {
         StatBase.maxHealth += rstat.maxHealth; // StatBase.maxHealth should = 70 but the 
                                                // number never stops adding

         nomatter = false;

        }
    }
}
c# if-statement static unity3d
2021-11-24 04:05:05
1

Najlepšiu odpoveď

0

Aby som bol úprimný, že logika je dosť divné.

Prečo sa to bool vlajka ak ste už majú jeden, ktorý chcete zákona o? Môžete jednoducho urobiť

void Update()
{
    if (Input.GetMouseButtonDown(0))
    {
        healthcalc();
    }
}

// in general rather put this on class level and don't nest it under Update
void healthcalc()
{
     StatBase.maxHealth += rstat.maxHealth; 
}

alebo ak tam je iba jeden riadok rovnako aj

void Update()
{
    if (Input.GetMouseButtonDown(0))
    {
        StatBase.maxHealth += rstat.maxHealth;
    }
}
2021-11-24 08:08:45

myši kliknite na položku nie je súčasťou skutočné logike. v hre má hráč kliknite na tlačidlo páči sa mi "prijať" prideliť stat miesto, ktoré sa potom budú zvyšovať, že štatistiky sumu. Môj problém je, že to bolo v metódu aktualizácie, aby to nebolo ohľadu na to, čo som robil, to by vždy byť len aktívne pridávať. Vďaka za odpoveď, aj keď som oceniť pomoc.
joe pace

V iných jazykoch

Táto stránka je v iných jazykoch

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................