diff --git a/P3D/Battle/BattleSystemV2/Battle.vb b/P3D/Battle/BattleSystemV2/Battle.vb index 01cbb6b71..26f7fb639 100644 --- a/P3D/Battle/BattleSystemV2/Battle.vb +++ b/P3D/Battle/BattleSystemV2/Battle.vb @@ -7808,7 +7808,7 @@ Dim oppModel As String = BattleScreen.GetModelName(False) 'Switch BattleStyle - If Core.Player.BattleStyle <> 1 Then + If Core.Player.BattleStyle <> 1 And OppStep.StepType <> RoundConst.StepTypes.Switch Then BattleScreen.BattleQuery.Add(New SwitchPokemonQueryObject(BattleScreen, BattleScreen.OppPokemon)) ChangeCameraAngle(1, False, BattleScreen) End If diff --git a/P3D/Battle/BattleSystemV2/BattleScreen.vb b/P3D/Battle/BattleSystemV2/BattleScreen.vb index d6858cfb7..e49bd928d 100644 --- a/P3D/Battle/BattleSystemV2/BattleScreen.vb +++ b/P3D/Battle/BattleSystemV2/BattleScreen.vb @@ -1218,9 +1218,11 @@ nextIndex: hasLevelUp = True End If If IsRemoteBattle = True Or IsTrainerBattle = True Then - p.Item = P3D.Item.GetItemByID(p.OriginalItem.ID) - p.Item.AdditionalData = p.OriginalItem.AdditionalData - Screen.TextBox.Show(Core.Player.Name & " received" & p.OriginalItem.Name & "*and gave it back to~" & p.GetDisplayName) + If p.OriginalItem IsNot Nothing Then + p.Item = P3D.Item.GetItemByID(p.OriginalItem.ID) + p.Item.AdditionalData = p.OriginalItem.AdditionalData + Screen.TextBox.Show(Core.Player.Name & " received" & p.OriginalItem.Name & "*and gave it back to~" & p.GetDisplayName) + End If End If p.ResetTemp() Next @@ -1266,9 +1268,11 @@ nextIndex: Else For Each p As Pokemon In Core.Player.Pokemons If IsRemoteBattle = True Or IsTrainerBattle = True Then - p.Item = P3D.Item.GetItemByID(p.OriginalItem.ID) - p.Item.AdditionalData = p.OriginalItem.AdditionalData - Screen.TextBox.Show(Core.Player.Name & " received~" & p.OriginalItem.Name & "*and gave it back to~" & p.GetDisplayName) + If p.OriginalItem IsNot Nothing Then + p.Item = P3D.Item.GetItemByID(p.OriginalItem.ID) + p.Item.AdditionalData = p.OriginalItem.AdditionalData + Screen.TextBox.Show(Core.Player.Name & " received~" & p.OriginalItem.Name & "*and gave it back to~" & p.GetDisplayName) + End If End If p.ResetTemp() Next