Fixed item transferring/removing moves and abilities
This commit is contained in:
parent
157ce04583
commit
073e82aa81
|
@ -1879,6 +1879,7 @@
|
|||
End If
|
||||
|
||||
'ABILITY SHIT GOES HERE:
|
||||
If BattleScreen.FieldEffects.CanUseAbility(Not own, BattleScreen) Then
|
||||
Select Case op.Ability.Name.ToLower()
|
||||
Case "color change"
|
||||
If op.HP > 0 Then
|
||||
|
@ -1974,8 +1975,47 @@
|
|||
If moveUsed.MakesContact = True Then
|
||||
LowerStat(own, Not own, BattleScreen, "Speed", 1, "Gooey slowed down " & p.GetDisplayName() & "!", "gooey")
|
||||
End If
|
||||
End Select
|
||||
Case "weak armor"
|
||||
If moveUsed.Category = Attack.Categories.Physical Then
|
||||
RaiseStat(Not own, Not own, BattleScreen, "Speed", 1, "Weak Armor causes the Speed to increase!", "weakarmor")
|
||||
LowerStat(Not own, Not own, BattleScreen, "Defense", 1, "Weak Armor causes the Defense to decrease!", "weakarmor")
|
||||
End If
|
||||
Case "pickpocket", "magician"
|
||||
If moveUsed.MakesContact = True Then
|
||||
If Not p.Item Is Nothing And op.Item Is Nothing And substitute = 0 Then
|
||||
Dim canSteal As Boolean = True
|
||||
If p.Item.IsMegaStone = True Then
|
||||
canSteal = False
|
||||
End If
|
||||
If p.Ability.Name.ToLower() = "multitype" AndAlso p.Item.Name.ToLower().EndsWith(" plate") Then
|
||||
canSteal = False
|
||||
End If
|
||||
If p.Item.Name.ToLower() = "griseous orb" And p.Number = 487 Then
|
||||
canSteal = False
|
||||
End If
|
||||
If p.Item.Name.ToLower().EndsWith(" drive") = True AndAlso p.Number = 649 Then
|
||||
canSteal = False
|
||||
End If
|
||||
If canSteal Then
|
||||
Dim ItemID As Integer = p.Item.ID
|
||||
|
||||
p.OriginalItem = Item.GetItemByID(p.Item.ID)
|
||||
p.OriginalItem.AdditionalData = p.Item.AdditionalData
|
||||
|
||||
If BattleScreen.Battle.RemoveHeldItem(own, Not own, BattleScreen, p.GetDisplayName() & " stole an item from " & op.GetDisplayName() & "!", op.Ability.Name.ToLower()) Then
|
||||
If own = False Then
|
||||
BattleScreen.FieldEffects.StolenItemIDs.Add(ItemID)
|
||||
End If
|
||||
op.Item = Item.GetItemByID(ItemID)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End Select
|
||||
End If
|
||||
|
||||
|
||||
If BattleScreen.FieldEffects.CanUseAbility(own, BattleScreen) Then
|
||||
Select Case p.Ability.Name.ToLower()
|
||||
Case "poison touch"
|
||||
If moveUsed.MakesContact = True And op.Status = Pokemon.StatusProblems.None Then
|
||||
|
@ -1983,24 +2023,12 @@
|
|||
InflictPoison(Not own, own, BattleScreen, False, p.GetDisplayName() & "'s Poison Touch affects " & op.GetDisplayName() & "!", "poisontouch")
|
||||
End If
|
||||
End If
|
||||
Case "pickpocket", "magician"
|
||||
If moveUsed.MakesContact = True Then
|
||||
If Not op.Item Is Nothing And p.Item Is Nothing And substitute = 0 Then
|
||||
If RemoveHeldItem(Not own, own, BattleScreen, p.GetDisplayName() & " stole an item from " & op.GetDisplayName() & "!", "pickpocket") Then
|
||||
p.Item = BattleScreen.FieldEffects.OppLostItem
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Case "moxie"
|
||||
If KOED = True Then
|
||||
RaiseStat(own, own, BattleScreen, "Attack", 1, p.GetDisplayName() & "'s Moxie got in effect!", "moxie")
|
||||
End If
|
||||
Case "weak armor"
|
||||
If moveUsed.Category = Attack.Categories.Physical Then
|
||||
RaiseStat(own, own, BattleScreen, "Speed", 1, "Weak Armor causes the Speed to increase!", "weakarmor")
|
||||
LowerStat(own, own, BattleScreen, "Defense", 1, "Weak Armor causes the Defense to decrease!", "weakarmor")
|
||||
End If
|
||||
End Select
|
||||
End If
|
||||
|
||||
If substitute = 0 And op.HP > 0 Then
|
||||
If Not op.Item Is Nothing Then
|
||||
|
@ -3753,7 +3781,7 @@
|
|||
Return False
|
||||
End If
|
||||
|
||||
If p.Ability.Name.ToLower() = "sticky hold" And cause.StartsWith("berry:") = False Then
|
||||
If BattleScreen.FieldEffects.CanUseAbility(own, BattleScreen) And p.Ability.Name.ToLower() = "sticky hold" And cause.StartsWith("berry:") = False Then
|
||||
If TestFor = False Then
|
||||
Me.ChangeCameraAngel(1, own, BattleScreen)
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("Sticky Hold prevented the item loss."))
|
||||
|
@ -3765,10 +3793,12 @@
|
|||
Dim ItemID As Integer = p.Item.ID
|
||||
Dim lostItem As Item = Item.GetItemByID(ItemID)
|
||||
|
||||
If from = own Then
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OwnLostItem = lostItem
|
||||
BattleScreen.FieldEffects.OwnConsumedItem = lostItem
|
||||
Else
|
||||
BattleScreen.FieldEffects.OppLostItem = lostItem
|
||||
BattleScreen.FieldEffects.OppConsumedItem = lostItem
|
||||
End If
|
||||
End If
|
||||
|
||||
p.Item = Nothing
|
||||
|
|
|
@ -84,7 +84,7 @@
|
|||
Public OwnInfestation As Integer = 0
|
||||
Public OwnUsedMoves As New List(Of Integer)
|
||||
Public OwnMagicCoat As Integer = 0
|
||||
Public OwnLostItem As Item = Nothing
|
||||
Public OwnConsumedItem As Item = Nothing
|
||||
Public OwnPursuit As Boolean = False
|
||||
Public OwnMegaEvolved As Boolean = False
|
||||
Public OwnRoostUsed As Boolean = False 'If roost got used, this is true and will get set false and revert types at the end of a turn.
|
||||
|
@ -194,7 +194,7 @@
|
|||
Public OppPokemonDamagedThisTurn As Boolean = False
|
||||
Public OppPokemonDamagedLastTurn As Boolean = False
|
||||
Public OppMagicCoat As Integer = 0
|
||||
Public OppLostItem As Item = Nothing
|
||||
Public OppConsumedItem As Item = Nothing
|
||||
Public OppPursuit As Boolean = False
|
||||
Public OppMegaEvolved As Boolean = False
|
||||
Public OppRoostUsed As Boolean = False
|
||||
|
|
|
@ -53,11 +53,31 @@
|
|||
End Sub
|
||||
|
||||
Public Overrides Function GetBasePower(own As Boolean, BattleScreen As BattleScreen) As Integer
|
||||
If BattleScreen.Battle.RemoveHeldItem(Not own, own, BattleScreen, "", "", True) = True Then
|
||||
Return CInt(Me.Power * 1.5F)
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
Return Me.Power
|
||||
'Conditions
|
||||
If op.Item Is Nothing Then
|
||||
Return Power
|
||||
End If
|
||||
If op.Item.IsMegaStone = True Then
|
||||
Return Power
|
||||
End If
|
||||
If op.Ability.Name.ToLower() = "multitype" AndAlso op.Item.Name.ToLower().EndsWith(" plate") Then
|
||||
Return Power
|
||||
End If
|
||||
If op.Item.Name.ToLower() = "griseous orb" And op.Number = 487 Then
|
||||
Return Power
|
||||
End If
|
||||
If op.Item.Name.ToLower().EndsWith(" drive") = True AndAlso op.Number = 649 Then
|
||||
Return Power
|
||||
End If
|
||||
|
||||
Return CInt(Me.Power * 1.5F)
|
||||
End Function
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
|
@ -67,15 +87,28 @@
|
|||
p = BattleScreen.OppPokemon
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
'Conditions
|
||||
If op.Item Is Nothing Then
|
||||
Exit Sub
|
||||
End If
|
||||
If op.Item.IsMegaStone = True Then
|
||||
Exit Sub
|
||||
End If
|
||||
If BattleScreen.Battle.RemoveHeldItem(Not own, own, BattleScreen, "", "", True) = True Then
|
||||
If op.Ability.Name.ToLower() = "multitype" AndAlso op.Item.Name.ToLower().EndsWith(" plate") Then
|
||||
Exit Sub
|
||||
End If
|
||||
If op.Item.Name.ToLower() = "griseous orb" And op.Number = 487 Then
|
||||
Exit Sub
|
||||
End If
|
||||
If op.Item.Name.ToLower().EndsWith(" drive") = True AndAlso p.Number = 649 Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
op.OriginalItem = Item.GetItemByID(op.Item.ID)
|
||||
op.OriginalItem.AdditionalData = op.Item.AdditionalData
|
||||
|
||||
BattleScreen.Battle.RemoveHeldItem(Not own, own, BattleScreen, p.GetDisplayName() & " knocked off the " & op.GetDisplayName() & "'s " & op.OriginalItem.Name & "!", "move:knockoff")
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
|
|
@ -62,47 +62,51 @@ Namespace BattleSystem.Moves.Dark
|
|||
p = BattleScreen.OppPokemon
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
Dim CanSwitchItems As Boolean = True
|
||||
If p.Item Is Nothing And op.Item Is Nothing Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
If p.Ability.Name.ToLower() = "sticky hold" Or op.Ability.Name.ToLower() = "sticky hold" Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If BattleScreen.FieldEffects.CanUseAbility(Not own, BattleScreen) AndAlso op.Ability.Name.ToLower() = "sticky hold" Then
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If Not p.Item Is Nothing AndAlso p.Item.Name.ToLower() = "griseous orb" AndAlso p.Number = 487 Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower() = "griseous orb" AndAlso op.Number = 487 Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If CheckMultitypePlate(p, op) = False Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If Not p.Item Is Nothing AndAlso p.Item.Name.ToLower().EndsWith(" drive") = True AndAlso p.Number = 649 Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower().EndsWith(" drive") = True AndAlso p.Number = 649 Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
If p.Item.IsMegaStone OrElse op.Item.IsMegaStone Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
Dim i1 As Item = p.Item
|
||||
Dim i2 As Item = op.Item
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower().EndsWith(" drive") = True AndAlso op.Number = 649 Then
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If (p.Item IsNot Nothing AndAlso p.Item.IsMegaStone) OrElse (op.Item IsNot Nothing AndAlso op.Item.IsMegaStone) Then
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
|
||||
If CanSwitchItems Then
|
||||
Dim i1 As Item = Nothing
|
||||
Dim i2 As Item = Nothing
|
||||
If p.Item IsNot Nothing Then
|
||||
i1 = p.Item
|
||||
End If
|
||||
If op.Item IsNot Nothing Then
|
||||
i2 = op.Item
|
||||
End If
|
||||
p.Item = i2
|
||||
op.Item = i1
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " switched items with " & op.GetDisplayName() & "."))
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Function CheckMultitypePlate(ByVal p As Pokemon, ByVal op As Pokemon) As Boolean
|
||||
If p.Ability.Name.ToLower() <> "multitype" And op.Ability.Name.ToLower() = "multitype" Then
|
||||
If p.Ability.Name.ToLower() <> "multitype" And op.Ability.Name.ToLower() <> "multitype" Then
|
||||
Return True
|
||||
Else
|
||||
If Not p.Item Is Nothing Then
|
||||
|
|
|
@ -59,33 +59,37 @@
|
|||
p = BattleScreen.OppPokemon
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
'Conditions
|
||||
If op.Item Is Nothing Then
|
||||
Exit Sub
|
||||
End If
|
||||
If op.Item.IsMegaStone = True Then
|
||||
Exit Sub
|
||||
End If
|
||||
Dim canSteal As Boolean = True
|
||||
If op.Ability.Name.ToLower() = "multitype" Then
|
||||
canSteal = False
|
||||
If op.Ability.Name.ToLower() = "multitype" AndAlso op.Item.Name.ToLower().EndsWith(" plate") Then
|
||||
Exit Sub
|
||||
End If
|
||||
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower() = "griseous orb" And op.Number = 487 Then
|
||||
canSteal = False
|
||||
If op.Item.Name.ToLower() = "griseous orb" And op.Number = 487 Then
|
||||
Exit Sub
|
||||
End If
|
||||
If op.Item.Name.ToLower().EndsWith(" drive") = True AndAlso op.Number = 649 Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If canSteal = True Then
|
||||
If p.Item Is Nothing And Not op.Item Is Nothing Then
|
||||
If p.Item Is Nothing Then
|
||||
Dim ItemID As Integer = op.Item.ID
|
||||
|
||||
op.OriginalItem = Item.GetItemByID(op.Item.ID)
|
||||
op.OriginalItem.AdditionalData = op.Item.AdditionalData
|
||||
|
||||
If BattleScreen.Battle.RemoveHeldItem(Not own, own, BattleScreen, "Thief stole the item " & op.Item.Name & " from " & op.GetDisplayName() & "!", "move:thief") = True Then
|
||||
If BattleScreen.Battle.RemoveHeldItem(Not own, own, BattleScreen, "Thief stole the item " & op.Item.Name & " from " & op.GetDisplayName() & "!", "move:thief") Then
|
||||
If own = False Then
|
||||
BattleScreen.FieldEffects.StolenItemIDs.Add(ItemID)
|
||||
End If
|
||||
|
||||
p.Item = Item.GetItemByID(ItemID)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
|
|
@ -62,35 +62,38 @@ Namespace BattleSystem.Moves.Normal
|
|||
p = BattleScreen.OppPokemon
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
'Conditions
|
||||
If op.Item Is Nothing Then
|
||||
Exit Sub
|
||||
End If
|
||||
If op.Item.IsMegaStone = True Then
|
||||
Exit Sub
|
||||
End If
|
||||
Dim canSteal As Boolean = True
|
||||
If op.Ability.Name.ToLower() = "multitype" Then
|
||||
canSteal = False
|
||||
If op.Ability.Name.ToLower() = "multitype" AndAlso op.Item.Name.ToLower().EndsWith(" plate") Then
|
||||
Exit Sub
|
||||
End If
|
||||
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower() = "griseous orb" And op.Number = 487 Then
|
||||
canSteal = False
|
||||
If op.Item.Name.ToLower() = "griseous orb" And op.Number = 487 Then
|
||||
Exit Sub
|
||||
End If
|
||||
If op.Item.Name.ToLower().EndsWith(" drive") = True AndAlso op.Number = 649 Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If canSteal = True Then
|
||||
If p.Item Is Nothing And Not op.Item Is Nothing Then
|
||||
If p.Item Is Nothing Then
|
||||
Dim ItemID As Integer = op.Item.ID
|
||||
|
||||
op.OriginalItem = Item.GetItemByID(op.Item.ID)
|
||||
op.OriginalItem.AdditionalData = op.Item.AdditionalData
|
||||
|
||||
If BattleScreen.Battle.RemoveHeldItem(Not own, own, BattleScreen, "Covet stole the item " & op.Item.Name & " from " & op.GetDisplayName() & "!", "move:covet") = True Then
|
||||
If BattleScreen.Battle.RemoveHeldItem(Not own, own, BattleScreen, "Covet stole the item " & op.Item.Name & " from " & op.GetDisplayName() & "!", "move:covet") Then
|
||||
If own = False Then
|
||||
BattleScreen.FieldEffects.StolenItemIDs.Add(ItemID)
|
||||
End If
|
||||
|
||||
p.Item = Item.GetItemByID(ItemID)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -59,8 +59,8 @@
|
|||
If own = True Then
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
|
||||
If Not BattleScreen.FieldEffects.OwnLostItem Is Nothing Then
|
||||
p.Item = BattleScreen.FieldEffects.OwnLostItem
|
||||
If Not BattleScreen.FieldEffects.OwnConsumedItem Is Nothing Then
|
||||
p.Item = BattleScreen.FieldEffects.OwnConsumedItem
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " found one " & p.Item.Name & "!"))
|
||||
Else
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("Recycle failed!"))
|
||||
|
@ -68,8 +68,8 @@
|
|||
Else
|
||||
Dim p As Pokemon = BattleScreen.OppPokemon
|
||||
|
||||
If Not BattleScreen.FieldEffects.OppLostItem Is Nothing Then
|
||||
p.Item = BattleScreen.FieldEffects.OppLostItem
|
||||
If Not BattleScreen.FieldEffects.OppConsumedItem Is Nothing Then
|
||||
p.Item = BattleScreen.FieldEffects.OppConsumedItem
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " found one " & p.Item.Name & "!"))
|
||||
Else
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("Recycle failed!"))
|
||||
|
|
|
@ -62,48 +62,51 @@ Namespace BattleSystem.Moves.Psychic
|
|||
p = BattleScreen.OppPokemon
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
Dim CanSwitchItems As Boolean = True
|
||||
If p.Item Is Nothing And op.Item Is Nothing Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
If p.Ability.Name.ToLower() = "sticky hold" Or op.Ability.Name.ToLower() = "sticky hold" Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If BattleScreen.FieldEffects.CanUseAbility(Not own, BattleScreen) AndAlso op.Ability.Name.ToLower() = "sticky hold" Then
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If Not p.Item Is Nothing AndAlso p.Item.Name.ToLower() = "griseous orb" AndAlso p.Number = 487 Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower() = "griseous orb" AndAlso op.Number = 487 Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If CheckMultitypePlate(p, op) = False Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If Not p.Item Is Nothing AndAlso p.Item.Name.ToLower().EndsWith(" drive") = True AndAlso p.Number = 649 Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower().EndsWith(" drive") = True AndAlso p.Number = 649 Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
If p.Item.IsMegaStone OrElse op.Item.IsMegaStone Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Else
|
||||
Dim i1 As Item = p.Item
|
||||
Dim i2 As Item = op.Item
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower().EndsWith(" drive") = True AndAlso op.Number = 649 Then
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
If (p.Item IsNot Nothing AndAlso p.Item.IsMegaStone) OrElse (op.Item IsNot Nothing AndAlso op.Item.IsMegaStone) Then
|
||||
CanSwitchItems = False
|
||||
End If
|
||||
|
||||
If CanSwitchItems Then
|
||||
Dim i1 As Item = Nothing
|
||||
Dim i2 As Item = Nothing
|
||||
If p.Item IsNot Nothing Then
|
||||
i1 = p.Item
|
||||
End If
|
||||
If op.Item IsNot Nothing Then
|
||||
i2 = op.Item
|
||||
End If
|
||||
p.Item = i2
|
||||
op.Item = i1
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " switched items with " & op.GetDisplayName() & "."))
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Function CheckMultitypePlate(ByVal p As Pokemon, ByVal op As Pokemon) As Boolean
|
||||
If p.Ability.Name.ToLower() <> "multitype" And op.Ability.Name.ToLower() = "multitype" Then
|
||||
If p.Ability.Name.ToLower() <> "multitype" And op.Ability.Name.ToLower() <> "multitype" Then
|
||||
Return True
|
||||
Else
|
||||
If Not p.Item Is Nothing Then
|
||||
|
|
|
@ -1017,11 +1017,11 @@ Public Class Pokemon
|
|||
Me._originalAbility = Nothing
|
||||
End If
|
||||
|
||||
If Not Me._originalItem Is Nothing Then
|
||||
Me.Item = net.Pokemon3D.Game.Item.GetItemByID(Me._originalItem.ID)
|
||||
Me.Item.AdditionalData = Me._originalItem.AdditionalData
|
||||
Me._originalItem = Nothing
|
||||
End If
|
||||
'If Not Me._originalItem Is Nothing Then
|
||||
' Me.Item = net.Pokemon3D.Game.Item.GetItemByID(Me._originalItem.ID)
|
||||
' Me.Item.AdditionalData = Me._originalItem.AdditionalData
|
||||
' Me._originalItem = Nothing
|
||||
'End If
|
||||
|
||||
Me.IsTransformed = False
|
||||
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
Shared _valid As Boolean = False
|
||||
|
||||
Const RUNVALIDATION As Boolean = False
|
||||
Const EXPECTEDSIZE As Integer = 42289864
|
||||
Const METAHASH As String = "ODk4NUU5QTZGMTdDNzZDMDc3RkZGODUwRDAzNzkxRTQ="
|
||||
Const EXPECTEDSIZE As Integer = 42289870
|
||||
Const METAHASH As String = "OTEzQTRBRURFMjU2RkUyNDgxRjU0MEJDODMwMjk3Mzc="
|
||||
|
||||
Public Shared ReadOnly Property IsValid(ByVal ForceResult As Boolean) As Boolean
|
||||
Get
|
||||
|
|
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue