Removed unnecessary gamemode item properties

This commit is contained in:
JappaWakka 2023-08-14 18:40:52 +02:00
parent f5d2f66c75
commit c007d0d6f4
5 changed files with 24 additions and 19 deletions

Binary file not shown.

View File

@ -30,15 +30,14 @@ Public Class GameModeItem
Public gmCureStatusEffects As List(Of String) Public gmCureStatusEffects As List(Of String)
'Evolution Item 'Evolution Item
Public gmIsEvolutionItem As Boolean = False
Public gmEvolutionPokemon As List(Of Integer) Public gmEvolutionPokemon As List(Of Integer)
'TechMachine Item 'Machine Item
Public gmIsTM As Boolean = False Public gmIsHM As Boolean = False
Public gmTeachMove As BattleSystem.Attack Public gmTeachMove As BattleSystem.Attack
Public gmCanTeachAlways As Boolean = False Public gmCanTeachAlways As Boolean = False
Public gmCanTeachWhenFullyEvolved As Boolean = False Public gmCanTeachWhenFullyEvolved As Boolean = False
Public gmCanTeachWhenGender As Boolean = False Public gmCanTeachWhenGendered As Boolean = False
'Mega Stone Item 'Mega Stone Item
Public gmMegaPokemonNumber As Integer Public gmMegaPokemonNumber As Integer
@ -250,7 +249,7 @@ Public Class GameModeItem
Core.SetScreen(New TransitionScreen(Core.CurrentScreen, New MailSystemScreen(Core.CurrentScreen, Me.gmID), Color.Black, False)) Core.SetScreen(New TransitionScreen(Core.CurrentScreen, New MailSystemScreen(Core.CurrentScreen, Me.gmID), Color.Black, False))
End If End If
If gmIsTM = True And gmTeachMove IsNot Nothing Then If gmTeachMove IsNot Nothing Then
SoundManager.PlaySound("PC\LogOn", False) SoundManager.PlaySound("PC\LogOn", False)
Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True} Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
@ -272,7 +271,7 @@ Public Class GameModeItem
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen) Core.SetScreen(selScreen)
ElseIf gmIsEvolutionItem = True AndAlso gmEvolutionPokemon IsNot Nothing AndAlso gmEvolutionPokemon.Count > 0 Then ElseIf gmEvolutionPokemon IsNot Nothing AndAlso gmEvolutionPokemon.Count > 0 Then
Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True} Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
@ -305,7 +304,7 @@ Public Class GameModeItem
Dim p As Pokemon = Core.Player.Pokemons(PokeIndex) Dim p As Pokemon = Core.Player.Pokemons(PokeIndex)
If gmIsTM = True AndAlso gmTeachMove IsNot Nothing Then If gmTeachMove IsNot Nothing Then
Dim a As BattleSystem.Attack = gmTeachMove Dim a As BattleSystem.Attack = gmTeachMove
Dim t As String = CanTeach(p) Dim t As String = CanTeach(p)
@ -316,9 +315,11 @@ Public Class GameModeItem
Return True Return True
Else Else
If gmIsHM = False Then
If CBool(GameModeManager.GetGameRuleValue("SingleUseTM", "0")) = True Then If CBool(GameModeManager.GetGameRuleValue("SingleUseTM", "0")) = True Then
Core.Player.Inventory.RemoveItem(gmID.ToString, 1) Core.Player.Inventory.RemoveItem(gmID.ToString, 1)
End If End If
End If
p.Attacks.Add(BattleSystem.Attack.GetAttackByID(a.ID)) p.Attacks.Add(BattleSystem.Attack.GetAttackByID(a.ID))
SoundManager.PlaySound("success_small", False) SoundManager.PlaySound("success_small", False)
@ -524,7 +525,7 @@ Public Class GameModeItem
End If End If
End If End If
End If End If
If gmIsEvolutionItem = True AndAlso gmEvolutionPokemon IsNot Nothing AndAlso gmEvolutionPokemon.Count > 0 Then If gmEvolutionPokemon IsNot Nothing AndAlso gmEvolutionPokemon.Count > 0 Then
Return Me.UseEvolutionItem(PokeIndex) Return Me.UseEvolutionItem(PokeIndex)
End If End If
@ -564,7 +565,7 @@ Public Class GameModeItem
End If End If
End If End If
If gmCanTeachWhenGender = True Then If gmCanTeachWhenGendered = True Then
If p.Gender <> Pokemon.Genders.Genderless And p.Machines.Count > 0 Then If p.Gender <> Pokemon.Genders.Genderless And p.Machines.Count > 0 Then
Return "" Return ""
End If End If

