Beispiel #1
0
        public GainsExperience(ActorInitializer init, GainsExperienceInfo info)
        {
            self      = init.Self;
            this.info = info;

            MaxLevel          = info.Conditions.Count;
            initialExperience = init.GetValue <ExperienceInit, int>(info, 0);
        }
Beispiel #2
0
        public GainsExperience(ActorInitializer init, GainsExperienceInfo info)
        {
            self      = init.Self;
            this.info = info;

            MaxLevel = info.Conditions.Count;

            if (init.Contains <ExperienceInit>())
            {
                initialExperience = init.Get <ExperienceInit, int>();
            }
        }
Beispiel #3
0
        public GainsExperience(ActorInitializer init, GainsExperienceInfo info)
        {
            self      = init.Self;
            this.info = info;

            MaxLevel = info.Conditions.Count;
            var cost = self.Info.TraitInfo <ValuedInfo>().Cost;

            foreach (var kv in info.Conditions)
            {
                nextLevel.Add(Pair.New(kv.Key * cost, kv.Value));
            }

            if (init.Contains <ExperienceInit>())
            {
                initialExperience = init.Get <ExperienceInit, int>();
            }
        }
Beispiel #4
0
        public GainsExperience(ActorInitializer init, GainsExperienceInfo info)
        {
            self      = init.Self;
            this.info = info;

            MaxLevel = info.Upgrades.Count;

            var cost = self.Info.Traits.Get <ValuedInfo>().Cost;

            foreach (var kv in info.Upgrades)
            {
                nextLevel.Add(Pair.New(kv.Key * cost, kv.Value));
            }

            if (init.Contains <ExperienceInit>())
            {
                GiveExperience(init.Get <ExperienceInit, int>(), info.SuppressLevelupAnimation);
            }

            um = self.Trait <UpgradeManager>();
        }