Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions SimcProfileParser.Tests/SimcSpellCreationServiceTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,7 @@ public async Task SSC_Creates_Player_Spell_With_Power()
ClassicAssert.AreEqual(33.631460769999997d, spell.Effects[0].ScaleBudget);
}

[Ignore("Was previously tested on Shadowfiend which has been removed. Need a new spell to test this.")]
[Test]
public async Task SSC_Creates_Player_Spell_With_Invalid_Trigger_Spell()
{
Expand Down
41 changes: 20 additions & 21 deletions SimcProfileParser/DataSync/RawDataExtractionService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -666,49 +666,48 @@ internal List<SimcRawSpell> GenerateSpellData(Dictionary<string, string> incomin
// 36 is cast time
spell.CastTime = Convert.ToInt32(data[36]);

// 37 - 51. Next up is something of length NUM_SPELL_FLAGS = 15
spell.Attributes = new uint[15];
// 37 - 53. Next up is something of length NUM_SPELL_FLAGS = 17
spell.Attributes = new uint[17];
for (var i = 0; i < spell.Attributes.Length; i++)
{
spell.Attributes[i] = Convert.ToUInt32(data[i + 37]);
}

// 52 - 55. Next up is something of length NUM_CLASS_FAMILY_FLAGS = 4
// 54 - 57. Next up is something of length NUM_CLASS_FAMILY_FLAGS = 4
spell.ClassFlags = new uint[4];
for (var i = 0; i < spell.ClassFlags.Length; i++)
{
spell.ClassFlags[i] = Convert.ToUInt32(data[i + 52]);
spell.ClassFlags[i] = Convert.ToUInt32(data[i + 54]);
}

// 56 is class flags family
spell.ClassFlagsFamily = Convert.ToUInt32(data[56]);
// 58 is class flags family
spell.ClassFlagsFamily = Convert.ToUInt32(data[58]);

// 57-58 is aura interrupt flags, skip these
// 59-60 is aura interrupt flags, skip these

// 59-60 is channel interrupt flags, skip these
// 61-62 is channel interrupt flags, skip these

// 61 is stance mask
uint.TryParse(data[61].Replace("0x", ""),
// 63 is stance mask
uint.TryParse(data[63].Replace("0x", ""),
System.Globalization.NumberStyles.HexNumber, null, out uint stanceMask);
spell.StanceMask = stanceMask;

// 62 is mechanic
spell.Mechanic = Convert.ToUInt32(data[62]);
// 64 is mechanic
spell.Mechanic = Convert.ToUInt32(data[64]);

// 63 is az power id
spell.PowerId = Convert.ToUInt32(data[63]);
// 65 is az power id
spell.PowerId = Convert.ToUInt32(data[65]);

// 64 is essence id
spell.EssenceId = Convert.ToUInt32(data[64]);
// 66 is essence id
spell.EssenceId = Convert.ToUInt32(data[66]);

// We don't have a practical use for the counts metadata
// 65 is effects count
// 67 is effects count

// 66 is power count
// 68 is power count

// 67 is driver count

// 68 is label count
// 69 is driver count
// 70 is label count

spells.Add(spell);
}
Expand Down
2 changes: 1 addition & 1 deletion SimcProfileParser/Interfaces/DataSync/ICacheService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ internal interface ICacheService
/// <summary>
/// Set the flag to use PTR data for data extraction
/// </summary>
/// <param name="usePtrData">TUE for using PTR data</param>
/// <param name="usePtrData">TRUE for using PTR data</param>
void SetUsePtrData(bool usePtrData);
/// <summary>
/// The github branch name to use for data extraction
Expand Down
8 changes: 4 additions & 4 deletions SimcProfileParser/SimcProfileParser.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,16 @@
<PropertyGroup>
<TargetFrameworks>net9.0</TargetFrameworks>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Version>3.2.0</Version>
<AssemblyVersion>3.2.0</AssemblyVersion>
<FileVersion>3.2.0</FileVersion>
<Version>3.3.0</Version>
<AssemblyVersion>3.3.0</AssemblyVersion>
<FileVersion>3.3.0</FileVersion>
<Authors>Mechanical Priest</Authors>
<Company>Mechanical Priest</Company>
<PackageLicenseExpression>GPL-3.0-only</PackageLicenseExpression>
<RepositoryUrl>https://github.com/MechanicalPriest/SimcProfileParser</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageProjectUrl>https://github.com/MechanicalPriest/SimcProfileParser</PackageProjectUrl>
<Copyright>Copyright © Mechanical Priest 2025</Copyright>
<Copyright>Copyright © Mechanical Priest 2026</Copyright>
<Description>A library to parse the simc WoW addon results into usable objects.</Description>
<Summary>A library to parse the simc WoW addon results into usable objects.</Summary>
<PackageTags>simc warcraft</PackageTags>
Expand Down
Loading