Example #1
0
        public static string GetEBonusText(EBonusType bt)
        {
            switch (bt)
            {
            case EBonusType.Taxed: return("apliek ar nod.");

            case EBonusType.NoSAI: return("nav SI");

            case EBonusType.AuthorsFees: return("autoraltlīdzība");

            case EBonusType.MinusBeforeIIN: return("atv. pirms IIN");

            case EBonusType.MinusAfterIIN: return("atv. pēc IIN");

            case EBonusType.NotTaxed: return("naeapliek ar nod.");

            case EBonusType.PfTaxed: return("PF apliek. daļa");

            case EBonusType.PfNotTaxed: return("PF neapliek. daļa");

            case EBonusType.LiTaxed: return("Dz.apdr. apliek. daļa");

            case EBonusType.LiNotTaxed: return("Dz.apdr. neapliek. daļa");

            case EBonusType.HiTaxed: return("Dz.apdr. bez līdz uzrk. apliek. daļa");

            case EBonusType.HiNotTaxed: return("Dz.apdr. bez līdz uzrk. neapliek. daļa");

            case EBonusType.ReverseCalc: return("Aprēķins no izmaksas.");

            default:
                return("");
            }
        }
Example #2
0
    public void PickUpBonus(EBonusType type)
    {
        switch (type)
        {
        case EBonusType.None:
            Debug.LogError("This bonus has no type.");
            break;

        case EBonusType.Power:
            UpdatePower(1);
            break;

        case EBonusType.Bomb:
            UpdateMaxBombCount(1);
            break;

        case EBonusType.Speed:
            UpdateSpeedBonus(1);
            break;

        case EBonusType.Bad:
            // TODO
            break;

        case EBonusType.Score:
            UpdateScore(1);
            break;

        default:
            Debug.LogError("Unknow bonus type.");
            break;
        }

        OnPickUpBonus?.Invoke(this, type);
    }
Example #3
0
        public static EBonusFrom[] GetAllowedEBonusFrom(EBonusType bt)
        {
            switch (bt)
            {
            case EBonusType.Taxed:
                return(AllowedEBonusFrom1);

            case EBonusType.NoSAI:
            case EBonusType.AuthorsFees:
            case EBonusType.MinusBeforeIIN:
                return(AllowedEBonusFrom2);

            case EBonusType.NotTaxed:
            case EBonusType.MinusAfterIIN:
                return(AllowedEBonusFrom3);

            case EBonusType.PfTaxed:
            case EBonusType.PfNotTaxed:
            case EBonusType.LiTaxed:
            case EBonusType.LiNotTaxed:
            case EBonusType.HiTaxed:
            case EBonusType.HiNotTaxed:
                return(AllowedEBonusFromP);

            default:
                return(AllowedEBonusFrom0);
            }
        }
Example #4
0
 public static bool HasSAI(EBonusType e)
 {
     return(e == EBonusType.Taxed ||
            e == EBonusType.PfTaxed ||
            e == EBonusType.LiTaxed ||
            e == EBonusType.HiTaxed);
 }
Example #5
0
 public static bool HasIIN(EBonusType e)
 {
     return(e == EBonusType.Taxed ||
            e == EBonusType.PfTaxed ||
            e == EBonusType.LiTaxed ||
            e == EBonusType.HiTaxed ||
            e == EBonusType.NoSAI);
 }
Example #6
0
    public void Initalize(List <EBonusType> availableBonusType)
    {
        _type = availableBonusType[Random.Range(0, availableBonusType.Count)];

        _normalSpriteRenderer.sprite      = _bonusSpritesDictionary[_type].NormalSprite;
        _highlightedSpriteRenderer.sprite = _bonusSpritesDictionary[_type].HighlightedSprite;

        _isInvincible = true;
    }
Example #7
0
    private void OnBonusFinished(EBonusType eBonusType)
    {
        int iIndex = (int)eBonusType;

        //
        // Check if already registered
        bool bRegistered = m_abCurrentBonuses[iIndex];

        //
        // Unregister bonus
        m_abCurrentBonuses[iIndex] = false;

        //
        // Remove bonus effect
        if (bRegistered)
        {
            RemoveBonus(m_aCurrentBonuses[iIndex]);
        }
    }
Example #8
0
    public void SpawnBonus(EBonusType eBonusType)
    {
        GameObject prefabToInstanciate = null;

        switch (eBonusType)
        {
        case EBonusType.power:                  { prefabToInstanciate = bonusPrefabPower;                 break; }

        case EBonusType.speed:                  { prefabToInstanciate = bonusPrefabSpeed;                 break; }

        case EBonusType.shield:                 { prefabToInstanciate = bonusPrefabShield;                break; }

        case EBonusType.invincibility:  { prefabToInstanciate = bonusPrefabInvincibility; break; }

        case EBonusType.triple_jump:    { prefabToInstanciate = bonusPrefabTripleJump;    break; }

        case EBonusType.unlimited_ammo: { prefabToInstanciate = bonusPrefabUnlimitedAmmo; break; }

        default:
        {
            Assert.IsTrue(false);                     // Implement me
            prefabToInstanciate = bonusPrefab;
            break;
        }
        }
        GameObject newBonus = Instantiate <GameObject>(prefabToInstanciate, transform.position, transform.localRotation);

        newBonus.transform.SetParent(m_manager.NewBonusParent.transform, true);

        Bonus bonus = newBonus.GetComponent <Bonus>();

        if (bonus)
        {
            bonus.SetSpawner(this);
            bonus.m_eType = eBonusType;
        }

        m_manager.OnBonusSpawned();
    }
Example #9
0
    public void SpawnRandomBonus()
    {
        EBonusType eBonusType = m_aBonusType[Random.Range(0, m_aBonusType.Length)];

        SpawnBonus(eBonusType);
    }
Example #10
0
 public bool IsBonusEnabled(EBonusType eBonusType)
 {
     return(m_abCurrentBonuses[(int)eBonusType]);
 }