Skip to content

Commit 24b25e4

Browse files
committed
Fixes to the digimontypes and their respective mod variants
1 parent afe22d1 commit 24b25e4

3 files changed

Lines changed: 22 additions & 45 deletions

File tree

DigimonWorldNet6/Evolution.Calculator.Core/EvolutionCriteriaCalculation/FromRookieOrChampion/FromRookieOrChampionEvolutionMapper.cs

Lines changed: 2 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
using DigimonWorld.Evolution.Calculator.Core.Interfaces.EvolutionCriteria;
1010
using Shared.Constants;
1111
using Shared.Enums;
12+
using Shared.Extensions;
1213
using Shared.Services;
1314

1415
namespace DigimonWorld.Evolution.Calculator.Core.EvolutionCriteriaCalculation.FromRookieOrChampion;
@@ -84,32 +85,8 @@ public FromRookieOrChampionEvolutionMapper()
8485

8586
public List<IEvolutionCriteria> GetEvolutionCriteria(DigimonName digimonName)
8687
{
87-
const GameVariant patchFlags =
88-
GameVariant.MyotismonPatch | GameVariant.PanjyamonPatch;
89-
90-
bool isVice = _gameVariant.HasFlag(GameVariant.Vice);
91-
GameVariant activePatches = _gameVariant & patchFlags;
92-
9388
List<KeyValuePair<DigimonType, IEnumerable<IEvolutionCriteria>>> candidates = _fromRookieOrChampionEvolutionMappings
94-
.Where(e =>
95-
{
96-
DigimonType type = e.Key;
97-
98-
bool matchesDigimon =
99-
type.Digimon == digimonName;
100-
101-
bool matchesVariant =
102-
isVice
103-
? type.IncludeGameVariantFlags.HasFlag(GameVariant.Vice)
104-
: type.IncludeGameVariantFlags.HasFlag(GameVariant.Original);
105-
106-
bool matchesPatches =
107-
isVice
108-
? (type.IncludeGameVariantFlags & patchFlags) == activePatches
109-
: (type.IncludeGameVariantFlags & patchFlags) == 0;
110-
111-
return matchesDigimon && matchesVariant && matchesPatches;
112-
})
89+
.Where(e => e.Key.IncludeGameVariantFlags.IsAvailableIn(e.Key.ExcludeGameVariantFlags, _gameVariant) && e.Key.Digimon == digimonName)
11390
.ToList();
11491

11592
return candidates.Single().Value.ToList();

DigimonWorldNet6/Shared.Tests/Constants/DigimonTypesTests.cs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ public class DigimonTypesTests
88
{
99
#region DigimonNameCollections
1010

11-
private static readonly DigimonName[] AllOriginalDigimonNames =
11+
private static readonly DigimonName[] _allOriginalDigimonNames =
1212
[
1313
DigimonName.Agumon,
1414
DigimonName.Airdramon,
@@ -73,7 +73,7 @@ public class DigimonTypesTests
7373
DigimonName.Yuramon
7474
];
7575

76-
private static readonly DigimonName[] AllViceDigimonNames = AllOriginalDigimonNames
76+
private static readonly DigimonName[] _allViceDigimonNames = _allOriginalDigimonNames
7777
.Concat([
7878
DigimonName.Weregarurumon,
7979
DigimonName.Gigadramon,
@@ -82,7 +82,7 @@ public class DigimonTypesTests
8282
])
8383
.ToArray();
8484

85-
private static readonly DigimonName[] AllMyotismonPatchDigimonNames = AllOriginalDigimonNames
85+
private static readonly DigimonName[] _allMyotismonPatchDigimonNames = _allOriginalDigimonNames
8686
.Concat([
8787
DigimonName.Weregarurumon,
8888
DigimonName.Gigadramon,
@@ -91,7 +91,7 @@ public class DigimonTypesTests
9191
])
9292
.ToArray();
9393

94-
private static readonly DigimonName[] AllPanjyamonPatchDigimonNames = AllOriginalDigimonNames
94+
private static readonly DigimonName[] _allPanjyamonPatchDigimonNames = _allOriginalDigimonNames
9595
.Concat([
9696
DigimonName.Gigadramon,
9797
DigimonName.MetalEtemon,
@@ -100,7 +100,7 @@ public class DigimonTypesTests
100100
])
101101
.ToArray();
102102

103-
private static readonly DigimonName[] AllMyotismonAndPanjyamonPatchDigimonNames = AllOriginalDigimonNames
103+
private static readonly DigimonName[] _allMyotismonAndPanjyamonPatchDigimonNames = _allOriginalDigimonNames
104104
.Concat([
105105
DigimonName.Gigadramon,
106106
DigimonName.MetalEtemon,
@@ -118,7 +118,7 @@ public void Get_ShouldReturnValidCollectionOfDigimonTypes_WhenGameVariantIsOrigi
118118
IEnumerable<DigimonName> result = DigimonTypes.Get(GameVariant.Original);
119119

120120
// Assert
121-
Assert.That(result, Is.EquivalentTo(AllOriginalDigimonNames));
121+
Assert.That(result, Is.EquivalentTo(_allOriginalDigimonNames));
122122
}
123123

124124
[Test]
@@ -128,7 +128,7 @@ public void Get_ShouldReturnValidCollectionOfDigimonTypes_WhenGameVariantIsVice(
128128
IEnumerable<DigimonName> result = DigimonTypes.Get(GameVariant.Vice);
129129

130130
// Assert
131-
Assert.That(result, Is.EquivalentTo(AllViceDigimonNames));
131+
Assert.That(result, Is.EquivalentTo(_allViceDigimonNames));
132132
}
133133

134134
[Test]
@@ -138,7 +138,7 @@ public void Get_ShouldReturnValidCollectionOfDigimonTypes_WhenGameVariantIsViceM
138138
IEnumerable<DigimonName> result = DigimonTypes.Get(GameVariant.Vice | GameVariant.MyotismonPatch);
139139

140140
// Assert
141-
Assert.That(result, Is.EquivalentTo(AllMyotismonPatchDigimonNames));
141+
Assert.That(result, Is.EquivalentTo(_allMyotismonPatchDigimonNames));
142142
}
143143

144144
[Test]
@@ -148,7 +148,7 @@ public void Get_ShouldReturnValidCollectionOfDigimonTypes_WhenGameVariantIsViceP
148148
IEnumerable<DigimonName> result = DigimonTypes.Get(GameVariant.Vice | GameVariant.PanjyamonPatch);
149149

150150
// Assert
151-
Assert.That(result, Is.EquivalentTo(AllPanjyamonPatchDigimonNames));
151+
Assert.That(result, Is.EquivalentTo(_allPanjyamonPatchDigimonNames));
152152
}
153153

154154
[Test]
@@ -158,6 +158,6 @@ public void Get_ShouldReturnValidCollectionOfDigimonTypes_WhenGameVariantIsViceM
158158
IEnumerable<DigimonName> result = DigimonTypes.Get(GameVariant.Vice | GameVariant.MyotismonPatch | GameVariant.PanjyamonPatch);
159159

160160
// Assert
161-
Assert.That(result, Is.EquivalentTo(AllMyotismonAndPanjyamonPatchDigimonNames));
161+
Assert.That(result, Is.EquivalentTo(_allMyotismonAndPanjyamonPatchDigimonNames));
162162
}
163163
}

