コード例 #1
0
        private void OnTerminated(Component component)
        {
            AlwaysShowChanged -= SetAlwaysShow;
            SettingsChanged   -= OnSettingsChanged;
            CombatEncounter.AnyCombatTurnStarted -= OnAnyCombatTurnStartedOrEnded;
            CombatEncounter.AnyCombatTurnEnded   -= OnAnyCombatTurnStartedOrEnded;

            this.health.Damaged       -= OnDamage;
            this.health.HealthChanged -= OnHealthChanged;
            this.health.ShieldChanged -= OnHealthChanged;
            this.health.Terminated    -= OnTerminated;

            this.resources.ActionPointsChanged -= OnActionPointsChanged;

            this.unit.OwnerChanged -= OnOwnerChanged;

            foreach (var behaviourView in this.behaviourViews)
            {
                behaviourView.Terminate();
            }

            this.behaviourViews.Clear();

            Terminate();
        }
コード例 #2
0
        private void OnTerminated(Component component)
        {
            var experienceComponent = this.character.Entity.GetComponent <ExperienceComponent>();

            experienceComponent.Terminated         -= OnTerminated;
            experienceComponent.Experience.LevelUp -= OnLevelUp;

            this.pendingRewards.Clear();
        }
コード例 #3
0
        private void OnComponentInitialized(Component component)
        {
            var unit = component as UnitComponent;

            if (unit == null)
            {
                return;
            }

            Entities.Add(unit.gameObject);
        }
コード例 #4
0
        private void OnComponentInitialized(Component component)
        {
            var health = component as HealthComponent;

            if (health == null || health.gameObject.IsDummy() || CharacterManager.Instance.Character == null || health.gameObject.IsCharacter())
            {
                return;
            }

            Timer.Instance.WaitForFixedUpdate(() =>
            {
                Instantiate(this.healthBarPrefab, this.canvas.transform).Initialize(health);
            });
        }
コード例 #5
0
        private void OnComponentInitialized(Component component)
        {
            var spellbook = component as SpellbookComponent;

            if (spellbook == null || spellbook.gameObject.IsDummy() || !IsAppropriateGameState())
            {
                return;
            }

            Timer.Instance.WaitForFixedUpdate(() =>
            {
                Instantiate(this.actionBarPrefab, this.canvas.transform).Initialize(spellbook);
            });
        }
コード例 #6
0
        private void OnTerminated(Component component)
        {
            AlwaysShowToggled -= SetAlwaysShow;
            SettingsChanged   -= OnSettingsChanged;

            this.spellbook.Terminated     -= OnTerminated;
            this.spellbook.SkillLearned   -= OnSkillLearned;
            this.spellbook.SkillUnlearned -= OnSkillUnlearned;

            foreach (var skill in this.skills)
            {
                skill.Terminate();
            }

            Terminate();
        }
コード例 #7
0
 private void OnComponentTerminated(Component component)
 {
     Entities.Remove(component.gameObject);
 }
コード例 #8
0
 private void OnTerminated(Component component)
 {
     this.equipment.ItemEquipped   -= OnItemEquipped;
     this.equipment.ItemUnequipped -= OnItemUnequipped;
     this.equipment.Terminated     -= OnTerminated;
 }