Ejemplo n.º 1
0
        public void Init(BadgeData badgeData, BadgeBusinessRules businessRules)
        {
            _badgeData          = badgeData;
            _badgeBusinessRules = businessRules;

            if (_badgeSpriteComponents.Contains(_badgeSprite) == false)
            {
                throw new Exception("BadgeSticker is not assigned!");
            }
            _badgeSpriteComponents[_badgeSpriteComponents.IndexOf(_badgeSprite)] = _badgeSprite;
        }
Ejemplo n.º 2
0
        public void Init(PlayerData playerData, AutomationsData automationsData, BadgeData badgeData)
        {
            _badgeSprites      = new Sprite[_badges.spriteCount];
            _bossSprites       = new Sprite[_bossBadges.spriteCount];
            _bossStandSprites  = new Sprite[_bossStands.spriteCount];
            _badgeStandSprites = new Sprite[_badgeStands.spriteCount];

            _badges.GetSprites(_badgeSprites);
            _bossBadges.GetSprites(_bossSprites);
            _badgeStands.GetSprites(_badgeStandSprites);
            _bossStands.GetSprites(_bossStandSprites);

            _bossCountdown.Init();

            _badgeBusinessInput = new BadgeBusinessRules(playerData,
                                                         badgeData,
                                                         automationsData,
                                                         _bossCountdown);

            _badgePresentation = GetComponent <BadgePresentation>();
            _badgePresentation.Init(badgeData, _badgeBusinessInput);

            foreach (var mothership in _droppingMotherships)
            {
                mothership.Init(badgeData, playerData);
            }


            _badgeBusinessInput.CreateBadgeEvent += CreateBadge;
            _badgeBusinessInput.CreateBossEvent  += CreateBoss;
            _badgeBusinessInput.BadgeCreated     += OnBadgeCreated;
            _bossCountdown.BossNotDefeated       += OnBossNotDefeated;

            _badgeProgressPresentation.Init(badgeData);
            _hitDamageSpawner.Init(automationsData);
            _badgeBusinessInput.CreateNewBadge();
        }