DigimonWorldNet6/Shared/Constants/DigimonTypes.cs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public static class DigimonTypes
3131
public static DigimonType Coelamon { get; } = new(49, DigimonName.Coelamon, GameVariant.Original);
3232
public static DigimonType CoelamonVice { get; } = new(49, DigimonName.Coelamon, GameVariant.Vice);
3333

34-
public static DigimonType Devimon { get; } = new(6, DigimonName.Devimon, GameVariant.Original | GameVariant.Vice);
34+
public static DigimonType Devimon { get; } = new(6, DigimonName.Devimon, GameVariant.Original | GameVariant.Vice, GameVariant.MyotismonPatch);
3535
public static DigimonType DevimonMyotismon { get; } = new(6, DigimonName.Devimon, GameVariant.Vice | GameVariant.MyotismonPatch);
3636

3737
public static DigimonType Digitamamon { get; } = new(56, DigimonName.Digitamamon, GameVariant.Original | GameVariant.Vice);
@@ -46,8 +46,8 @@ public static class DigimonTypes
4646
public static DigimonType Frigimon { get; } = new(23, DigimonName.Frigimon, GameVariant.Original);
4747
public static DigimonType FrigimonVice { get; } = new(23, DigimonName.Frigimon, GameVariant.Vice);
4848

