Support for forms in cries and interactions

This commit is contained in:
JappaWakka 2024-08-25 18:32:06 +02:00
parent ebbe37413e
commit e81237bd64
9 changed files with 27 additions and 21 deletions

View File

@ -230,7 +230,7 @@
.UpdateEntity()
SoundManager.PlayPokemonCry(pokemonNumber)
SoundManager.PlayPokemonCry(pokemonNumber, PokemonForms.GetCrySuffix(Core.Player.Pokemons(Core.Player.SurfPokemon)))
If Screen.Level.IsRadioOn = False OrElse GameJolt.PokegearScreen.StationCanPlay(Screen.Level.SelectedRadioStation) = False Then
MusicManager.Play("surf", True)

View File

@ -71,7 +71,7 @@
Screen.Level.UsedStrength = True
SoundManager.PlayPokemonCry(pNumber)
SoundManager.PlayPokemonCry(pNumber, PokemonForms.GetCrySuffix(useP))
Screen.TextBox.Show(pName & " " & Localization.GetString("fieldmove_strength_used", "used~Strength!"), {}, True, False)
PlayerStatistics.Track("Strength used", 1)
End If

View File

@ -276,7 +276,7 @@
.UpdateEntity()
SoundManager.PlayPokemonCry(pokemonNumber)
SoundManager.PlayPokemonCry(pokemonNumber, PokemonForms.GetCrySuffix(Core.Player.Pokemons(Core.Player.SurfPokemon)))
If Screen.Level.IsRadioOn = False OrElse GameJolt.PokegearScreen.StationCanPlay(Screen.Level.SelectedRadioStation) = False Then
MusicManager.Play("surf", True)

View File

@ -366,7 +366,7 @@
If ownPokemonPosition <= CInt(Core.windowSize.Height / 2 - MathHelper.Min(CInt(SelectedPokemon.GetTexture(True).Height * 3 / 2), 144)) Then
ownPokemonPosition = CInt(Core.windowSize.Height / 2 - MathHelper.Min(CInt(SelectedPokemon.GetTexture(True).Height * 3 / 2), 144))
tState = 1
SoundManager.PlayPokemonCry(SelectedPokemon.Number)
SoundManager.PlayPokemonCry(SelectedPokemon.Number, PokemonForms.GetCrySuffix(SelectedPokemon))
End If
End If
Case 1
@ -392,7 +392,7 @@
If oppPokemonPosition >= CInt(Core.windowSize.Height / 2 - MathHelper.Min(CInt(WonderTradePokemon.GetTexture(True).Height * 3 / 2), 144)) Then
oppPokemonPosition = CInt(Core.windowSize.Height / 2 - MathHelper.Min(CInt(WonderTradePokemon.GetTexture(True).Height * 3 / 2), 144))
tState = 4
SoundManager.PlayPokemonCry(WonderTradePokemon.Number)
SoundManager.PlayPokemonCry(WonderTradePokemon.Number, PokemonForms.GetCrySuffix(WonderTradePokemon))
End If
End If
Case 4

View File

@ -469,7 +469,7 @@
If ownPokemonPosition <= CInt(Core.windowSize.Height / 2 - 128) Then
ownPokemonPosition = CInt(Core.windowSize.Height / 2 - 128)
tState = 1
SoundManager.PlayPokemonCry(OfferPokemon.Number)
SoundManager.PlayPokemonCry(OfferPokemon.Number, PokemonForms.GetCrySuffix(OfferPokemon))
End If
End If
Case 1
@ -495,7 +495,7 @@
If oppPokemonPosition >= CInt(Core.windowSize.Height / 2 - 128) Then
oppPokemonPosition = CInt(Core.windowSize.Height / 2 - 128)
tState = 4
SoundManager.PlayPokemonCry(TradePokemon.Number)
SoundManager.PlayPokemonCry(TradePokemon.Number, PokemonForms.GetCrySuffix(TradePokemon))
End If
End If
Case 4

View File

