DexForm progress

This commit is contained in:
JappaWakka 2023-07-15 16:12:17 +02:00
parent 7699621036
commit 6520377758
3 changed files with 23 additions and 14 deletions

View File

@ -51,3 +51,4 @@ Move|42,163
Move|48,319 Move|48,319
Move|54,37 Move|54,37
TradeValue|25 TradeValue|25
DexForms|53

View File

@ -155,6 +155,7 @@
IDs.Add(id) IDs.Add(id)
Next Next
Dim formIDs As New List(Of String)
For Each id As String In IDs For Each id As String In IDs
If id.Contains("_") = False Then If id.Contains("_") = False Then
Dim baseID As String = id.GetSplit(0, "_") Dim baseID As String = id.GetSplit(0, "_")
@ -164,15 +165,16 @@
Dim AdditionalDataForms As List(Of String) = PokemonForms.GetAdditionalDataForms(CInt(baseID)) Dim AdditionalDataForms As List(Of String) = PokemonForms.GetAdditionalDataForms(CInt(baseID))
If AdditionalDataForms IsNot Nothing Then If AdditionalDataForms IsNot Nothing Then
For i = 0 To AdditionalDataForms.Count For i = 0 To AdditionalDataForms.Count - 1
IDs.Add(id & ";" & AdditionalDataForms(i)) formIDs.Add(baseID & ";" & AdditionalDataForms(i))
Next Next
End If End If
End If End If
Next Next
IDs.AddRange(formIDs)
PokemonCount = IDs.Count PokemonCount = IDs.Count
PokemonIDs = (From id In IDs Order By CInt(id.GetSplit(0, "_"))).ToList() PokemonIDs = (From id In IDs Order By CInt(id.GetSplit(0, "_").GetSplit(0, ";"))).ToList()
For i = 0 To PokemonCount - 1 For i = 0 To PokemonCount - 1
Dim entry As String = PokemonIDs(i) Dim entry As String = PokemonIDs(i)

View File

@ -1340,12 +1340,21 @@ Public Class PokedexViewScreen
If Me.Pokemon.DexForms.Count > 0 Then If Me.Pokemon.DexForms.Count > 0 Then
For Each form As String In Me.Pokemon.DexForms For Each form As String In Me.Pokemon.DexForms
Dim formAD As String = "" Dim formID As String = Me.Pokemon.Number.ToString
If form <> " " Then If form <> " " Then
If StringHelper.IsNumeric(form) = False Then
formID &= "_" & form
Else
formID = form
End If
End If
Dim formAD As String = ""
If form <> " " AndAlso StringHelper.IsNumeric(form) = False Then
formAD = PokemonForms.GetAdditionalValueFromDataFile(Me.PokemonID.GetSplit(0, "_") & "_" & form) formAD = PokemonForms.GetAdditionalValueFromDataFile(Me.PokemonID.GetSplit(0, "_") & "_" & form)
End If End If
Dim formpokemon As Pokemon = Pokemon.GetPokemonByID(CInt(Me.PokemonID.GetSplit(0, "_")), formAD) Dim formpokemon As Pokemon = Pokemon.GetPokemonByID(CInt(Me.PokemonID.GetSplit(0, "_")), formAD, True)
If formpokemon.EvolutionConditions.Count > 0 Then If formpokemon.EvolutionConditions.Count > 0 Then
Dim evolutions As New List(Of String) Dim evolutions As New List(Of String)
For Each ev As EvolutionCondition In formpokemon.EvolutionConditions For Each ev As EvolutionCondition In formpokemon.EvolutionConditions
@ -1365,10 +1374,7 @@ Public Class PokedexViewScreen
If vS.maximumLevel < Me.Level + 1 Then If vS.maximumLevel < Me.Level + 1 Then
vS.maximumLevel = Me.Level + 1 vS.maximumLevel = Me.Level + 1
End If End If
Dim formID As String = Me.Pokemon.Number.ToString
If form <> " " Then
formID &= "_" & form
End If
Me.Forms.Add(New EvolutionLinePokemon(Me.Level + 1, formID, vS, "")) Me.Forms.Add(New EvolutionLinePokemon(Me.Level + 1, formID, vS, ""))
@ -1707,9 +1713,11 @@ Public Class PokedexViewScreen
Else Else
Dim connections As New List(Of String) Dim connections As New List(Of String)
Dim levels As New Dictionary(Of Integer, Integer) Dim levels As New Dictionary(Of Integer, Integer)
Dim levelsOffset As New Dictionary(Of Integer, Integer)
For i = minimumLevel To maximumLevel For i = minimumLevel To maximumLevel
levels.Add(i, 0) levels.Add(i, 0)
levelsOffset.Add(i, 0)
Next Next
For i = 0 To EvolutionLines.Count - 1 For i = 0 To EvolutionLines.Count - 1
@ -1730,11 +1738,8 @@ Public Class PokedexViewScreen
connections.Add("-2_-1|" & EvolutionLines(i).Devolution.Devolution.PokemonID.ToString() & "-" & EvolutionLines(i).Devolution.PokemonID.ToString()) connections.Add("-2_-1|" & EvolutionLines(i).Devolution.Devolution.PokemonID.ToString() & "-" & EvolutionLines(i).Devolution.PokemonID.ToString())
levels(-2) += 1 levels(-2) += 1
End If End If
Else ElseIf EvolutionLines(i).Evolutions.Count > 0 Then
If i > 0 AndAlso levels(1) = i + 1 Then levels(0) += 1
levels(0) += 1
levels(1) -= 2
End If
End If End If
For Each evolution As EvolutionLinePokemon In EvolutionLines(i).Evolutions For Each evolution As EvolutionLinePokemon In EvolutionLines(i).Evolutions
@ -1749,6 +1754,7 @@ Public Class PokedexViewScreen
connections.Add("0_0|" & EvolutionLines(i).PokemonID.ToString() & "-" & EvolutionLines(i).PokemonID.ToString()) connections.Add("0_0|" & EvolutionLines(i).PokemonID.ToString() & "-" & EvolutionLines(i).PokemonID.ToString())
levels(0) += 1 levels(0) += 1
End If End If
Next Next
Dim levelDraws As New Dictionary(Of Integer, Integer) Dim levelDraws As New Dictionary(Of Integer, Integer)