* Restructured the code and moved the report creation to an independent module. Moved the IV sorting to the report module. The main module is now only doing IV finding.
* Changed the reported estimated CPs from values to formulas. * Moved the localized Pokémon names from the DialogStrings to AddonConfiguration, so that they can also be used in the report, too. * Changed the report logic to report the estimated maximum CPs of the last evolution forms, instead of several special rules. * Localized the report headers.
This commit is contained in:
parent
4a663f7449
commit
1e9835372f
@ -25,6 +25,7 @@ Type aStats
|
||||
nAttack As Integer
|
||||
nDefense As Integer
|
||||
mEvolved () As String
|
||||
bIsLastForm As Boolean
|
||||
End Type
|
||||
|
||||
' The individual values of a Pokémon.
|
||||
@ -33,15 +34,10 @@ Type aIV
|
||||
nStamina As Integer
|
||||
nAttack As Integer
|
||||
nDefense As Integer
|
||||
' For sorting
|
||||
nTotal As Integer
|
||||
nMaxCP As Integer
|
||||
maEvolved () As aEvolvedStats
|
||||
End Type
|
||||
|
||||
' The calculated evolved stats of a Pokémon.
|
||||
Type aEvolvedStats
|
||||
nCP As Integer
|
||||
nMaxCP As Integer
|
||||
nMaxMaxCP As Integer
|
||||
End Type
|
||||
|
||||
' The parameters to find the individual values.
|
||||
@ -76,49 +72,30 @@ Sub subMain
|
||||
If UBound (maIVs) = -1 Then
|
||||
MsgBox fnGetResString ("ErrorNotFound")
|
||||
Else
|
||||
subSaveIV (aBaseStats, aQuery, maIVs)
|
||||
subCreateReport (aBaseStats, aQuery, maIVs)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' fnFindIV: Finds the possible individual values of the Pokémon
|
||||
Function fnFindIV ( _
|
||||
aBaseStats As aStats, aQuery As aFindIVParam) As Variant
|
||||
Dim nEvolved As Integer
|
||||
Dim maEvBaseStats () As New aStats, aTempStats As New aStats
|
||||
Dim maIV () As New aIV, aTempIV As New aIV
|
||||
Dim maIV () As New aIV, nN As Integer
|
||||
Dim fLevel As Double, nStamina As Integer
|
||||
Dim nAttack As Integer, nDefense As integer
|
||||
Dim nI As Integer, nJ As Integer
|
||||
Dim fStep As Double, nN As Integer, fMaxLevel As Double
|
||||
Dim nI As Integer, nJ As Integer, fLevelStep As Double
|
||||
|
||||
If aQuery.sPokemonId = "" Then
|
||||
fnFindIV = maIV
|
||||
Exit Function
|
||||
End If
|
||||
If aQuery.bIsNew Then
|
||||
fStep = 1
|
||||
fLevelStep = 1
|
||||
Else
|
||||
fStep = 0.5
|
||||
fLevelStep = 0.5
|
||||
End If
|
||||
subReadStardust
|
||||
nEvolved = UBound (aBaseStats.mEvolved)
|
||||
If nEvolved > -1 Then
|
||||
ReDim Preserve maEvBaseStats (nEvolved) As New aStats
|
||||
For nI = 0 To nEvolved
|
||||
aTempStats = fnGetBaseStats (aBaseStats.mEvolved (nI))
|
||||
With maEvBaseStats (nI)
|
||||
.nAttack = aTempStats.nAttack
|
||||
.nDefense = aTempStats.nDefense
|
||||
.nStamina = aTempStats.nStamina
|
||||
End With
|
||||
Next nI
|
||||
End If
|
||||
nN = -1
|
||||
fMaxLevel = aQuery.nPlayerLevel + 1.5
|
||||
If fMaxLevel > 40 Then
|
||||
fMaxLevel = 40
|
||||
End If
|
||||
For fLevel = 1 To UBound (mStardust) Step fStep
|
||||
For fLevel = 1 To UBound (mStardust) Step fLevelStep
|
||||
If mStardust (CInt (fLevel - 0.5)) = aQuery.nStardust Then
|
||||
For nStamina = 0 To 15
|
||||
If fnCalcHP (aBaseStats, fLevel, nStamina) = aQuery.nHP Then
|
||||
@ -133,30 +110,7 @@ Function fnFindIV ( _
|
||||
.nAttack = nAttack
|
||||
.nDefense = nDefense
|
||||
.nStamina = nStamina
|
||||
.nTotal = nAttack _
|
||||
+ nDefense + nStamina
|
||||
End With
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
maIV (nN).nMaxCP = fnCalcCP ( _
|
||||
aBaseStats, fMaxLevel, _
|
||||
nAttack, nDefense, nStamina)
|
||||
End If
|
||||
maIV (nN).maEvolved _
|
||||
= fnGetEvolvedArray (nEvolved)
|
||||
For nI = 0 To nEvolved
|
||||
maIV (nN).maEvolved (nI).nCP _
|
||||
= fnCalcCP ( _
|
||||
maEvBaseStats (nI), _
|
||||
fLevel, nAttack, _
|
||||
nDefense, nStamina)
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
maIV (nN).maEvolved (nI).nMaxCP _
|
||||
= fnCalcCP ( _
|
||||
maEvBaseStats (nI), _
|
||||
fMaxLevel, nAttack, _
|
||||
nDefense, nStamina)
|
||||
End If
|
||||
Next nI
|
||||
End If
|
||||
Next nDefense
|
||||
Next nAttack
|
||||
@ -164,309 +118,9 @@ Function fnFindIV ( _
|
||||
Next nStamina
|
||||
End If
|
||||
Next fLevel
|
||||
' Sorts the IVs
|
||||
For nI = 0 To UBound (maIV) - 1
|
||||
For nJ = nI + 1 To UBound (maIV)
|
||||
If fnCompareIV (maIV (nI), maIV (nJ)) > 0 Then
|
||||
' This is an array of data. The data are actually
|
||||
' allocated in sequences. maIV (nI) is not a
|
||||
' reference. They cannot simply be assigned.
|
||||
subCopyIV (maIV (nI), aTempIV)
|
||||
subCopyIV (maIV (nJ), maIV (nI))
|
||||
subCopyIV (aTempIV, maIV (nJ))
|
||||
End If
|
||||
Next nJ
|
||||
Next nI
|
||||
fnFindIV = maIV
|
||||
End Function
|
||||
|
||||
' fnCompareIV: Compare two IVs for sorting
|
||||
Function fnCompareIV (aIVa As aIV, aIVb As aIV) As Double
|
||||
Dim nCPa As Integer, nCPb As Integer, nI As Integer
|
||||
|
||||
nCPa = aIVa.nMaxCP
|
||||
For nI = 0 To UBound (aIVa.maEvolved)
|
||||
If nCPa < aIVa.maEvolved (nI).nMaxCP Then
|
||||
nCPa = aIVa.maEvolved (nI).nMaxCP
|
||||
End If
|
||||
Next nI
|
||||
nCPb = aIVb.nMaxCP
|
||||
For nI = 0 To UBound (aIVb.maEvolved)
|
||||
If nCPb < aIVb.maEvolved (nI).nMaxCP Then
|
||||
nCPb = aIVb.maEvolved (nI).nMaxCP
|
||||
End If
|
||||
Next nI
|
||||
fnCompareIV = nCPb - nCPa
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
|
||||
nCPa = 0
|
||||
For nI = 0 To UBound (aIVa.maEvolved)
|
||||
If nCPa < aIVa.maEvolved (nI).nCP Then
|
||||
nCPa = aIVa.maEvolved (nI).nCP
|
||||
End If
|
||||
Next nI
|
||||
nCPb = 0
|
||||
For nI = 0 To UBound (aIVb.maEvolved)
|
||||
If nCPb < aIVb.maEvolved (nI).nCP Then
|
||||
nCPb = aIVb.maEvolved (nI).nCP
|
||||
End If
|
||||
Next nI
|
||||
fnCompareIV = nCPb - nCPa
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
|
||||
fnCompareIV = aIVb.nTotal - aIVa.nTotal
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.fLevel - aIVa.fLevel
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nStamina - aIVa.nStamina
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nAttack - aIVa.nAttack
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nDefense - aIVa.nDefense
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
End Function
|
||||
|
||||
' subCopyIV: Copies one IV to another
|
||||
Function subCopyIV (aFrom As aIV, aTo As aIV) As Double
|
||||
Dim nI As Integer
|
||||
|
||||
With aTo
|
||||
.nAttack = aFrom.nAttack
|
||||
.nDefense = aFrom.nDefense
|
||||
.nStamina = aFrom.nStamina
|
||||
.nTotal = aFrom.nTotal
|
||||
.nMaxCP = aFrom.nMaxCP
|
||||
End With
|
||||
aTo.maEvolved = fnGetEvolvedArray (UBound (aFrom.maEvolved))
|
||||
For nI = 0 To UBound (aFrom.maEvolved)
|
||||
With aTo.maEvolved (nI)
|
||||
.nCP = aFrom.maEvolved (nI).nCP
|
||||
.nMaxCP = aFrom.maEvolved (nI).nMaxCP
|
||||
End With
|
||||
Next nI
|
||||
End Function
|
||||
|
||||
' subSaveIV: Saves the found IV
|
||||
Sub subSaveIV ( _
|
||||
aBaseStats As aStats, aQuery As aFindIVParam, maIVs () As aIV)
|
||||
Dim oDoc As Object, oSheet As Object
|
||||
Dim oRange As Object, oColumns As Object, oRows As Object
|
||||
Dim nI As Integer, nJ As Integer, nFront As Integer
|
||||
Dim nEvolved As Integer
|
||||
Dim mData (Ubound (maIVs) + 1) As Variant, mRow () As Variant
|
||||
Dim mProps () As New com.sun.star.beans.PropertyValue
|
||||
|
||||
oDoc = StarDesktop.loadComponentFromURL ( _
|
||||
"private:factory/scalc", "_default", 0, mProps)
|
||||
oSheet = oDoc.getSheets.getByIndex (0)
|
||||
nEvolved = UBound (maIVs (0).maEvolved) + 1
|
||||
|
||||
mRow = Array ( _
|
||||
"No", "Pokemon", "CP", "HP", "Stardust", _
|
||||
"Lv", "Atk", "Def", "Sta", "IV")
|
||||
nFront = UBound (mRow)
|
||||
If aQuery.sPokemonId = "Eevee" Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + 6) As Variant
|
||||
mRow (nFront + 1) = "CP as " _
|
||||
& aBaseStats.mEvolved (0)
|
||||
mRow (nFront + 2) = "Powered-up as " _
|
||||
& aBaseStats.mEvolved (0)
|
||||
mRow (nFront + 3) = "CP as " _
|
||||
& aBaseStats.mEvolved (1)
|
||||
mRow (nFront + 4) = "Powered-up as " _
|
||||
& aBaseStats.mEvolved (1)
|
||||
mRow (nFront + 5) = "CP as " _
|
||||
& aBaseStats.mEvolved (2)
|
||||
mRow (nFront + 6) = "Powered-up as " _
|
||||
& aBaseStats.mEvolved (2)
|
||||
Else
|
||||
ReDim Preserve mRow (nFront + 3) As Variant
|
||||
mRow (nFront + 1) = "CP as " _
|
||||
& aBaseStats.mEvolved (0)
|
||||
mRow (nFront + 2) = "CP as " _
|
||||
& aBaseStats.mEvolved (1)
|
||||
mRow (nFront + 3) = "CP as " _
|
||||
& aBaseStats.mEvolved (2)
|
||||
End If
|
||||
Else
|
||||
If nEvolved = 0 Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + 1) As Variant
|
||||
mRow (nFront + 1) = "Powered-up"
|
||||
End If
|
||||
Else
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + nEvolved + 1) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
mRow (nFront + nJ + 1) = "CP as " _
|
||||
& aBaseStats.mEvolved (nJ)
|
||||
Next nJ
|
||||
mRow (UBound (mRow)) = "Powered-up as " _
|
||||
& aBaseStats.mEvolved (nEvolved - 1)
|
||||
Else
|
||||
ReDim Preserve mRow (nFront + nEvolved) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
mRow (nFront + nJ + 1) = "CP as " _
|
||||
& aBaseStats.mEvolved (nJ)
|
||||
Next nJ
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
mData (0) = mRow
|
||||
|
||||
For nI = 0 To UBound (maIVs)
|
||||
mRow = Array ( _
|
||||
"", "", "", "", "", _
|
||||
maIVs (nI).fLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina, _
|
||||
maIVs (nI).nTotal / 45)
|
||||
If aQuery.sPokemonId = "Eevee" Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + 6) As Variant
|
||||
mRow (nFront + 1) = maIVs (nI).maEvolved (0).nCP
|
||||
mRow (nFront + 2) = maIVs (nI).maEvolved (0).nMaxCP
|
||||
mRow (nFront + 3) = maIVs (nI).maEvolved (1).nCP
|
||||
mRow (nFront + 4) = maIVs (nI).maEvolved (1).nMaxCP
|
||||
mRow (nFront + 5) = maIVs (nI).maEvolved (2).nCP
|
||||
mRow (nFront + 6) = maIVs (nI).maEvolved (2).nMaxCP
|
||||
Else
|
||||
ReDim Preserve mRow (nFront + 3) As Variant
|
||||
mRow (nFront + 1) = maIVs (nI).maEvolved (0).nCP
|
||||
mRow (nFront + 2) = maIVs (nI).maEvolved (1).nCP
|
||||
mRow (nFront + 3) = maIVs (nI).maEvolved (2).nCP
|
||||
End If
|
||||
Else
|
||||
If nEvolved = 0 Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + 1) As Variant
|
||||
mRow (nFront + 1) = maIVs (nI).nMaxCP
|
||||
End If
|
||||
Else
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + nEvolved + 1) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
mRow (nFront + nJ + 1) = maIVs (nI).maEvolved (nJ).nCP
|
||||
Next nJ
|
||||
mRow (UBound (mRow)) = maIVs (nI).maEvolved (nEvolved - 1).nMaxCP
|
||||
Else
|
||||
ReDim Preserve mRow (nFront + nEvolved) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
mRow (nFront + nJ + 1) = maIVs (nI).maEvolved (nJ).nCP
|
||||
Next nJ
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
mData (nI + 1) = mRow
|
||||
Next nI
|
||||
|
||||
' Fills the query information at the first row
|
||||
mData (1) (0) = aBaseStats.sNo
|
||||
mData (1) (1) = aQuery.sPokemonName
|
||||
mData (1) (2) = aQuery.nCP
|
||||
mData (1) (3) = aQuery.nHP
|
||||
mData (1) (4) = aQuery.nStardust
|
||||
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
0, 0, UBound (mData (0)), UBound (mData))
|
||||
oRange.setDataArray (mData)
|
||||
oRange.setPropertyValue ("VertJustify", _
|
||||
com.sun.star.table.CellVertJustify.TOP)
|
||||
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
0, 1, 0, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
1, 1, 1, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
2, 1, 2, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
3, 1, 3, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
4, 1, 4, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
9, 1, 9, UBound (mData))
|
||||
oRange.setPropertyValue ("NumberFormat", 10)
|
||||
|
||||
If aQuery.sPokemonId = "Eevee" Then
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
10, 0, 15, 0)
|
||||
Else
|
||||
If nEvolved = 0 Then
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
10, 0, 10, 0)
|
||||
Else
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
10, 0, 10 + nEvolved + 1, 0)
|
||||
End If
|
||||
End If
|
||||
oRange.setPropertyValue ("IsTextWrapped", True)
|
||||
|
||||
oRows = oSheet.getRows
|
||||
oRows.getByIndex (0).setPropertyValue ("Height", 840)
|
||||
oColumns = oSheet.getColumns
|
||||
oColumns.getByIndex (0).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (1).setPropertyValue ("Width", 2310)
|
||||
oColumns.getByIndex (2).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (3).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (4).setPropertyValue ("Width", 1780)
|
||||
oColumns.getByIndex (5).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (6).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (7).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (8).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (9).setPropertyValue ("Width", 1030)
|
||||
If aQuery.sPokemonId = "Eevee" Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
For nI = 0 To 5 Step 2
|
||||
oColumns.getByIndex (10 + nI).setPropertyValue ( _
|
||||
"Width", 2310)
|
||||
oColumns.getByIndex (10 + nI + 1).setPropertyValue ( _
|
||||
"Width", 2810)
|
||||
Next nI
|
||||
Else
|
||||
For nI = 0 To 2
|
||||
oColumns.getByIndex (10 + nI).setPropertyValue ( _
|
||||
"Width", 2310)
|
||||
Next nI
|
||||
End If
|
||||
Else
|
||||
If nEvolved = 0 Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
oColumns.getByIndex (10).setPropertyValue ( _
|
||||
"Width", 2200)
|
||||
End If
|
||||
Else
|
||||
For nI = 0 To nEvolved - 1
|
||||
oColumns.getByIndex (10 + nI).setPropertyValue ( _
|
||||
"Width", 2310)
|
||||
Next nI
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
oColumns.getByIndex ( _
|
||||
10 + nEvolved).setPropertyValue ( _
|
||||
"Width", 2810)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' fnFilterAppraisals: Filters the IV by the appraisals.
|
||||
Function fnFilterAppraisals (aQuery As aFindIVParam, _
|
||||
nAttack As Integer, nDefense As Integer, _
|
||||
@ -585,8 +239,8 @@ Function fnGetCPM (fLevel As Double) As Double
|
||||
If CInt (fLevel) = fLevel Then
|
||||
fnGetCPM = mCPM (fLevel)
|
||||
Else
|
||||
fnGetCPM = ((mCpm (fLevel - 0.5) ^ 2 _
|
||||
+ mCpm (fLevel + 0.5) ^ 2) / 2) ^ 0.5
|
||||
fnGetCPM = ((mCPM (fLevel - 0.5) ^ 2 _
|
||||
+ mCPM (fLevel + 0.5) ^ 2) / 2) ^ 0.5
|
||||
End If
|
||||
End Function
|
||||
|
||||
@ -595,56 +249,6 @@ Function fnFloor (fNumber As Double) As Integer
|
||||
fnFloor = CInt (fNumber - 0.5)
|
||||
End Function
|
||||
|
||||
' fnMapPokemonIdToName: Maps the Pokémon IDs to their localized names.
|
||||
Function fnMapPokemonIdToName (sId As String) As String
|
||||
fnMapPokemonIdToName = fnGetResString ("Pokemon" & sId)
|
||||
End Function
|
||||
|
||||
' subReadBaseStats: Reads the base stats table.
|
||||
Sub subReadBaseStats
|
||||
Dim mData As Variant, nI As Integer, nJ As Integer
|
||||
DIm nEvolved As Integer
|
||||
|
||||
If UBound (maBaseStats) = -1 Then
|
||||
mData = fnGetBaseStatsData
|
||||
ReDim Preserve maBaseStats (UBound (mData)) As New aStats
|
||||
For nI = 0 To UBound (mData)
|
||||
With maBaseStats (nI)
|
||||
.sNo = mData (nI) (1)
|
||||
.sPokemonId = mData (nI) (0)
|
||||
.nStamina = mData (nI) (2)
|
||||
.nAttack = mData (nI) (3)
|
||||
.nDefense = mData (nI) (4)
|
||||
End With
|
||||
nEvolved = UBound (mData (nI) (5))
|
||||
maBaseStats (nI).mEvolved = fnGetStringArray (nEvolved)
|
||||
For nJ = 0 To nEvolved
|
||||
maBaseStats (nI).mEvolved (nJ) = mData (nI) (5) (nJ)
|
||||
Next nJ
|
||||
Next nI
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' fnGetStringArray: Obtains a blank string array
|
||||
Function fnGetStringArray (nUBound As Integer) As Variant
|
||||
Dim mData () As String
|
||||
|
||||
If nUBound >= 0 Then
|
||||
ReDim Preserve mData (nUBound) As String
|
||||
End If
|
||||
fnGetStringArray = mData
|
||||
End Function
|
||||
|
||||
' fnGetEvolvedArray: Obtains a blank aEvolvedStats array
|
||||
Function fnGetEvolvedArray (nUBound As Integer) As Variant
|
||||
Dim mData () As New aEvolvedStats
|
||||
|
||||
If nUBound >= 0 Then
|
||||
ReDim Preserve mData (nUBound) As New aEvolvedStats
|
||||
End If
|
||||
fnGetEvolvedArray = mData
|
||||
End Function
|
||||
|
||||
' fnReplace: Replaces all occurrances of a term to another.
|
||||
Function fnReplace ( _
|
||||
sText As String, sFrom As String, sTo As String) As String
|
||||
@ -660,6 +264,37 @@ Function fnReplace ( _
|
||||
fnReplace = sResult
|
||||
End Function
|
||||
|
||||
' subReadBaseStats: Reads the base stats table.
|
||||
Sub subReadBaseStats
|
||||
Dim mData As Variant, nI As Integer, nJ As Integer, nK As Integer
|
||||
Dim nEvolved As Integer, mEvolved () As Variant
|
||||
|
||||
If UBound (maBaseStats) = -1 Then
|
||||
mData = fnGetBaseStatsData
|
||||
ReDim Preserve maBaseStats (UBound (mData)) As New aStats
|
||||
For nI = 0 To UBound (mData)
|
||||
With maBaseStats (nI)
|
||||
.sNo = mData (nI) (1)
|
||||
.sPokemonId = mData (nI) (0)
|
||||
.nStamina = mData (nI) (2)
|
||||
.nAttack = mData (nI) (3)
|
||||
.nDefense = mData (nI) (4)
|
||||
End With
|
||||
nEvolved = UBound (mData (nI) (5)) + 1
|
||||
mEvolved = Array ()
|
||||
maBaseStats (nI).bIsLastForm = True
|
||||
If nEvolved > 0 Then
|
||||
ReDim mEvolved (nEvolved - 1) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
mEvolved (nJ) = mData (nI) (5) (nJ)
|
||||
Next nJ
|
||||
maBaseStats (nI).mEvolved = mEvolved
|
||||
maBaseStats (nI).bIsLastForm = False
|
||||
End If
|
||||
Next nI
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' subReadCPM: Reads the CPM table.
|
||||
Sub subReadCPM
|
||||
If UBound (mCPM) = -1 Then
|
||||
|
@ -50,6 +50,19 @@ Function fnAskParam As aFindIVParam
|
||||
oDialog.getControl ("cbxBest3").setVisible (False)
|
||||
oDialog.getControl ("lstMax").setVisible (False)
|
||||
|
||||
' Adds the Pokémons by their localized names.
|
||||
subReadBaseStats
|
||||
ReDim mPokemons (UBound (maBaseStats)) As String
|
||||
For nI = 0 To UBound (maBaseStats)
|
||||
mPokemons (nI) = fnGetResString ( _
|
||||
"Pokemon" & maBaseStats (nI).sPokemonId)
|
||||
Next nI
|
||||
oList = oDialog.getControl ("lstPokemon")
|
||||
If oList.getItemCount > 0 Then
|
||||
getItemCount.removeItems (0, oList.getItemCount)
|
||||
End If
|
||||
oList.addItems (mPokemons, 0)
|
||||
|
||||
oDialog.getControl ("imgPokemon").getModel.setPropertyValue ( _
|
||||
"ImageURL", fnGetImageUrl ("Unknown"))
|
||||
oDialog.getControl ("imgTeamLogo").getModel.setPropertyValue ( _
|
||||
|
379
PokemonGoIV/2Report.vb
Normal file
379
PokemonGoIV/2Report.vb
Normal file
@ -0,0 +1,379 @@
|
||||
' Copyright (c) 2017 imacat.
|
||||
'
|
||||
' Licensed under the Apache License, Version 2.0 (the "License");
|
||||
' you may not use this file except in compliance with the License.
|
||||
' You may obtain a copy of the License at
|
||||
'
|
||||
' http://www.apache.org/licenses/LICENSE-2.0
|
||||
'
|
||||
' Unless required by applicable law or agreed to in writing, software
|
||||
' distributed under the License is distributed on an "AS IS" BASIS,
|
||||
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
' See the License for the specific language governing permissions and
|
||||
' limitations under the License.
|
||||
|
||||
' 2Report: The Pokémon GO IV report generator.
|
||||
' by imacat <imacat@mail.imacat.idv.tw>, 2017-06-07
|
||||
|
||||
Option Explicit
|
||||
|
||||
' The base stats of a Pokémon.
|
||||
Type aStats
|
||||
sNo As String
|
||||
sPokemonId As String
|
||||
nStamina As Integer
|
||||
nAttack As Integer
|
||||
nDefense As Integer
|
||||
mEvolved () As String
|
||||
End Type
|
||||
|
||||
' The individual values of a Pokémon.
|
||||
Type aIV
|
||||
fLevel As Double
|
||||
nStamina As Integer
|
||||
nAttack As Integer
|
||||
nDefense As Integer
|
||||
' For sorting
|
||||
nTotal As Integer
|
||||
nMaxCP As Integer
|
||||
nMaxMaxCP As Integer
|
||||
End Type
|
||||
|
||||
' The parameters to find the individual values.
|
||||
Type aFindIVParam
|
||||
sPokemonId As String
|
||||
sPokemonName As String
|
||||
nCP As Integer
|
||||
nHP As Integer
|
||||
nStardust As Integer
|
||||
nPlayerLevel As Integer
|
||||
bIsNew As Boolean
|
||||
nTotal As Integer
|
||||
sBest As String
|
||||
nMax As Integer
|
||||
bIsCancelled As Boolean
|
||||
End Type
|
||||
|
||||
' subCreateReport: Creates the Pokémon GO IV report.
|
||||
Sub subCreateReport ( _
|
||||
aBaseStats As aStats, aQuery As aFindIVParam, maIVs () As aIV)
|
||||
Dim oDoc As Object, oSheet As Object
|
||||
Dim oRange As Object, oColumns As Object, oRows As Object
|
||||
Dim oCell As Object, sFormula As String
|
||||
Dim nI As Integer, nJ As Integer, nCol As Integer
|
||||
Dim nLeadCols As Integer, nTotalCols As Integer
|
||||
Dim nEvolved As Integer, fMaxLevel As Double
|
||||
Dim sCPM As String, sMaxCPM As String
|
||||
Dim sColIVAttack As String, sColIVDefense As String
|
||||
Dim sColIVStamina As String
|
||||
Dim sPokemonName As String
|
||||
Dim mData (Ubound (maIVs) + 1) As Variant, mRow () As Variant
|
||||
Dim maEvBaseStats () As Variant
|
||||
Dim mProps () As New com.sun.star.beans.PropertyValue
|
||||
|
||||
oDoc = StarDesktop.loadComponentFromURL ( _
|
||||
"private:factory/scalc", "_default", 0, mProps)
|
||||
oSheet = oDoc.getSheets.getByIndex (0)
|
||||
|
||||
nEvolved = UBound (aBaseStats.mEvolved) + 1
|
||||
If nEvolved > 0 Then
|
||||
ReDim maEvBaseStats (nEvolved - 1) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
maEvBaseStats (nJ) = fnGetBaseStats (aBaseStats.mEvolved (nJ))
|
||||
Next nJ
|
||||
End If
|
||||
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
fMaxLevel = aQuery.nPlayerLevel + 1.5
|
||||
If fMaxLevel > 40 Then
|
||||
fMaxLevel = 40
|
||||
End If
|
||||
Else
|
||||
fMaxLevel = 40
|
||||
End If
|
||||
sMaxCPM = fnGetCPMFormula (fMaxLevel)
|
||||
|
||||
' Sorts the IVs
|
||||
subSortIVs (aBaseStats, maEvBaseStats, maIVs, fMaxLevel)
|
||||
|
||||
' Fills in the report data.
|
||||
mRow = Array ( _
|
||||
fnGetResString ("ReportNo"), _
|
||||
fnGetResString ("ReportPokemon"), _
|
||||
fnGetResString ("ReportCP"), _
|
||||
fnGetResString ("ReportHP"), _
|
||||
fnGetResString ("ReportStardust"), _
|
||||
fnGetResString ("ReportLevel"), _
|
||||
fnGetResString ("ReportAttack"), _
|
||||
fnGetResString ("ReportDefense"), _
|
||||
fnGetResString ("ReportStamina"), _
|
||||
fnGetResString ("ReportIVPercent"))
|
||||
nLeadCols = UBound (mRow) + 1
|
||||
|
||||
nTotalCols = nLeadCols
|
||||
If aBaseStats.bIsLastForm Then
|
||||
nTotalCols = nTotalCols + 1
|
||||
End If
|
||||
For nJ = 0 To nEvolved - 1
|
||||
nTotalCols = nTotalCols + 1
|
||||
If maEvBaseStats (nJ).bIsLastForm Then
|
||||
nTotalCols = nTotalCols + 1
|
||||
End If
|
||||
Next nJ
|
||||
|
||||
ReDim Preserve mRow (nTotalCols - 1) As Variant
|
||||
nCol = nLeadCols
|
||||
If aBaseStats.bIsLastForm Then
|
||||
mRow (nCol) = fnReplace (fnGetResString ("ReportCPPowerUp"), _
|
||||
"[Level]", fMaxLevel)
|
||||
nCol = nCol + 1
|
||||
End If
|
||||
For nJ = 0 To nEvolved - 1
|
||||
sPokemonName = fnGetResString ( _
|
||||
"Pokemon" & aBaseStats.mEvolved (nJ))
|
||||
mRow (nCol) = fnReplace (fnGetResString ("ReportCPEvolve"), _
|
||||
"[Pokémon]", sPokemonName)
|
||||
nCol = nCol + 1
|
||||
If maEvBaseStats (nJ).bIsLastForm Then
|
||||
mRow (nCol) = fnReplace (fnReplace ( _
|
||||
fnGetResString ("ReportCPEvolvePowerUp"), _
|
||||
"[Pokémon]", sPokemonName), _
|
||||
"[Level]", fMaxLevel)
|
||||
End If
|
||||
Next nJ
|
||||
mData (0) = mRow
|
||||
|
||||
For nI = 0 To UBound (maIVs)
|
||||
mRow = Array ( _
|
||||
"", "", "", "", "", _
|
||||
maIVs (nI).fLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina, "")
|
||||
ReDim Preserve mRow (nTotalCols - 1) As Variant
|
||||
For nJ = nLeadCols To nEvolved - 1
|
||||
mRow (nJ) = ""
|
||||
Next nJ
|
||||
mData (nI + 1) = mRow
|
||||
Next nI
|
||||
|
||||
' Fills the query information at the first row
|
||||
mData (1) (0) = aBaseStats.sNo
|
||||
mData (1) (1) = aQuery.sPokemonName
|
||||
mData (1) (2) = aQuery.nCP
|
||||
mData (1) (3) = aQuery.nHP
|
||||
mData (1) (4) = aQuery.nStardust
|
||||
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
0, 0, UBound (mData (0)), UBound (mData))
|
||||
oRange.setDataArray (mData)
|
||||
oRange.setPropertyValue ("VertJustify", _
|
||||
com.sun.star.table.CellVertJustify.TOP)
|
||||
|
||||
' Fills in the CP calculation.
|
||||
For nI = 0 To UBound (maIVs)
|
||||
sCPM = fnGetCPMFormula (maIVs (nI).fLevel)
|
||||
sColIVAttack = "G" & (nI + 2)
|
||||
sColIVDefense = "H" & (nI + 2)
|
||||
sColIVStamina = "I" & (nI + 2)
|
||||
|
||||
oCell = oSheet.getCellByPosition (nLeadCols - 1, nI + 1)
|
||||
sFormula = "=(" & sColIVAttack & "+" & sColIVDefense _
|
||||
& "+" & sColIVStamina & ")/45"
|
||||
oCell.setFormula (sFormula)
|
||||
|
||||
nCol = nLeadCols
|
||||
If aBaseStats.bIsLastForm Then
|
||||
oCell = oSheet.getCellByPosition (nCol, nI + 1)
|
||||
sFormula = fnGetCPFormula (aBaseStats, _
|
||||
sColIVAttack, sColIVDefense, sColIVStamina, sMaxCPM)
|
||||
oCell.setFormula (sFormula)
|
||||
nCol = nCol + 1
|
||||
End If
|
||||
For nJ = 0 To nEvolved - 1
|
||||
oCell = oSheet.getCellByPosition (nCol, nI + 1)
|
||||
sFormula = fnGetCPFormula (maEvBaseStats (nJ), _
|
||||
sColIVAttack, sColIVDefense, sColIVStamina, sCPM)
|
||||
oCell.setFormula (sFormula)
|
||||
nCol = nCol + 1
|
||||
If maEvBaseStats (nJ).bIsLastForm Then
|
||||
oCell = oSheet.getCellByPosition (nCol, nI + 1)
|
||||
sFormula = fnGetCPFormula (maEvBaseStats (nJ), _
|
||||
sColIVAttack, sColIVDefense, sColIVStamina, sMaxCPM)
|
||||
oCell.setFormula (sFormula)
|
||||
nCol = nCol + 1
|
||||
End If
|
||||
Next nJ
|
||||
Next nI
|
||||
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
0, 1, 0, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
1, 1, 1, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
2, 1, 2, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
3, 1, 3, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
4, 1, 4, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
9, 1, 9, UBound (mData))
|
||||
oRange.setPropertyValue ("NumberFormat", 10)
|
||||
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
nLeadCols, 0, nTotalCols - 1, 0)
|
||||
oRange.setPropertyValue ("IsTextWrapped", True)
|
||||
|
||||
oColumns = oSheet.getColumns
|
||||
oColumns.getByIndex (0).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (1).setPropertyValue ("Width", 2310)
|
||||
oColumns.getByIndex (2).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (3).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (4).setPropertyValue ("Width", 1780)
|
||||
oColumns.getByIndex (5).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (6).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (7).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (8).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (9).setPropertyValue ("Width", 1030)
|
||||
For nJ = nLeadCols To nTotalCols - 1
|
||||
oColumns.getByIndex (nJ).setPropertyValue ( _
|
||||
"Width", 2810)
|
||||
Next nJ
|
||||
oRows = oSheet.getRows
|
||||
oRows.getByIndex (0).setPropertyValue ("OptimalHeight", True)
|
||||
End Sub
|
||||
|
||||
' subSortIVs: Sorts the IVs
|
||||
Sub subSortIVs ( _
|
||||
aBaseStats As aStats, maEvBaseStats () As aIV, _
|
||||
maIVs () As aIV, fMaxLevel As Double)
|
||||
Dim nI As Integer, nJ As Integer
|
||||
Dim nCP As Integer
|
||||
|
||||
' Calculate the sorting keys.
|
||||
For nI = 0 To UBound (maIVs) - 1
|
||||
maIVs (nI).nTotal = maIVs (nI).nAttack + maIVs (nI).nDefense _
|
||||
+ maIVs (nI).nStamina
|
||||
maIVs (nI).nMaxCP = fnCalcCP (aBaseStats, _
|
||||
maIVs (nI).fLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina)
|
||||
maIVs (nI).nMaxMaxCP = fnCalcCP (aBaseStats, _
|
||||
fMaxLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina)
|
||||
For nJ = 0 To UBound (aBaseStats.mEvolved)
|
||||
nCP = fnCalcCP (maEvBaseStats (nJ), _
|
||||
maIVs (nI).fLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina)
|
||||
If maIVs (nI).nMaxCP < nCP Then
|
||||
maIVs (nI).nMaxCP = nCP
|
||||
End If
|
||||
nCP = fnCalcCP (maEvBaseStats (nJ), _
|
||||
fMaxLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina)
|
||||
If maIVs (nI).nMaxMaxCP < nCP Then
|
||||
maIVs (nI).nMaxMaxCP = nCP
|
||||
End If
|
||||
Next nJ
|
||||
Next nI
|
||||
' Sort the IVs.
|
||||
For nI = 0 To UBound (maIVs) - 1
|
||||
For nJ = nI + 1 To UBound (maIVs)
|
||||
If fnCompareIV (maIVs (nI), maIVs (nJ)) > 0 Then
|
||||
' This is an array of data. The data are actually
|
||||
' allocated in sequences. maIVs (nI) is not a
|
||||
' reference. They cannot simply be assigned.
|
||||
subSwapIV (maIVs (nI), maIVs (nJ))
|
||||
End If
|
||||
Next nJ
|
||||
Next nI
|
||||
End Sub
|
||||
|
||||
' fnCompareIV: Compare two IVs for sorting
|
||||
Function fnCompareIV (aIVa As aIV, aIVb As aIV) As Double
|
||||
Dim nCPa As Integer, nCPb As Integer, nI As Integer
|
||||
|
||||
fnCompareIV = aIVb.nMaxMaxCP - aIVa.nMaxMaxCP
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nMaxCP - aIVa.nMaxCP
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nTotal - aIVa.nTotal
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.fLevel - aIVa.fLevel
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nStamina - aIVa.nStamina
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nAttack - aIVa.nAttack
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nDefense - aIVa.nDefense
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
End Function
|
||||
|
||||
' subSwapIV: Swaps two IVs
|
||||
Function subSwapIV (aIVa As aIV, aIVb As aIV) As Double
|
||||
Dim aTempIV As New aIV
|
||||
|
||||
With aTempIV
|
||||
.nAttack = aIVa.nAttack
|
||||
.nDefense = aIVa.nDefense
|
||||
.nStamina = aIVa.nStamina
|
||||
.nTotal = aIVa.nTotal
|
||||
.nMaxCP = aIVa.nMaxCP
|
||||
.nMaxMaxCP = aIVa.nMaxMaxCP
|
||||
End With
|
||||
With aIVa
|
||||
.nAttack = aIVb.nAttack
|
||||
.nDefense = aIVb.nDefense
|
||||
.nStamina = aIVb.nStamina
|
||||
.nTotal = aIVb.nTotal
|
||||
.nMaxCP = aIVb.nMaxCP
|
||||
.nMaxMaxCP = aIVb.nMaxMaxCP
|
||||
End With
|
||||
With aIVb
|
||||
.nAttack = aTempIV.nAttack
|
||||
.nDefense = aTempIV.nDefense
|
||||
.nStamina = aTempIV.nStamina
|
||||
.nTotal = aTempIV.nTotal
|
||||
.nMaxCP = aTempIV.nMaxCP
|
||||
.nMaxMaxCP = aTempIV.nMaxMaxCP
|
||||
End With
|
||||
End Function
|
||||
|
||||
' fnGetCPFormula: Obtains the CP formula
|
||||
Function fnGetCPFormula ( _
|
||||
aBaseStats As aStats, sColIVAttack As String, _
|
||||
sColIVDefense As String, sColIVStamina As String, _
|
||||
sCPM As String) As String
|
||||
fnGetCPFormula = "=FLOOR(" _
|
||||
& "(" & aBaseStats.nAttack & "+" & sColIVAttack & ")" _
|
||||
& "*SQRT(" & aBaseStats.nDefense & "+" & sColIVDefense & ")" _
|
||||
& "*SQRT(" & aBaseStats.nStamina & "+" & sColIVStamina & ")" _
|
||||
& "*POWER(" & sCPM & ";2)/10;1)"
|
||||
End Function
|
||||
|
||||
' fnGetCPMFormula: Obtains the CPM
|
||||
Function fnGetCPMFormula (fLevel As Double) As String
|
||||
If fLevel = CInt (fLevel) Then
|
||||
fnGetCPMFormula = "" & mCPM (fLevel)
|
||||
Else
|
||||
fnGetCPMFormula = "SQRT((" _
|
||||
& "POWER(" & mCPM (fLevel - 0.5) & ";2)" _
|
||||
& "+POWER(" & mCPM (fLevel + 0.5) & ";2))/2)"
|
||||
End If
|
||||
End Function
|
@ -12,7 +12,7 @@
|
||||
' See the License for the specific language governing permissions and
|
||||
' limitations under the License.
|
||||
|
||||
' 2Data: The Pokémon GO data for IV calculation
|
||||
' 3Data: The Pokémon GO data for IV calculation
|
||||
' by imacat <imacat@mail.imacat.idv.tw>, 2017-03-01
|
||||
' Generated with 9Load.subReadDataSheets ()
|
||||
|
@ -37,7 +37,7 @@ Sub subReadDataSheets
|
||||
& "' See the License for the specific language governing permissions and" & Chr (10) _
|
||||
& "' limitations under the License." & Chr (10) _
|
||||
& Chr (10) _
|
||||
& "' 2Data: The Pokémon GO data for IV calculation" & Chr (10) _
|
||||
& "' 3Data: The Pokémon GO data for IV calculation" & Chr (10) _
|
||||
& "' by imacat <imacat@mail.imacat.idv.tw>, " & Format (Date (), "yyyy-mm-dd") & Chr (10) _
|
||||
& "' Generated with 9Load.subReadDataSheets ()" & Chr (10) _
|
||||
& Chr (10) _
|
||||
|
2
TODO
2
TODO
@ -1,5 +1,7 @@
|
||||
PokemonGoIV TODO
|
||||
|
||||
* Update the Pokémon database for the complex evolution forms
|
||||
like Eevee, Slowpoke, etc.
|
||||
* Center the dialog.
|
||||
* Pokémons that are not released in the game yet, so their image
|
||||
icons are missing.
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -27,6 +27,7 @@ Type aStats
|
||||
nAttack As Integer
|
||||
nDefense As Integer
|
||||
mEvolved () As String
|
||||
bIsLastForm As Boolean
|
||||
End Type
|
||||
|
||||
' The individual values of a Pokémon.
|
||||
@ -35,15 +36,10 @@ Type aIV
|
||||
nStamina As Integer
|
||||
nAttack As Integer
|
||||
nDefense As Integer
|
||||
' For sorting
|
||||
nTotal As Integer
|
||||
nMaxCP As Integer
|
||||
maEvolved () As aEvolvedStats
|
||||
End Type
|
||||
|
||||
' The calculated evolved stats of a Pokémon.
|
||||
Type aEvolvedStats
|
||||
nCP As Integer
|
||||
nMaxCP As Integer
|
||||
nMaxMaxCP As Integer
|
||||
End Type
|
||||
|
||||
' The parameters to find the individual values.
|
||||
@ -78,49 +74,30 @@ Sub subMain
|
||||
If UBound (maIVs) = -1 Then
|
||||
MsgBox fnGetResString ("ErrorNotFound")
|
||||
Else
|
||||
subSaveIV (aBaseStats, aQuery, maIVs)
|
||||
subCreateReport (aBaseStats, aQuery, maIVs)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' fnFindIV: Finds the possible individual values of the Pokémon
|
||||
Function fnFindIV ( _
|
||||
aBaseStats As aStats, aQuery As aFindIVParam) As Variant
|
||||
Dim nEvolved As Integer
|
||||
Dim maEvBaseStats () As New aStats, aTempStats As New aStats
|
||||
Dim maIV () As New aIV, aTempIV As New aIV
|
||||
Dim maIV () As New aIV, nN As Integer
|
||||
Dim fLevel As Double, nStamina As Integer
|
||||
Dim nAttack As Integer, nDefense As integer
|
||||
Dim nI As Integer, nJ As Integer
|
||||
Dim fStep As Double, nN As Integer, fMaxLevel As Double
|
||||
Dim nI As Integer, nJ As Integer, fLevelStep As Double
|
||||
|
||||
If aQuery.sPokemonId = "" Then
|
||||
fnFindIV = maIV
|
||||
Exit Function
|
||||
End If
|
||||
If aQuery.bIsNew Then
|
||||
fStep = 1
|
||||
fLevelStep = 1
|
||||
Else
|
||||
fStep = 0.5
|
||||
fLevelStep = 0.5
|
||||
End If
|
||||
subReadStardust
|
||||
nEvolved = UBound (aBaseStats.mEvolved)
|
||||
If nEvolved > -1 Then
|
||||
ReDim Preserve maEvBaseStats (nEvolved) As New aStats
|
||||
For nI = 0 To nEvolved
|
||||
aTempStats = fnGetBaseStats (aBaseStats.mEvolved (nI))
|
||||
With maEvBaseStats (nI)
|
||||
.nAttack = aTempStats.nAttack
|
||||
.nDefense = aTempStats.nDefense
|
||||
.nStamina = aTempStats.nStamina
|
||||
End With
|
||||
Next nI
|
||||
End If
|
||||
nN = -1
|
||||
fMaxLevel = aQuery.nPlayerLevel + 1.5
|
||||
If fMaxLevel > 40 Then
|
||||
fMaxLevel = 40
|
||||
End If
|
||||
For fLevel = 1 To UBound (mStardust) Step fStep
|
||||
For fLevel = 1 To UBound (mStardust) Step fLevelStep
|
||||
If mStardust (CInt (fLevel - 0.5)) = aQuery.nStardust Then
|
||||
For nStamina = 0 To 15
|
||||
If fnCalcHP (aBaseStats, fLevel, nStamina) = aQuery.nHP Then
|
||||
@ -135,30 +112,7 @@ Function fnFindIV ( _
|
||||
.nAttack = nAttack
|
||||
.nDefense = nDefense
|
||||
.nStamina = nStamina
|
||||
.nTotal = nAttack _
|
||||
+ nDefense + nStamina
|
||||
End With
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
maIV (nN).nMaxCP = fnCalcCP ( _
|
||||
aBaseStats, fMaxLevel, _
|
||||
nAttack, nDefense, nStamina)
|
||||
End If
|
||||
maIV (nN).maEvolved _
|
||||
= fnGetEvolvedArray (nEvolved)
|
||||
For nI = 0 To nEvolved
|
||||
maIV (nN).maEvolved (nI).nCP _
|
||||
= fnCalcCP ( _
|
||||
maEvBaseStats (nI), _
|
||||
fLevel, nAttack, _
|
||||
nDefense, nStamina)
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
maIV (nN).maEvolved (nI).nMaxCP _
|
||||
= fnCalcCP ( _
|
||||
maEvBaseStats (nI), _
|
||||
fMaxLevel, nAttack, _
|
||||
nDefense, nStamina)
|
||||
End If
|
||||
Next nI
|
||||
End If
|
||||
Next nDefense
|
||||
Next nAttack
|
||||
@ -166,309 +120,9 @@ Function fnFindIV ( _
|
||||
Next nStamina
|
||||
End If
|
||||
Next fLevel
|
||||
' Sorts the IVs
|
||||
For nI = 0 To UBound (maIV) - 1
|
||||
For nJ = nI + 1 To UBound (maIV)
|
||||
If fnCompareIV (maIV (nI), maIV (nJ)) > 0 Then
|
||||
' This is an array of data. The data are actually
|
||||
' allocated in sequences. maIV (nI) is not a
|
||||
' reference. They cannot simply be assigned.
|
||||
subCopyIV (maIV (nI), aTempIV)
|
||||
subCopyIV (maIV (nJ), maIV (nI))
|
||||
subCopyIV (aTempIV, maIV (nJ))
|
||||
End If
|
||||
Next nJ
|
||||
Next nI
|
||||
fnFindIV = maIV
|
||||
End Function
|
||||
|
||||
' fnCompareIV: Compare two IVs for sorting
|
||||
Function fnCompareIV (aIVa As aIV, aIVb As aIV) As Double
|
||||
Dim nCPa As Integer, nCPb As Integer, nI As Integer
|
||||
|
||||
nCPa = aIVa.nMaxCP
|
||||
For nI = 0 To UBound (aIVa.maEvolved)
|
||||
If nCPa < aIVa.maEvolved (nI).nMaxCP Then
|
||||
nCPa = aIVa.maEvolved (nI).nMaxCP
|
||||
End If
|
||||
Next nI
|
||||
nCPb = aIVb.nMaxCP
|
||||
For nI = 0 To UBound (aIVb.maEvolved)
|
||||
If nCPb < aIVb.maEvolved (nI).nMaxCP Then
|
||||
nCPb = aIVb.maEvolved (nI).nMaxCP
|
||||
End If
|
||||
Next nI
|
||||
fnCompareIV = nCPb - nCPa
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
|
||||
nCPa = 0
|
||||
For nI = 0 To UBound (aIVa.maEvolved)
|
||||
If nCPa < aIVa.maEvolved (nI).nCP Then
|
||||
nCPa = aIVa.maEvolved (nI).nCP
|
||||
End If
|
||||
Next nI
|
||||
nCPb = 0
|
||||
For nI = 0 To UBound (aIVb.maEvolved)
|
||||
If nCPb < aIVb.maEvolved (nI).nCP Then
|
||||
nCPb = aIVb.maEvolved (nI).nCP
|
||||
End If
|
||||
Next nI
|
||||
fnCompareIV = nCPb - nCPa
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
|
||||
fnCompareIV = aIVb.nTotal - aIVa.nTotal
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.fLevel - aIVa.fLevel
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nStamina - aIVa.nStamina
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nAttack - aIVa.nAttack
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nDefense - aIVa.nDefense
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
End Function
|
||||
|
||||
' subCopyIV: Copies one IV to another
|
||||
Function subCopyIV (aFrom As aIV, aTo As aIV) As Double
|
||||
Dim nI As Integer
|
||||
|
||||
With aTo
|
||||
.nAttack = aFrom.nAttack
|
||||
.nDefense = aFrom.nDefense
|
||||
.nStamina = aFrom.nStamina
|
||||
.nTotal = aFrom.nTotal
|
||||
.nMaxCP = aFrom.nMaxCP
|
||||
End With
|
||||
aTo.maEvolved = fnGetEvolvedArray (UBound (aFrom.maEvolved))
|
||||
For nI = 0 To UBound (aFrom.maEvolved)
|
||||
With aTo.maEvolved (nI)
|
||||
.nCP = aFrom.maEvolved (nI).nCP
|
||||
.nMaxCP = aFrom.maEvolved (nI).nMaxCP
|
||||
End With
|
||||
Next nI
|
||||
End Function
|
||||
|
||||
' subSaveIV: Saves the found IV
|
||||
Sub subSaveIV ( _
|
||||
aBaseStats As aStats, aQuery As aFindIVParam, maIVs () As aIV)
|
||||
Dim oDoc As Object, oSheet As Object
|
||||
Dim oRange As Object, oColumns As Object, oRows As Object
|
||||
Dim nI As Integer, nJ As Integer, nFront As Integer
|
||||
Dim nEvolved As Integer
|
||||
Dim mData (Ubound (maIVs) + 1) As Variant, mRow () As Variant
|
||||
Dim mProps () As New com.sun.star.beans.PropertyValue
|
||||
|
||||
oDoc = StarDesktop.loadComponentFromURL ( _
|
||||
"private:factory/scalc", "_default", 0, mProps)
|
||||
oSheet = oDoc.getSheets.getByIndex (0)
|
||||
nEvolved = UBound (maIVs (0).maEvolved) + 1
|
||||
|
||||
mRow = Array ( _
|
||||
"No", "Pokemon", "CP", "HP", "Stardust", _
|
||||
"Lv", "Atk", "Def", "Sta", "IV")
|
||||
nFront = UBound (mRow)
|
||||
If aQuery.sPokemonId = "Eevee" Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + 6) As Variant
|
||||
mRow (nFront + 1) = "CP as " _
|
||||
& aBaseStats.mEvolved (0)
|
||||
mRow (nFront + 2) = "Powered-up as " _
|
||||
& aBaseStats.mEvolved (0)
|
||||
mRow (nFront + 3) = "CP as " _
|
||||
& aBaseStats.mEvolved (1)
|
||||
mRow (nFront + 4) = "Powered-up as " _
|
||||
& aBaseStats.mEvolved (1)
|
||||
mRow (nFront + 5) = "CP as " _
|
||||
& aBaseStats.mEvolved (2)
|
||||
mRow (nFront + 6) = "Powered-up as " _
|
||||
& aBaseStats.mEvolved (2)
|
||||
Else
|
||||
ReDim Preserve mRow (nFront + 3) As Variant
|
||||
mRow (nFront + 1) = "CP as " _
|
||||
& aBaseStats.mEvolved (0)
|
||||
mRow (nFront + 2) = "CP as " _
|
||||
& aBaseStats.mEvolved (1)
|
||||
mRow (nFront + 3) = "CP as " _
|
||||
& aBaseStats.mEvolved (2)
|
||||
End If
|
||||
Else
|
||||
If nEvolved = 0 Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + 1) As Variant
|
||||
mRow (nFront + 1) = "Powered-up"
|
||||
End If
|
||||
Else
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + nEvolved + 1) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
mRow (nFront + nJ + 1) = "CP as " _
|
||||
& aBaseStats.mEvolved (nJ)
|
||||
Next nJ
|
||||
mRow (UBound (mRow)) = "Powered-up as " _
|
||||
& aBaseStats.mEvolved (nEvolved - 1)
|
||||
Else
|
||||
ReDim Preserve mRow (nFront + nEvolved) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
mRow (nFront + nJ + 1) = "CP as " _
|
||||
& aBaseStats.mEvolved (nJ)
|
||||
Next nJ
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
mData (0) = mRow
|
||||
|
||||
For nI = 0 To UBound (maIVs)
|
||||
mRow = Array ( _
|
||||
"", "", "", "", "", _
|
||||
maIVs (nI).fLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina, _
|
||||
maIVs (nI).nTotal / 45)
|
||||
If aQuery.sPokemonId = "Eevee" Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + 6) As Variant
|
||||
mRow (nFront + 1) = maIVs (nI).maEvolved (0).nCP
|
||||
mRow (nFront + 2) = maIVs (nI).maEvolved (0).nMaxCP
|
||||
mRow (nFront + 3) = maIVs (nI).maEvolved (1).nCP
|
||||
mRow (nFront + 4) = maIVs (nI).maEvolved (1).nMaxCP
|
||||
mRow (nFront + 5) = maIVs (nI).maEvolved (2).nCP
|
||||
mRow (nFront + 6) = maIVs (nI).maEvolved (2).nMaxCP
|
||||
Else
|
||||
ReDim Preserve mRow (nFront + 3) As Variant
|
||||
mRow (nFront + 1) = maIVs (nI).maEvolved (0).nCP
|
||||
mRow (nFront + 2) = maIVs (nI).maEvolved (1).nCP
|
||||
mRow (nFront + 3) = maIVs (nI).maEvolved (2).nCP
|
||||
End If
|
||||
Else
|
||||
If nEvolved = 0 Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + 1) As Variant
|
||||
mRow (nFront + 1) = maIVs (nI).nMaxCP
|
||||
End If
|
||||
Else
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
ReDim Preserve mRow (nFront + nEvolved + 1) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
mRow (nFront + nJ + 1) = maIVs (nI).maEvolved (nJ).nCP
|
||||
Next nJ
|
||||
mRow (UBound (mRow)) = maIVs (nI).maEvolved (nEvolved - 1).nMaxCP
|
||||
Else
|
||||
ReDim Preserve mRow (nFront + nEvolved) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
mRow (nFront + nJ + 1) = maIVs (nI).maEvolved (nJ).nCP
|
||||
Next nJ
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
mData (nI + 1) = mRow
|
||||
Next nI
|
||||
|
||||
' Fills the query information at the first row
|
||||
mData (1) (0) = aBaseStats.sNo
|
||||
mData (1) (1) = aQuery.sPokemonName
|
||||
mData (1) (2) = aQuery.nCP
|
||||
mData (1) (3) = aQuery.nHP
|
||||
mData (1) (4) = aQuery.nStardust
|
||||
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
0, 0, UBound (mData (0)), UBound (mData))
|
||||
oRange.setDataArray (mData)
|
||||
oRange.setPropertyValue ("VertJustify", _
|
||||
com.sun.star.table.CellVertJustify.TOP)
|
||||
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
0, 1, 0, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
1, 1, 1, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
2, 1, 2, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
3, 1, 3, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
4, 1, 4, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
9, 1, 9, UBound (mData))
|
||||
oRange.setPropertyValue ("NumberFormat", 10)
|
||||
|
||||
If aQuery.sPokemonId = "Eevee" Then
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
10, 0, 15, 0)
|
||||
Else
|
||||
If nEvolved = 0 Then
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
10, 0, 10, 0)
|
||||
Else
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
10, 0, 10 + nEvolved + 1, 0)
|
||||
End If
|
||||
End If
|
||||
oRange.setPropertyValue ("IsTextWrapped", True)
|
||||
|
||||
oRows = oSheet.getRows
|
||||
oRows.getByIndex (0).setPropertyValue ("Height", 840)
|
||||
oColumns = oSheet.getColumns
|
||||
oColumns.getByIndex (0).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (1).setPropertyValue ("Width", 2310)
|
||||
oColumns.getByIndex (2).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (3).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (4).setPropertyValue ("Width", 1780)
|
||||
oColumns.getByIndex (5).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (6).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (7).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (8).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (9).setPropertyValue ("Width", 1030)
|
||||
If aQuery.sPokemonId = "Eevee" Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
For nI = 0 To 5 Step 2
|
||||
oColumns.getByIndex (10 + nI).setPropertyValue ( _
|
||||
"Width", 2310)
|
||||
oColumns.getByIndex (10 + nI + 1).setPropertyValue ( _
|
||||
"Width", 2810)
|
||||
Next nI
|
||||
Else
|
||||
For nI = 0 To 2
|
||||
oColumns.getByIndex (10 + nI).setPropertyValue ( _
|
||||
"Width", 2310)
|
||||
Next nI
|
||||
End If
|
||||
Else
|
||||
If nEvolved = 0 Then
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
oColumns.getByIndex (10).setPropertyValue ( _
|
||||
"Width", 2200)
|
||||
End If
|
||||
Else
|
||||
For nI = 0 To nEvolved - 1
|
||||
oColumns.getByIndex (10 + nI).setPropertyValue ( _
|
||||
"Width", 2310)
|
||||
Next nI
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
oColumns.getByIndex ( _
|
||||
10 + nEvolved).setPropertyValue ( _
|
||||
"Width", 2810)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' fnFilterAppraisals: Filters the IV by the appraisals.
|
||||
Function fnFilterAppraisals (aQuery As aFindIVParam, _
|
||||
nAttack As Integer, nDefense As Integer, _
|
||||
@ -587,8 +241,8 @@ Function fnGetCPM (fLevel As Double) As Double
|
||||
If CInt (fLevel) = fLevel Then
|
||||
fnGetCPM = mCPM (fLevel)
|
||||
Else
|
||||
fnGetCPM = ((mCpm (fLevel - 0.5) ^ 2 _
|
||||
+ mCpm (fLevel + 0.5) ^ 2) / 2) ^ 0.5
|
||||
fnGetCPM = ((mCPM (fLevel - 0.5) ^ 2 _
|
||||
+ mCPM (fLevel + 0.5) ^ 2) / 2) ^ 0.5
|
||||
End If
|
||||
End Function
|
||||
|
||||
@ -597,56 +251,6 @@ Function fnFloor (fNumber As Double) As Integer
|
||||
fnFloor = CInt (fNumber - 0.5)
|
||||
End Function
|
||||
|
||||
' fnMapPokemonIdToName: Maps the Pokémon IDs to their localized names.
|
||||
Function fnMapPokemonIdToName (sId As String) As String
|
||||
fnMapPokemonIdToName = fnGetResString ("Pokemon" & sId)
|
||||
End Function
|
||||
|
||||
' subReadBaseStats: Reads the base stats table.
|
||||
Sub subReadBaseStats
|
||||
Dim mData As Variant, nI As Integer, nJ As Integer
|
||||
DIm nEvolved As Integer
|
||||
|
||||
If UBound (maBaseStats) = -1 Then
|
||||
mData = fnGetBaseStatsData
|
||||
ReDim Preserve maBaseStats (UBound (mData)) As New aStats
|
||||
For nI = 0 To UBound (mData)
|
||||
With maBaseStats (nI)
|
||||
.sNo = mData (nI) (1)
|
||||
.sPokemonId = mData (nI) (0)
|
||||
.nStamina = mData (nI) (2)
|
||||
.nAttack = mData (nI) (3)
|
||||
.nDefense = mData (nI) (4)
|
||||
End With
|
||||
nEvolved = UBound (mData (nI) (5))
|
||||
maBaseStats (nI).mEvolved = fnGetStringArray (nEvolved)
|
||||
For nJ = 0 To nEvolved
|
||||
maBaseStats (nI).mEvolved (nJ) = mData (nI) (5) (nJ)
|
||||
Next nJ
|
||||
Next nI
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' fnGetStringArray: Obtains a blank string array
|
||||
Function fnGetStringArray (nUBound As Integer) As Variant
|
||||
Dim mData () As String
|
||||
|
||||
If nUBound >= 0 Then
|
||||
ReDim Preserve mData (nUBound) As String
|
||||
End If
|
||||
fnGetStringArray = mData
|
||||
End Function
|
||||
|
||||
' fnGetEvolvedArray: Obtains a blank aEvolvedStats array
|
||||
Function fnGetEvolvedArray (nUBound As Integer) As Variant
|
||||
Dim mData () As New aEvolvedStats
|
||||
|
||||
If nUBound >= 0 Then
|
||||
ReDim Preserve mData (nUBound) As New aEvolvedStats
|
||||
End If
|
||||
fnGetEvolvedArray = mData
|
||||
End Function
|
||||
|
||||
' fnReplace: Replaces all occurrances of a term to another.
|
||||
Function fnReplace ( _
|
||||
sText As String, sFrom As String, sTo As String) As String
|
||||
@ -662,6 +266,37 @@ Function fnReplace ( _
|
||||
fnReplace = sResult
|
||||
End Function
|
||||
|
||||
' subReadBaseStats: Reads the base stats table.
|
||||
Sub subReadBaseStats
|
||||
Dim mData As Variant, nI As Integer, nJ As Integer, nK As Integer
|
||||
Dim nEvolved As Integer, mEvolved () As Variant
|
||||
|
||||
If UBound (maBaseStats) = -1 Then
|
||||
mData = fnGetBaseStatsData
|
||||
ReDim Preserve maBaseStats (UBound (mData)) As New aStats
|
||||
For nI = 0 To UBound (mData)
|
||||
With maBaseStats (nI)
|
||||
.sNo = mData (nI) (1)
|
||||
.sPokemonId = mData (nI) (0)
|
||||
.nStamina = mData (nI) (2)
|
||||
.nAttack = mData (nI) (3)
|
||||
.nDefense = mData (nI) (4)
|
||||
End With
|
||||
nEvolved = UBound (mData (nI) (5)) + 1
|
||||
mEvolved = Array ()
|
||||
maBaseStats (nI).bIsLastForm = True
|
||||
If nEvolved > 0 Then
|
||||
ReDim mEvolved (nEvolved - 1) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
mEvolved (nJ) = mData (nI) (5) (nJ)
|
||||
Next nJ
|
||||
maBaseStats (nI).mEvolved = mEvolved
|
||||
maBaseStats (nI).bIsLastForm = False
|
||||
End If
|
||||
Next nI
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' subReadCPM: Reads the CPM table.
|
||||
Sub subReadCPM
|
||||
If UBound (mCPM) = -1 Then
|
||||
|
@ -52,6 +52,19 @@ Function fnAskParam As aFindIVParam
|
||||
oDialog.getControl ("cbxBest3").setVisible (False)
|
||||
oDialog.getControl ("lstMax").setVisible (False)
|
||||
|
||||
' Adds the Pokémons by their localized names.
|
||||
subReadBaseStats
|
||||
ReDim mPokemons (UBound (maBaseStats)) As String
|
||||
For nI = 0 To UBound (maBaseStats)
|
||||
mPokemons (nI) = fnGetResString ( _
|
||||
"Pokemon" & maBaseStats (nI).sPokemonId)
|
||||
Next nI
|
||||
oList = oDialog.getControl ("lstPokemon")
|
||||
If oList.getItemCount > 0 Then
|
||||
getItemCount.removeItems (0, oList.getItemCount)
|
||||
End If
|
||||
oList.addItems (mPokemons, 0)
|
||||
|
||||
oDialog.getControl ("imgPokemon").getModel.setPropertyValue ( _
|
||||
"ImageURL", fnGetImageUrl ("Unknown"))
|
||||
oDialog.getControl ("imgTeamLogo").getModel.setPropertyValue ( _
|
||||
|
382
oxt/PokemonGoIV/2Report.xba
Normal file
382
oxt/PokemonGoIV/2Report.xba
Normal file
@ -0,0 +1,382 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="2Report" script:language="StarBasic">' Copyright (c) 2017 imacat.
|
||||
'
|
||||
' Licensed under the Apache License, Version 2.0 (the "License");
|
||||
' you may not use this file except in compliance with the License.
|
||||
' You may obtain a copy of the License at
|
||||
'
|
||||
' http://www.apache.org/licenses/LICENSE-2.0
|
||||
'
|
||||
' Unless required by applicable law or agreed to in writing, software
|
||||
' distributed under the License is distributed on an "AS IS" BASIS,
|
||||
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
' See the License for the specific language governing permissions and
|
||||
' limitations under the License.
|
||||
|
||||
' 2Report: The Pokémon GO IV report generator.
|
||||
' by imacat <imacat@mail.imacat.idv.tw>, 2017-06-07
|
||||
|
||||
Option Explicit
|
||||
|
||||
' The base stats of a Pokémon.
|
||||
Type aStats
|
||||
sNo As String
|
||||
sPokemonId As String
|
||||
nStamina As Integer
|
||||
nAttack As Integer
|
||||
nDefense As Integer
|
||||
mEvolved () As String
|
||||
End Type
|
||||
|
||||
' The individual values of a Pokémon.
|
||||
Type aIV
|
||||
fLevel As Double
|
||||
nStamina As Integer
|
||||
nAttack As Integer
|
||||
nDefense As Integer
|
||||
' For sorting
|
||||
nTotal As Integer
|
||||
nMaxCP As Integer
|
||||
nMaxMaxCP As Integer
|
||||
End Type
|
||||
|
||||
' The parameters to find the individual values.
|
||||
Type aFindIVParam
|
||||
sPokemonId As String
|
||||
sPokemonName As String
|
||||
nCP As Integer
|
||||
nHP As Integer
|
||||
nStardust As Integer
|
||||
nPlayerLevel As Integer
|
||||
bIsNew As Boolean
|
||||
nTotal As Integer
|
||||
sBest As String
|
||||
nMax As Integer
|
||||
bIsCancelled As Boolean
|
||||
End Type
|
||||
|
||||
' subCreateReport: Creates the Pokémon GO IV report.
|
||||
Sub subCreateReport ( _
|
||||
aBaseStats As aStats, aQuery As aFindIVParam, maIVs () As aIV)
|
||||
Dim oDoc As Object, oSheet As Object
|
||||
Dim oRange As Object, oColumns As Object, oRows As Object
|
||||
Dim oCell As Object, sFormula As String
|
||||
Dim nI As Integer, nJ As Integer, nCol As Integer
|
||||
Dim nLeadCols As Integer, nTotalCols As Integer
|
||||
Dim nEvolved As Integer, fMaxLevel As Double
|
||||
Dim sCPM As String, sMaxCPM As String
|
||||
Dim sColIVAttack As String, sColIVDefense As String
|
||||
Dim sColIVStamina As String
|
||||
Dim sPokemonName As String
|
||||
Dim mData (Ubound (maIVs) + 1) As Variant, mRow () As Variant
|
||||
Dim maEvBaseStats () As Variant
|
||||
Dim mProps () As New com.sun.star.beans.PropertyValue
|
||||
|
||||
oDoc = StarDesktop.loadComponentFromURL ( _
|
||||
"private:factory/scalc", "_default", 0, mProps)
|
||||
oSheet = oDoc.getSheets.getByIndex (0)
|
||||
|
||||
nEvolved = UBound (aBaseStats.mEvolved) + 1
|
||||
If nEvolved > 0 Then
|
||||
ReDim maEvBaseStats (nEvolved - 1) As Variant
|
||||
For nJ = 0 To nEvolved - 1
|
||||
maEvBaseStats (nJ) = fnGetBaseStats (aBaseStats.mEvolved (nJ))
|
||||
Next nJ
|
||||
End If
|
||||
|
||||
If aQuery.nPlayerLevel <> 0 Then
|
||||
fMaxLevel = aQuery.nPlayerLevel + 1.5
|
||||
If fMaxLevel > 40 Then
|
||||
fMaxLevel = 40
|
||||
End If
|
||||
Else
|
||||
fMaxLevel = 40
|
||||
End If
|
||||
sMaxCPM = fnGetCPMFormula (fMaxLevel)
|
||||
|
||||
' Sorts the IVs
|
||||
subSortIVs (aBaseStats, maEvBaseStats, maIVs, fMaxLevel)
|
||||
|
||||
' Fills in the report data.
|
||||
mRow = Array ( _
|
||||
fnGetResString ("ReportNo"), _
|
||||
fnGetResString ("ReportPokemon"), _
|
||||
fnGetResString ("ReportCP"), _
|
||||
fnGetResString ("ReportHP"), _
|
||||
fnGetResString ("ReportStardust"), _
|
||||
fnGetResString ("ReportLevel"), _
|
||||
fnGetResString ("ReportAttack"), _
|
||||
fnGetResString ("ReportDefense"), _
|
||||
fnGetResString ("ReportStamina"), _
|
||||
fnGetResString ("ReportIVPercent"))
|
||||
nLeadCols = UBound (mRow) + 1
|
||||
|
||||
nTotalCols = nLeadCols
|
||||
If aBaseStats.bIsLastForm Then
|
||||
nTotalCols = nTotalCols + 1
|
||||
End If
|
||||
For nJ = 0 To nEvolved - 1
|
||||
nTotalCols = nTotalCols + 1
|
||||
If maEvBaseStats (nJ).bIsLastForm Then
|
||||
nTotalCols = nTotalCols + 1
|
||||
End If
|
||||
Next nJ
|
||||
|
||||
ReDim Preserve mRow (nTotalCols - 1) As Variant
|
||||
nCol = nLeadCols
|
||||
If aBaseStats.bIsLastForm Then
|
||||
mRow (nCol) = fnReplace (fnGetResString ("ReportCPPowerUp"), _
|
||||
"[Level]", fMaxLevel)
|
||||
nCol = nCol + 1
|
||||
End If
|
||||
For nJ = 0 To nEvolved - 1
|
||||
sPokemonName = fnGetResString ( _
|
||||
"Pokemon" & aBaseStats.mEvolved (nJ))
|
||||
mRow (nCol) = fnReplace (fnGetResString ("ReportCPEvolve"), _
|
||||
"[Pokémon]", sPokemonName)
|
||||
nCol = nCol + 1
|
||||
If maEvBaseStats (nJ).bIsLastForm Then
|
||||
mRow (nCol) = fnReplace (fnReplace ( _
|
||||
fnGetResString ("ReportCPEvolvePowerUp"), _
|
||||
"[Pokémon]", sPokemonName), _
|
||||
"[Level]", fMaxLevel)
|
||||
End If
|
||||
Next nJ
|
||||
mData (0) = mRow
|
||||
|
||||
For nI = 0 To UBound (maIVs)
|
||||
mRow = Array ( _
|
||||
"", "", "", "", "", _
|
||||
maIVs (nI).fLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina, "")
|
||||
ReDim Preserve mRow (nTotalCols - 1) As Variant
|
||||
For nJ = nLeadCols To nEvolved - 1
|
||||
mRow (nJ) = ""
|
||||
Next nJ
|
||||
mData (nI + 1) = mRow
|
||||
Next nI
|
||||
|
||||
' Fills the query information at the first row
|
||||
mData (1) (0) = aBaseStats.sNo
|
||||
mData (1) (1) = aQuery.sPokemonName
|
||||
mData (1) (2) = aQuery.nCP
|
||||
mData (1) (3) = aQuery.nHP
|
||||
mData (1) (4) = aQuery.nStardust
|
||||
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
0, 0, UBound (mData (0)), UBound (mData))
|
||||
oRange.setDataArray (mData)
|
||||
oRange.setPropertyValue ("VertJustify", _
|
||||
com.sun.star.table.CellVertJustify.TOP)
|
||||
|
||||
' Fills in the CP calculation.
|
||||
For nI = 0 To UBound (maIVs)
|
||||
sCPM = fnGetCPMFormula (maIVs (nI).fLevel)
|
||||
sColIVAttack = "G" & (nI + 2)
|
||||
sColIVDefense = "H" & (nI + 2)
|
||||
sColIVStamina = "I" & (nI + 2)
|
||||
|
||||
oCell = oSheet.getCellByPosition (nLeadCols - 1, nI + 1)
|
||||
sFormula = "=(" & sColIVAttack & "+" & sColIVDefense _
|
||||
& "+" & sColIVStamina & ")/45"
|
||||
oCell.setFormula (sFormula)
|
||||
|
||||
nCol = nLeadCols
|
||||
If aBaseStats.bIsLastForm Then
|
||||
oCell = oSheet.getCellByPosition (nCol, nI + 1)
|
||||
sFormula = fnGetCPFormula (aBaseStats, _
|
||||
sColIVAttack, sColIVDefense, sColIVStamina, sMaxCPM)
|
||||
oCell.setFormula (sFormula)
|
||||
nCol = nCol + 1
|
||||
End If
|
||||
For nJ = 0 To nEvolved - 1
|
||||
oCell = oSheet.getCellByPosition (nCol, nI + 1)
|
||||
sFormula = fnGetCPFormula (maEvBaseStats (nJ), _
|
||||
sColIVAttack, sColIVDefense, sColIVStamina, sCPM)
|
||||
oCell.setFormula (sFormula)
|
||||
nCol = nCol + 1
|
||||
If maEvBaseStats (nJ).bIsLastForm Then
|
||||
oCell = oSheet.getCellByPosition (nCol, nI + 1)
|
||||
sFormula = fnGetCPFormula (maEvBaseStats (nJ), _
|
||||
sColIVAttack, sColIVDefense, sColIVStamina, sMaxCPM)
|
||||
oCell.setFormula (sFormula)
|
||||
nCol = nCol + 1
|
||||
End If
|
||||
Next nJ
|
||||
Next nI
|
||||
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
0, 1, 0, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
1, 1, 1, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
2, 1, 2, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
3, 1, 3, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
4, 1, 4, UBound (mData))
|
||||
oRange.merge (True)
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
9, 1, 9, UBound (mData))
|
||||
oRange.setPropertyValue ("NumberFormat", 10)
|
||||
|
||||
oRange = oSheet.getCellRangeByPosition ( _
|
||||
nLeadCols, 0, nTotalCols - 1, 0)
|
||||
oRange.setPropertyValue ("IsTextWrapped", True)
|
||||
|
||||
oColumns = oSheet.getColumns
|
||||
oColumns.getByIndex (0).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (1).setPropertyValue ("Width", 2310)
|
||||
oColumns.getByIndex (2).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (3).setPropertyValue ("Width", 890)
|
||||
oColumns.getByIndex (4).setPropertyValue ("Width", 1780)
|
||||
oColumns.getByIndex (5).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (6).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (7).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (8).setPropertyValue ("Width", 860)
|
||||
oColumns.getByIndex (9).setPropertyValue ("Width", 1030)
|
||||
For nJ = nLeadCols To nTotalCols - 1
|
||||
oColumns.getByIndex (nJ).setPropertyValue ( _
|
||||
"Width", 2810)
|
||||
Next nJ
|
||||
oRows = oSheet.getRows
|
||||
oRows.getByIndex (0).setPropertyValue ("OptimalHeight", True)
|
||||
End Sub
|
||||
|
||||
' subSortIVs: Sorts the IVs
|
||||
Sub subSortIVs ( _
|
||||
aBaseStats As aStats, maEvBaseStats () As aIV, _
|
||||
maIVs () As aIV, fMaxLevel As Double)
|
||||
Dim nI As Integer, nJ As Integer
|
||||
Dim nCP As Integer
|
||||
|
||||
' Calculate the sorting keys.
|
||||
For nI = 0 To UBound (maIVs) - 1
|
||||
maIVs (nI).nTotal = maIVs (nI).nAttack + maIVs (nI).nDefense _
|
||||
+ maIVs (nI).nStamina
|
||||
maIVs (nI).nMaxCP = fnCalcCP (aBaseStats, _
|
||||
maIVs (nI).fLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina)
|
||||
maIVs (nI).nMaxMaxCP = fnCalcCP (aBaseStats, _
|
||||
fMaxLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina)
|
||||
For nJ = 0 To UBound (aBaseStats.mEvolved)
|
||||
nCP = fnCalcCP (maEvBaseStats (nJ), _
|
||||
maIVs (nI).fLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina)
|
||||
If maIVs (nI).nMaxCP < nCP Then
|
||||
maIVs (nI).nMaxCP = nCP
|
||||
End If
|
||||
nCP = fnCalcCP (maEvBaseStats (nJ), _
|
||||
fMaxLevel, maIVs (nI).nAttack, _
|
||||
maIVs (nI).nDefense, maIVs (nI).nStamina)
|
||||
If maIVs (nI).nMaxMaxCP < nCP Then
|
||||
maIVs (nI).nMaxMaxCP = nCP
|
||||
End If
|
||||
Next nJ
|
||||
Next nI
|
||||
' Sort the IVs.
|
||||
For nI = 0 To UBound (maIVs) - 1
|
||||
For nJ = nI + 1 To UBound (maIVs)
|
||||
If fnCompareIV (maIVs (nI), maIVs (nJ)) > 0 Then
|
||||
' This is an array of data. The data are actually
|
||||
' allocated in sequences. maIVs (nI) is not a
|
||||
' reference. They cannot simply be assigned.
|
||||
subSwapIV (maIVs (nI), maIVs (nJ))
|
||||
End If
|
||||
Next nJ
|
||||
Next nI
|
||||
End Sub
|
||||
|
||||
' fnCompareIV: Compare two IVs for sorting
|
||||
Function fnCompareIV (aIVa As aIV, aIVb As aIV) As Double
|
||||
Dim nCPa As Integer, nCPb As Integer, nI As Integer
|
||||
|
||||
fnCompareIV = aIVb.nMaxMaxCP - aIVa.nMaxMaxCP
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nMaxCP - aIVa.nMaxCP
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nTotal - aIVa.nTotal
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.fLevel - aIVa.fLevel
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nStamina - aIVa.nStamina
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nAttack - aIVa.nAttack
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
fnCompareIV = aIVb.nDefense - aIVa.nDefense
|
||||
If fnCompareIV <> 0 Then
|
||||
Exit Function
|
||||
End If
|
||||
End Function
|
||||
|
||||
' subSwapIV: Swaps two IVs
|
||||
Function subSwapIV (aIVa As aIV, aIVb As aIV) As Double
|
||||
Dim aTempIV As New aIV
|
||||
|
||||
With aTempIV
|
||||
.nAttack = aIVa.nAttack
|
||||
.nDefense = aIVa.nDefense
|
||||
.nStamina = aIVa.nStamina
|
||||
.nTotal = aIVa.nTotal
|
||||
.nMaxCP = aIVa.nMaxCP
|
||||
.nMaxMaxCP = aIVa.nMaxMaxCP
|
||||
End With
|
||||
With aIVa
|
||||
.nAttack = aIVb.nAttack
|
||||
.nDefense = aIVb.nDefense
|
||||
.nStamina = aIVb.nStamina
|
||||
.nTotal = aIVb.nTotal
|
||||
.nMaxCP = aIVb.nMaxCP
|
||||
.nMaxMaxCP = aIVb.nMaxMaxCP
|
||||
End With
|
||||
With aIVb
|
||||
.nAttack = aTempIV.nAttack
|
||||
.nDefense = aTempIV.nDefense
|
||||
.nStamina = aTempIV.nStamina
|
||||
.nTotal = aTempIV.nTotal
|
||||
.nMaxCP = aTempIV.nMaxCP
|
||||
.nMaxMaxCP = aTempIV.nMaxMaxCP
|
||||
End With
|
||||
End Function
|
||||
|
||||
' fnGetCPFormula: Obtains the CP formula
|
||||
Function fnGetCPFormula ( _
|
||||
aBaseStats As aStats, sColIVAttack As String, _
|
||||
sColIVDefense As String, sColIVStamina As String, _
|
||||
sCPM As String) As String
|
||||
fnGetCPFormula = "=FLOOR(" _
|
||||
& "(" & aBaseStats.nAttack & "+" & sColIVAttack & ")" _
|
||||
& "*SQRT(" & aBaseStats.nDefense & "+" & sColIVDefense & ")" _
|
||||
& "*SQRT(" & aBaseStats.nStamina & "+" & sColIVStamina & ")" _
|
||||
& "*POWER(" & sCPM & ";2)/10;1)"
|
||||
End Function
|
||||
|
||||
' fnGetCPMFormula: Obtains the CPM
|
||||
Function fnGetCPMFormula (fLevel As Double) As String
|
||||
If fLevel = CInt (fLevel) Then
|
||||
fnGetCPMFormula = "" & mCPM (fLevel)
|
||||
Else
|
||||
fnGetCPMFormula = "SQRT((" _
|
||||
& "POWER(" & mCPM (fLevel - 0.5) & ";2)" _
|
||||
& "+POWER(" & mCPM (fLevel + 0.5) & ";2))/2)"
|
||||
End If
|
||||
End Function
|
||||
</script:module>
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="2Data" script:language="StarBasic">' Copyright (c) 2016-2017 imacat.
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="3Data" script:language="StarBasic">' Copyright (c) 2016-2017 imacat.
|
||||
'
|
||||
' Licensed under the Apache License, Version 2.0 (the "License");
|
||||
' you may not use this file except in compliance with the License.
|
||||
@ -14,7 +14,7 @@
|
||||
' See the License for the specific language governing permissions and
|
||||
' limitations under the License.
|
||||
|
||||
' 2Data: The Pokémon GO data for IV calculation
|
||||
' 3Data: The Pokémon GO data for IV calculation
|
||||
' by imacat <imacat@mail.imacat.idv.tw>, 2017-03-01
|
||||
' Generated with 9Load.subReadDataSheets ()
|
||||
|
@ -39,7 +39,7 @@ Sub subReadDataSheets
|
||||
& "' See the License for the specific language governing permissions and" & Chr (10) _
|
||||
& "' limitations under the License." & Chr (10) _
|
||||
& Chr (10) _
|
||||
& "' 2Data: The Pokémon GO data for IV calculation" & Chr (10) _
|
||||
& "' 3Data: The Pokémon GO data for IV calculation" & Chr (10) _
|
||||
& "' by imacat <imacat@mail.imacat.idv.tw>, " & Format (Date (), "yyyy-mm-dd") & Chr (10) _
|
||||
& "' Generated with 9Load.subReadDataSheets ()" & Chr (10) _
|
||||
& Chr (10) _
|
||||
|
@ -10,254 +10,3 @@
|
||||
9.DlgMain.rdoTeamValor.Label=Team W~agemut
|
||||
10.DlgMain.rdoTeamMystic.Label=Team W~eisheit
|
||||
11.DlgMain.rdoTeamInstinct.Label=Team ~Intuition
|
||||
1001.lstPokemon.StringItemList=Bisasam
|
||||
1002.lstPokemon.StringItemList=Bisaknosp
|
||||
1003.lstPokemon.StringItemList=Bisaflor
|
||||
1004.lstPokemon.StringItemList=Glumanda
|
||||
1005.lstPokemon.StringItemList=Glutexo
|
||||
1006.lstPokemon.StringItemList=Glurak
|
||||
1007.lstPokemon.StringItemList=Schiggy
|
||||
1008.lstPokemon.StringItemList=Schillok
|
||||
1009.lstPokemon.StringItemList=Turtok
|
||||
1010.lstPokemon.StringItemList=Raupy
|
||||
1011.lstPokemon.StringItemList=Safcon
|
||||
1012.lstPokemon.StringItemList=Smettbo
|
||||
1013.lstPokemon.StringItemList=Hornliu
|
||||
1014.lstPokemon.StringItemList=Kokuna
|
||||
1015.lstPokemon.StringItemList=Bibor
|
||||
1016.lstPokemon.StringItemList=Taubsi
|
||||
1017.lstPokemon.StringItemList=Tauboga
|
||||
1018.lstPokemon.StringItemList=Tauboss
|
||||
1019.lstPokemon.StringItemList=Rattfratz
|
||||
1020.lstPokemon.StringItemList=Rattikarl
|
||||
1021.lstPokemon.StringItemList=Habitak
|
||||
1022.lstPokemon.StringItemList=Ibitak
|
||||
1023.lstPokemon.StringItemList=Rettan
|
||||
1024.lstPokemon.StringItemList=Arbok
|
||||
1025.lstPokemon.StringItemList=Pikachu
|
||||
1026.lstPokemon.StringItemList=Raichu
|
||||
1027.lstPokemon.StringItemList=Sandan
|
||||
1028.lstPokemon.StringItemList=Sandamer
|
||||
1029.lstPokemon.StringItemList=Nidoran\u2640
|
||||
1030.lstPokemon.StringItemList=Nidorina
|
||||
1031.lstPokemon.StringItemList=Nidoqueen
|
||||
1032.lstPokemon.StringItemList=Nidoran\u2642
|
||||
1033.lstPokemon.StringItemList=Nidorino
|
||||
1034.lstPokemon.StringItemList=Nidoking
|
||||
1035.lstPokemon.StringItemList=Piepi
|
||||
1036.lstPokemon.StringItemList=Pixi
|
||||
1037.lstPokemon.StringItemList=Vulpix
|
||||
1038.lstPokemon.StringItemList=Vulnona
|
||||
1039.lstPokemon.StringItemList=Pummeluff
|
||||
1040.lstPokemon.StringItemList=Knuddeluff
|
||||
1041.lstPokemon.StringItemList=Zubat
|
||||
1042.lstPokemon.StringItemList=Golbat
|
||||
1043.lstPokemon.StringItemList=Myrapla
|
||||
1044.lstPokemon.StringItemList=Duflor
|
||||
1045.lstPokemon.StringItemList=Giflor
|
||||
1046.lstPokemon.StringItemList=Paras
|
||||
1047.lstPokemon.StringItemList=Parasek
|
||||
1048.lstPokemon.StringItemList=Bluzuk
|
||||
1049.lstPokemon.StringItemList=Omot
|
||||
1050.lstPokemon.StringItemList=Digda
|
||||
1051.lstPokemon.StringItemList=Digdri
|
||||
1052.lstPokemon.StringItemList=Mauzi
|
||||
1053.lstPokemon.StringItemList=Snobilikat
|
||||
1054.lstPokemon.StringItemList=Enton
|
||||
1055.lstPokemon.StringItemList=Entoron
|
||||
1056.lstPokemon.StringItemList=Menki
|
||||
1057.lstPokemon.StringItemList=Rasaff
|
||||
1058.lstPokemon.StringItemList=Fukano
|
||||
1059.lstPokemon.StringItemList=Arkani
|
||||
1060.lstPokemon.StringItemList=Quapsel
|
||||
1061.lstPokemon.StringItemList=Quaputzi
|
||||
1062.lstPokemon.StringItemList=Quappo
|
||||
1063.lstPokemon.StringItemList=Abra
|
||||
1064.lstPokemon.StringItemList=Kadabra
|
||||
1065.lstPokemon.StringItemList=Simsala
|
||||
1066.lstPokemon.StringItemList=Machollo
|
||||
1067.lstPokemon.StringItemList=Maschock
|
||||
1068.lstPokemon.StringItemList=Machomei
|
||||
1069.lstPokemon.StringItemList=Knofensa
|
||||
1070.lstPokemon.StringItemList=Ultrigaria
|
||||
1071.lstPokemon.StringItemList=Sarzenia
|
||||
1072.lstPokemon.StringItemList=Tentacha
|
||||
1073.lstPokemon.StringItemList=Tentoxa
|
||||
1074.lstPokemon.StringItemList=Kleinstein
|
||||
1075.lstPokemon.StringItemList=Georok
|
||||
1076.lstPokemon.StringItemList=Geowaz
|
||||
1077.lstPokemon.StringItemList=Ponita
|
||||
1078.lstPokemon.StringItemList=Gallopa
|
||||
1079.lstPokemon.StringItemList=Flegmon
|
||||
1080.lstPokemon.StringItemList=Lahmus
|
||||
1081.lstPokemon.StringItemList=Magnetilo
|
||||
1082.lstPokemon.StringItemList=Magneton
|
||||
1083.lstPokemon.StringItemList=Porenta
|
||||
1084.lstPokemon.StringItemList=Dodu
|
||||
1085.lstPokemon.StringItemList=Dodri
|
||||
1086.lstPokemon.StringItemList=Jurob
|
||||
1087.lstPokemon.StringItemList=Jugong
|
||||
1088.lstPokemon.StringItemList=Sleima
|
||||
1089.lstPokemon.StringItemList=Sleimok
|
||||
1090.lstPokemon.StringItemList=Muschas
|
||||
1091.lstPokemon.StringItemList=Austos
|
||||
1092.lstPokemon.StringItemList=Nebulak
|
||||
1093.lstPokemon.StringItemList=Alpollo
|
||||
1094.lstPokemon.StringItemList=Gengar
|
||||
1095.lstPokemon.StringItemList=Onix
|
||||
1096.lstPokemon.StringItemList=Traumato
|
||||
1097.lstPokemon.StringItemList=Hypno
|
||||
1098.lstPokemon.StringItemList=Krabby
|
||||
1099.lstPokemon.StringItemList=Kingler
|
||||
1100.lstPokemon.StringItemList=Voltobal
|
||||
1101.lstPokemon.StringItemList=Lektrobal
|
||||
1102.lstPokemon.StringItemList=Owei
|
||||
1103.lstPokemon.StringItemList=Kokowei
|
||||
1104.lstPokemon.StringItemList=Tragosso
|
||||
1105.lstPokemon.StringItemList=Knogga
|
||||
1106.lstPokemon.StringItemList=Kicklee
|
||||
1107.lstPokemon.StringItemList=Nockchan
|
||||
1108.lstPokemon.StringItemList=Schlurp
|
||||
1109.lstPokemon.StringItemList=Smogon
|
||||
1110.lstPokemon.StringItemList=Smogmog
|
||||
1111.lstPokemon.StringItemList=Rihorn
|
||||
1112.lstPokemon.StringItemList=Rizeros
|
||||
1113.lstPokemon.StringItemList=Chaneira
|
||||
1114.lstPokemon.StringItemList=Tangela
|
||||
1115.lstPokemon.StringItemList=Kangama
|
||||
1116.lstPokemon.StringItemList=Seeper
|
||||
1117.lstPokemon.StringItemList=Seemon
|
||||
1118.lstPokemon.StringItemList=Goldini
|
||||
1119.lstPokemon.StringItemList=Golking
|
||||
1120.lstPokemon.StringItemList=Sterndu
|
||||
1121.lstPokemon.StringItemList=Starmie
|
||||
1122.lstPokemon.StringItemList=Pantimos
|
||||
1123.lstPokemon.StringItemList=Sichlor
|
||||
1124.lstPokemon.StringItemList=Rossana
|
||||
1125.lstPokemon.StringItemList=Elektek
|
||||
1126.lstPokemon.StringItemList=Magmar
|
||||
1127.lstPokemon.StringItemList=Pinsir
|
||||
1128.lstPokemon.StringItemList=Tauros
|
||||
1129.lstPokemon.StringItemList=Karpador
|
||||
1130.lstPokemon.StringItemList=Garados
|
||||
1131.lstPokemon.StringItemList=Lapras
|
||||
1132.lstPokemon.StringItemList=Ditto
|
||||
1133.lstPokemon.StringItemList=Evoli
|
||||
1134.lstPokemon.StringItemList=Aquana
|
||||
1135.lstPokemon.StringItemList=Blitza
|
||||
1136.lstPokemon.StringItemList=Flamara
|
||||
1137.lstPokemon.StringItemList=Porygon
|
||||
1138.lstPokemon.StringItemList=Amonitas
|
||||
1139.lstPokemon.StringItemList=Amoroso
|
||||
1140.lstPokemon.StringItemList=Kabuto
|
||||
1141.lstPokemon.StringItemList=Kabutops
|
||||
1142.lstPokemon.StringItemList=Aerodactyl
|
||||
1143.lstPokemon.StringItemList=Relaxo
|
||||
1144.lstPokemon.StringItemList=Arktos
|
||||
1145.lstPokemon.StringItemList=Zapdos
|
||||
1146.lstPokemon.StringItemList=Lavados
|
||||
1147.lstPokemon.StringItemList=Dratini
|
||||
1148.lstPokemon.StringItemList=Dragonir
|
||||
1149.lstPokemon.StringItemList=Dragoran
|
||||
1150.lstPokemon.StringItemList=Mewtu
|
||||
1151.lstPokemon.StringItemList=Mew
|
||||
1152.lstPokemon.StringItemList=Endivie
|
||||
1153.lstPokemon.StringItemList=Lorblatt
|
||||
1154.lstPokemon.StringItemList=Meganie
|
||||
1155.lstPokemon.StringItemList=Feurigel
|
||||
1156.lstPokemon.StringItemList=Igelavar
|
||||
1157.lstPokemon.StringItemList=Tornupto
|
||||
1158.lstPokemon.StringItemList=Karnimani
|
||||
1159.lstPokemon.StringItemList=Tyracroc
|
||||
1160.lstPokemon.StringItemList=Impergator
|
||||
1161.lstPokemon.StringItemList=Wiesor
|
||||
1162.lstPokemon.StringItemList=Wiesenior
|
||||
1163.lstPokemon.StringItemList=Hoothoot
|
||||
1164.lstPokemon.StringItemList=Noctuh
|
||||
1165.lstPokemon.StringItemList=Ledyba
|
||||
1166.lstPokemon.StringItemList=Ledian
|
||||
1167.lstPokemon.StringItemList=Webarak
|
||||
1168.lstPokemon.StringItemList=Ariados
|
||||
1169.lstPokemon.StringItemList=Iksbat
|
||||
1170.lstPokemon.StringItemList=Lampi
|
||||
1171.lstPokemon.StringItemList=Lanturn
|
||||
1172.lstPokemon.StringItemList=Pichu
|
||||
1173.lstPokemon.StringItemList=Pii
|
||||
1174.lstPokemon.StringItemList=Fluffeluff
|
||||
1175.lstPokemon.StringItemList=Togepi
|
||||
1176.lstPokemon.StringItemList=Togetic
|
||||
1177.lstPokemon.StringItemList=Natu
|
||||
1178.lstPokemon.StringItemList=Xatu
|
||||
1179.lstPokemon.StringItemList=Voltilamm
|
||||
1180.lstPokemon.StringItemList=Waaty
|
||||
1181.lstPokemon.StringItemList=Ampharos
|
||||
1182.lstPokemon.StringItemList=Blubella
|
||||
1183.lstPokemon.StringItemList=Marill
|
||||
1184.lstPokemon.StringItemList=Azumarill
|
||||
1185.lstPokemon.StringItemList=Mogelbaum
|
||||
1186.lstPokemon.StringItemList=Quaxo
|
||||
1187.lstPokemon.StringItemList=Hoppspross
|
||||
1188.lstPokemon.StringItemList=Hubelupf
|
||||
1189.lstPokemon.StringItemList=Papungha
|
||||
1190.lstPokemon.StringItemList=Griffel
|
||||
1191.lstPokemon.StringItemList=Sonnkern
|
||||
1192.lstPokemon.StringItemList=Sonnflora
|
||||
1193.lstPokemon.StringItemList=Yanma
|
||||
1194.lstPokemon.StringItemList=Felino
|
||||
1195.lstPokemon.StringItemList=Morlord
|
||||
1196.lstPokemon.StringItemList=Psiana
|
||||
1197.lstPokemon.StringItemList=Nachtara
|
||||
1198.lstPokemon.StringItemList=Kramurx
|
||||
1199.lstPokemon.StringItemList=Laschoking
|
||||
1200.lstPokemon.StringItemList=Traunfugil
|
||||
1201.lstPokemon.StringItemList=Icognito
|
||||
1202.lstPokemon.StringItemList=Woingenau
|
||||
1203.lstPokemon.StringItemList=Girafarig
|
||||
1204.lstPokemon.StringItemList=Tannza
|
||||
1205.lstPokemon.StringItemList=Forstellka
|
||||
1206.lstPokemon.StringItemList=Dummisel
|
||||
1207.lstPokemon.StringItemList=Skorgla
|
||||
1208.lstPokemon.StringItemList=Stahlos
|
||||
1209.lstPokemon.StringItemList=Snubbull
|
||||
1210.lstPokemon.StringItemList=Granbull
|
||||
1211.lstPokemon.StringItemList=Baldorfish
|
||||
1212.lstPokemon.StringItemList=Scherox
|
||||
1213.lstPokemon.StringItemList=Pottrott
|
||||
1214.lstPokemon.StringItemList=Skaraborn
|
||||
1215.lstPokemon.StringItemList=Sniebel
|
||||
1216.lstPokemon.StringItemList=Teddiursa
|
||||
1217.lstPokemon.StringItemList=Ursaring
|
||||
1218.lstPokemon.StringItemList=Schneckmag
|
||||
1219.lstPokemon.StringItemList=Magcargo
|
||||
1220.lstPokemon.StringItemList=Quiekel
|
||||
1221.lstPokemon.StringItemList=Keifel
|
||||
1222.lstPokemon.StringItemList=Corasonn
|
||||
1223.lstPokemon.StringItemList=Remoraid
|
||||
1224.lstPokemon.StringItemList=Octillery
|
||||
1225.lstPokemon.StringItemList=Botogel
|
||||
1226.lstPokemon.StringItemList=Mantax
|
||||
1227.lstPokemon.StringItemList=Panzaeron
|
||||
1228.lstPokemon.StringItemList=Hunduster
|
||||
1229.lstPokemon.StringItemList=Hundemon
|
||||
1230.lstPokemon.StringItemList=Seedraking
|
||||
1231.lstPokemon.StringItemList=Phanpy
|
||||
1232.lstPokemon.StringItemList=Donphan
|
||||
1233.lstPokemon.StringItemList=Porygon2
|
||||
1234.lstPokemon.StringItemList=Damhirplex
|
||||
1235.lstPokemon.StringItemList=Farbeagle
|
||||
1236.lstPokemon.StringItemList=Rabauz
|
||||
1237.lstPokemon.StringItemList=Kapoera
|
||||
1238.lstPokemon.StringItemList=Kussilla
|
||||
1239.lstPokemon.StringItemList=Elekid
|
||||
1240.lstPokemon.StringItemList=Magby
|
||||
1241.lstPokemon.StringItemList=Miltank
|
||||
1242.lstPokemon.StringItemList=Heiteira
|
||||
1243.lstPokemon.StringItemList=Raikou
|
||||
1244.lstPokemon.StringItemList=Entei
|
||||
1245.lstPokemon.StringItemList=Suicune
|
||||
1246.lstPokemon.StringItemList=Larvitar
|
||||
1247.lstPokemon.StringItemList=Pupitar
|
||||
1248.lstPokemon.StringItemList=Despotar
|
||||
1249.lstPokemon.StringItemList=Lugia
|
||||
1250.lstPokemon.StringItemList=Ho-Oh
|
||||
1251.lstPokemon.StringItemList=Celebi
|
||||
|
@ -10,254 +10,3 @@
|
||||
9.DlgMain.rdoTeamValor.Label=Team ~Valor
|
||||
10.DlgMain.rdoTeamMystic.Label=Team ~Mystic
|
||||
11.DlgMain.rdoTeamInstinct.Label=Team ~Instinct
|
||||
1001.lstPokemon.StringItemList=Bulbasaur
|
||||
1002.lstPokemon.StringItemList=Ivysaur
|
||||
1003.lstPokemon.StringItemList=Venusaur
|
||||
1004.lstPokemon.StringItemList=Charmander
|
||||
1005.lstPokemon.StringItemList=Charmeleon
|
||||
1006.lstPokemon.StringItemList=Charizard
|
||||
1007.lstPokemon.StringItemList=Squirtle
|
||||
1008.lstPokemon.StringItemList=Wartortle
|
||||
1009.lstPokemon.StringItemList=Blastoise
|
||||
1010.lstPokemon.StringItemList=Caterpie
|
||||
1011.lstPokemon.StringItemList=Metapod
|
||||
1012.lstPokemon.StringItemList=Butterfree
|
||||
1013.lstPokemon.StringItemList=Weedle
|
||||
1014.lstPokemon.StringItemList=Kakuna
|
||||
1015.lstPokemon.StringItemList=Beedrill
|
||||
1016.lstPokemon.StringItemList=Pidgey
|
||||
1017.lstPokemon.StringItemList=Pidgeotto
|
||||
1018.lstPokemon.StringItemList=Pidgeot
|
||||
1019.lstPokemon.StringItemList=Rattata
|
||||
1020.lstPokemon.StringItemList=Raticate
|
||||
1021.lstPokemon.StringItemList=Spearow
|
||||
1022.lstPokemon.StringItemList=Fearow
|
||||
1023.lstPokemon.StringItemList=Ekans
|
||||
1024.lstPokemon.StringItemList=Arbok
|
||||
1025.lstPokemon.StringItemList=Pikachu
|
||||
1026.lstPokemon.StringItemList=Raichu
|
||||
1027.lstPokemon.StringItemList=Sandshrew
|
||||
1028.lstPokemon.StringItemList=Sandslash
|
||||
1029.lstPokemon.StringItemList=Nidoran\u2640
|
||||
1030.lstPokemon.StringItemList=Nidorina
|
||||
1031.lstPokemon.StringItemList=Nidoqueen
|
||||
1032.lstPokemon.StringItemList=Nidoran\u2642
|
||||
1033.lstPokemon.StringItemList=Nidorino
|
||||
1034.lstPokemon.StringItemList=Nidoking
|
||||
1035.lstPokemon.StringItemList=Clefairy
|
||||
1036.lstPokemon.StringItemList=Clefable
|
||||
1037.lstPokemon.StringItemList=Vulpix
|
||||
1038.lstPokemon.StringItemList=Ninetales
|
||||
1039.lstPokemon.StringItemList=Jigglypuff
|
||||
1040.lstPokemon.StringItemList=Wigglytuff
|
||||
1041.lstPokemon.StringItemList=Zubat
|
||||
1042.lstPokemon.StringItemList=Golbat
|
||||
1043.lstPokemon.StringItemList=Oddish
|
||||
1044.lstPokemon.StringItemList=Gloom
|
||||
1045.lstPokemon.StringItemList=Vileplume
|
||||
1046.lstPokemon.StringItemList=Paras
|
||||
1047.lstPokemon.StringItemList=Parasect
|
||||
1048.lstPokemon.StringItemList=Venonat
|
||||
1049.lstPokemon.StringItemList=Venomoth
|
||||
1050.lstPokemon.StringItemList=Diglett
|
||||
1051.lstPokemon.StringItemList=Dugtrio
|
||||
1052.lstPokemon.StringItemList=Meowth
|
||||
1053.lstPokemon.StringItemList=Persian
|
||||
1054.lstPokemon.StringItemList=Psyduck
|
||||
1055.lstPokemon.StringItemList=Golduck
|
||||
1056.lstPokemon.StringItemList=Mankey
|
||||
1057.lstPokemon.StringItemList=Primeape
|
||||
1058.lstPokemon.StringItemList=Growlithe
|
||||
1059.lstPokemon.StringItemList=Arcanine
|
||||
1060.lstPokemon.StringItemList=Poliwag
|
||||
1061.lstPokemon.StringItemList=Poliwhirl
|
||||
1062.lstPokemon.StringItemList=Poliwrath
|
||||
1063.lstPokemon.StringItemList=Abra
|
||||
1064.lstPokemon.StringItemList=Kadabra
|
||||
1065.lstPokemon.StringItemList=Alakazam
|
||||
1066.lstPokemon.StringItemList=Machop
|
||||
1067.lstPokemon.StringItemList=Machoke
|
||||
1068.lstPokemon.StringItemList=Machamp
|
||||
1069.lstPokemon.StringItemList=Bellsprout
|
||||
1070.lstPokemon.StringItemList=Weepinbell
|
||||
1071.lstPokemon.StringItemList=Victreebel
|
||||
1072.lstPokemon.StringItemList=Tentacool
|
||||
1073.lstPokemon.StringItemList=Tentacruel
|
||||
1074.lstPokemon.StringItemList=Geodude
|
||||
1075.lstPokemon.StringItemList=Graveler
|
||||
1076.lstPokemon.StringItemList=Golem
|
||||
1077.lstPokemon.StringItemList=Ponyta
|
||||
1078.lstPokemon.StringItemList=Rapidash
|
||||
1079.lstPokemon.StringItemList=Slowpoke
|
||||
1080.lstPokemon.StringItemList=Slowbro
|
||||
1081.lstPokemon.StringItemList=Magnemite
|
||||
1082.lstPokemon.StringItemList=Magneton
|
||||
1083.lstPokemon.StringItemList=Farfetch'd
|
||||
1084.lstPokemon.StringItemList=Doduo
|
||||
1085.lstPokemon.StringItemList=Dodrio
|
||||
1086.lstPokemon.StringItemList=Seel
|
||||
1087.lstPokemon.StringItemList=Dewgong
|
||||
1088.lstPokemon.StringItemList=Grimer
|
||||
1089.lstPokemon.StringItemList=Muk
|
||||
1090.lstPokemon.StringItemList=Shellder
|
||||
1091.lstPokemon.StringItemList=Cloyster
|
||||
1092.lstPokemon.StringItemList=Gastly
|
||||
1093.lstPokemon.StringItemList=Haunter
|
||||
1094.lstPokemon.StringItemList=Gengar
|
||||
1095.lstPokemon.StringItemList=Onix
|
||||
1096.lstPokemon.StringItemList=Drowzee
|
||||
1097.lstPokemon.StringItemList=Hypno
|
||||
1098.lstPokemon.StringItemList=Krabby
|
||||
1099.lstPokemon.StringItemList=Kingler
|
||||
1100.lstPokemon.StringItemList=Voltorb
|
||||
1101.lstPokemon.StringItemList=Electrode
|
||||
1102.lstPokemon.StringItemList=Exeggcute
|
||||
1103.lstPokemon.StringItemList=Exeggutor
|
||||
1104.lstPokemon.StringItemList=Cubone
|
||||
1105.lstPokemon.StringItemList=Marowak
|
||||
1106.lstPokemon.StringItemList=Hitmonlee
|
||||
1107.lstPokemon.StringItemList=Hitmonchan
|
||||
1108.lstPokemon.StringItemList=Lickitung
|
||||
1109.lstPokemon.StringItemList=Koffing
|
||||
1110.lstPokemon.StringItemList=Weezing
|
||||
1111.lstPokemon.StringItemList=Rhyhorn
|
||||
1112.lstPokemon.StringItemList=Rhydon
|
||||
1113.lstPokemon.StringItemList=Chansey
|
||||
1114.lstPokemon.StringItemList=Tangela
|
||||
1115.lstPokemon.StringItemList=Kangaskhan
|
||||
1116.lstPokemon.StringItemList=Horsea
|
||||
1117.lstPokemon.StringItemList=Seadra
|
||||
1118.lstPokemon.StringItemList=Goldeen
|
||||
1119.lstPokemon.StringItemList=Seaking
|
||||
1120.lstPokemon.StringItemList=Staryu
|
||||
1121.lstPokemon.StringItemList=Starmie
|
||||
1122.lstPokemon.StringItemList=Mr. Mime
|
||||
1123.lstPokemon.StringItemList=Scyther
|
||||
1124.lstPokemon.StringItemList=Jynx
|
||||
1125.lstPokemon.StringItemList=Electabuzz
|
||||
1126.lstPokemon.StringItemList=Magmar
|
||||
1127.lstPokemon.StringItemList=Pinsir
|
||||
1128.lstPokemon.StringItemList=Tauros
|
||||
1129.lstPokemon.StringItemList=Magikarp
|
||||
1130.lstPokemon.StringItemList=Gyarados
|
||||
1131.lstPokemon.StringItemList=Lapras
|
||||
1132.lstPokemon.StringItemList=Ditto
|
||||
1133.lstPokemon.StringItemList=Eevee
|
||||
1134.lstPokemon.StringItemList=Vaporeon
|
||||
1135.lstPokemon.StringItemList=Jolteon
|
||||
1136.lstPokemon.StringItemList=Flareon
|
||||
1137.lstPokemon.StringItemList=Porygon
|
||||
1138.lstPokemon.StringItemList=Omanyte
|
||||
1139.lstPokemon.StringItemList=Omastar
|
||||
1140.lstPokemon.StringItemList=Kabuto
|
||||
1141.lstPokemon.StringItemList=Kabutops
|
||||
1142.lstPokemon.StringItemList=Aerodactyl
|
||||
1143.lstPokemon.StringItemList=Snorlax
|
||||
1144.lstPokemon.StringItemList=Articuno
|
||||
1145.lstPokemon.StringItemList=Zapdos
|
||||
1146.lstPokemon.StringItemList=Moltres
|
||||
1147.lstPokemon.StringItemList=Dratini
|
||||
1148.lstPokemon.StringItemList=Dragonair
|
||||
1149.lstPokemon.StringItemList=Dragonite
|
||||
1150.lstPokemon.StringItemList=Mewtwo
|
||||
1151.lstPokemon.StringItemList=Mew
|
||||
1152.lstPokemon.StringItemList=Chikorita
|
||||
1153.lstPokemon.StringItemList=Bayleef
|
||||
1154.lstPokemon.StringItemList=Meganium
|
||||
1155.lstPokemon.StringItemList=Cyndaquil
|
||||
1156.lstPokemon.StringItemList=Quilava
|
||||
1157.lstPokemon.StringItemList=Typhlosion
|
||||
1158.lstPokemon.StringItemList=Totodile
|
||||
1159.lstPokemon.StringItemList=Croconaw
|
||||
1160.lstPokemon.StringItemList=Feraligatr
|
||||
1161.lstPokemon.StringItemList=Sentret
|
||||
1162.lstPokemon.StringItemList=Furret
|
||||
1163.lstPokemon.StringItemList=Hoothoot
|
||||
1164.lstPokemon.StringItemList=Noctowl
|
||||
1165.lstPokemon.StringItemList=Ledyba
|
||||
1166.lstPokemon.StringItemList=Ledian
|
||||
1167.lstPokemon.StringItemList=Spinarak
|
||||
1168.lstPokemon.StringItemList=Ariados
|
||||
1169.lstPokemon.StringItemList=Crobat
|
||||
1170.lstPokemon.StringItemList=Chinchou
|
||||
1171.lstPokemon.StringItemList=Lanturn
|
||||
1172.lstPokemon.StringItemList=Pichu
|
||||
1173.lstPokemon.StringItemList=Cleffa
|
||||
1174.lstPokemon.StringItemList=Igglybuff
|
||||
1175.lstPokemon.StringItemList=Togepi
|
||||
1176.lstPokemon.StringItemList=Togetic
|
||||
1177.lstPokemon.StringItemList=Natu
|
||||
1178.lstPokemon.StringItemList=Xatu
|
||||
1179.lstPokemon.StringItemList=Mareep
|
||||
1180.lstPokemon.StringItemList=Flaaffy
|
||||
1181.lstPokemon.StringItemList=Ampharos
|
||||
1182.lstPokemon.StringItemList=Bellossom
|
||||
1183.lstPokemon.StringItemList=Marill
|
||||
1184.lstPokemon.StringItemList=Azumarill
|
||||
1185.lstPokemon.StringItemList=Sudowoodo
|
||||
1186.lstPokemon.StringItemList=Politoed
|
||||
1187.lstPokemon.StringItemList=Hoppip
|
||||
1188.lstPokemon.StringItemList=Skiploom
|
||||
1189.lstPokemon.StringItemList=Jumpluff
|
||||
1190.lstPokemon.StringItemList=Aipom
|
||||
1191.lstPokemon.StringItemList=Sunkern
|
||||
1192.lstPokemon.StringItemList=Sunflora
|
||||
1193.lstPokemon.StringItemList=Yanma
|
||||
1194.lstPokemon.StringItemList=Wooper
|
||||
1195.lstPokemon.StringItemList=Quagsire
|
||||
1196.lstPokemon.StringItemList=Espeon
|
||||
1197.lstPokemon.StringItemList=Umbreon
|
||||
1198.lstPokemon.StringItemList=Murkrow
|
||||
1199.lstPokemon.StringItemList=Slowking
|
||||
1200.lstPokemon.StringItemList=Misdreavus
|
||||
1201.lstPokemon.StringItemList=Unown
|
||||
1202.lstPokemon.StringItemList=Wobbuffet
|
||||
1203.lstPokemon.StringItemList=Girafarig
|
||||
1204.lstPokemon.StringItemList=Pineco
|
||||
1205.lstPokemon.StringItemList=Forretress
|
||||
1206.lstPokemon.StringItemList=Dunsparce
|
||||
1207.lstPokemon.StringItemList=Gligar
|
||||
1208.lstPokemon.StringItemList=Steelix
|
||||
1209.lstPokemon.StringItemList=Snubbull
|
||||
1210.lstPokemon.StringItemList=Granbull
|
||||
1211.lstPokemon.StringItemList=Qwilfish
|
||||
1212.lstPokemon.StringItemList=Scizor
|
||||
1213.lstPokemon.StringItemList=Shuckle
|
||||
1214.lstPokemon.StringItemList=Heracross
|
||||
1215.lstPokemon.StringItemList=Sneasel
|
||||
1216.lstPokemon.StringItemList=Teddiursa
|
||||
1217.lstPokemon.StringItemList=Ursaring
|
||||
1218.lstPokemon.StringItemList=Slugma
|
||||
1219.lstPokemon.StringItemList=Magcargo
|
||||
1220.lstPokemon.StringItemList=Swinub
|
||||
1221.lstPokemon.StringItemList=Piloswine
|
||||
1222.lstPokemon.StringItemList=Corsola
|
||||
1223.lstPokemon.StringItemList=Remoraid
|
||||
1224.lstPokemon.StringItemList=Octillery
|
||||
1225.lstPokemon.StringItemList=Delibird
|
||||
1226.lstPokemon.StringItemList=Mantine
|
||||
1227.lstPokemon.StringItemList=Skarmory
|
||||
1228.lstPokemon.StringItemList=Houndour
|
||||
1229.lstPokemon.StringItemList=Houndoom
|
||||
1230.lstPokemon.StringItemList=Kingdra
|
||||
1231.lstPokemon.StringItemList=Phanpy
|
||||
1232.lstPokemon.StringItemList=Donphan
|
||||
1233.lstPokemon.StringItemList=Porygon2
|
||||
1234.lstPokemon.StringItemList=Stantler
|
||||
1235.lstPokemon.StringItemList=Smeargle
|
||||
1236.lstPokemon.StringItemList=Tyrogue
|
||||
1237.lstPokemon.StringItemList=Hitmontop
|
||||
1238.lstPokemon.StringItemList=Smoochum
|
||||
1239.lstPokemon.StringItemList=Elekid
|
||||
1240.lstPokemon.StringItemList=Magby
|
||||
1241.lstPokemon.StringItemList=Miltank
|
||||
1242.lstPokemon.StringItemList=Blissey
|
||||
1243.lstPokemon.StringItemList=Raikou
|
||||
1244.lstPokemon.StringItemList=Entei
|
||||
1245.lstPokemon.StringItemList=Suicune
|
||||
1246.lstPokemon.StringItemList=Larvitar
|
||||
1247.lstPokemon.StringItemList=Pupitar
|
||||
1248.lstPokemon.StringItemList=Tyranitar
|
||||
1249.lstPokemon.StringItemList=Lugia
|
||||
1250.lstPokemon.StringItemList=Ho-Oh
|
||||
1251.lstPokemon.StringItemList=Celebi
|
||||
|
@ -10,254 +10,3 @@
|
||||
9.DlgMain.rdoTeamValor.Label=\u6b66\u52c7\u968a(~V)
|
||||
10.DlgMain.rdoTeamMystic.Label=\u53e1\u667a\u968a(~M)
|
||||
11.DlgMain.rdoTeamInstinct.Label=\u9748\u7280\u968a(~I)
|
||||
1001.lstPokemon.StringItemList=\u5999\u86d9\u7a2e\u5b50
|
||||
1002.lstPokemon.StringItemList=\u5999\u86d9\u8349
|
||||
1003.lstPokemon.StringItemList=\u5999\u86d9\u82b1
|
||||
1004.lstPokemon.StringItemList=\u5c0f\u706b\u9f8d
|
||||
1005.lstPokemon.StringItemList=\u706b\u6050\u9f8d
|
||||
1006.lstPokemon.StringItemList=\u5674\u706b\u9f8d
|
||||
1007.lstPokemon.StringItemList=\u5091\u5c3c\u9f9c
|
||||
1008.lstPokemon.StringItemList=\u5361\u54aa\u9f9c
|
||||
1009.lstPokemon.StringItemList=\u6c34\u7bad\u9f9c
|
||||
1010.lstPokemon.StringItemList=\u7da0\u6bdb\u87f2
|
||||
1011.lstPokemon.StringItemList=\u9435\u7532\u86f9
|
||||
1012.lstPokemon.StringItemList=\u5df4\u5927\u8776
|
||||
1013.lstPokemon.StringItemList=\u7368\u89d2\u87f2
|
||||
1014.lstPokemon.StringItemList=\u9435\u6bbc\u86f9
|
||||
1015.lstPokemon.StringItemList=\u5927\u91dd\u8702
|
||||
1016.lstPokemon.StringItemList=\u6ce2\u6ce2
|
||||
1017.lstPokemon.StringItemList=\u6bd4\u6bd4\u9ce5
|
||||
1018.lstPokemon.StringItemList=\u5927\u6bd4\u9ce5
|
||||
1019.lstPokemon.StringItemList=\u5c0f\u62c9\u9054
|
||||
1020.lstPokemon.StringItemList=\u62c9\u9054
|
||||
1021.lstPokemon.StringItemList=\u70c8\u96c0
|
||||
1022.lstPokemon.StringItemList=\u5927\u5634\u96c0
|
||||
1023.lstPokemon.StringItemList=\u963f\u67cf\u86c7
|
||||
1024.lstPokemon.StringItemList=\u963f\u67cf\u602a
|
||||
1025.lstPokemon.StringItemList=\u76ae\u5361\u4e18
|
||||
1026.lstPokemon.StringItemList=\u96f7\u4e18
|
||||
1027.lstPokemon.StringItemList=\u7a7f\u5c71\u9f20
|
||||
1028.lstPokemon.StringItemList=\u7a7f\u5c71\u738b
|
||||
1029.lstPokemon.StringItemList=\u5c3c\u591a\u862d
|
||||
1030.lstPokemon.StringItemList=\u5c3c\u591a\u5a1c
|
||||
1031.lstPokemon.StringItemList=\u5c3c\u591a\u540e
|
||||
1032.lstPokemon.StringItemList=\u5c3c\u591a\u6717
|
||||
1033.lstPokemon.StringItemList=\u5c3c\u591a\u5229\u8afe
|
||||
1034.lstPokemon.StringItemList=\u5c3c\u591a\u738b
|
||||
1035.lstPokemon.StringItemList=\u76ae\u76ae
|
||||
1036.lstPokemon.StringItemList=\u76ae\u53ef\u897f
|
||||
1037.lstPokemon.StringItemList=\u516d\u5c3e
|
||||
1038.lstPokemon.StringItemList=\u4e5d\u5c3e
|
||||
1039.lstPokemon.StringItemList=\u80d6\u4e01
|
||||
1040.lstPokemon.StringItemList=\u80d6\u53ef\u4e01
|
||||
1041.lstPokemon.StringItemList=\u8d85\u97f3\u8760
|
||||
1042.lstPokemon.StringItemList=\u5927\u5634\u8760
|
||||
1043.lstPokemon.StringItemList=\u8d70\u8def\u8349
|
||||
1044.lstPokemon.StringItemList=\u81ed\u81ed\u82b1
|
||||
1045.lstPokemon.StringItemList=\u9738\u738b\u82b1
|
||||
1046.lstPokemon.StringItemList=\u6d3e\u62c9\u65af
|
||||
1047.lstPokemon.StringItemList=\u6d3e\u62c9\u65af\u7279
|
||||
1048.lstPokemon.StringItemList=\u6bdb\u7403
|
||||
1049.lstPokemon.StringItemList=\u6469\u9b6f\u86fe
|
||||
1050.lstPokemon.StringItemList=\u5730\u9f20
|
||||
1051.lstPokemon.StringItemList=\u4e09\u5730\u9f20
|
||||
1052.lstPokemon.StringItemList=\u55b5\u55b5
|
||||
1053.lstPokemon.StringItemList=\u8c93\u8001\u5927
|
||||
1054.lstPokemon.StringItemList=\u53ef\u9054\u9d28
|
||||
1055.lstPokemon.StringItemList=\u54e5\u9054\u9d28
|
||||
1056.lstPokemon.StringItemList=\u7334\u602a
|
||||
1057.lstPokemon.StringItemList=\u706b\u7206\u7334
|
||||
1058.lstPokemon.StringItemList=\u5361\u8482\u72d7
|
||||
1059.lstPokemon.StringItemList=\u98a8\u901f\u72d7
|
||||
1060.lstPokemon.StringItemList=\u868a\u9999\u874c\u86aa
|
||||
1061.lstPokemon.StringItemList=\u868a\u9999\u541b
|
||||
1062.lstPokemon.StringItemList=\u868a\u9999\u6cf3\u58eb
|
||||
1063.lstPokemon.StringItemList=\u51f1\u897f
|
||||
1064.lstPokemon.StringItemList=\u52c7\u57fa\u62c9
|
||||
1065.lstPokemon.StringItemList=\u80e1\u5730
|
||||
1066.lstPokemon.StringItemList=\u8155\u529b
|
||||
1067.lstPokemon.StringItemList=\u8c6a\u529b
|
||||
1068.lstPokemon.StringItemList=\u602a\u529b
|
||||
1069.lstPokemon.StringItemList=\u5587\u53ed\u82bd
|
||||
1070.lstPokemon.StringItemList=\u53e3\u5446\u82b1
|
||||
1071.lstPokemon.StringItemList=\u5927\u98df\u82b1
|
||||
1072.lstPokemon.StringItemList=\u746a\u7459\u6c34\u6bcd
|
||||
1073.lstPokemon.StringItemList=\u6bd2\u523a\u6c34\u6bcd
|
||||
1074.lstPokemon.StringItemList=\u5c0f\u62f3\u77f3
|
||||
1075.lstPokemon.StringItemList=\u9686\u9686\u77f3
|
||||
1076.lstPokemon.StringItemList=\u9686\u9686\u5ca9
|
||||
1077.lstPokemon.StringItemList=\u5c0f\u706b\u99ac
|
||||
1078.lstPokemon.StringItemList=\u70c8\u7130\u99ac
|
||||
1079.lstPokemon.StringItemList=\u5446\u5446\u7378
|
||||
1080.lstPokemon.StringItemList=\u5446\u6bbc\u7378
|
||||
1081.lstPokemon.StringItemList=\u5c0f\u78c1\u602a
|
||||
1082.lstPokemon.StringItemList=\u4e09\u5408\u4e00\u78c1\u602a
|
||||
1083.lstPokemon.StringItemList=\u5927\u8525\u9d28
|
||||
1084.lstPokemon.StringItemList=\u561f\u561f
|
||||
1085.lstPokemon.StringItemList=\u561f\u561f\u5229
|
||||
1086.lstPokemon.StringItemList=\u5c0f\u6d77\u7345
|
||||
1087.lstPokemon.StringItemList=\u767d\u6d77\u7345
|
||||
1088.lstPokemon.StringItemList=\u81ed\u6ce5
|
||||
1089.lstPokemon.StringItemList=\u81ed\u81ed\u6ce5
|
||||
1090.lstPokemon.StringItemList=\u5927\u820c\u8c9d
|
||||
1091.lstPokemon.StringItemList=\u523a\u7532\u8c9d
|
||||
1092.lstPokemon.StringItemList=\u9b3c\u65af
|
||||
1093.lstPokemon.StringItemList=\u9b3c\u65af\u901a
|
||||
1094.lstPokemon.StringItemList=\u803f\u9b3c
|
||||
1095.lstPokemon.StringItemList=\u5927\u5ca9\u86c7
|
||||
1096.lstPokemon.StringItemList=\u50ac\u7720\u8c98
|
||||
1097.lstPokemon.StringItemList=\u5f15\u5922\u8c98\u4eba
|
||||
1098.lstPokemon.StringItemList=\u5927\u9257\u87f9
|
||||
1099.lstPokemon.StringItemList=\u5de8\u9257\u87f9
|
||||
1100.lstPokemon.StringItemList=\u9739\u9742\u96fb\u7403
|
||||
1101.lstPokemon.StringItemList=\u9811\u76ae\u96f7\u5f48
|
||||
1102.lstPokemon.StringItemList=\u86cb\u86cb
|
||||
1103.lstPokemon.StringItemList=\u6930\u86cb\u6a39
|
||||
1104.lstPokemon.StringItemList=\u5361\u62c9\u5361\u62c9
|
||||
1105.lstPokemon.StringItemList=\u560e\u5566\u560e\u5566
|
||||
1106.lstPokemon.StringItemList=\u98db\u817f\u90ce
|
||||
1107.lstPokemon.StringItemList=\u5feb\u62f3\u90ce
|
||||
1108.lstPokemon.StringItemList=\u5927\u820c\u982d
|
||||
1109.lstPokemon.StringItemList=\u74e6\u65af\u86cb
|
||||
1110.lstPokemon.StringItemList=\u96d9\u5f48\u74e6\u65af
|
||||
1111.lstPokemon.StringItemList=\u7368\u89d2\u7280\u725b
|
||||
1112.lstPokemon.StringItemList=\u947d\u89d2\u7280\u7378
|
||||
1113.lstPokemon.StringItemList=\u5409\u5229\u86cb
|
||||
1114.lstPokemon.StringItemList=\u8513\u85e4\u602a
|
||||
1115.lstPokemon.StringItemList=\u888b\u7378
|
||||
1116.lstPokemon.StringItemList=\u58a8\u6d77\u99ac
|
||||
1117.lstPokemon.StringItemList=\u6d77\u523a\u9f8d
|
||||
1118.lstPokemon.StringItemList=\u89d2\u91d1\u9b5a
|
||||
1119.lstPokemon.StringItemList=\u91d1\u9b5a\u738b
|
||||
1120.lstPokemon.StringItemList=\u6d77\u661f\u661f
|
||||
1121.lstPokemon.StringItemList=\u5bf6\u77f3\u6d77\u661f
|
||||
1122.lstPokemon.StringItemList=\u9b54\u7246\u4eba\u5076
|
||||
1123.lstPokemon.StringItemList=\u98db\u5929\u87b3\u8782
|
||||
1124.lstPokemon.StringItemList=\u8ff7\u5507\u59d0
|
||||
1125.lstPokemon.StringItemList=\u96fb\u64ca\u7378
|
||||
1126.lstPokemon.StringItemList=\u9d28\u5634\u706b\u7378
|
||||
1127.lstPokemon.StringItemList=\u51f1\u7f85\u65af
|
||||
1128.lstPokemon.StringItemList=\u80af\u6cf0\u7f85
|
||||
1129.lstPokemon.StringItemList=\u9bc9\u9b5a\u738b
|
||||
1130.lstPokemon.StringItemList=\u66b4\u9bc9\u9f8d
|
||||
1131.lstPokemon.StringItemList=\u62c9\u666e\u62c9\u65af
|
||||
1132.lstPokemon.StringItemList=\u767e\u8b8a\u602a
|
||||
1133.lstPokemon.StringItemList=\u4f0a\u5e03
|
||||
1134.lstPokemon.StringItemList=\u6c34\u4f0a\u5e03
|
||||
1135.lstPokemon.StringItemList=\u96f7\u4f0a\u5e03
|
||||
1136.lstPokemon.StringItemList=\u706b\u4f0a\u5e03
|
||||
1137.lstPokemon.StringItemList=\u591a\u908a\u7378
|
||||
1138.lstPokemon.StringItemList=\u83ca\u77f3\u7378
|
||||
1139.lstPokemon.StringItemList=\u591a\u523a\u83ca\u77f3\u7378
|
||||
1140.lstPokemon.StringItemList=\u5316\u77f3\u76d4
|
||||
1141.lstPokemon.StringItemList=\u942e\u5200\u76d4
|
||||
1142.lstPokemon.StringItemList=\u5316\u77f3\u7ffc\u9f8d
|
||||
1143.lstPokemon.StringItemList=\u5361\u6bd4\u7378
|
||||
1144.lstPokemon.StringItemList=\u6025\u51cd\u9ce5
|
||||
1145.lstPokemon.StringItemList=\u9583\u96fb\u9ce5
|
||||
1146.lstPokemon.StringItemList=\u706b\u7130\u9ce5
|
||||
1147.lstPokemon.StringItemList=\u8ff7\u4f60\u9f8d
|
||||
1148.lstPokemon.StringItemList=\u54c8\u514b\u9f8d
|
||||
1149.lstPokemon.StringItemList=\u5feb\u9f8d
|
||||
1150.lstPokemon.StringItemList=\u8d85\u5922
|
||||
1151.lstPokemon.StringItemList=\u5922\u5e7b
|
||||
1152.lstPokemon.StringItemList=\u83ca\u8349\u8449
|
||||
1153.lstPokemon.StringItemList=\u6708\u6842\u8449
|
||||
1154.lstPokemon.StringItemList=\u5927\u7afa\u8475
|
||||
1155.lstPokemon.StringItemList=\u706b\u7403\u9f20
|
||||
1156.lstPokemon.StringItemList=\u706b\u5ca9\u9f20
|
||||
1157.lstPokemon.StringItemList=\u706b\u7206\u7378
|
||||
1158.lstPokemon.StringItemList=\u5c0f\u92f8\u9c77
|
||||
1159.lstPokemon.StringItemList=\u85cd\u9c77
|
||||
1160.lstPokemon.StringItemList=\u5927\u529b\u9c77
|
||||
1161.lstPokemon.StringItemList=\u5c3e\u7acb
|
||||
1162.lstPokemon.StringItemList=\u5927\u5c3e\u7acb
|
||||
1163.lstPokemon.StringItemList=\u5495\u5495
|
||||
1164.lstPokemon.StringItemList=\u8c93\u982d\u591c\u9df9
|
||||
1165.lstPokemon.StringItemList=\u82ad\u74e2\u87f2
|
||||
1166.lstPokemon.StringItemList=\u5b89\u74e2\u87f2
|
||||
1167.lstPokemon.StringItemList=\u5713\u7d72\u86db
|
||||
1168.lstPokemon.StringItemList=\u963f\u5229\u591a\u65af
|
||||
1169.lstPokemon.StringItemList=\u53c9\u5b57\u8760
|
||||
1170.lstPokemon.StringItemList=\u71c8\u7c60\u9b5a
|
||||
1171.lstPokemon.StringItemList=\u96fb\u71c8\u602a
|
||||
1172.lstPokemon.StringItemList=\u76ae\u4e18
|
||||
1173.lstPokemon.StringItemList=\u76ae\u5bf6\u5bf6
|
||||
1174.lstPokemon.StringItemList=\u5bf6\u5bf6\u4e01
|
||||
1175.lstPokemon.StringItemList=\u6ce2\u514b\u6bd4
|
||||
1176.lstPokemon.StringItemList=\u6ce2\u514b\u57fa\u53e4
|
||||
1177.lstPokemon.StringItemList=\u5929\u7136\u96c0
|
||||
1178.lstPokemon.StringItemList=\u5929\u7136\u9ce5
|
||||
1179.lstPokemon.StringItemList=\u54a9\u5229\u7f8a
|
||||
1180.lstPokemon.StringItemList=\u8338\u8338\u7f8a
|
||||
1181.lstPokemon.StringItemList=\u96fb\u9f8d
|
||||
1182.lstPokemon.StringItemList=\u7f8e\u9e97\u82b1
|
||||
1183.lstPokemon.StringItemList=\u746a\u529b\u9732
|
||||
1184.lstPokemon.StringItemList=\u746a\u529b\u9732\u9e97
|
||||
1185.lstPokemon.StringItemList=\u6a39\u624d\u602a
|
||||
1186.lstPokemon.StringItemList=\u868a\u9999\u86d9\u7687
|
||||
1187.lstPokemon.StringItemList=\u6bfd\u5b50\u8349
|
||||
1188.lstPokemon.StringItemList=\u6bfd\u5b50\u82b1
|
||||
1189.lstPokemon.StringItemList=\u6bfd\u5b50\u68c9
|
||||
1190.lstPokemon.StringItemList=\u9577\u5c3e\u602a\u624b
|
||||
1191.lstPokemon.StringItemList=\u5411\u65e5\u7a2e\u5b50
|
||||
1192.lstPokemon.StringItemList=\u5411\u65e5\u82b1\u602a
|
||||
1193.lstPokemon.StringItemList=\u873b\u873b\u8713
|
||||
1194.lstPokemon.StringItemList=\u70cf\u6ce2
|
||||
1195.lstPokemon.StringItemList=\u6cbc\u738b
|
||||
1196.lstPokemon.StringItemList=\u592a\u967d\u4f0a\u5e03
|
||||
1197.lstPokemon.StringItemList=\u6708\u4eae\u4f0a\u5e03
|
||||
1198.lstPokemon.StringItemList=\u9ed1\u6697\u9d09
|
||||
1199.lstPokemon.StringItemList=\u5446\u5446\u738b
|
||||
1200.lstPokemon.StringItemList=\u5922\u5996
|
||||
1201.lstPokemon.StringItemList=\u672a\u77e5\u5716\u9a30
|
||||
1202.lstPokemon.StringItemList=\u679c\u7136\u7fc1
|
||||
1203.lstPokemon.StringItemList=\u9e92\u9e9f\u5947
|
||||
1204.lstPokemon.StringItemList=\u699b\u679c\u7403
|
||||
1205.lstPokemon.StringItemList=\u4f5b\u70c8\u6258\u65af
|
||||
1206.lstPokemon.StringItemList=\u571f\u9f8d\u5f1f\u5f1f
|
||||
1207.lstPokemon.StringItemList=\u5929\u880d
|
||||
1208.lstPokemon.StringItemList=\u5927\u92fc\u86c7
|
||||
1209.lstPokemon.StringItemList=\u5e03\u9b6f
|
||||
1210.lstPokemon.StringItemList=\u5e03\u9b6f\u7687
|
||||
1211.lstPokemon.StringItemList=\u5343\u91dd\u9b5a
|
||||
1212.lstPokemon.StringItemList=\u5de8\u9257\u87b3\u8782
|
||||
1213.lstPokemon.StringItemList=\u58fa\u58fa
|
||||
1214.lstPokemon.StringItemList=\u8d6b\u62c9\u514b\u7f85\u65af
|
||||
1215.lstPokemon.StringItemList=\u72c3\u62c9
|
||||
1216.lstPokemon.StringItemList=\u718a\u5bf6\u5bf6
|
||||
1217.lstPokemon.StringItemList=\u5708\u5708\u718a
|
||||
1218.lstPokemon.StringItemList=\u7194\u5ca9\u87f2
|
||||
1219.lstPokemon.StringItemList=\u7194\u5ca9\u8778\u725b
|
||||
1220.lstPokemon.StringItemList=\u5c0f\u5c71\u8c6c
|
||||
1221.lstPokemon.StringItemList=\u9577\u6bdb\u8c6c
|
||||
1222.lstPokemon.StringItemList=\u592a\u967d\u73ca\u745a
|
||||
1223.lstPokemon.StringItemList=\u9435\u70ae\u9b5a
|
||||
1224.lstPokemon.StringItemList=\u7ae0\u9b5a\u6876
|
||||
1225.lstPokemon.StringItemList=\u4fe1\u4f7f\u9ce5
|
||||
1226.lstPokemon.StringItemList=\u5de8\u7fc5\u98db\u9b5a
|
||||
1227.lstPokemon.StringItemList=\u76d4\u7532\u9ce5
|
||||
1228.lstPokemon.StringItemList=\u6234\u9b6f\u6bd4
|
||||
1229.lstPokemon.StringItemList=\u9ed1\u9b6f\u52a0
|
||||
1230.lstPokemon.StringItemList=\u523a\u9f8d\u738b
|
||||
1231.lstPokemon.StringItemList=\u5c0f\u5c0f\u8c61
|
||||
1232.lstPokemon.StringItemList=\u9813\u7532
|
||||
1233.lstPokemon.StringItemList=\u591a\u908a\u7378\u2161
|
||||
1234.lstPokemon.StringItemList=\u9a5a\u89d2\u9e7f
|
||||
1235.lstPokemon.StringItemList=\u5716\u5716\u72ac
|
||||
1236.lstPokemon.StringItemList=\u7121\u754f\u5c0f\u5b50
|
||||
1237.lstPokemon.StringItemList=\u6230\u821e\u90ce
|
||||
1238.lstPokemon.StringItemList=\u8ff7\u5507\u5a03
|
||||
1239.lstPokemon.StringItemList=\u96fb\u64ca\u602a
|
||||
1240.lstPokemon.StringItemList=\u9d28\u5634\u5bf6\u5bf6
|
||||
1241.lstPokemon.StringItemList=\u5927\u5976\u7f50
|
||||
1242.lstPokemon.StringItemList=\u5e78\u798f\u86cb
|
||||
1243.lstPokemon.StringItemList=\u96f7\u516c
|
||||
1244.lstPokemon.StringItemList=\u708e\u5e1d
|
||||
1245.lstPokemon.StringItemList=\u6c34\u541b
|
||||
1246.lstPokemon.StringItemList=\u5e7c\u57fa\u62c9\u65af
|
||||
1247.lstPokemon.StringItemList=\u6c99\u57fa\u62c9\u65af
|
||||
1248.lstPokemon.StringItemList=\u73ed\u57fa\u62c9\u65af
|
||||
1249.lstPokemon.StringItemList=\u6d1b\u5947\u4e9e
|
||||
1250.lstPokemon.StringItemList=\u9cf3\u738b
|
||||
1251.lstPokemon.StringItemList=\u6642\u62c9\u6bd4
|
||||
|
@ -11,257 +11,6 @@
|
||||
<dlg:text dlg:id="txtPokemon" dlg:tab-index="16" dlg:left="5" dlg:top="26" dlg:width="30" dlg:height="8" dlg:value="&2.DlgMain.txtPokemon.Label"/>
|
||||
<dlg:menulist dlg:id="lstPokemon" dlg:tab-index="0" dlg:left="35" dlg:top="24" dlg:width="55" dlg:height="12" dlg:spin="true" dlg:linecount="20">
|
||||
<dlg:menupopup>
|
||||
<dlg:menuitem dlg:value="&1001.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1002.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1003.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1004.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1005.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1006.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1007.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1008.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1009.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1010.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1011.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1012.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1013.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1014.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1015.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1016.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1017.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1018.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1019.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1020.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1021.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1022.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1023.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1024.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1025.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1026.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1027.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1028.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1029.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1030.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1031.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1032.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1033.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1034.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1035.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1036.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1037.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1038.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1039.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1040.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1041.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1042.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1043.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1044.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1045.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1046.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1047.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1048.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1049.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1050.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1051.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1052.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1053.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1054.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1055.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1056.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1057.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1058.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1059.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1060.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1061.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1062.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1063.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1064.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1065.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1066.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1067.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1068.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1069.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1070.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1071.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1072.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1073.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1074.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1075.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1076.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1077.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1078.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1079.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1080.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1081.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1082.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1083.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1084.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1085.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1086.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1087.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1088.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1089.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1090.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1091.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1092.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1093.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1094.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1095.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1096.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1097.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1098.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1099.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1100.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1101.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1102.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1103.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1104.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1105.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1106.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1107.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1108.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1109.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1110.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1111.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1112.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1113.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1114.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1115.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1116.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1117.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1118.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1119.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1120.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1121.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1122.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1123.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1124.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1125.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1126.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1127.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1128.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1129.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1130.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1131.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1132.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1133.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1134.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1135.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1136.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1137.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1138.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1139.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1140.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1141.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1142.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1143.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1144.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1145.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1146.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1147.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1148.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1149.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1150.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1151.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1152.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1153.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1154.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1155.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1156.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1157.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1158.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1159.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1160.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1161.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1162.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1163.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1164.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1165.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1166.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1167.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1168.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1169.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1170.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1171.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1172.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1173.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1174.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1175.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1176.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1177.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1178.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1179.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1180.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1181.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1182.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1183.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1184.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1185.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1186.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1187.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1188.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1189.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1190.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1191.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1192.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1193.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1194.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1195.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1196.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1197.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1198.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1199.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1200.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1201.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1202.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1203.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1204.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1205.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1206.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1207.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1208.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1209.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1210.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1211.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1212.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1213.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1214.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1215.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1216.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1217.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1218.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1219.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1220.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1221.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1222.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1223.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1224.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1225.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1226.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1227.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1228.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1229.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1230.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1231.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1232.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1233.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1234.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1235.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1236.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1237.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1238.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1239.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1240.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1241.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1242.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1243.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1244.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1245.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1246.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1247.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1248.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1249.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1250.lstPokemon.StringItemList"/>
|
||||
<dlg:menuitem dlg:value="&1251.lstPokemon.StringItemList"/>
|
||||
</dlg:menupopup>
|
||||
<script:event script:event-name="on-itemstatechange" script:macro-name="vnd.sun.star.script:PokemonGoIV.1Dialog.subLstPokemonSelected?language=Basic&location=application" script:language="Script"/>
|
||||
</dlg:menulist>
|
||||
|
@ -2,9 +2,10 @@
|
||||
<!DOCTYPE library:library PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "library.dtd">
|
||||
<library:library xmlns:library="http://openoffice.org/2000/library" library:name="PokemonGoIV" library:readonly="false" library:passwordprotected="false">
|
||||
<library:element library:name="0Main"/>
|
||||
<library:element library:name="2Data"/>
|
||||
<library:element library:name="3Data"/>
|
||||
<library:element library:name="9Load"/>
|
||||
<library:element library:name="8Width"/>
|
||||
<library:element library:name="1Dialog"/>
|
||||
<library:element library:name="7Registry"/>
|
||||
<library:element library:name="2Report"/>
|
||||
</library:library>
|
Loading…
Reference in New Issue
Block a user