@ -49,7 +49,7 @@
Dim newPosition As New Vector2(0, 1)
Dim s As String = "version=2" & Environment.NewLine &
"@pokemon.cry(" & p.Number & ")" & Environment.NewLine
"@pokemon.cry(" & PokemonForms.GetPokemonDataFileName(p.Number, p.AdditionalData, True) & ")" & Environment.NewLine
If CType(Screen.Camera, OverworldCamera).ThirdPerson = False Then
If reaction.HasNotification = True Then
@ -100,7 +100,7 @@
Dim item As Item = Item.GetItemByID(PickupItemID)
Dim s As String = "version=2" & Environment.NewLine &
"@pokemon.cry(" & p.Number & ")" & Environment.NewLine
"@pokemon.cry(" & PokemonForms.GetPokemonDataFileName(p.Number, p.AdditionalData) & ")" & Environment.NewLine
If CType(Screen.Camera, OverworldCamera).ThirdPerson = False Then
s &= "@camera.activatethirdperson" & Environment.NewLine &
@ -716,8 +716,8 @@
Public Notification As MessageBulb.NotificationTypes = MessageBulb.NotificationTypes.AFK
Public HasNotification As Boolean = True
Public MapFiles As New List(Of String)
Public PokemonIDs As New List(Of Integer)
Public ExcludeIDs As New List(Of Integer)
Public PokemonIDs As New List(Of String)
Public ExcludeIDs As New List(Of String)
Public Daytime As Integer = -1
Public Weather As Integer = -1
Public Season As Integer = -1
@ -733,15 +733,13 @@
If dataParts(1) <> "-1" Then
For Each pokePart As String In dataParts(1).Split(CChar(","))
Dim lReference As List(Of Integer) = PokemonIDs
Dim lReference As List(Of String) = PokemonIDs
If pokePart.StartsWith("!") = True Then
pokePart = pokePart.Remove(0, 1)
lReference = ExcludeIDs
End If
If StringHelper.IsNumeric(pokePart) = True Then
If lReference.Contains(CInt(pokePart)) = False Then
lReference.Add(CInt(pokePart))
End If
If lReference.Contains(pokePart) = False Then
lReference.Add(pokePart)
End If
Next
End If
@ -826,13 +824,21 @@
End If
If PokemonIDs.Count > 0 Then
If PokemonIDs.Contains(p.Number) = False Then
Dim dexID As String = p.Number.ToString
If p.AdditionalData <> "" Then
dexID = PokemonForms.GetPokemonDataFileName(p.Number, p.AdditionalData, True)
End If
If PokemonIDs.Contains(dexID) = False Then
Return False
End If
End If
If ExcludeIDs.Count > 0 Then
If ExcludeIDs.Contains(p.Number) = True Then
Dim dexID As String = p.Number.ToString
If p.AdditionalData <> "" Then
dexID = PokemonForms.GetPokemonDataFileName(p.Number, p.AdditionalData, True)
End If
If ExcludeIDs.Contains(dexID) = True Then
Return False
End If
End If

View File

@ -193,7 +193,7 @@
TextBox.Update()
If evolutionStarted = False Then
SoundManager.PlayPokemonCry(currentPokemon.Number)
SoundManager.PlayPokemonCry(currentPokemon.Number, PokemonForms.GetCrySuffix(currentPokemon))
TextBox.Show("What?*" & currentPokemon.GetDisplayName() & " is evolving!", {}, False, False)
evolutionStarted = True
For i = 0 To Core.Random.Next(200, 250)

View File

@ -1077,7 +1077,7 @@ Public Class PartyScreen
Screen.Level.OwnPlayer.SetTexture(skin, False)
SoundManager.PlayPokemonCry(PokemonList(_index).Number)
SoundManager.PlayPokemonCry(PokemonList(_index).Number, PokemonForms.GetCrySuffix(PokemonList(_index)))
TextBox.Show(PokemonList(_index).GetDisplayName() & " used~Ride!", {}, True, False)
PlayerStatistics.Track("Ride used", 1)

View File

@ -1138,7 +1138,7 @@
Screen.Level.OwnPlayer.SetTexture(skin, False)
SoundManager.PlayPokemonCry(Core.Player.Pokemons(Index).Number)
SoundManager.PlayPokemonCry(Core.Player.Pokemons(Index).Number, PokemonForms.GetCrySuffix(Core.Player.Pokemons(Index)))
Screen.TextBox.Show(Core.Player.Pokemons(Index).GetDisplayName() & " " & Localization.GetString("fieldmove_ride_used", "used~Ride!"), {}, True, False)
PlayerStatistics.Track("Ride used", 1)