49-
public static DigimonType Gabumon { get; } = new(17, DigimonName.Gabumon, GameVariant.Original | GameVariant.Vice);
50-
public static DigimonType GabumonPanjyamon { get; } = new(17, DigimonName.Gabumon, GameVariant.Vice);
49+
public static DigimonType Gabumon { get; } = new(17, DigimonName.Gabumon, GameVariant.Original | GameVariant.Vice, GameVariant.PanjyamonPatch);
50+
public static DigimonType GabumonPanjyamon { get; } = new(17, DigimonName.Gabumon, GameVariant.Vice | GameVariant.PanjyamonPatch);
5151

5252
public static DigimonType Garurumon { get; } = new(22, DigimonName.Garurumon, GameVariant.Original);
5353
public static DigimonType GarurumonVice { get; } = new(22, DigimonName.Garurumon, GameVariant.Vice);
@@ -73,7 +73,7 @@ public static class DigimonTypes
7373

7474
public static DigimonType Leomon { get; } = new(48, DigimonName.Leomon, GameVariant.Original | GameVariant.Vice);
7575

76-
public static DigimonType Machinedramon { get; } = new(62, DigimonName.Machinedramon, GameVariant.Vice);
76+
public static DigimonType Machinedramon { get; } = new(62, DigimonName.Machinedramon, GameVariant.Vice, GameVariant.MyotismonPatch);
7777

7878
public static DigimonType Mamemon { get; } = new(13, DigimonName.Mamemon, GameVariant.Original | GameVariant.Vice);
7979

@@ -96,10 +96,10 @@ public static class DigimonTypes
9696

9797
public static DigimonType Monzaemon { get; } = new(14, DigimonName.Monzaemon, GameVariant.Original | GameVariant.Vice);
9898

99-
public static DigimonType Myotismon { get; } = new(63, DigimonName.Myotismon, GameVariant.Vice);
99+
public static DigimonType Myotismon { get; } = new(63, DigimonName.Myotismon, GameVariant.Vice | GameVariant.MyotismonPatch);
100100

101-
public static DigimonType Nanimon { get; } = new(53, DigimonName.Nanimon, GameVariant.Original | GameVariant.Vice);
102-
public static DigimonType NanimonMyotismon { get; } = new(53, DigimonName.Nanimon, GameVariant.Vice);
101+
public static DigimonType Nanimon { get; } = new(53, DigimonName.Nanimon, GameVariant.Original | GameVariant.Vice, GameVariant.MyotismonPatch);
102+
public static DigimonType NanimonMyotismon { get; } = new(53, DigimonName.Nanimon, GameVariant.Vice | GameVariant.MyotismonPatch);
103103

104104
public static DigimonType Ninjamon { get; } = new(58, DigimonName.Ninjamon, GameVariant.Original | GameVariant.Vice);
105105

@@ -147,15 +147,15 @@ public static class DigimonTypes
147147

148148
public static DigimonType Vademon { get; } = new(28, DigimonName.Vademon, GameVariant.Original | GameVariant.Vice);
149149

150-
public static DigimonType Vegiemon { get; } = new(25, DigimonName.Vegiemon, GameVariant.Original);
151-
public static DigimonType VegiemonVice { get; } = new(25, DigimonName.Vegiemon, GameVariant.Vice);
150+
public static DigimonType Vegiemon { get; } = new(25, DigimonName.Vegiemon, GameVariant.Original, GameVariant.Vice);
151+
public static DigimonType VegiemonVice { get; } = new(25, DigimonName.Vegiemon, GameVariant.Vice, GameVariant.Original | GameVariant.MyotismonPatch);
152152
public static DigimonType VegiemonMyotismon { get; } = new(25, DigimonName.Vegiemon, GameVariant.Vice | GameVariant.MyotismonPatch);
153153

154154
public static DigimonType Whamon { get; } = new(24, DigimonName.Whamon, GameVariant.Original | GameVariant.Vice);
155155

156156
public static DigimonType Yuramon { get; } = new(43, DigimonName.Yuramon, GameVariant.Original | GameVariant.Vice);
157157

158-
public static DigimonType Weregarurumon { get; } = new(63, DigimonName.Weregarurumon, GameVariant.Vice);
158+
public static DigimonType Weregarurumon { get; } = new(63, DigimonName.Weregarurumon, GameVariant.Vice, GameVariant.Original | GameVariant.PanjyamonPatch);
159159

160160
public static IReadOnlyList<DigimonType> AllDigimonTypes { get; } =
161161
[

0 commit comments

Comments
 (0)