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