View File

@ -138,8 +138,6 @@ Public Class GameModeItemLoader
Else Else
item.gmCureStatusEffects.AddRange(StatusEffectList) item.gmCureStatusEffects.AddRange(StatusEffectList)
End If End If
Case "isevolutionitem"
item.gmIsEvolutionItem = CBool(value)
Case "evolutionpokemon" Case "evolutionpokemon"
Dim PokemonList As New List(Of Integer) Dim PokemonList As New List(Of Integer)
Dim valueSplit As String() = value.Split(CChar(",")) Dim valueSplit As String() = value.Split(CChar(","))
@ -155,10 +153,16 @@ Public Class GameModeItemLoader
End If End If
Case "script" Case "script"
item.gmScriptPath = value item.gmScriptPath = value
Case "istm" Case "ishm"
item.gmIsTM = CBool(value) item.gmIsHM = CBool(value)
Case "teachmove" Case "teachmove"
item.gmTeachMove = BattleSystem.Attack.GetAttackByID(CInt(value)) item.gmTeachMove = BattleSystem.Attack.GetAttackByID(CInt(value))
Case "canteachalways"
item.gmCanTeachAlways = CBool(value)
Case "canteachwhenfullyevolved"
item.gmCanTeachWhenFullyEvolved = CBool(value)
Case "canteachwhengendered"
item.gmCanTeachWhenGendered = CBool(value)
End Select End Select
End If End If
Next Next
@ -177,7 +181,7 @@ Public Class GameModeItemLoader
item.gmCanBeUsed = False item.gmCanBeUsed = False
item.gmCanBeUsedInBattle = False item.gmCanBeUsedInBattle = False
End If End If
If item.gmIsTM = True AndAlso item.gmTeachMove IsNot Nothing AndAlso item.gmDescription = "" Then If item.gmTeachMove IsNot Nothing AndAlso item.gmDescription = "" Then
Dim AttackName As String = item.gmTeachMove.Name Dim AttackName As String = item.gmTeachMove.Name
item.gmDescription = "Teaches """ & AttackName & """ to a Pokémon." item.gmDescription = "Teaches """ & AttackName & """ to a Pokémon."
item.gmItemType = ItemTypes.Machines item.gmItemType = ItemTypes.Machines

View File

@ -509,8 +509,8 @@ Public Class NewInventoryScreen
If cItem.IsGameModeItem = True Then If cItem.IsGameModeItem = True Then
itemTitle = CType(cItem, GameModeItem).gmTeachMove.Name itemTitle = CType(cItem, GameModeItem).gmTeachMove.Name
If CType(cItem, GameModeItem).gmIsTM Then If CType(cItem, GameModeItem).gmTeachMove IsNot Nothing Then
If CType(cItem, GameModeItem).OriginalName.StartsWith("HM") Then If CType(cItem, GameModeItem).gmIsHM = True Then
'JSON stuff 'JSON stuff
'itemSubTitle = _translation.HIDDEN_MACHINE_TITLE(cItem.ItemType.ToString()) 'itemSubTitle = _translation.HIDDEN_MACHINE_TITLE(cItem.ItemType.ToString())
itemSubTitle = "Hidden Machine" itemSubTitle = "Hidden Machine"

View File

@ -267,7 +267,7 @@
Dim TechMachine As Item = Item.GetItemByID(Me.MachineItemID) Dim TechMachine As Item = Item.GetItemByID(Me.MachineItemID)
If TechMachine.ItemType = Items.ItemTypes.Machines Then If TechMachine.ItemType = Items.ItemTypes.Machines Then
If TechMachine.IsGameModeItem = True Then If TechMachine.IsGameModeItem = True Then
If CType(TechMachine, GameModeItem).gmIsTM = True Then If CType(TechMachine, GameModeItem).gmIsHM = False Then
Core.Player.Inventory.RemoveItem(Me.MachineItemID, 1) Core.Player.Inventory.RemoveItem(Me.MachineItemID, 1)
End If End If
Else Else