public BadgePresentator(BadgePresentation badgePresentation, List <DroppingMothership> droppable, Sprite[] badges, Sprite[] bosses, Sprite[] badgeStands, Sprite[] bossStands) { _badgePresentation = badgePresentation; _droppable = droppable; _badges = badges; _bossBadges = bosses; _badgeStands = badgeStands; _bossStands = bossStands; _badgeSpawner = new UsualBadgeSpawner(); }
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(); }