void Start() { this.particleSystemPool = new UnityObjectPool(HitParticleSystem, ParticleSystemPoolSize, IsParticlePoolItemAvailabile); this.audioSourcePool = new UnityObjectPool(this.gameObject, typeof(AudioSource), AudioSourcePoolSize, IsAudioSourcePoolItemAvailable); this.HitBubble.SetActive(false); this.hitBubblePool = new UnityObjectPool(HitBubble, HitBubblePoolSize, IsHitBubblePoolItemAvailable); }
public ComboHitSequenceController(UnityObjectPool hitZonePool, UnityObjectPool bonusBubblePool, UnityObjectPool hitFeedbackBubblePool, GameObject boss, Canvas canvas, float baseHitZoneZPosition) { this.hitZonePool = hitZonePool; this.bonusBubblePool = bonusBubblePool; this.hitFeedbackBubblePool = hitFeedbackBubblePool; this.boss = boss; this.canvas = canvas; this.baseHitZoneZPosition = baseHitZoneZPosition; }
private void InitSequenceController() { UnityObjectPool hitZonePool = new UnityObjectPool(ComboHitZone, ComboHitZonePoolSize, IsComboHitZonePoolItemAvailableCallback); UnityObjectPool bonusBubblePool = new UnityObjectPool(ComboBonusBubble, ComboBonusBubblePoolSize, IsComboBonusBubblePoolItemAvailableCallback); UnityObjectPool hitFeedbackBubblePool = new UnityObjectPool(HitFeedbackBubble, HitFeedbackBubblePoolSize, IsHitFeedbackBubblePoolItemAvailableCallback); hitSequenceController = new ComboHitSequenceController(hitZonePool, bonusBubblePool, hitFeedbackBubblePool, Boss, Canvas, ComboHitZone.transform.localPosition.z); hitSequenceController.OnHitZoneClicked += HitZoneClickedEventHandler; hitSequenceController.OnSequenceAchieved += SequenceAchievedCallbackEventHandler; hitSequenceController.OnSequenceTerminated += SequenceTerminatedEventHandler; }