Esempio n. 1
0
        public static Weapon creatRandomLevelWeapon(int level, IFriendly creator = null, float qualityBonus = 0)
        {
            int         numberOfWeponShape = WeaponShapeMasterManager.getInstance().getNumberOfShapes();
            int         shpeRand           = Random.Range(0, numberOfWeponShape);
            WeaponShape shape = WeaponShapeMasterManager.getInstance().getShapeFromId(shpeRand);

            var          weponMaterials = ItemMaterialMasterManager.getInstance().getMaterialFromLevel(level);
            int          materialRand   = Random.Range(0, weponMaterials.Count);
            ItemMaterial material       = weponMaterials[materialRand];

            if (creator == null)
            {
                float dex         = material.getQuality() / 20;
                float diffculty   = shape.getCreatDifficulty();
                float baseQuality = material.getQuality();
                qualityBonus = dex / 2;

                float quality = weaponQualityCaliculate(dex, diffculty, baseQuality, qualityBonus);
                return(new Weapon(shape, material, quality));
            }
            else
            {
                return(creatWeaopn(shape, material, creator, qualityBonus));
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 武器を生成します
        /// </summary>
        /// <returns>生成した武器</returns>
        /// <param name="shape">武器の形状</param>
        /// <param name="material">武器の素材</param>
        /// <param name="creator">武器の作成者</param>
        /// <param name="qualityBonus">品質の補正値</param>
        public static Weapon creatWeaopn(WeaponShape shape, ItemMaterial material, IFriendly creator, float qualityBonus)
        {
            float dex         = creator.getFriendlyAbility(FriendlyAbility.DEX);
            float diffculty   = shape.getCreatDifficulty();
            float baseQuality = material.getQuality();

            float quality = weaponQualityCaliculate(dex, diffculty, baseQuality, qualityBonus);

            return(new Weapon(shape, material, quality));
        }