~ruther/NosSmooth

914492570e5f339435d7f1515021788fb9bd7b3a — Rutherther 2 years ago c5234a3
feat(data): add skill cost, item vnum, dash, upgrade
M Data/NosSmooth.Data.Abstractions/Infos/ISkillInfo.cs => Data/NosSmooth.Data.Abstractions/Infos/ISkillInfo.cs +27 -2
@@ 52,7 52,7 @@ public interface ISkillInfo : IVNumInfo
    /// <summary>
    /// Gets whether the skill uses secondary weapon, primary weapon is used if false.
    /// </summary>
    public bool UsesSecondaryWeapon { get; }
    bool UsesSecondaryWeapon { get; }

    /// <summary>
    /// Gets the mana points the skill cast costs.


@@ 77,5 77,30 @@ public interface ISkillInfo : IVNumInfo
    /// <summary>
    /// Gets the element of the skill.
    /// </summary>
    public Element Element { get; }
    Element Element { get; }

    /// <summary>
    /// Gets the cost of the skill.
    /// </summary>
    int SpecialCost { get; }

    /// <summary>
    /// Gets the upgrade skill.
    /// </summary>
    short Upgrade { get; }

    /// <summary>
    /// Gets the upgrade type (morph).
    /// </summary>
    short MorphOrUpgrade { get; }

    /// <summary>
    /// Gets the speed of the dash.
    /// </summary>
    short DashSpeed { get; }

    /// <summary>
    /// Gets vnum of an item that is consumed by the skill.
    /// </summary>
    int ItemVNum { get; }
}
\ No newline at end of file

M Data/NosSmooth.Data.Abstractions/NosSmooth.Data.Abstractions.csproj => Data/NosSmooth.Data.Abstractions/NosSmooth.Data.Abstractions.csproj +2 -2
@@ 7,9 7,9 @@
        <LangVersion>10</LangVersion>
        <RepositoryUrl>https://github.com/Rutherther/NosSmooth/</RepositoryUrl>
        <PackageLicenseExpression>MIT</PackageLicenseExpression>
        <VersionPrefix>2.2.0</VersionPrefix>
        <VersionPrefix>2.2.1</VersionPrefix>
        <TargetFramework>net7.0</TargetFramework>
        <PackageReleaseNotes>Add new skill information: uses secondary weapon, attack type, element</PackageReleaseNotes>
        <PackageReleaseNotes>Add skill morph, special cost, upgrade, dash speed, item vnum.</PackageReleaseNotes>
    </PropertyGroup>

    <ItemGroup>

M Data/NosSmooth.Data.Database/Data/SkillInfo.cs => Data/NosSmooth.Data.Database/Data/SkillInfo.cs +15 -0
@@ 60,6 60,21 @@ public class SkillInfo : ISkillInfo
    public Element Element { get; set; }

    /// <inheritdoc />
    public int SpecialCost { get; set; }

    /// <inheritdoc />
    public short Upgrade { get; set; }

    /// <inheritdoc />
    public short MorphOrUpgrade { get; set; }

    /// <inheritdoc />
    public short DashSpeed { get; set; }

    /// <inheritdoc />
    public int ItemVNum { get; set; }

    /// <inheritdoc />
    public bool UsesSecondaryWeapon { get; set; }

    /// <inheritdoc />

M Data/NosSmooth.Data.Database/DatabaseMigrator.cs => Data/NosSmooth.Data.Database/DatabaseMigrator.cs +7 -1
@@ 144,7 144,13 @@ public class DatabaseMigrator
                ZoneRange = skill.ZoneRange,
                AttackType = skill.AttackType,
                Element = skill.Element,
                UsesSecondaryWeapon = skill.UsesSecondaryWeapon
                UsesSecondaryWeapon = skill.UsesSecondaryWeapon,
                DashSpeed = skill.DashSpeed,
                ItemVNum = skill.ItemVNum,
                MorphOrUpgrade = skill.MorphOrUpgrade,
                Name = skill.Name,
                SpecialCost = skill.SpecialCost,
                Upgrade = skill.Upgrade
            };
            dbContext.Add(skillInfo);
        }

M Data/NosSmooth.Data.Database/NosSmooth.Data.Database.csproj => Data/NosSmooth.Data.Database/NosSmooth.Data.Database.csproj +2 -2
@@ 7,9 7,9 @@
        <LangVersion>10</LangVersion>
        <RepositoryUrl>https://github.com/Rutherther/NosSmooth/</RepositoryUrl>
        <PackageLicenseExpression>MIT</PackageLicenseExpression>
        <VersionPrefix>2.1.0</VersionPrefix>
        <VersionPrefix>2.1.1</VersionPrefix>
        <TargetFramework>net7.0</TargetFramework>
        <PackageReleaseNotes>Add new skill fields.</PackageReleaseNotes>
        <PackageReleaseNotes>Add skill morph, special cost, upgrade, dash speed, item vnum.</PackageReleaseNotes>
    </PropertyGroup>

    <ItemGroup>

M Data/NosSmooth.Data.NOSFiles/NosSmooth.Data.NOSFiles.csproj => Data/NosSmooth.Data.NOSFiles/NosSmooth.Data.NOSFiles.csproj +2 -2
@@ 7,8 7,8 @@
        <LangVersion>10</LangVersion>
        <RepositoryUrl>https://github.com/Rutherther/NosSmooth/</RepositoryUrl>
        <PackageLicenseExpression>MIT</PackageLicenseExpression>
        <VersionPrefix>2.2.1</VersionPrefix>
        <PackageReleaseNotes>Add new skill fields.</PackageReleaseNotes>
        <VersionPrefix>2.2.2</VersionPrefix>
        <PackageReleaseNotes>Add skill morph, special cost, upgrade, dash speed, item vnum.</PackageReleaseNotes>
        <TargetFramework>net7.0</TargetFramework>
    </PropertyGroup>


M Data/NosSmooth.Data.NOSFiles/Parsers/SkillParser.cs => Data/NosSmooth.Data.NOSFiles/Parsers/SkillParser.cs +14 -2
@@ 34,9 34,11 @@ public class SkillParser : IInfoParser<ISkillInfo>
            var typeEntry = item.GetEntry("TYPE");
            var targetEntry = item.GetEntry("TARGET");
            var dataEntry = item.GetEntry("DATA");
            var costEntry = item.GetEntry("COST");

            var vnum = item.GetEntry("VNUM").Read<int>(1);
            var nameKey = item.GetEntry("NAME").Read<string>(1);

            result.Add
            (
                vnum,


@@ 55,7 57,12 @@ public class SkillParser : IInfoParser<ISkillInfo>
                    typeEntry.Read<short>(2),
                    (TargetType)targetEntry.Read<int>(1),
                    (HitType)targetEntry.Read<int>(2),
                    (Element)typeEntry.Read<int>(6)
                    (Element)typeEntry.Read<int>(6),
                    costEntry.Read<int>(1),
                    dataEntry.Read<short>(1),
                    dataEntry.Read<short>(2),
                    dataEntry.Read<short>(10),
                    dataEntry.Read<int>(11)
                )
            );
        }


@@ 78,6 85,11 @@ public class SkillParser : IInfoParser<ISkillInfo>
        short CastId,
        TargetType TargetType,
        HitType HitType,
        Element Element
        Element Element,
        int SpecialCost,
        short Upgrade,
        short MorphOrUpgrade,
        short DashSpeed,
        int ItemVNum
    ) : ISkillInfo;
}
\ No newline at end of file

Do not follow this link