Пример #1
0
 protected MonsterCreatureObject(SaveData data, MonsterCreatureObjectConfiguration configuration)
     : base(data)
 {
     this.configuration = configuration;
     attackDamage       = configuration.Damage.ToArray();
     hitChance          = configuration.Accuracy;
     lootConfiguration  = configuration.LootConfiguration;
 }
Пример #2
0
        protected MonsterCreatureObject(MonsterCreatureObjectConfiguration configuration)
            : base(configuration.Name, configuration.MaxHealth, configuration.LogicPattern)
        {
            this.configuration = configuration;

            attackDamage      = configuration.Damage.ToArray();
            hitChance         = configuration.Accuracy;
            lootConfiguration = configuration.LootConfiguration;

            if (configuration.BaseProtection != null)
            {
                foreach (var pair in configuration.BaseProtection)
                {
                    BaseProtection.Add(pair.Key, pair.Value);
                }
            }

            if (configuration.StatusesImmunity != null)
            {
                StatusesImmunity.AddRange(configuration.StatusesImmunity);
            }
        }
Пример #3
0
        public ChancesLootGenerator(ILootConfiguration lootConfiguration)
        {
            weaponCountSettings    = GetChanceConfiguration(lootConfiguration.Weapon?.Count);
            weaponRarenessSettings = GetChanceConfiguration(lootConfiguration.Weapon?.Rareness);

            armorCountSettings    = GetChanceConfiguration(lootConfiguration.Armor?.Count);
            armorRarenessSettings = GetChanceConfiguration(lootConfiguration.Armor?.Rareness);
            armorClassSettings    = GetChanceConfiguration(lootConfiguration.Armor?.Class);

            spellBookCountSettings    = GetChanceConfiguration(lootConfiguration.SpellBook?.Count);
            spellBookRarenessSettings = GetChanceConfiguration(lootConfiguration.SpellBook?.Rareness);

            usableCountSettings    = GetChanceConfiguration(lootConfiguration.Usable?.Count);
            usableRarenessSettings = GetChanceConfiguration(lootConfiguration.Usable?.Rareness);

            resourcesCountSettings    = GetChanceConfiguration(lootConfiguration.Resource?.Count);
            resourcesRarenessSettings = GetChanceConfiguration(lootConfiguration.Resource?.Rareness);

            shieldCountSettings    = GetChanceConfiguration(lootConfiguration.Shield?.Count);
            shieldRarenessSettings = GetChanceConfiguration(lootConfiguration.Shield?.Rareness);

            foodCountSettings = GetChanceConfiguration(lootConfiguration.Food?.Count);
        }