mirror of
https://github.com/P3D-Legacy/P3D-Legacy.git
synced 2025-07-28 16:24:45 +02:00
Models work better in battle now
This commit is contained in:
parent
6bb3f596ca
commit
d2860b15a8
@ -3,21 +3,19 @@
|
|||||||
Inherits BattleAnimation3D
|
Inherits BattleAnimation3D
|
||||||
|
|
||||||
Dim TargetEntity As NPC
|
Dim TargetEntity As NPC
|
||||||
Dim TargetModel As Entity = Nothing
|
|
||||||
Dim EndFaceRotation As Integer
|
Dim EndFaceRotation As Integer
|
||||||
Dim TurnSteps As Integer = 0
|
Dim TurnSteps As Integer = 0
|
||||||
Dim TurnSpeed As Integer = 1
|
Dim TurnSpeed As Integer = 1
|
||||||
Dim TurnTime As Single = 0.0F
|
Dim TurnTime As Single = 0.0F
|
||||||
Dim TurnDelay As Single = 0.0F
|
Dim TurnDelay As Single = 0.0F
|
||||||
|
|
||||||
Public Sub New(ByVal TargetEntity As NPC, ByVal TurnSteps As Integer, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal EndFaceRotation As Integer = -1, Optional ByVal TurnSpeed As Integer = 1, Optional ByVal TurnDelay As Single = 0.25F, Optional TargetModel As Entity = Nothing)
|
Public Sub New(ByVal TargetEntity As NPC, ByVal TurnSteps As Integer, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal EndFaceRotation As Integer = -1, Optional ByVal TurnSpeed As Integer = 1, Optional ByVal TurnDelay As Single = 0.25F)
|
||||||
MyBase.New(New Vector3(0.0F), TextureManager.DefaultTexture, New Vector3(1.0F), startDelay, endDelay)
|
MyBase.New(New Vector3(0.0F), TextureManager.DefaultTexture, New Vector3(1.0F), startDelay, endDelay)
|
||||||
If EndFaceRotation = -1 Then
|
If EndFaceRotation = -1 Then
|
||||||
Me.EndFaceRotation = TargetEntity.faceRotation
|
Me.EndFaceRotation = TargetEntity.faceRotation
|
||||||
Else
|
Else
|
||||||
Me.EndFaceRotation = EndFaceRotation
|
Me.EndFaceRotation = EndFaceRotation
|
||||||
End If
|
End If
|
||||||
Me.TargetModel = TargetModel
|
|
||||||
Me.TurnSteps = TurnSteps
|
Me.TurnSteps = TurnSteps
|
||||||
Me.TargetEntity = TargetEntity
|
Me.TargetEntity = TargetEntity
|
||||||
Me.TurnSpeed = TurnSpeed
|
Me.TurnSpeed = TurnSpeed
|
||||||
@ -34,9 +32,6 @@
|
|||||||
If Me.TargetEntity.faceRotation < 0 Then
|
If Me.TargetEntity.faceRotation < 0 Then
|
||||||
Me.TargetEntity.faceRotation += 4
|
Me.TargetEntity.faceRotation += 4
|
||||||
End If
|
End If
|
||||||
If Me.TargetModel IsNot Nothing Then
|
|
||||||
Me.TargetModel.Rotation = Entity.GetRotationFromInteger(Me.TargetEntity.faceRotation)
|
|
||||||
End If
|
|
||||||
Me.TurnSteps -= TurnSpeed.ToPositive()
|
Me.TurnSteps -= TurnSpeed.ToPositive()
|
||||||
Me.TurnTime = TurnDelay
|
Me.TurnTime = TurnDelay
|
||||||
Else
|
Else
|
||||||
@ -45,9 +40,6 @@
|
|||||||
Else
|
Else
|
||||||
If Me.TargetEntity.faceRotation <> Me.EndFaceRotation Then
|
If Me.TargetEntity.faceRotation <> Me.EndFaceRotation Then
|
||||||
Me.TargetEntity.faceRotation = Me.EndFaceRotation
|
Me.TargetEntity.faceRotation = Me.EndFaceRotation
|
||||||
If Me.TargetModel IsNot Nothing Then
|
|
||||||
Me.TargetModel.Rotation = Entity.GetRotationFromInteger(Me.EndFaceRotation)
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
Me.Ready = True
|
Me.Ready = True
|
||||||
End If
|
End If
|
||||||
|
@ -75,6 +75,12 @@
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub Move()
|
Private Sub Move()
|
||||||
|
|
||||||
|
Dim DestinationOffset As Vector3 = New Vector3(0)
|
||||||
|
If TargetEntity.Model IsNot Nothing Then
|
||||||
|
DestinationOffset = New Vector3(0, -0.5, 0)
|
||||||
|
End If
|
||||||
|
|
||||||
Select Case MovementCurve
|
Select Case MovementCurve
|
||||||
Case Curves.EaseIn
|
Case Curves.EaseIn
|
||||||
If EasedIn = False Then
|
If EasedIn = False Then
|
||||||
@ -128,17 +134,17 @@
|
|||||||
TargetEntity.Position.X = Me.Destination.X
|
TargetEntity.Position.X = Me.Destination.X
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
If TargetEntity.Position.Y < Me.Destination.Y Then
|
If TargetEntity.Position.Y < Me.Destination.Y + DestinationOffset.Y Then
|
||||||
TargetEntity.Position.Y += Me.MoveYSpeed
|
TargetEntity.Position.Y += Me.MoveYSpeed
|
||||||
|
|
||||||
If TargetEntity.Position.Y >= Me.Destination.Y - 0.05 Then
|
If TargetEntity.Position.Y >= Me.Destination.Y + DestinationOffset.Y - 0.05 Then
|
||||||
TargetEntity.Position.Y = Me.Destination.Y
|
TargetEntity.Position.Y = Me.Destination.Y + DestinationOffset.Y
|
||||||
End If
|
End If
|
||||||
ElseIf TargetEntity.Position.Y > Me.Destination.Y Then
|
ElseIf TargetEntity.Position.Y > Me.Destination.Y + DestinationOffset.Y Then
|
||||||
TargetEntity.Position.Y -= Me.MoveYSpeed
|
TargetEntity.Position.Y -= Me.MoveYSpeed
|
||||||
|
|
||||||
If TargetEntity.Position.Y <= Me.Destination.Y + 0.05 Then
|
If TargetEntity.Position.Y <= Me.Destination.Y + DestinationOffset.Y + 0.05 Then
|
||||||
TargetEntity.Position.Y = Me.Destination.Y
|
TargetEntity.Position.Y = Me.Destination.Y + DestinationOffset.Y
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
If TargetEntity.Position.Z < Me.Destination.Z Then
|
If TargetEntity.Position.Z < Me.Destination.Z Then
|
||||||
@ -166,15 +172,15 @@
|
|||||||
TargetEntity.Position.X = Me.Destination.X
|
TargetEntity.Position.X = Me.Destination.X
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
If TargetEntity.Position.Y < Me.Destination.Y Then
|
If TargetEntity.Position.Y < Me.Destination.Y + DestinationOffset.Y Then
|
||||||
TargetEntity.Position.Y = MathHelper.Lerp(TargetEntity.Position.Y, Me.Destination.Y, Me.InterpolationSpeed)
|
TargetEntity.Position.Y = MathHelper.Lerp(TargetEntity.Position.Y, Me.Destination.Y + DestinationOffset.Y, Me.InterpolationSpeed)
|
||||||
If TargetEntity.Position.Y > Me.Destination.Y - 0.05 Then
|
If TargetEntity.Position.Y > Me.Destination.Y + DestinationOffset.Y - 0.05 Then
|
||||||
TargetEntity.Position.Y = Me.Destination.Y
|
TargetEntity.Position.Y = Me.Destination.Y + DestinationOffset.Y
|
||||||
End If
|
End If
|
||||||
ElseIf TargetEntity.Position.Y > Me.Destination.Y Then
|
ElseIf TargetEntity.Position.Y > Me.Destination.Y + DestinationOffset.Y Then
|
||||||
TargetEntity.Position.Y = MathHelper.Lerp(TargetEntity.Position.Y, Me.Destination.Y, Me.InterpolationSpeed)
|
TargetEntity.Position.Y = MathHelper.Lerp(TargetEntity.Position.Y, Me.Destination.Y + DestinationOffset.Y, Me.InterpolationSpeed)
|
||||||
If TargetEntity.Position.Y < Me.Destination.Y + 0.05 Then
|
If TargetEntity.Position.Y < Me.Destination.Y + DestinationOffset.Y + 0.05 Then
|
||||||
TargetEntity.Position.Y = Me.Destination.Y
|
TargetEntity.Position.Y = Me.Destination.Y + DestinationOffset.Y
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
If TargetEntity.Position.Z < Me.Destination.Z Then
|
If TargetEntity.Position.Z < Me.Destination.Z Then
|
||||||
@ -189,7 +195,7 @@
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
If TargetEntity.Position = Destination Then
|
If TargetEntity.Position = Destination + DestinationOffset Then
|
||||||
Me.Ready = True
|
Me.Ready = True
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
@ -15,7 +15,6 @@
|
|||||||
Me.FadeIn = FadeIn
|
Me.FadeIn = FadeIn
|
||||||
Me.TransitionSpeed = TransitionSpeed
|
Me.TransitionSpeed = TransitionSpeed
|
||||||
Me.TargetEntity = entity
|
Me.TargetEntity = entity
|
||||||
|
|
||||||
Me.TargetEntity.NormalOpacity = StartState
|
Me.TargetEntity.NormalOpacity = StartState
|
||||||
Me.Visible = False
|
Me.Visible = False
|
||||||
|
|
||||||
|
36
P3D/Battle/BattleAnimations/BAEntitySetPosition.vb
Normal file
36
P3D/Battle/BattleAnimations/BAEntitySetPosition.vb
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
Public Class BAEntitySetPosition
|
||||||
|
|
||||||
|
Inherits BattleAnimation3D
|
||||||
|
|
||||||
|
Public TargetEntity As Entity
|
||||||
|
Public SetPosition As Vector3
|
||||||
|
Public RemoveEntityAfter As Boolean
|
||||||
|
|
||||||
|
Public Sub New(ByRef Entity As Entity, ByVal RemoveEntityAfter As Boolean, ByVal SetPosition As Vector3, ByVal startDelay As Single, ByVal endDelay As Single)
|
||||||
|
MyBase.New(New Vector3(0.0F), TextureManager.DefaultTexture, New Vector3(1.0F), startDelay, endDelay)
|
||||||
|
|
||||||
|
Me.RemoveEntityAfter = RemoveEntityAfter
|
||||||
|
Me.SetPosition = SetPosition
|
||||||
|
|
||||||
|
Me.Visible = False
|
||||||
|
Me.TargetEntity = Entity
|
||||||
|
|
||||||
|
Me.AnimationType = AnimationTypes.Move
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Public Overrides Sub DoActionActive()
|
||||||
|
Dim SetPositionOffset As Vector3 = New Vector3(0)
|
||||||
|
If TargetEntity.Model IsNot Nothing Then
|
||||||
|
SetPositionOffset = New Vector3(0, -0.5, 0)
|
||||||
|
End If
|
||||||
|
TargetEntity.Position = Me.SetPosition + SetPositionOffset
|
||||||
|
Me.Ready = True
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Public Overrides Sub DoRemoveEntity()
|
||||||
|
If Me.RemoveEntityAfter = True Then
|
||||||
|
TargetEntity.CanBeRemoved = True
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
End Class
|
@ -1434,8 +1434,8 @@
|
|||||||
|
|
||||||
ConfusedAnimation.AnimationPlaySound("Battle\Effects\Confused", 0, 0)
|
ConfusedAnimation.AnimationPlaySound("Battle\Effects\Confused", 0, 0)
|
||||||
Dim DuckEntity1 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(-0.25, 0.25, -0.25), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
Dim DuckEntity1 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(-0.25, 0.25, -0.25), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
||||||
Dim DuckEntity2 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(0.25, 0.25, 0.25), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
Dim DuckEntity2 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(0, 0.25, 0), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
||||||
Dim DuckEntity3 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(0.25, 0.25, -0.25), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
Dim DuckEntity3 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(0.25, 0.25, 0.25), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
||||||
|
|
||||||
ConfusedAnimation.AnimationChangeTexture(DuckEntity1, False, TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 16, 16, 16), ""), 0.75F, 0)
|
ConfusedAnimation.AnimationChangeTexture(DuckEntity1, False, TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 16, 16, 16), ""), 0.75F, 0)
|
||||||
ConfusedAnimation.AnimationChangeTexture(DuckEntity2, False, TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 16, 16, 16), ""), 0.75F, 0)
|
ConfusedAnimation.AnimationChangeTexture(DuckEntity2, False, TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 16, 16, 16), ""), 0.75F, 0)
|
||||||
@ -2716,7 +2716,7 @@
|
|||||||
|
|
||||||
If BattleScreen.IsTrainerBattle = False AndAlso Core.Player.ShowBattleAnimations <> 0 Then
|
If BattleScreen.IsTrainerBattle = False AndAlso Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
If own = False Then
|
If own = False Then
|
||||||
Dim FaintAnimation As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OppPokemonNPC, True, BattleScreen.OppPokemonModel)
|
Dim FaintAnimation As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OppPokemonNPC, True)
|
||||||
FaintAnimation.AnimationPlaySound(CStr(BattleScreen.OppPokemon.Number), 0, 2, False, True)
|
FaintAnimation.AnimationPlaySound(CStr(BattleScreen.OppPokemon.Number), 0, 2, False, True)
|
||||||
FaintAnimation.AnimationMove(Nothing, False, 0, -1, 0, 0.05, False, False, 2, 2)
|
FaintAnimation.AnimationMove(Nothing, False, 0, -1, 0, 0.05, False, False, 2, 2)
|
||||||
BattleScreen.BattleQuery.Add(FaintAnimation)
|
BattleScreen.BattleQuery.Add(FaintAnimation)
|
||||||
@ -3570,12 +3570,12 @@
|
|||||||
Me.ChangeCameraAngle(1, own, BattleScreen)
|
Me.ChangeCameraAngle(1, own, BattleScreen)
|
||||||
'Confused Animation
|
'Confused Animation
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
Dim ConfusedAnimation As New AnimationQueryObject(pNPC, Not own)
|
Dim ConfusedAnimation As New AnimationQueryObject(pNPC, own)
|
||||||
|
|
||||||
ConfusedAnimation.AnimationPlaySound("Battle\Effects\Confused", 0, 0)
|
ConfusedAnimation.AnimationPlaySound("Battle\Effects\Confused", 0, 0)
|
||||||
Dim DuckEntity1 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(-0.25, 0.25, -0.25), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
Dim DuckEntity1 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(-0.25, 0.25, -0.25), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
||||||
Dim DuckEntity2 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(0.25, 0.25, 0.25), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
Dim DuckEntity2 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(0, 0.25, 0), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
||||||
Dim DuckEntity3 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(0.25, 0.25, -0.25), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
Dim DuckEntity3 As Entity = ConfusedAnimation.SpawnEntity(New Vector3(0.25, 0.25, 0.25), TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.25F), 1, 0, 0)
|
||||||
|
|
||||||
ConfusedAnimation.AnimationChangeTexture(DuckEntity1, False, TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 16, 16, 16), ""), 0.75F, 0)
|
ConfusedAnimation.AnimationChangeTexture(DuckEntity1, False, TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 16, 16, 16), ""), 0.75F, 0)
|
||||||
ConfusedAnimation.AnimationChangeTexture(DuckEntity2, False, TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 16, 16, 16), ""), 0.75F, 0)
|
ConfusedAnimation.AnimationChangeTexture(DuckEntity2, False, TextureManager.GetTexture("Textures\Battle\StatusEffect\Confused", New Rectangle(0, 16, 16, 16), ""), 0.75F, 0)
|
||||||
@ -4049,6 +4049,7 @@
|
|||||||
val = 6 + statC
|
val = 6 + statC
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
Me.ChangeCameraAngle(1, own, BattleScreen)
|
||||||
'***STAT DECREASE ANIMATION***
|
'***STAT DECREASE ANIMATION***
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
Dim StatAnimation As AnimationQueryObject = New AnimationQueryObject(Nothing, False)
|
Dim StatAnimation As AnimationQueryObject = New AnimationQueryObject(Nothing, False)
|
||||||
@ -4084,13 +4085,10 @@
|
|||||||
printMessage &= " slightly fell."
|
printMessage &= " slightly fell."
|
||||||
End Select
|
End Select
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Select Case statString
|
Select Case statString
|
||||||
Case "attack"
|
Case "attack"
|
||||||
p.StatAttack -= val
|
p.StatAttack -= val
|
||||||
|
|
||||||
Me.ChangeCameraAngle(1, own, BattleScreen)
|
|
||||||
Select Case message
|
Select Case message
|
||||||
Case "" 'Print default message only
|
Case "" 'Print default message only
|
||||||
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
||||||
@ -4107,7 +4105,6 @@
|
|||||||
Case "defense"
|
Case "defense"
|
||||||
p.StatDefense -= val
|
p.StatDefense -= val
|
||||||
|
|
||||||
Me.ChangeCameraAngle(1, own, BattleScreen)
|
|
||||||
Select Case message
|
Select Case message
|
||||||
Case "" 'Print default message only
|
Case "" 'Print default message only
|
||||||
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
||||||
@ -4124,7 +4121,6 @@
|
|||||||
Case "special attack"
|
Case "special attack"
|
||||||
p.StatSpAttack -= val
|
p.StatSpAttack -= val
|
||||||
|
|
||||||
Me.ChangeCameraAngle(1, own, BattleScreen)
|
|
||||||
Select Case message
|
Select Case message
|
||||||
Case "" 'Print default message only
|
Case "" 'Print default message only
|
||||||
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
||||||
@ -4141,7 +4137,6 @@
|
|||||||
Case "special defense"
|
Case "special defense"
|
||||||
p.StatSpDefense -= val
|
p.StatSpDefense -= val
|
||||||
|
|
||||||
Me.ChangeCameraAngle(1, own, BattleScreen)
|
|
||||||
Select Case message
|
Select Case message
|
||||||
Case "" 'Print default message only
|
Case "" 'Print default message only
|
||||||
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
||||||
@ -4158,7 +4153,6 @@
|
|||||||
Case "speed"
|
Case "speed"
|
||||||
p.StatSpeed -= val
|
p.StatSpeed -= val
|
||||||
|
|
||||||
Me.ChangeCameraAngle(1, own, BattleScreen)
|
|
||||||
Select Case message
|
Select Case message
|
||||||
Case "" 'Print default message only
|
Case "" 'Print default message only
|
||||||
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
||||||
@ -4175,7 +4169,6 @@
|
|||||||
Case "evasion"
|
Case "evasion"
|
||||||
p.Evasion -= val
|
p.Evasion -= val
|
||||||
|
|
||||||
Me.ChangeCameraAngle(1, own, BattleScreen)
|
|
||||||
Select Case message
|
Select Case message
|
||||||
Case "" 'Print default message only
|
Case "" 'Print default message only
|
||||||
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
||||||
@ -4192,7 +4185,6 @@
|
|||||||
Case "accuracy"
|
Case "accuracy"
|
||||||
p.Accuracy -= val
|
p.Accuracy -= val
|
||||||
|
|
||||||
Me.ChangeCameraAngle(1, own, BattleScreen)
|
|
||||||
Select Case message
|
Select Case message
|
||||||
Case "" 'Print default message only
|
Case "" 'Print default message only
|
||||||
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
BattleScreen.BattleQuery.Add(New TextQueryObject(printMessage))
|
||||||
@ -4377,11 +4369,9 @@
|
|||||||
Public Sub ReduceHP(ByVal HPAmount As Integer, ByVal own As Boolean, ByVal from As Boolean, ByVal BattleScreen As BattleScreen, ByVal message As String, ByVal cause As String, ByVal sound As String)
|
Public Sub ReduceHP(ByVal HPAmount As Integer, ByVal own As Boolean, ByVal from As Boolean, ByVal BattleScreen As BattleScreen, ByVal message As String, ByVal cause As String, ByVal sound As String)
|
||||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||||
Dim pNPC As Entity = BattleScreen.OwnPokemonNPC
|
Dim pNPC As Entity = BattleScreen.OwnPokemonNPC
|
||||||
Dim pModel As Entity = BattleScreen.OwnPokemonModel
|
|
||||||
If own = False Then
|
If own = False Then
|
||||||
p = BattleScreen.OppPokemon
|
p = BattleScreen.OppPokemon
|
||||||
pNPC = BattleScreen.OppPokemonNPC
|
pNPC = BattleScreen.OppPokemonNPC
|
||||||
pModel = BattleScreen.OppPokemonModel
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If p.HP > 0 And p.Status <> Pokemon.StatusProblems.Fainted Then
|
If p.HP > 0 And p.Status <> Pokemon.StatusProblems.Fainted Then
|
||||||
@ -4398,7 +4388,7 @@
|
|||||||
BattleScreen.BattleQuery.Add(New PlaySoundQueryObject(sound, False, 0.0F))
|
BattleScreen.BattleQuery.Add(New PlaySoundQueryObject(sound, False, 0.0F))
|
||||||
End If
|
End If
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
Dim HitAnimation As AnimationQueryObject = New AnimationQueryObject(pNPC, own, pModel)
|
Dim HitAnimation As AnimationQueryObject = New AnimationQueryObject(pNPC, own)
|
||||||
HitAnimation.AnimationFade(Nothing, False, 1, False, 0, 0, 0)
|
HitAnimation.AnimationFade(Nothing, False, 1, False, 0, 0, 0)
|
||||||
HitAnimation.AnimationFade(Nothing, False, 1, True, 1, 1, 0)
|
HitAnimation.AnimationFade(Nothing, False, 1, True, 1, 1, 0)
|
||||||
HitAnimation.AnimationFade(Nothing, False, 1, False, 0, 2, 0)
|
HitAnimation.AnimationFade(Nothing, False, 1, False, 0, 2, 0)
|
||||||
@ -5929,7 +5919,7 @@
|
|||||||
'Whirlpool Animation
|
'Whirlpool Animation
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
|
|
||||||
Dim WhirlpoolAnimation As AnimationQueryObject = New AnimationQueryObject(.OwnPokemonNPC, False,, True)
|
Dim WhirlpoolAnimation As AnimationQueryObject = New AnimationQueryObject(.OwnPokemonNPC, False, True)
|
||||||
WhirlpoolAnimation.AnimationPlaySound("Battle\Attacks\Water\Whirlpool", 0.0F, 0)
|
WhirlpoolAnimation.AnimationPlaySound("Battle\Attacks\Water\Whirlpool", 0.0F, 0)
|
||||||
Dim WhirlpoolEntity As Entity = WhirlpoolAnimation.SpawnEntity(New Vector3(0, -0.3, 0), TextureManager.GetTexture("Textures\Battle\Water\Whirlpool"), New Vector3(0.0F), 1.0F, 0.0F, 0.0F)
|
Dim WhirlpoolEntity As Entity = WhirlpoolAnimation.SpawnEntity(New Vector3(0, -0.3, 0), TextureManager.GetTexture("Textures\Battle\Water\Whirlpool"), New Vector3(0.0F), 1.0F, 0.0F, 0.0F)
|
||||||
WhirlpoolAnimation.AnimationRotate(WhirlpoolEntity, False, CSng(MathHelper.Pi * 1.5), 0, 0, CSng(MathHelper.Pi * 1.5), 0, 0, 0, 0, True, False, False, False)
|
WhirlpoolAnimation.AnimationRotate(WhirlpoolEntity, False, CSng(MathHelper.Pi * 1.5), 0, 0, CSng(MathHelper.Pi * 1.5), 0, 0, 0, 0, True, False, False, False)
|
||||||
@ -6806,7 +6796,7 @@
|
|||||||
ChangeCameraAngle(1, False, BattleScreen)
|
ChangeCameraAngle(1, False, BattleScreen)
|
||||||
'Whirlpool Animation
|
'Whirlpool Animation
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
Dim WhirlpoolAnimation As AnimationQueryObject = New AnimationQueryObject(.OppPokemonNPC, True,, True)
|
Dim WhirlpoolAnimation As AnimationQueryObject = New AnimationQueryObject(.OppPokemonNPC, True, True)
|
||||||
WhirlpoolAnimation.AnimationPlaySound("Battle\Attacks\Water\Whirlpool", 0.0F, 0)
|
WhirlpoolAnimation.AnimationPlaySound("Battle\Attacks\Water\Whirlpool", 0.0F, 0)
|
||||||
Dim WhirlpoolEntity As Entity = WhirlpoolAnimation.SpawnEntity(New Vector3(0, -0.3, 0), TextureManager.GetTexture("Textures\Battle\Water\Whirlpool"), New Vector3(0.0F), 1.0F, 0.0F, 0.0F)
|
Dim WhirlpoolEntity As Entity = WhirlpoolAnimation.SpawnEntity(New Vector3(0, -0.3, 0), TextureManager.GetTexture("Textures\Battle\Water\Whirlpool"), New Vector3(0.0F), 1.0F, 0.0F, 0.0F)
|
||||||
WhirlpoolAnimation.AnimationRotate(WhirlpoolEntity, False, CSng(MathHelper.Pi * 1.5), 0, 0, CSng(MathHelper.Pi * 1.5), 0, 0, 0, 0, True, False, False, False)
|
WhirlpoolAnimation.AnimationRotate(WhirlpoolEntity, False, CSng(MathHelper.Pi * 1.5), 0, 0, CSng(MathHelper.Pi * 1.5), 0, 0, 0, 0, True, False, False, False)
|
||||||
@ -7352,14 +7342,20 @@
|
|||||||
|
|
||||||
BattleScreen.AddToQuery(InsertIndex, New TextQueryObject(insertMessage))
|
BattleScreen.AddToQuery(InsertIndex, New TextQueryObject(insertMessage))
|
||||||
|
|
||||||
Dim BallReturn As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OwnPokemonNPC, False, BattleScreen.OwnPokemonModel)
|
Dim PositionOffsetY As Single = 0.0F
|
||||||
|
If BattleScreen.OwnPokemonNPC.Model IsNot Nothing Then
|
||||||
|
PositionOffsetY = 0.5F
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim BallReturn As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OwnPokemonNPC, False)
|
||||||
|
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
' Ball Closes
|
' Ball Closes
|
||||||
BallReturn.AnimationPlaySound("Battle\Pokeball\Open", 0, 0)
|
BallReturn.AnimationPlaySound("Battle\Pokeball\Open", 0, 0)
|
||||||
Dim SmokeReturned As Integer = 0
|
Dim SmokeReturned As Integer = 0
|
||||||
Do
|
Do
|
||||||
Dim SmokePosition = New Vector3(CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10))
|
Dim SmokePosition = New Vector3(CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10) + PositionOffsetY, CSng(Random.Next(-10, 10) / 10))
|
||||||
Dim SmokeDestination As Vector3 = New Vector3(0, 0, 0)
|
Dim SmokeDestination As Vector3 = New Vector3(0, PositionOffsetY, 0)
|
||||||
|
|
||||||
Dim SmokeTexture As Texture2D = TextureManager.GetTexture("Textures\Battle\Smoke")
|
Dim SmokeTexture As Texture2D = TextureManager.GetTexture("Textures\Battle\Smoke")
|
||||||
|
|
||||||
@ -7376,12 +7372,11 @@
|
|||||||
' Pokemon disappears
|
' Pokemon disappears
|
||||||
BallReturn.AnimationFade(Nothing, False, 1, False, 0, 1, 0)
|
BallReturn.AnimationFade(Nothing, False, 1, False, 0, 1, 0)
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
BallReturn.AnimationMove(Nothing, False, 0, 0.5, 0, 0.5, False, False, 2, 0,,, 3)
|
|
||||||
|
|
||||||
' Ball returns
|
' Ball returns
|
||||||
BallReturn.AnimationPlaySound("Battle\Pokeball\Throw", 1, 0)
|
BallReturn.AnimationPlaySound("Battle\Pokeball\Throw", 1, 0)
|
||||||
Dim BallReturnEntity As Entity = BallReturn.SpawnEntity(Nothing, BattleScreen.OwnPokemon.CatchBall.Texture, New Vector3(0.3F), 1.0F)
|
Dim BallReturnEntity As Entity = BallReturn.SpawnEntity(New Vector3(0, 0 + PositionOffsetY, 0), BattleScreen.OwnPokemon.CatchBall.Texture, New Vector3(0.3F), 1.0F)
|
||||||
BallReturn.AnimationMove(BallReturnEntity, True, -2, 0, 0, 0.1, False, True, 1, 0,, 0.3)
|
BallReturn.AnimationMove(BallReturnEntity, True, -2, 0 + PositionOffsetY, 0, 0.1, False, True, 1, 0,, 0.3)
|
||||||
End If
|
End If
|
||||||
BattleScreen.AddToQuery(InsertIndex, BallReturn)
|
BattleScreen.AddToQuery(InsertIndex, BallReturn)
|
||||||
|
|
||||||
@ -7408,6 +7403,7 @@
|
|||||||
ownShiny = "S"
|
ownShiny = "S"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
Dim FallOffset = 0.0F
|
||||||
Dim ownModel As String = BattleScreen.GetModelName(True)
|
Dim ownModel As String = BattleScreen.GetModelName(True)
|
||||||
If ownModel = "" Then
|
If ownModel = "" Then
|
||||||
BattleScreen.AddToQuery(InsertIndex, New ToggleEntityQueryObject(True, ToggleEntityQueryObject.BattleEntities.OwnPokemon, PokemonForms.GetOverworldSpriteName(BattleScreen.OwnPokemon), 0, 1, -1, -1))
|
BattleScreen.AddToQuery(InsertIndex, New ToggleEntityQueryObject(True, ToggleEntityQueryObject.BattleEntities.OwnPokemon, PokemonForms.GetOverworldSpriteName(BattleScreen.OwnPokemon), 0, 1, -1, -1))
|
||||||
@ -7418,27 +7414,27 @@
|
|||||||
BattleScreen.AddToQuery(InsertIndex, New TextQueryObject("Go, " & BattleScreen.OwnPokemon.GetDisplayName() & "!"))
|
BattleScreen.AddToQuery(InsertIndex, New TextQueryObject("Go, " & BattleScreen.OwnPokemon.GetDisplayName() & "!"))
|
||||||
|
|
||||||
' Ball is thrown
|
' Ball is thrown
|
||||||
Dim BallThrow As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OwnPokemonNPC, False, BattleScreen.OwnPokemonModel)
|
Dim BallThrow As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OwnPokemonNPC, False)
|
||||||
|
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
BallThrow.AnimationPlaySound("Battle\Pokeball\Throw", 0, 0)
|
BallThrow.AnimationPlaySound("Battle\Pokeball\Throw", 0, 0)
|
||||||
|
|
||||||
Dim BallThrowEntity As Entity = BallThrow.SpawnEntity(New Vector3(-2, -0.15, 0), BattleScreen.OwnPokemon.CatchBall.Texture, New Vector3(0.3F), 1.0F)
|
Dim BallThrowEntity As Entity = BallThrow.SpawnEntity(New Vector3(-2, CSng(-0.15 + PositionOffsetY), 0), BattleScreen.OwnPokemon.CatchBall.Texture, New Vector3(0.3F), 1.0F)
|
||||||
BallThrow.AnimationMove(BallThrowEntity, True, 0, 0.35, 0, 0.1, False, True, 0F, 0.5F,, -0.3,, 0.025F)
|
BallThrow.AnimationMove(BallThrowEntity, True, 0, CSng(0.35 + PositionOffsetY), 0, 0.1, False, True, 0F, 0.5F,, -0.3,, 0.025F)
|
||||||
|
|
||||||
' Ball Opens
|
' Ball Opens
|
||||||
BallThrow.AnimationPlaySound("Battle\Pokeball\Open", 3, 0)
|
BallThrow.AnimationPlaySound("Battle\Pokeball\Open", 3, 0)
|
||||||
|
|
||||||
Dim SmokeSpawned As Integer = 0
|
Dim SmokeSpawned As Integer = 0
|
||||||
Do
|
Do
|
||||||
Dim SmokeDestination = New Vector3(CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10))
|
Dim SmokeDestination = New Vector3(CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10) + PositionOffsetY, CSng(Random.Next(-10, 10) / 10))
|
||||||
|
|
||||||
Dim SmokeTexture As Texture2D = TextureManager.GetTexture("Textures\Battle\Smoke")
|
Dim SmokeTexture As Texture2D = TextureManager.GetTexture("Textures\Battle\Smoke")
|
||||||
|
|
||||||
Dim SmokeScale = New Vector3(CSng(Random.Next(2, 6) / 10))
|
Dim SmokeScale = New Vector3(CSng(Random.Next(2, 6) / 10))
|
||||||
Dim SmokeSpeed = CSng(Random.Next(1, 3) / 20.0F)
|
Dim SmokeSpeed = CSng(Random.Next(1, 3) / 20.0F)
|
||||||
|
|
||||||
Dim SmokeEntity As Entity = BallThrow.SpawnEntity(Nothing, SmokeTexture, SmokeScale, 1.0F, 3)
|
Dim SmokeEntity As Entity = BallThrow.SpawnEntity(New Vector3(0, PositionOffsetY, 0), SmokeTexture, SmokeScale, 1.0F, 3)
|
||||||
BallThrow.AnimationMove(SmokeEntity, True, SmokeDestination.X, SmokeDestination.Y, SmokeDestination.Z, SmokeSpeed, False, False, 3.0F, 0.0F)
|
BallThrow.AnimationMove(SmokeEntity, True, SmokeDestination.X, SmokeDestination.Y, SmokeDestination.Z, SmokeSpeed, False, False, 3.0F, 0.0F)
|
||||||
|
|
||||||
Threading.Interlocked.Increment(SmokeSpawned)
|
Threading.Interlocked.Increment(SmokeSpawned)
|
||||||
@ -7447,10 +7443,11 @@
|
|||||||
|
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
' Pokemon appears
|
' Pokemon appears
|
||||||
|
BallThrow.AnimationSetPosition(Nothing, False, 12, CSng(0.5), 13, 0, 0)
|
||||||
BallThrow.AnimationFade(Nothing, False, 1, True, 1, 3, 0)
|
BallThrow.AnimationFade(Nothing, False, 1, True, 1, 3, 0)
|
||||||
BallThrow.AnimationPlaySound(CStr(BattleScreen.OwnPokemon.Number), 4, 0,, True)
|
BallThrow.AnimationPlaySound(CStr(BattleScreen.OwnPokemon.Number), 4, 0,, True)
|
||||||
' Pokémon falls down
|
' Pokémon falls down
|
||||||
BallThrow.AnimationMove(Nothing, False, 0, 0, 0, 0.05F, False, False, 5, 0,,, 3)
|
BallThrow.AnimationMove(Nothing, False, 0, 0 + PositionOffsetY, 0, 0.05F, False, False, 5, 0,,, 3)
|
||||||
Else
|
Else
|
||||||
' Pokemon appears
|
' Pokemon appears
|
||||||
BallThrow.AnimationFade(Nothing, False, 1, True, 1, 0, 0)
|
BallThrow.AnimationFade(Nothing, False, 1, True, 1, 0, 0)
|
||||||
@ -7728,7 +7725,7 @@
|
|||||||
BattleScreen.BattleQuery.Add(New TextQueryObject(message))
|
BattleScreen.BattleQuery.Add(New TextQueryObject(message))
|
||||||
|
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
Dim BallReturn As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OppPokemonNPC, True, BattleScreen.OppPokemonModel)
|
Dim BallReturn As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OppPokemonNPC, True)
|
||||||
' Ball Closes
|
' Ball Closes
|
||||||
BallReturn.AnimationPlaySound("Battle\Pokeball\Open", 0, 0)
|
BallReturn.AnimationPlaySound("Battle\Pokeball\Open", 0, 0)
|
||||||
Dim SmokeReturned As Integer = 0
|
Dim SmokeReturned As Integer = 0
|
||||||
@ -7794,7 +7791,7 @@
|
|||||||
BattleScreen.BattleQuery.Add(New TextQueryObject(BattleScreen.Trainer.Name & ": ""Come back, " & BattleScreen.OppPokemon.GetDisplayName() & "!"""))
|
BattleScreen.BattleQuery.Add(New TextQueryObject(BattleScreen.Trainer.Name & ": ""Come back, " & BattleScreen.OppPokemon.GetDisplayName() & "!"""))
|
||||||
|
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
Dim BallReturn As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OppPokemonNPC, True, BattleScreen.OppPokemonModel)
|
Dim BallReturn As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OppPokemonNPC, True)
|
||||||
|
|
||||||
' Ball Closes
|
' Ball Closes
|
||||||
BallReturn.AnimationPlaySound("Battle\Pokeball\Open", 0, 0)
|
BallReturn.AnimationPlaySound("Battle\Pokeball\Open", 0, 0)
|
||||||
@ -7852,7 +7849,7 @@
|
|||||||
BattleScreen.BattleQuery.Add(New ToggleEntityQueryObject(True, ToggleEntityQueryObject.BattleEntities.OppPokemon, 1, -1, -1, -1, -1))
|
BattleScreen.BattleQuery.Add(New ToggleEntityQueryObject(True, ToggleEntityQueryObject.BattleEntities.OppPokemon, 1, -1, -1, -1, -1))
|
||||||
BattleScreen.BattleQuery.Add(New TextQueryObject(BattleScreen.Trainer.Name & ": ""Go, " & BattleScreen.OppPokemon.GetDisplayName() & "!"""))
|
BattleScreen.BattleQuery.Add(New TextQueryObject(BattleScreen.Trainer.Name & ": ""Go, " & BattleScreen.OppPokemon.GetDisplayName() & "!"""))
|
||||||
|
|
||||||
Dim BallThrow As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OppPokemonNPC, False, BattleScreen.OppPokemonModel)
|
Dim BallThrow As AnimationQueryObject = New AnimationQueryObject(BattleScreen.OppPokemonNPC, False)
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
' Ball is thrown
|
' Ball is thrown
|
||||||
|
|
||||||
|
@ -60,9 +60,6 @@
|
|||||||
Public OwnTrainerNPC As NPC
|
Public OwnTrainerNPC As NPC
|
||||||
Public OppTrainerNPC As NPC
|
Public OppTrainerNPC As NPC
|
||||||
|
|
||||||
Public OwnPokemonModel As Entity
|
|
||||||
Public OppPokemonModel As Entity
|
|
||||||
|
|
||||||
Public OwnPokemonIndex As Integer = 0
|
Public OwnPokemonIndex As Integer = 0
|
||||||
Public OppPokemonIndex As Integer = 0
|
Public OppPokemonIndex As Integer = 0
|
||||||
|
|
||||||
@ -85,7 +82,7 @@
|
|||||||
Public DrawColoredScreen As Boolean = True
|
Public DrawColoredScreen As Boolean = True
|
||||||
Public ColorOverlay As Color = Color.Black
|
Public ColorOverlay As Color = Color.Black
|
||||||
|
|
||||||
Public BattleMapOffset As New Vector3(0)
|
Public Shared BattleMapOffset As New Vector3(0)
|
||||||
|
|
||||||
Public Overrides Function GetScreenStatus() As String
|
Public Overrides Function GetScreenStatus() As String
|
||||||
Dim pokemonString As String = "OwnPokemon=OWNEMPTY" & Environment.NewLine &
|
Dim pokemonString As String = "OwnPokemon=OWNEMPTY" & Environment.NewLine &
|
||||||
@ -223,29 +220,29 @@
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
Dim ownModel As String = GetModelName(True)
|
Dim ownModel As String = GetModelName(True)
|
||||||
|
Dim OwnEntityOffsetY As Single = 0.0F
|
||||||
|
|
||||||
Dim oppModel As String = GetModelName(False)
|
Dim oppModel As String = GetModelName(False)
|
||||||
|
Dim OppEntityOffsetY As Single = 0.0F
|
||||||
|
|
||||||
If ownModel = "" Then
|
If ownModel <> "" Then
|
||||||
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, WildPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}, 1), NPC)
|
OwnEntityOffsetY = -0.5F
|
||||||
OwnPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(12, -0.5F, 13) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 0.5F, 0), New Vector3(OwnPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, "Models\Pokemon\Bulbasaur\Normal"), WallBlock)
|
|
||||||
Else
|
|
||||||
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, WildPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}), NPC)
|
|
||||||
OwnPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(12, -0.5F, 13) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 0.5F, 0), New Vector3(OwnPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 1, "", True, New Vector3(1), 0, "", "", New Vector3(0), Nothing, 1,,, ownModel), WallBlock)
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If oppModel <> "" Then
|
||||||
|
OppEntityOffsetY = -0.5F
|
||||||
|
End If
|
||||||
|
|
||||||
|
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, OwnEntityOffsetY, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, WildPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}, 1,,, ownModel), NPC)
|
||||||
|
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, OppEntityOffsetY, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(WildPokemon), 1, WildPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)},,,, oppModel), NPC)
|
||||||
|
If ownModel <> "" Then
|
||||||
|
OwnPokemonNPC.Scale = New Vector3(OwnPokemon.GetModelProperties().Item1) * ModelManager.MODELSCALE
|
||||||
|
End If
|
||||||
|
If oppModel <> "" Then
|
||||||
|
OppPokemonNPC.Scale = New Vector3(OppPokemon.GetModelProperties().Item1) * ModelManager.MODELSCALE
|
||||||
|
End If
|
||||||
Screen.Level.Entities.Add(OwnPokemonNPC)
|
Screen.Level.Entities.Add(OwnPokemonNPC)
|
||||||
Screen.Level.Entities.Add(OwnPokemonModel)
|
|
||||||
|
|
||||||
If oppModel = "" Then
|
|
||||||
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(WildPokemon), 1, WildPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)}), NPC)
|
|
||||||
OppPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(15, -0.5F, 13) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 1.5F, 0), New Vector3(OppPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, "Models\Pokemon\Bulbasaur\Normal"), WallBlock)
|
|
||||||
Else
|
|
||||||
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(WildPokemon), 1, WildPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)}), NPC)
|
|
||||||
OppPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(15, -0.5F, 13) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 1.5F, 0), New Vector3(OppPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 1, "", True, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, oppModel), WallBlock)
|
|
||||||
End If
|
|
||||||
|
|
||||||
Screen.Level.Entities.Add(OppPokemonNPC)
|
Screen.Level.Entities.Add(OppPokemonNPC)
|
||||||
Screen.Level.Entities.Add(OppPokemonModel)
|
|
||||||
|
|
||||||
Dim ownSkin As String = Core.Player.Skin
|
Dim ownSkin As String = Core.Player.Skin
|
||||||
If SavedOverworld.Level.Surfing = True Then
|
If SavedOverworld.Level.Surfing = True Then
|
||||||
@ -356,40 +353,42 @@
|
|||||||
oppShiny = "S"
|
oppShiny = "S"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Dim ownModel As String = GetModelName(True)
|
|
||||||
Dim oppModel As String = GetModelName(False)
|
|
||||||
|
|
||||||
Dim InitiallyVisibleOwn As Integer = 1
|
Dim InitiallyVisibleOwn As Integer = 1
|
||||||
If IsPVPBattle = True AndAlso Core.Player.ShowBattleAnimations <> 0 Then
|
If IsPVPBattle = True AndAlso Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
InitiallyVisibleOwn = 0
|
InitiallyVisibleOwn = 0
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If ownModel = "" Then
|
|
||||||
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, OwnPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}, InitiallyVisibleOwn), NPC)
|
|
||||||
OwnPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(12, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 0.5F, 0), New Vector3(OwnPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, "Pokemon\Models\Bulbasaur\Normal"), WallBlock)
|
|
||||||
Else
|
|
||||||
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, OwnPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}), NPC)
|
|
||||||
OwnPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(12, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 0.5F, 0), New Vector3(OwnPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 1, "", True, New Vector3(1), 0, "", "", New Vector3(0), Nothing, InitiallyVisibleOwn,,, ownModel), WallBlock)
|
|
||||||
End If
|
|
||||||
|
|
||||||
Screen.Level.Entities.Add(OwnPokemonNPC)
|
|
||||||
Screen.Level.Entities.Add(OwnPokemonModel)
|
|
||||||
|
|
||||||
Dim InitiallyVisibleOpp As Integer = 1
|
Dim InitiallyVisibleOpp As Integer = 1
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
InitiallyVisibleOpp = 0
|
InitiallyVisibleOpp = 0
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If oppModel = "" Then
|
Dim ownModel As String = GetModelName(True)
|
||||||
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OppPokemon), 1, OppPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)}, InitiallyVisibleOpp), NPC)
|
Dim oppModel As String = GetModelName(False)
|
||||||
OppPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(15, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 1.5F, 0), New Vector3(OppPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, "Models\Bulbasaur\Normal"), WallBlock)
|
|
||||||
Else
|
Dim OwnEntityOffsetY As Single = 0.0F
|
||||||
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OppPokemon), 1, OppPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)}), NPC)
|
Dim OppEntityOffsetY As Single = 0.0F
|
||||||
OppPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(15, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 1.5F, 0), New Vector3(OppPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 1, "", True, New Vector3(1), 0, "", "", New Vector3(0), Nothing, InitiallyVisibleOpp,,, oppModel), WallBlock)
|
|
||||||
|
If ownModel <> "" Then
|
||||||
|
OwnEntityOffsetY = -0.5F
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If oppModel <> "" Then
|
||||||
|
OppEntityOffsetY = -0.5F
|
||||||
|
End If
|
||||||
|
|
||||||
|
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, OwnEntityOffsetY, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, WildPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}, InitiallyVisibleOwn,,, ownModel), NPC)
|
||||||
|
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, OppEntityOffsetY, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(WildPokemon), 1, WildPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)}, InitiallyVisibleOpp,,, oppModel), NPC)
|
||||||
|
|
||||||
|
If ownModel <> "" Then
|
||||||
|
OwnPokemonNPC.Scale = New Vector3(OwnPokemon.GetModelProperties().Item1) * ModelManager.MODELSCALE
|
||||||
|
End If
|
||||||
|
If oppModel <> "" Then
|
||||||
|
OppPokemonNPC.Scale = New Vector3(OppPokemon.GetModelProperties().Item1) * ModelManager.MODELSCALE
|
||||||
|
End If
|
||||||
|
|
||||||
|
Screen.Level.Entities.Add(OwnPokemonNPC)
|
||||||
Screen.Level.Entities.Add(OppPokemonNPC)
|
Screen.Level.Entities.Add(OppPokemonNPC)
|
||||||
Screen.Level.Entities.Add(OppPokemonModel)
|
|
||||||
|
|
||||||
Dim ownSkin As String = Core.Player.Skin
|
Dim ownSkin As String = Core.Player.Skin
|
||||||
If SavedOverworld.Level.Surfing = True Then
|
If SavedOverworld.Level.Surfing = True Then
|
||||||
@ -414,27 +413,38 @@
|
|||||||
Dim q1 As TextQueryObject = New TextQueryObject(Trainer.Name & " " & "wants to battle!")
|
Dim q1 As TextQueryObject = New TextQueryObject(Trainer.Name & " " & "wants to battle!")
|
||||||
Dim q11 As TextQueryObject = New TextQueryObject(Trainer.Name & ": """ & "Go," & " " & OppPokemon.GetDisplayName() & "!""")
|
Dim q11 As TextQueryObject = New TextQueryObject(Trainer.Name & ": """ & "Go," & " " & OppPokemon.GetDisplayName() & "!""")
|
||||||
|
|
||||||
|
Dim OppAnimationOffsetY As Single = 0.0F
|
||||||
|
If OppPokemonNPC.Model IsNot Nothing Then
|
||||||
|
OppAnimationOffsetY = 0.5F
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim OwnAnimationOffsetY As Single = 0.0F
|
||||||
|
If OwnPokemonNPC.Model IsNot Nothing Then
|
||||||
|
OwnAnimationOffsetY = 0.5F
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
' Ball is thrown
|
' Ball is thrown
|
||||||
Dim BallThrowOpp As AnimationQueryObject = New AnimationQueryObject(OppPokemonNPC, False, OppPokemonModel)
|
Dim BallThrowOpp As AnimationQueryObject = New AnimationQueryObject(OppPokemonNPC, False)
|
||||||
|
|
||||||
If Core.Player.ShowBattleAnimations <> 0 Then
|
If Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
BallThrowOpp.AnimationPlaySound("Battle\Pokeball\Throw", 0, 0)
|
BallThrowOpp.AnimationPlaySound("Battle\Pokeball\Throw", 0, 0)
|
||||||
BallThrowOpp.AnimationMove(Nothing, False, 0, 0.5, 0, 0.5, False, False, 2, 0,,, 3)
|
BallThrowOpp.AnimationSetPosition(Nothing, False, 15, CSng(0.5 + OppEntityOffsetY), 13, 0, 0)
|
||||||
Dim BallThrowEntity As Entity = BallThrowOpp.SpawnEntity(New Vector3(2, -0.15, 0), Me.OppPokemon.CatchBall.Texture, New Vector3(0.3F), 1.0F)
|
Dim BallThrowEntity As Entity = BallThrowOpp.SpawnEntity(New Vector3(2, -0.15, 0), Me.OppPokemon.CatchBall.Texture, New Vector3(0.3F), 1.0F)
|
||||||
BallThrowOpp.AnimationMove(BallThrowEntity, True, 0, 0.35, 0, 0.1, False, True, 0F, 0.5F,, 0.3,, 0.025F)
|
BallThrowOpp.AnimationMove(BallThrowEntity, True, 0, CSng(0.35 + OppAnimationOffsetY), 0, 0.1, False, True, 0F, 0.5F,, 0.3,, 0.025F)
|
||||||
|
|
||||||
' Ball Opens
|
' Ball Opens
|
||||||
BallThrowOpp.AnimationPlaySound("Battle\Pokeball\Open", 3, 0)
|
BallThrowOpp.AnimationPlaySound("Battle\Pokeball\Open", 3, 0)
|
||||||
Dim SmokeSpawnedOpp As Integer = 0
|
Dim SmokeSpawnedOpp As Integer = 0
|
||||||
Do
|
Do
|
||||||
Dim SmokeDestination = New Vector3(CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10))
|
Dim SmokeDestination = New Vector3(CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10) + OppAnimationOffsetY, CSng(Random.Next(-10, 10) / 10))
|
||||||
|
|
||||||
Dim SmokeTexture As Texture2D = TextureManager.GetTexture("Textures\Battle\Smoke")
|
Dim SmokeTexture As Texture2D = TextureManager.GetTexture("Textures\Battle\Smoke")
|
||||||
|
|
||||||
Dim SmokeScale = New Vector3(CSng(Random.Next(2, 6) / 10))
|
Dim SmokeScale = New Vector3(CSng(Random.Next(2, 6) / 10))
|
||||||
Dim SmokeSpeed = CSng(Random.Next(1, 3) / 20.0F)
|
Dim SmokeSpeed = CSng(Random.Next(1, 3) / 20.0F)
|
||||||
|
|
||||||
Dim SmokeEntity As Entity = BallThrowOpp.SpawnEntity(Nothing, SmokeTexture, SmokeScale, 1.0F, 3)
|
Dim SmokeEntity As Entity = BallThrowOpp.SpawnEntity(New Vector3(0, OppAnimationOffsetY, 0), SmokeTexture, SmokeScale, 1.0F, 3)
|
||||||
BallThrowOpp.AnimationMove(SmokeEntity, True, SmokeDestination.X, SmokeDestination.Y, SmokeDestination.Z, SmokeSpeed, False, False, 3.0F, 0.0F)
|
BallThrowOpp.AnimationMove(SmokeEntity, True, SmokeDestination.X, SmokeDestination.Y, SmokeDestination.Z, SmokeSpeed, False, False, 3.0F, 0.0F)
|
||||||
|
|
||||||
Threading.Interlocked.Increment(SmokeSpawnedOpp)
|
Threading.Interlocked.Increment(SmokeSpawnedOpp)
|
||||||
@ -466,27 +476,27 @@
|
|||||||
|
|
||||||
If IsPVPBattle = True AndAlso Core.Player.ShowBattleAnimations <> 0 Then
|
If IsPVPBattle = True AndAlso Core.Player.ShowBattleAnimations <> 0 Then
|
||||||
' Ball is thrown
|
' Ball is thrown
|
||||||
Dim BallThrowOwn As AnimationQueryObject = New AnimationQueryObject(Me.OwnPokemonNPC, False, Me.OwnPokemonModel)
|
Dim BallThrowOwn As AnimationQueryObject = New AnimationQueryObject(Me.OwnPokemonNPC, False)
|
||||||
|
|
||||||
BallThrowOwn.AnimationPlaySound("Battle\Pokeball\Throw", 0, 0)
|
BallThrowOwn.AnimationPlaySound("Battle\Pokeball\Throw", 0, 0)
|
||||||
BallThrowOwn.AnimationMove(Nothing, False, 0, 0.5, 0, 0.5, False, False, 2, 0,,, 3)
|
BallThrowOwn.AnimationMove(Nothing, False, 0, 0.5, 0, 0.5, False, False, 2, 0,,, 3)
|
||||||
|
|
||||||
Dim BallThrowEntity As Entity = BallThrowOwn.SpawnEntity(New Vector3(-2, -0.15, 0), Me.OwnPokemon.CatchBall.Texture, New Vector3(0.3F), 1.0F)
|
Dim BallThrowEntity As Entity = BallThrowOwn.SpawnEntity(New Vector3(-2, -0.15, 0), Me.OwnPokemon.CatchBall.Texture, New Vector3(0.3F), 1.0F)
|
||||||
BallThrowOwn.AnimationMove(BallThrowEntity, True, 0, 0.35, 0, 0.1, False, True, 0F, 0.5F,, 0.3,, 0.025F)
|
BallThrowOwn.AnimationMove(BallThrowEntity, True, 0, CSng(0.35 + OwnAnimationOffsetY), 0, 0.1, False, True, 0F, 0.5F,, 0.3,, 0.025F)
|
||||||
|
|
||||||
' Ball Opens
|
' Ball Opens
|
||||||
BallThrowOwn.AnimationPlaySound("Battle\Pokeball\Open", 3, 0)
|
BallThrowOwn.AnimationPlaySound("Battle\Pokeball\Open", 3, 0)
|
||||||
|
|
||||||
Dim SmokeSpawned As Integer = 0
|
Dim SmokeSpawned As Integer = 0
|
||||||
Do
|
Do
|
||||||
Dim SmokeDestination = New Vector3(CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10))
|
Dim SmokeDestination = New Vector3(CSng(Random.Next(-10, 10) / 10), CSng(Random.Next(-10, 10) / 10) + OwnAnimationOffsetY, CSng(Random.Next(-10, 10) / 10))
|
||||||
|
|
||||||
Dim SmokeTexture As Texture2D = TextureManager.GetTexture("Textures\Battle\Smoke")
|
Dim SmokeTexture As Texture2D = TextureManager.GetTexture("Textures\Battle\Smoke")
|
||||||
|
|
||||||
Dim SmokeScale = New Vector3(CSng(Random.Next(2, 6) / 10))
|
Dim SmokeScale = New Vector3(CSng(Random.Next(2, 6) / 10))
|
||||||
Dim SmokeSpeed = CSng(Random.Next(1, 3) / 20.0F)
|
Dim SmokeSpeed = CSng(Random.Next(1, 3) / 20.0F)
|
||||||
|
|
||||||
Dim SmokeEntity As Entity = BallThrowOwn.SpawnEntity(Nothing, SmokeTexture, SmokeScale, 1.0F, 3)
|
Dim SmokeEntity As Entity = BallThrowOwn.SpawnEntity(New Vector3(0, OwnAnimationOffsetY, 0), SmokeTexture, SmokeScale, 1.0F, 3)
|
||||||
BallThrowOwn.AnimationMove(SmokeEntity, True, SmokeDestination.X, SmokeDestination.Y, SmokeDestination.Z, SmokeSpeed, False, False, 3.0F, 0.0F)
|
BallThrowOwn.AnimationMove(SmokeEntity, True, SmokeDestination.X, SmokeDestination.Y, SmokeDestination.Z, SmokeSpeed, False, False, 3.0F, 0.0F)
|
||||||
|
|
||||||
Threading.Interlocked.Increment(SmokeSpawned)
|
Threading.Interlocked.Increment(SmokeSpawned)
|
||||||
@ -576,29 +586,31 @@
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
Dim ownModel As String = GetModelName(True)
|
Dim ownModel As String = GetModelName(True)
|
||||||
Dim oppModel As String = GetModelName(False)
|
Dim OwnEntityOffsetY As Single = 0.0F
|
||||||
|
|
||||||
If ownModel = "" Then
|
Dim oppModel As String = GetModelName(False)
|
||||||
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", False, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, WildPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}), NPC)
|
Dim OppEntityOffsetY As Single = 0.0F
|
||||||
OwnPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(12, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 0.5F, 0), New Vector3(OwnPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, "Models\Bulbasaur\Normal"), WallBlock)
|
|
||||||
Else
|
If ownModel <> "" Then
|
||||||
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, WildPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}), NPC)
|
OwnEntityOffsetY = -0.5F
|
||||||
OwnPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(12, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 0.5F, 0), New Vector3(OwnPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 1, "", False, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, ownModel), WallBlock)
|
End If
|
||||||
|
|
||||||
|
If oppModel <> "" Then
|
||||||
|
OppEntityOffsetY = -0.5F
|
||||||
|
End If
|
||||||
|
|
||||||
|
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, 0 + OwnEntityOffsetY, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, WildPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}, 1,,, ownModel), NPC)
|
||||||
|
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, 0 + OppEntityOffsetY, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(WildPokemon), 1, WildPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)},,,, oppModel), NPC)
|
||||||
|
|
||||||
|
If ownModel <> "" Then
|
||||||
|
OwnPokemonNPC.Scale = New Vector3(OwnPokemon.GetModelProperties().Item1) * ModelManager.MODELSCALE
|
||||||
|
End If
|
||||||
|
If oppModel <> "" Then
|
||||||
|
OppPokemonNPC.Scale = New Vector3(OppPokemon.GetModelProperties().Item1) * ModelManager.MODELSCALE
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Screen.Level.Entities.Add(OwnPokemonNPC)
|
Screen.Level.Entities.Add(OwnPokemonNPC)
|
||||||
Screen.Level.Entities.Add(OwnPokemonModel)
|
|
||||||
|
|
||||||
If oppModel = "" Then
|
|
||||||
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(WildPokemon), 1, WildPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)}), NPC)
|
|
||||||
OppPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(15, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 1.5F, 0), New Vector3(OppPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, "Models\Bulbasaur\Normal"), WallBlock)
|
|
||||||
Else
|
|
||||||
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(WildPokemon), 1, WildPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)}), NPC)
|
|
||||||
OppPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(15, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 1.5F, 0), New Vector3(OppPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 1, "", True, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, oppModel), WallBlock)
|
|
||||||
End If
|
|
||||||
|
|
||||||
Screen.Level.Entities.Add(OppPokemonNPC)
|
Screen.Level.Entities.Add(OppPokemonNPC)
|
||||||
Screen.Level.Entities.Add(OppPokemonModel)
|
|
||||||
|
|
||||||
Dim ownSkin As String = Core.Player.Skin
|
Dim ownSkin As String = Core.Player.Skin
|
||||||
If SavedOverworld.Level.Surfing = True Then
|
If SavedOverworld.Level.Surfing = True Then
|
||||||
@ -688,29 +700,31 @@
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
Dim ownModel As String = GetModelName(True)
|
Dim ownModel As String = GetModelName(True)
|
||||||
Dim oppModel As String = GetModelName(False)
|
Dim OwnEntityOffsetY As Single = 0.0F
|
||||||
|
|
||||||
If ownModel = "" Then
|
Dim oppModel As String = GetModelName(False)
|
||||||
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, OwnPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}, 1), NPC)
|
Dim OppEntityOffsetY As Single = 0.0F
|
||||||
OwnPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(12, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 0.5F, 0), New Vector3(OwnPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, "Pokemon\Models\Bulbasaur\Normal"), WallBlock)
|
|
||||||
Else
|
If ownModel <> "" Then
|
||||||
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, OwnPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}), NPC)
|
OwnEntityOffsetY = -0.5F
|
||||||
OwnPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(12, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 0.5F, 0), New Vector3(OwnPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 1, "", True, New Vector3(1), 0, "", "", New Vector3(0), Nothing, 1,,, ownModel), WallBlock)
|
End If
|
||||||
|
|
||||||
|
If oppModel <> "" Then
|
||||||
|
OppEntityOffsetY = -0.5F
|
||||||
|
End If
|
||||||
|
|
||||||
|
OwnPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(12, 0 + OwnEntityOffsetY, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(OwnPokemon), 3, WildPokemon.GetDisplayName(), 0, True, "Still", New List(Of Rectangle)}, 1,,, ownModel), NPC)
|
||||||
|
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, 0 + OppEntityOffsetY, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(WildPokemon), 1, WildPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)},,,, oppModel), NPC)
|
||||||
|
|
||||||
|
If ownModel <> "" Then
|
||||||
|
OwnPokemonNPC.Scale = New Vector3(OwnPokemon.GetModelProperties().Item1) * ModelManager.MODELSCALE
|
||||||
|
End If
|
||||||
|
If oppModel <> "" Then
|
||||||
|
OppPokemonNPC.Scale = New Vector3(OppPokemon.GetModelProperties().Item1) * ModelManager.MODELSCALE
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Screen.Level.Entities.Add(OwnPokemonNPC)
|
Screen.Level.Entities.Add(OwnPokemonNPC)
|
||||||
Screen.Level.Entities.Add(OwnPokemonModel)
|
|
||||||
|
|
||||||
If oppModel = "" Then
|
|
||||||
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", True, New Vector3(1), 1, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(WildPokemon), 1, WildPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)}), NPC)
|
|
||||||
OppPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(15, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 1.5F, 0), New Vector3(OppPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, "Pokemon\Models\Bulbasaur\Normal"), WallBlock)
|
|
||||||
Else
|
|
||||||
OppPokemonNPC = CType(Entity.GetNewEntity("NPC", New Vector3(15, 0, 13) + BattleMapOffset, {Nothing}, {0, 0}, False, New Vector3(0), New Vector3(1), BaseModel.BillModel, 0, "", False, New Vector3(1), 0, "", "", New Vector3(0), {PokemonForms.GetOverworldSpriteName(WildPokemon), 1, WildPokemon.GetDisplayName(), 1, True, "Still", New List(Of Rectangle)}), NPC)
|
|
||||||
OppPokemonModel = CType(Entity.GetNewEntity("WallBlock", New Vector3(15, -0.5F, 12.5F) + BattleMapOffset, {}, {}, False, New Vector3(0, MathHelper.Pi * 1.5F, 0), New Vector3(OppPokemon.GetModelProperties().Item1), BaseModel.BlockModel, 1, "", True, New Vector3(1), 0, "", "", New Vector3(0), Nothing,,,, oppModel), WallBlock)
|
|
||||||
End If
|
|
||||||
|
|
||||||
Screen.Level.Entities.Add(OppPokemonNPC)
|
Screen.Level.Entities.Add(OppPokemonNPC)
|
||||||
Screen.Level.Entities.Add(OppPokemonModel)
|
|
||||||
|
|
||||||
Dim ownSkin As String = Core.Player.Skin
|
Dim ownSkin As String = Core.Player.Skin
|
||||||
If SavedOverworld.Level.Surfing = True Then
|
If SavedOverworld.Level.Surfing = True Then
|
||||||
@ -866,12 +880,6 @@
|
|||||||
If e Is OppTrainerNPC Then
|
If e Is OppTrainerNPC Then
|
||||||
ForegroundEntities.Add(e)
|
ForegroundEntities.Add(e)
|
||||||
End If
|
End If
|
||||||
If e Is OwnPokemonModel Then
|
|
||||||
ForegroundEntities.Add(e)
|
|
||||||
End If
|
|
||||||
If e Is OppPokemonModel Then
|
|
||||||
ForegroundEntities.Add(e)
|
|
||||||
End If
|
|
||||||
Next
|
Next
|
||||||
If ForegroundEntities.Count > 0 Then
|
If ForegroundEntities.Count > 0 Then
|
||||||
ForegroundEntities = (From f In ForegroundEntities Order By f.CameraDistance Descending).ToList()
|
ForegroundEntities = (From f In ForegroundEntities Order By f.CameraDistance Descending).ToList()
|
||||||
@ -1097,12 +1105,20 @@ nextIndex:
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Function FocusOwnPokemon() As QueryObject
|
Public Function FocusOwnPokemon() As QueryObject
|
||||||
Dim q As New CameraQueryObject(New Vector3(Me.OwnPokemonNPC.Position.X + 1.0F, Me.OwnPokemonNPC.Position.Y + 0.5F, Me.OwnPokemonNPC.Position.Z + 1.0F) - BattleMapOffset, Screen.Camera.Position, 0.06F, 0.06F, CSng(MathHelper.PiOver4) + 0.05F, Screen.Camera.Yaw, -0.3F, Screen.Camera.Pitch, 0.04F, 0.04F)
|
Dim PositionOffsetY As Single = 0.0F
|
||||||
|
If Me.OwnPokemonNPC.Model IsNot Nothing Then
|
||||||
|
PositionOffsetY = 0.5
|
||||||
|
End If
|
||||||
|
Dim q As New CameraQueryObject(New Vector3(Me.OwnPokemonNPC.Position.X + 1.0F, Me.OwnPokemonNPC.Position.Y + 0.5F + PositionOffsetY, Me.OwnPokemonNPC.Position.Z + 1.0F) - BattleMapOffset, Screen.Camera.Position, 0.06F, 0.06F, CSng(MathHelper.PiOver4) + 0.05F, Screen.Camera.Yaw, -0.3F, Screen.Camera.Pitch, 0.04F, 0.04F)
|
||||||
Return q
|
Return q
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function FocusOppPokemon() As QueryObject
|
Public Function FocusOppPokemon() As QueryObject
|
||||||
Dim q As New CameraQueryObject(New Vector3(Me.OppPokemonNPC.Position.X - 1.0F, Me.OppPokemonNPC.Position.Y + 0.5F, Me.OppPokemonNPC.Position.Z + 1.0F) - BattleMapOffset, Screen.Camera.Position, 0.06F, 0.06F, -CSng(MathHelper.PiOver4) - 0.05F, Screen.Camera.Yaw, -0.3F, Screen.Camera.Pitch, 0.04F, 0.04F)
|
Dim PositionOffsetY As Single = 0.0F
|
||||||
|
If Me.OppPokemonNPC.Model IsNot Nothing Then
|
||||||
|
PositionOffsetY = 0.5
|
||||||
|
End If
|
||||||
|
Dim q As New CameraQueryObject(New Vector3(Me.OppPokemonNPC.Position.X - 1.0F, Me.OppPokemonNPC.Position.Y + 0.5F + PositionOffsetY, Me.OppPokemonNPC.Position.Z + 1.0F) - BattleMapOffset, Screen.Camera.Position, 0.06F, 0.06F, -CSng(MathHelper.PiOver4) - 0.05F, Screen.Camera.Yaw, -0.3F, Screen.Camera.Pitch, 0.04F, 0.04F)
|
||||||
Return q
|
Return q
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
@ -9,7 +9,6 @@
|
|||||||
Public AnimationSequence As List(Of BattleAnimation3D)
|
Public AnimationSequence As List(Of BattleAnimation3D)
|
||||||
Public SpawnedEntities As List(Of Entity)
|
Public SpawnedEntities As List(Of Entity)
|
||||||
Public CurrentEntity As Entity
|
Public CurrentEntity As Entity
|
||||||
Public CurrentModel As Entity
|
|
||||||
Public DrawBeforeEntities As Boolean
|
Public DrawBeforeEntities As Boolean
|
||||||
|
|
||||||
Public Overrides ReadOnly Property IsReady As Boolean
|
Public Overrides ReadOnly Property IsReady As Boolean
|
||||||
@ -18,7 +17,7 @@
|
|||||||
End Get
|
End Get
|
||||||
End Property
|
End Property
|
||||||
|
|
||||||
Public Sub New(ByVal entity As Entity, ByVal BattleFlipped As Boolean, Optional ByVal model As Entity = Nothing, Optional DrawBeforeEntities As Boolean = False)
|
Public Sub New(ByVal entity As Entity, ByVal BattleFlipped As Boolean, Optional DrawBeforeEntities As Boolean = False)
|
||||||
MyBase.New(QueryTypes.MoveAnimation)
|
MyBase.New(QueryTypes.MoveAnimation)
|
||||||
Me.AnimationSequence = New List(Of BattleAnimation3D)
|
Me.AnimationSequence = New List(Of BattleAnimation3D)
|
||||||
Me.SpawnedEntities = New List(Of Entity)
|
Me.SpawnedEntities = New List(Of Entity)
|
||||||
@ -27,9 +26,6 @@
|
|||||||
If entity IsNot Nothing Then
|
If entity IsNot Nothing Then
|
||||||
Me.CurrentEntity = entity
|
Me.CurrentEntity = entity
|
||||||
End If
|
End If
|
||||||
If model IsNot Nothing Then
|
|
||||||
Me.CurrentModel = model
|
|
||||||
End If
|
|
||||||
AnimationSequenceBegin()
|
AnimationSequenceBegin()
|
||||||
End Sub
|
End Sub
|
||||||
Public Overrides Sub Draw(ByVal BV2Screen As BattleScreen)
|
Public Overrides Sub Draw(ByVal BV2Screen As BattleScreen)
|
||||||
@ -101,7 +97,7 @@
|
|||||||
AnimationEnded = True
|
AnimationEnded = True
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Function SpawnEntity(ByVal Position As Vector3, ByVal Texture As Texture2D, ByVal Scale As Vector3, ByVal Opacity As Single, Optional ByVal startDelay As Single = 0.0F, Optional ByVal endDelay As Single = 0.0F) As Entity
|
Public Function SpawnEntity(ByVal Position As Vector3, ByVal Texture As Texture2D, ByVal Scale As Vector3, ByVal Opacity As Single, Optional ByVal startDelay As Single = 0.0F, Optional ByVal endDelay As Single = 0.0F, Optional ModelPath As String = "") As Entity
|
||||||
Dim NewPosition As Vector3
|
Dim NewPosition As Vector3
|
||||||
If Not Position = Nothing Then
|
If Not Position = Nothing Then
|
||||||
If BattleFlipped = True Then
|
If BattleFlipped = True Then
|
||||||
@ -123,6 +119,19 @@
|
|||||||
SpawnedEntity.Opacity = Opacity
|
SpawnedEntity.Opacity = Opacity
|
||||||
SpawnedEntity.Visible = False
|
SpawnedEntity.Visible = False
|
||||||
|
|
||||||
|
If ModelPath <> "" Then
|
||||||
|
SpawnedEntity.ModelPath = ModelPath
|
||||||
|
SpawnedEntity.Model = ModelManager.GetModel(SpawnedEntity.ModelPath)
|
||||||
|
SpawnedEntity.Scale *= ModelManager.MODELSCALE
|
||||||
|
If BattleFlipped = True Then
|
||||||
|
Dim FlipRotation As Integer = Entity.GetRotationFromVector(SpawnedEntity.Rotation)
|
||||||
|
FlipRotation += 2
|
||||||
|
If FlipRotation > 3 Then
|
||||||
|
FlipRotation -= 4
|
||||||
|
End If
|
||||||
|
SpawnedEntity.Rotation.Y = Entity.GetRotationFromInteger(FlipRotation).Y
|
||||||
|
End If
|
||||||
|
End If
|
||||||
SpawnedEntities.Add(SpawnedEntity)
|
SpawnedEntities.Add(SpawnedEntity)
|
||||||
|
|
||||||
Return SpawnedEntity
|
Return SpawnedEntity
|
||||||
@ -146,22 +155,19 @@
|
|||||||
|
|
||||||
Public Sub AnimationMove(ByVal Entity As Entity, ByVal RemoveEntityAfter As Boolean, ByVal DestinationX As Single, ByVal DestinationY As Single, ByVal DestinationZ As Single, ByVal Speed As Single, ByVal SpinX As Boolean, ByVal SpinZ As Boolean, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal SpinXSpeed As Single = 0.1F, Optional ByVal SpinZSpeed As Single = 0.1F, Optional MovementCurve As Integer = 3, Optional MoveYSpeed As Single = 0.0F)
|
Public Sub AnimationMove(ByVal Entity As Entity, ByVal RemoveEntityAfter As Boolean, ByVal DestinationX As Single, ByVal DestinationY As Single, ByVal DestinationZ As Single, ByVal Speed As Single, ByVal SpinX As Boolean, ByVal SpinZ As Boolean, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal SpinXSpeed As Single = 0.1F, Optional ByVal SpinZSpeed As Single = 0.1F, Optional MovementCurve As Integer = 3, Optional MoveYSpeed As Single = 0.0F)
|
||||||
Dim MoveEntity As Entity
|
Dim MoveEntity As Entity
|
||||||
Dim ModelEntity As Entity = Nothing
|
|
||||||
Dim Destination As Vector3
|
Dim Destination As Vector3
|
||||||
|
|
||||||
If Entity Is Nothing Then
|
If Entity Is Nothing Then
|
||||||
MoveEntity = CurrentEntity
|
MoveEntity = CurrentEntity
|
||||||
If Me.CurrentModel IsNot Nothing Then
|
|
||||||
ModelEntity = Me.CurrentModel
|
|
||||||
End If
|
|
||||||
Else
|
Else
|
||||||
MoveEntity = Entity
|
MoveEntity = Entity
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
If Not BattleFlipped = Nothing Then
|
If Not BattleFlipped = Nothing Then
|
||||||
If BattleFlipped = True Then
|
If BattleFlipped = True Then
|
||||||
DestinationX *= -1.0F
|
DestinationX *= -1.0F
|
||||||
DestinationZ *= -1.0F
|
|
||||||
If SpinZ = True Then
|
If SpinZ = True Then
|
||||||
SpinXSpeed *= -1.0F
|
SpinXSpeed *= -1.0F
|
||||||
SpinZSpeed *= -1.0F
|
SpinZSpeed *= -1.0F
|
||||||
@ -177,21 +183,29 @@
|
|||||||
Dim baEntityMove As BAEntityMove = New BAEntityMove(MoveEntity, RemoveEntityAfter, Destination, Speed, SpinX, SpinZ, startDelay, endDelay, SpinXSpeed, SpinZSpeed, MovementCurve, MoveYSpeed)
|
Dim baEntityMove As BAEntityMove = New BAEntityMove(MoveEntity, RemoveEntityAfter, Destination, Speed, SpinX, SpinZ, startDelay, endDelay, SpinXSpeed, SpinZSpeed, MovementCurve, MoveYSpeed)
|
||||||
AnimationSequence.Add(baEntityMove)
|
AnimationSequence.Add(baEntityMove)
|
||||||
|
|
||||||
If ModelEntity IsNot Nothing Then
|
End Sub
|
||||||
Dim baModelMove As BAEntityMove = New BAEntityMove(CType(CurrentModel, Entity), False, Destination, Speed, SpinX, SpinZ, startDelay, endDelay, SpinXSpeed, SpinZSpeed, MovementCurve, MoveYSpeed)
|
|
||||||
AnimationSequence.Add(baModelMove)
|
Public Sub AnimationSetPosition(ByVal Entity As Entity, ByVal RemoveEntityAfter As Boolean, ByVal PositionX As Single, ByVal PositionY As Single, ByVal PositionZ As Single, ByVal startDelay As Single, ByVal endDelay As Single)
|
||||||
|
Dim SetEntity As Entity
|
||||||
|
Dim SetPosition As Vector3
|
||||||
|
|
||||||
|
If Entity Is Nothing Then
|
||||||
|
SetEntity = CurrentEntity
|
||||||
|
Else
|
||||||
|
SetEntity = Entity
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
SetPosition = New Vector3(PositionX, PositionY, PositionZ) + BattleScreen.BattleMapOffset
|
||||||
|
|
||||||
|
Dim baEntitySetPosition As BAEntitySetPosition = New BAEntitySetPosition(SetEntity, RemoveEntityAfter, SetPosition, startDelay, endDelay)
|
||||||
|
AnimationSequence.Add(baEntitySetPosition)
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Sub AnimationFade(ByVal Entity As Entity, ByVal RemoveEntityAfter As Boolean, ByVal TransitionSpeed As Single, ByVal FadeIn As Boolean, ByVal EndState As Single, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal startState As Single = -1.0F)
|
Public Sub AnimationFade(ByVal Entity As Entity, ByVal RemoveEntityAfter As Boolean, ByVal TransitionSpeed As Single, ByVal FadeIn As Boolean, ByVal EndState As Single, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal startState As Single = -1.0F)
|
||||||
Dim FadeEntity As Entity
|
Dim FadeEntity As Entity
|
||||||
Dim FadeModel As Entity = Nothing
|
|
||||||
If Entity Is Nothing Then
|
If Entity Is Nothing Then
|
||||||
FadeEntity = CurrentEntity
|
FadeEntity = CurrentEntity
|
||||||
If Me.CurrentModel IsNot Nothing Then
|
|
||||||
FadeModel = Me.CurrentModel
|
|
||||||
End If
|
|
||||||
Else
|
Else
|
||||||
FadeEntity = Entity
|
FadeEntity = Entity
|
||||||
End If
|
End If
|
||||||
@ -199,20 +213,11 @@
|
|||||||
Dim baEntityOpacity As BAEntityOpacity = New BAEntityOpacity(FadeEntity, RemoveEntityAfter, TransitionSpeed, FadeIn, EndState, startDelay, endDelay, startState)
|
Dim baEntityOpacity As BAEntityOpacity = New BAEntityOpacity(FadeEntity, RemoveEntityAfter, TransitionSpeed, FadeIn, EndState, startDelay, endDelay, startState)
|
||||||
AnimationSequence.Add(baEntityOpacity)
|
AnimationSequence.Add(baEntityOpacity)
|
||||||
|
|
||||||
If FadeModel IsNot Nothing Then
|
|
||||||
Dim baModelOpacity As BAEntityOpacity = New BAEntityOpacity(CType(FadeModel, Entity), False, TransitionSpeed, FadeIn, EndState, startDelay, endDelay, startState)
|
|
||||||
AnimationSequence.Add(baModelOpacity)
|
|
||||||
End If
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
Public Sub AnimationRotate(Entity As Entity, ByVal RemoveEntityAfter As Boolean, ByVal RotationSpeedX As Single, ByVal RotationSpeedY As Single, ByVal RotationSpeedZ As Single, ByVal EndRotationX As Single, ByVal EndRotationY As Single, ByVal EndRotationZ As Single, ByVal startDelay As Single, ByVal endDelay As Single, ByVal DoXRotation As Boolean, ByVal DoYRotation As Boolean, ByVal DoZRotation As Boolean, ByVal DoReturn As Boolean)
|
Public Sub AnimationRotate(Entity As Entity, ByVal RemoveEntityAfter As Boolean, ByVal RotationSpeedX As Single, ByVal RotationSpeedY As Single, ByVal RotationSpeedZ As Single, ByVal EndRotationX As Single, ByVal EndRotationY As Single, ByVal EndRotationZ As Single, ByVal startDelay As Single, ByVal endDelay As Single, ByVal DoXRotation As Boolean, ByVal DoYRotation As Boolean, ByVal DoZRotation As Boolean, ByVal DoReturn As Boolean)
|
||||||
Dim RotateEntity As Entity
|
Dim RotateEntity As Entity
|
||||||
Dim RotateModel As Entity = Nothing
|
|
||||||
If Entity Is Nothing Then
|
If Entity Is Nothing Then
|
||||||
RotateEntity = CurrentEntity
|
RotateEntity = CurrentEntity
|
||||||
If Me.CurrentModel IsNot Nothing Then
|
|
||||||
RotateModel = Me.CurrentModel
|
|
||||||
End If
|
|
||||||
Else
|
Else
|
||||||
RotateEntity = Entity
|
RotateEntity = Entity
|
||||||
End If
|
End If
|
||||||
@ -222,21 +227,13 @@
|
|||||||
Dim baEntityRotate As BAEntityRotate = New BAEntityRotate(RotateEntity, RemoveEntityAfter, RotationSpeedVector, EndRotation, startDelay, endDelay, DoXRotation, DoYRotation, DoZRotation, DoReturn)
|
Dim baEntityRotate As BAEntityRotate = New BAEntityRotate(RotateEntity, RemoveEntityAfter, RotationSpeedVector, EndRotation, startDelay, endDelay, DoXRotation, DoYRotation, DoZRotation, DoReturn)
|
||||||
AnimationSequence.Add(baEntityRotate)
|
AnimationSequence.Add(baEntityRotate)
|
||||||
|
|
||||||
If RotateModel IsNot Nothing Then
|
|
||||||
Dim baModelRotate As BAEntityRotate = New BAEntityRotate(CType(RotateModel, Entity), False, RotationSpeedVector, EndRotation, startDelay, endDelay, DoXRotation, DoYRotation, DoZRotation, DoReturn)
|
|
||||||
AnimationSequence.Add(baModelRotate)
|
|
||||||
End If
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Sub AnimationTurnNPC(ByVal TurnSteps As Integer, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal EndFaceRotation As Integer = -1, Optional ByVal TurnSpeed As Integer = 1, Optional ByVal TurnDelay As Single = 0.25F)
|
Public Sub AnimationTurnNPC(ByVal TurnSteps As Integer, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal EndFaceRotation As Integer = -1, Optional ByVal TurnSpeed As Integer = 1, Optional ByVal TurnDelay As Single = 0.25F)
|
||||||
Dim TurnNPC As NPC = Nothing
|
Dim TurnNPC As NPC = Nothing
|
||||||
Dim TurnModel As Entity = Nothing
|
|
||||||
If CurrentEntity IsNot Nothing Then
|
If CurrentEntity IsNot Nothing Then
|
||||||
TurnNPC = CType(CurrentEntity, NPC)
|
TurnNPC = CType(CurrentEntity, NPC)
|
||||||
If Me.CurrentModel IsNot Nothing Then
|
|
||||||
TurnModel = Me.CurrentModel
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If Not BattleFlipped = Nothing AndAlso BattleFlipped = True Then
|
If Not BattleFlipped = Nothing AndAlso BattleFlipped = True Then
|
||||||
@ -244,17 +241,19 @@
|
|||||||
TurnSpeed *= -1
|
TurnSpeed *= -1
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Dim BAEntityFaceRotate As BAEntityFaceRotate = New BAEntityFaceRotate(TurnNPC, TurnSteps, startDelay, endDelay, EndFaceRotation, TurnSpeed, TurnDelay, TurnModel)
|
Dim BAEntityFaceRotate As BAEntityFaceRotate = New BAEntityFaceRotate(TurnNPC, TurnSteps, startDelay, endDelay, EndFaceRotation, TurnSpeed, TurnDelay)
|
||||||
AnimationSequence.Add(BAEntityFaceRotate)
|
AnimationSequence.Add(BAEntityFaceRotate)
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
Public Sub AnimationScale(ByVal Entity As Entity, ByVal RemoveEntityAfter As Boolean, ByVal Grow As Boolean, ByVal EndSizeX As Single, ByVal EndSizeY As Single, ByVal EndSizeZ As Single, ByVal SizeSpeed As Single, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal Anchors As String = "")
|
Public Sub AnimationScale(ByVal Entity As Entity, ByVal RemoveEntityAfter As Boolean, ByVal Grow As Boolean, ByVal EndSizeX As Single, ByVal EndSizeY As Single, ByVal EndSizeZ As Single, ByVal SizeSpeed As Single, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal Anchors As String = "")
|
||||||
Dim ScaleEntity As Entity
|
Dim ScaleEntity As Entity
|
||||||
Dim ScaleModel As Entity = Nothing
|
|
||||||
If Entity Is Nothing Then
|
If Entity Is Nothing Then
|
||||||
ScaleEntity = CurrentEntity
|
ScaleEntity = CurrentEntity
|
||||||
If Me.CurrentModel IsNot Nothing Then
|
If ScaleEntity.Model IsNot Nothing Then
|
||||||
ScaleModel = Me.CurrentModel
|
EndSizeX *= ModelManager.MODELSCALE
|
||||||
|
EndSizeY *= ModelManager.MODELSCALE
|
||||||
|
EndSizeZ *= ModelManager.MODELSCALE
|
||||||
|
SizeSpeed *= ModelManager.MODELSCALE
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
ScaleEntity = Entity
|
ScaleEntity = Entity
|
||||||
@ -264,10 +263,6 @@
|
|||||||
Dim EndSize As Vector3 = New Vector3(EndSizeX, EndSizeY, EndSizeZ)
|
Dim EndSize As Vector3 = New Vector3(EndSizeX, EndSizeY, EndSizeZ)
|
||||||
Dim baEntityScale As BAEntityScale = New BAEntityScale(ScaleEntity, RemoveEntityAfter, Scale, Grow, EndSize, SizeSpeed, startDelay, endDelay, Anchors)
|
Dim baEntityScale As BAEntityScale = New BAEntityScale(ScaleEntity, RemoveEntityAfter, Scale, Grow, EndSize, SizeSpeed, startDelay, endDelay, Anchors)
|
||||||
AnimationSequence.Add(baEntityScale)
|
AnimationSequence.Add(baEntityScale)
|
||||||
|
|
||||||
If ScaleModel IsNot Nothing Then
|
|
||||||
Dim baModelScale As BAEntityScale = New BAEntityScale(CType(ScaleModel, Entity), False, Scale, Grow, EndSize, SizeSpeed, startDelay, endDelay, Anchors)
|
|
||||||
End If
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Sub AnimationPlaySound(ByVal sound As String, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal stopMusic As Boolean = False, Optional ByVal IsPokemon As Boolean = False)
|
Public Sub AnimationPlaySound(ByVal sound As String, ByVal startDelay As Single, ByVal endDelay As Single, Optional ByVal stopMusic As Boolean = False, Optional ByVal IsPokemon As Boolean = False)
|
||||||
|
@ -79,16 +79,9 @@
|
|||||||
Public Overrides Sub Update(BV2Screen As BattleScreen)
|
Public Overrides Sub Update(BV2Screen As BattleScreen)
|
||||||
If changedIDs = False Then
|
If changedIDs = False Then
|
||||||
changedIDs = True
|
changedIDs = True
|
||||||
|
|
||||||
If Me.ownModelID > -1 Then
|
|
||||||
BV2Screen.OwnPokemonModel.ID = ownModelID
|
|
||||||
End If
|
|
||||||
If Me.ownNPCID > -1 Then
|
If Me.ownNPCID > -1 Then
|
||||||
BV2Screen.OwnPokemonNPC.ID = ownNPCID
|
BV2Screen.OwnPokemonNPC.ID = ownNPCID
|
||||||
End If
|
End If
|
||||||
If Me.oppModelID > -1 Then
|
|
||||||
BV2Screen.OppPokemonModel.ID = oppModelID
|
|
||||||
End If
|
|
||||||
If Me.oppNPCID > -1 Then
|
If Me.oppNPCID > -1 Then
|
||||||
BV2Screen.OppPokemonNPC.ID = oppNPCID
|
BV2Screen.OppPokemonNPC.ID = oppNPCID
|
||||||
End If
|
End If
|
||||||
@ -98,37 +91,34 @@
|
|||||||
Case 0
|
Case 0
|
||||||
Select Case Me._entity
|
Select Case Me._entity
|
||||||
Case BattleEntities.OwnPokemon
|
Case BattleEntities.OwnPokemon
|
||||||
If BV2Screen.OwnPokemonNPC.ID = 1 Then
|
BV2Screen.OwnPokemonNPC.Visible = GetVisible(BV2Screen.OwnPokemonNPC.Visible)
|
||||||
BV2Screen.OwnPokemonNPC.Visible = GetVisible(BV2Screen.OwnPokemonNPC.Visible)
|
|
||||||
BV2Screen.OwnPokemonModel.Visible = False
|
|
||||||
Else
|
|
||||||
BV2Screen.OwnPokemonModel.Visible = GetVisible(BV2Screen.OwnPokemonModel.Visible)
|
|
||||||
BV2Screen.OwnPokemonNPC.Visible = False
|
|
||||||
End If
|
|
||||||
Case BattleEntities.OppPokemon
|
Case BattleEntities.OppPokemon
|
||||||
If BV2Screen.OppPokemonNPC.ID = 1 Then
|
BV2Screen.OppPokemonNPC.Visible = GetVisible(BV2Screen.OppPokemonNPC.Visible)
|
||||||
BV2Screen.OppPokemonNPC.Visible = GetVisible(BV2Screen.OppPokemonNPC.Visible)
|
|
||||||
BV2Screen.OppPokemonModel.Visible = False
|
|
||||||
Else
|
|
||||||
BV2Screen.OppPokemonModel.Visible = GetVisible(BV2Screen.OppPokemonModel.Visible)
|
|
||||||
BV2Screen.OppPokemonNPC.Visible = False
|
|
||||||
End If
|
|
||||||
End Select
|
End Select
|
||||||
Case 1
|
Case 1
|
||||||
Select Case Me._entity
|
Select Case Me._entity
|
||||||
Case BattleEntities.OwnPokemon
|
Case BattleEntities.OwnPokemon
|
||||||
|
BV2Screen.OwnPokemonNPC.ModelPath = ""
|
||||||
|
BV2Screen.OwnPokemonNPC.Model = Nothing
|
||||||
|
BV2Screen.OwnPokemonNPC.Scale = New Vector3(1)
|
||||||
BV2Screen.OwnPokemonNPC.SetupSprite(_newTexture, "", False)
|
BV2Screen.OwnPokemonNPC.SetupSprite(_newTexture, "", False)
|
||||||
|
|
||||||
Case BattleEntities.OppPokemon
|
Case BattleEntities.OppPokemon
|
||||||
|
BV2Screen.OppPokemonNPC.ModelPath = ""
|
||||||
|
BV2Screen.OppPokemonNPC.Model = Nothing
|
||||||
|
BV2Screen.OppPokemonNPC.Scale = New Vector3(1)
|
||||||
BV2Screen.OppPokemonNPC.SetupSprite(_newTexture, "", False)
|
BV2Screen.OppPokemonNPC.SetupSprite(_newTexture, "", False)
|
||||||
End Select
|
End Select
|
||||||
Case 2
|
Case 2
|
||||||
Select Case Me._entity
|
Select Case Me._entity
|
||||||
Case BattleEntities.OwnPokemon
|
Case BattleEntities.OwnPokemon
|
||||||
BV2Screen.OwnPokemonModel.ModelPath = _newTexture
|
BV2Screen.OwnPokemonNPC.Scale = New Vector3(BV2Screen.OwnPokemon.GetModelProperties().Item1) * ModelManager.MODELSCALE
|
||||||
BV2Screen.OwnPokemonModel.Model = ModelManager.GetModel(BV2Screen.OwnPokemonModel.ModelPath)
|
BV2Screen.OwnPokemonNPC.ModelPath = _newTexture
|
||||||
|
BV2Screen.OwnPokemonNPC.Model = ModelManager.GetModel(BV2Screen.OwnPokemonNPC.ModelPath)
|
||||||
Case BattleEntities.OppPokemon
|
Case BattleEntities.OppPokemon
|
||||||
BV2Screen.OppPokemonModel.ModelPath = _newTexture
|
BV2Screen.OppPokemonNPC.Scale = New Vector3(BV2Screen.OppPokemon.GetModelProperties().Item1) * ModelManager.MODELSCALE
|
||||||
BV2Screen.OppPokemonModel.Model = ModelManager.GetModel(BV2Screen.OppPokemonModel.ModelPath)
|
BV2Screen.OppPokemonNPC.ModelPath = _newTexture
|
||||||
|
BV2Screen.OppPokemonNPC.Model = ModelManager.GetModel(BV2Screen.OppPokemonNPC.ModelPath)
|
||||||
End Select
|
End Select
|
||||||
End Select
|
End Select
|
||||||
_done = True
|
_done = True
|
||||||
|
@ -651,7 +651,7 @@
|
|||||||
If part.Effect.GetType().Name.ToLower() = Screen.Effect.GetType().Name.ToLower() Then
|
If part.Effect.GetType().Name.ToLower() = Screen.Effect.GetType().Name.ToLower() Then
|
||||||
With CType(part.Effect, BasicEffect)
|
With CType(part.Effect, BasicEffect)
|
||||||
Lighting.UpdateLighting(CType(part.Effect, BasicEffect), True)
|
Lighting.UpdateLighting(CType(part.Effect, BasicEffect), True)
|
||||||
|
.Alpha = Me.Opacity
|
||||||
.DiffuseColor = Screen.Effect.DiffuseColor
|
.DiffuseColor = Screen.Effect.DiffuseColor
|
||||||
|
|
||||||
If Not Screen.Level.World Is Nothing Then
|
If Not Screen.Level.World Is Nothing Then
|
||||||
|
@ -481,8 +481,12 @@
|
|||||||
Me.Rotation.Y = Screen.Camera.Yaw
|
Me.Rotation.Y = Screen.Camera.Yaw
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
If Me.Rotation.Y <> faceRotation Then
|
Dim ChangeRotation As Integer = faceRotation + 2
|
||||||
Me.Rotation.Y = GetRotationFromInteger(faceRotation).Y
|
If ChangeRotation > 3 Then
|
||||||
|
ChangeRotation -= 4
|
||||||
|
End If
|
||||||
|
If Me.Rotation.Y <> ChangeRotation Then
|
||||||
|
Me.Rotation.Y = GetRotationFromInteger(ChangeRotation).Y
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
@ -28207,6 +28207,7 @@
|
|||||||
<Compile Include="Battle\BattleAnimations\BAEntityColor.vb" />
|
<Compile Include="Battle\BattleAnimations\BAEntityColor.vb" />
|
||||||
<Compile Include="Battle\BattleAnimations\BABackground.vb" />
|
<Compile Include="Battle\BattleAnimations\BABackground.vb" />
|
||||||
<Compile Include="Battle\BattleAnimations\BAEntityFaceRotate.vb" />
|
<Compile Include="Battle\BattleAnimations\BAEntityFaceRotate.vb" />
|
||||||
|
<Compile Include="Battle\BattleAnimations\BAEntitySetPosition.vb" />
|
||||||
<Compile Include="Battle\BattleAnimations\BAEntityRotate.vb" />
|
<Compile Include="Battle\BattleAnimations\BAEntityRotate.vb" />
|
||||||
<Compile Include="Battle\BattleAnimations\BAEntityMove.vb" />
|
<Compile Include="Battle\BattleAnimations\BAEntityMove.vb" />
|
||||||
<Compile Include="Battle\BattleAnimations\BAEntityOpacity.vb" />
|
<Compile Include="Battle\BattleAnimations\BAEntityOpacity.vb" />
|
||||||
|
@ -2168,18 +2168,16 @@
|
|||||||
Dim BattleFlip As Boolean = False
|
Dim BattleFlip As Boolean = False
|
||||||
Dim CurrentPokemon As Pokemon = BattleScreen.OwnPokemon
|
Dim CurrentPokemon As Pokemon = BattleScreen.OwnPokemon
|
||||||
Dim CurrentEntity As NPC = BattleScreen.OwnPokemonNPC
|
Dim CurrentEntity As NPC = BattleScreen.OwnPokemonNPC
|
||||||
Dim CurrentModel As Entity = BattleScreen.OwnPokemonModel
|
|
||||||
If own = False Then
|
If own = False Then
|
||||||
BattleFlip = True
|
BattleFlip = True
|
||||||
CurrentPokemon = BattleScreen.OppPokemon
|
CurrentPokemon = BattleScreen.OppPokemon
|
||||||
CurrentEntity = BattleScreen.OppPokemonNPC
|
CurrentEntity = BattleScreen.OppPokemonNPC
|
||||||
CurrentModel = BattleScreen.OppPokemonModel
|
|
||||||
End If
|
End If
|
||||||
Me.InternalUserPokemonMoveAnimation(BattleScreen, BattleFlip, CurrentPokemon, CurrentEntity, CurrentModel)
|
Me.InternalUserPokemonMoveAnimation(BattleScreen, BattleFlip, CurrentPokemon, CurrentEntity)
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overridable Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overridable Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
'Override this method in the attack class to insert the move animation query objects into the queue.
|
'Override this method in the attack class to insert the move animation query objects into the queue.
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@ -2188,18 +2186,16 @@
|
|||||||
Dim BattleFlip As Boolean = False
|
Dim BattleFlip As Boolean = False
|
||||||
Dim CurrentPokemon As Pokemon = BattleScreen.OppPokemon
|
Dim CurrentPokemon As Pokemon = BattleScreen.OppPokemon
|
||||||
Dim CurrentEntity As NPC = BattleScreen.OppPokemonNPC
|
Dim CurrentEntity As NPC = BattleScreen.OppPokemonNPC
|
||||||
Dim CurrentModel As Entity = BattleScreen.OppPokemonModel
|
|
||||||
If own = False Then
|
If own = False Then
|
||||||
BattleFlip = True
|
BattleFlip = True
|
||||||
CurrentPokemon = BattleScreen.OwnPokemon
|
CurrentPokemon = BattleScreen.OwnPokemon
|
||||||
CurrentEntity = BattleScreen.OwnPokemonNPC
|
CurrentEntity = BattleScreen.OwnPokemonNPC
|
||||||
CurrentModel = BattleScreen.OwnPokemonModel
|
|
||||||
End If
|
End If
|
||||||
Me.InternalOpponentPokemonMoveAnimation(BattleScreen, BattleFlip, CurrentPokemon, CurrentEntity, CurrentModel)
|
Me.InternalOpponentPokemonMoveAnimation(BattleScreen, BattleFlip, CurrentPokemon, CurrentEntity)
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overridable Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overridable Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
'Override this method in the attack class to insert the move animation query objects into the queue.
|
'Override this method in the attack class to insert the move animation query objects into the queue.
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
@ -63,7 +63,7 @@
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
Dim TextureYOffset As Integer = 0
|
Dim TextureYOffset As Integer = 0
|
||||||
If BattleFlip = True Then
|
If BattleFlip = True Then
|
||||||
@ -80,7 +80,7 @@
|
|||||||
BattleScreen.BattleQuery.Add(MoveAnimation)
|
BattleScreen.BattleQuery.Add(MoveAnimation)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
Dim TextureYOffset As Integer = 0
|
Dim TextureYOffset As Integer = 0
|
||||||
If BattleFlip = True Then
|
If BattleFlip = True Then
|
||||||
|
@ -92,7 +92,7 @@
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
Dim maxAmount As Integer = 12
|
Dim maxAmount As Integer = 12
|
||||||
Dim currentAmount As Integer = 0
|
Dim currentAmount As Integer = 0
|
||||||
|
@ -51,15 +51,15 @@
|
|||||||
Me.IsWonderGuardAffected = True
|
Me.IsWonderGuardAffected = True
|
||||||
'#End
|
'#End
|
||||||
End Sub
|
End Sub
|
||||||
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip, CurrentModel)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Grass\VineWhip_Start", 0.5, 2.5)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Grass\VineWhip_Start", 0.5, 2.5)
|
||||||
MoveAnimation.AnimationMove(Nothing, False, 0, 0, -0.1, 0.025, False, False, 0, 0.5)
|
MoveAnimation.AnimationMove(Nothing, False, 0, 0, -0.1, 0.025, False, False, 0, 0.5)
|
||||||
MoveAnimation.AnimationMove(Nothing, False, 0, 0, 0, 0.025, False, False, 0.75, 0)
|
MoveAnimation.AnimationMove(Nothing, False, 0, 0, 0, 0.025, False, False, 0.75, 0)
|
||||||
BattleScreen.BattleQuery.Add(MoveAnimation)
|
BattleScreen.BattleQuery.Add(MoveAnimation)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Grass\VineWhip_Hit", 0, 2.5)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Grass\VineWhip_Hit", 0, 2.5)
|
||||||
Dim TextureXOffset As Integer = 0
|
Dim TextureXOffset As Integer = 0
|
||||||
|
@ -76,7 +76,7 @@
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
For i = 0 To 6
|
For i = 0 To 6
|
||||||
Dim HeartEntity = MoveAnimation.SpawnEntity(Nothing, TextureManager.GetTexture("Textures\Battle\Normal\Attract"), New Vector3(0.25F), 1.0F, CSng(i * 0.2))
|
Dim HeartEntity = MoveAnimation.SpawnEntity(Nothing, TextureManager.GetTexture("Textures\Battle\Normal\Attract"), New Vector3(0.25F), 1.0F, CSng(i * 0.2))
|
||||||
@ -89,7 +89,7 @@
|
|||||||
BattleScreen.BattleQuery.Add(MoveAnimation)
|
BattleScreen.BattleQuery.Add(MoveAnimation)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
|
|
||||||
For i = 0 To 6
|
For i = 0 To 6
|
||||||
|
@ -87,7 +87,7 @@ Namespace BattleSystem.Moves.Normal
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Bind", 5.0F, 0)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Bind", 5.0F, 0)
|
||||||
Dim BindEntity = MoveAnimation.SpawnEntity(New Vector3(0, -0.2, 0), TextureManager.GetTexture("Textures\Battle\Normal\Bind", New Rectangle(0, 0, 80, 40), ""), New Vector3(1.0F, 0.5F, 1.0F), 1, 0, 0.75)
|
Dim BindEntity = MoveAnimation.SpawnEntity(New Vector3(0, -0.2, 0), TextureManager.GetTexture("Textures\Battle\Normal\Bind", New Rectangle(0, 0, 80, 40), ""), New Vector3(1.0F, 0.5F, 1.0F), 1, 0, 0.75)
|
||||||
|
@ -62,7 +62,7 @@
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
|
|
||||||
MoveAnimation.AnimationPlaySound(CStr(CurrentPokemon.Number), 0, 0,, True)
|
MoveAnimation.AnimationPlaySound(CStr(CurrentPokemon.Number), 0, 0,, True)
|
||||||
|
@ -63,7 +63,7 @@
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Leer", 0, 0)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Leer", 0, 0)
|
||||||
Dim SpawnEntity = MoveAnimation.SpawnEntity(New Vector3(0, 0.1, 0.1), TextureManager.GetTexture("Textures\Battle\Normal\Leer"), New Vector3(0.5F), 1.0F, 0, 2)
|
Dim SpawnEntity = MoveAnimation.SpawnEntity(New Vector3(0, 0.1, 0.1), TextureManager.GetTexture("Textures\Battle\Normal\Leer"), New Vector3(0.5F), 1.0F, 0, 2)
|
||||||
@ -74,8 +74,8 @@
|
|||||||
MoveAnimation.AnimationFade(SpawnEntity, True, 1.0F, False, 0.0F, 2, 0)
|
MoveAnimation.AnimationFade(SpawnEntity, True, 1.0F, False, 0.0F, 2, 0)
|
||||||
BattleScreen.BattleQuery.Add(MoveAnimation)
|
BattleScreen.BattleQuery.Add(MoveAnimation)
|
||||||
End Sub
|
End Sub
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip, CurrentModel)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationMove(Nothing, False, 0, 0, -0.1, 0.025, False, False, 0, 0.5)
|
MoveAnimation.AnimationMove(Nothing, False, 0, 0, -0.1, 0.025, False, False, 0, 0.5)
|
||||||
MoveAnimation.AnimationMove(Nothing, False, 0, 0, 0.1, 0.025, False, False, 0.75, 0.5)
|
MoveAnimation.AnimationMove(Nothing, False, 0, 0, 0.1, 0.025, False, False, 0.75, 0.5)
|
||||||
MoveAnimation.AnimationMove(Nothing, False, 0, 0, -0.1, 0.025, False, False, 1.75, 0.5)
|
MoveAnimation.AnimationMove(Nothing, False, 0, 0, -0.1, 0.025, False, False, 1.75, 0.5)
|
||||||
|
@ -55,7 +55,7 @@
|
|||||||
Me.AIField2 = AIField.Nothing
|
Me.AIField2 = AIField.Nothing
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Pound", 0.5, 2.5)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Pound", 0.5, 2.5)
|
||||||
Dim PoundEntity = MoveAnimation.SpawnEntity(New Vector3(0, -0.2, 0), TextureManager.GetTexture("Textures\Battle\Normal\Pound"), New Vector3(0.5F), 1, 0, 3)
|
Dim PoundEntity = MoveAnimation.SpawnEntity(New Vector3(0, -0.2, 0), TextureManager.GetTexture("Textures\Battle\Normal\Pound"), New Vector3(0.5F), 1, 0, 3)
|
||||||
|
@ -52,7 +52,7 @@
|
|||||||
'#End
|
'#End
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Scratch", 0.5, 2.5)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Scratch", 0.5, 2.5)
|
||||||
Dim TextureXOffset As Integer = 0
|
Dim TextureXOffset As Integer = 0
|
||||||
|
@ -52,14 +52,14 @@
|
|||||||
'#End
|
'#End
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip, CurrentModel)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationMove(Nothing, False, -0.5F, 0, 0, 0.3F, False, False, 0, 0,,, 2)
|
MoveAnimation.AnimationMove(Nothing, False, -0.5F, 0, 0, 0.3F, False, False, 0, 0,,, 2)
|
||||||
MoveAnimation.AnimationMove(Nothing, False, 0, 0, 0, 0.3F, False, False, 1, 0,,, 2)
|
MoveAnimation.AnimationMove(Nothing, False, 0, 0, 0, 0.3F, False, False, 1, 0,,, 2)
|
||||||
BattleScreen.BattleQuery.Add(MoveAnimation)
|
BattleScreen.BattleQuery.Add(MoveAnimation)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Tackle", 0, 0)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Tackle", 0, 0)
|
||||||
Dim SpawnEntity = MoveAnimation.SpawnEntity(New Vector3(0, -0.2, 0), TextureManager.GetTexture("Textures\Battle\Normal\Tackle"), New Vector3(0.5F), 1.0F, 0, 2)
|
Dim SpawnEntity = MoveAnimation.SpawnEntity(New Vector3(0, -0.2, 0), TextureManager.GetTexture("Textures\Battle\Normal\Tackle"), New Vector3(0.5F), 1.0F, 0, 2)
|
||||||
|
@ -62,8 +62,8 @@
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip, CurrentModel)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationTurnNPC(2, 0, 0, 1, -1)
|
MoveAnimation.AnimationTurnNPC(2, 0, 0, 1, -1)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\TailWhip", 1, 0)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\TailWhip", 1, 0)
|
||||||
MoveAnimation.AnimationMove(Nothing, False, 0, 0, -0.1, 0.025, False, False, 1, 0.5)
|
MoveAnimation.AnimationMove(Nothing, False, 0, 0, -0.1, 0.025, False, False, 1, 0.5)
|
||||||
|
@ -87,7 +87,7 @@
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Wrap", 5.0F, 0)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Normal\Wrap", 5.0F, 0)
|
||||||
Dim WrapEntity = MoveAnimation.SpawnEntity(New Vector3(0, -0.2, 0), TextureManager.GetTexture("Textures\Battle\Normal\Wrap", New Rectangle(0, 0, 80, 40), ""), New Vector3(1.0F, 0.5F, 1.0F), 1, 0, 0.75)
|
Dim WrapEntity = MoveAnimation.SpawnEntity(New Vector3(0, -0.2, 0), TextureManager.GetTexture("Textures\Battle\Normal\Wrap", New Rectangle(0, 0, 80, 40), ""), New Vector3(1.0F, 0.5F, 1.0F), 1, 0, 0.75)
|
||||||
|
@ -65,7 +65,7 @@
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
|
|
||||||
Dim TextureYOffset As Integer = 0
|
Dim TextureYOffset As Integer = 0
|
||||||
@ -80,7 +80,7 @@
|
|||||||
BattleScreen.BattleQuery.Add(MoveAnimation)
|
BattleScreen.BattleQuery.Add(MoveAnimation)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
|
|
||||||
Dim TextureYOffset As Integer = 0
|
Dim TextureYOffset As Integer = 0
|
||||||
|
@ -87,7 +87,7 @@ Namespace BattleSystem.Moves.Water
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
Dim offsetLeft As Single = -0.35
|
Dim offsetLeft As Single = -0.35
|
||||||
Dim offsetRight As Single = 0.35
|
Dim offsetRight As Single = 0.35
|
||||||
|
@ -52,20 +52,20 @@
|
|||||||
'#End
|
'#End
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalUserPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
Dim WaterEntity = MoveAnimation.SpawnEntity(New Vector3(0), TextureManager.GetTexture("Textures\Battle\Water\WaterGun", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.5F), 0.75F)
|
Dim WaterEntity = MoveAnimation.SpawnEntity(New Vector3(0), TextureManager.GetTexture("Textures\Battle\Water\WaterGun", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.5F), 0.75F)
|
||||||
MoveAnimation.AnimationMove(WaterEntity, True, 2, 0.5, 0, 0.075, False, False, 0, 0,,,, 0.05)
|
MoveAnimation.AnimationMove(WaterEntity, True, 2, 0.5, 0, 0.075, False, False, 0, 0,,,, 0.05)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Water\Watergun_Start", 0, 0)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Water\Watergun_Start", 0, 0)
|
||||||
BattleScreen.BattleQuery.Add(MoveAnimation)
|
BattleScreen.BattleQuery.Add(MoveAnimation)
|
||||||
End Sub
|
End Sub
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
Dim MoveAnimation = New AnimationQueryObject(CurrentEntity, BattleFlip)
|
||||||
Dim WaterEntity = MoveAnimation.SpawnEntity(New Vector3(-2, 1, 0), TextureManager.GetTexture("Textures\Battle\Water\WaterGun", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.5F), 0.75F)
|
Dim WaterEntity = MoveAnimation.SpawnEntity(New Vector3(-2, 1, 0), TextureManager.GetTexture("Textures\Battle\Water\WaterGun", New Rectangle(0, 0, 16, 16), ""), New Vector3(0.5F), 0.5F)
|
||||||
MoveAnimation.AnimationMove(WaterEntity, True, 0, 0, 0, 0.075, False, False, 0, 0,,,, 0.035)
|
MoveAnimation.AnimationMove(WaterEntity, True, 0, 0, 0, 0.075, False, False, 0, 0,,,, 0.035)
|
||||||
|
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Water\Watergun_Hit", 3, 0)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Water\Watergun_Hit", 3, 0)
|
||||||
Dim HitEntity = MoveAnimation.SpawnEntity(New Vector3(0, -0.2, 0), TextureManager.GetTexture("Textures\Battle\Water\WaterGun", New Rectangle(0, 16, 16, 16), ""), New Vector3(0.5F), 0.75F, 3, 1)
|
Dim HitEntity = MoveAnimation.SpawnEntity(New Vector3(0, -0.2, 0), TextureManager.GetTexture("Textures\Battle\Water\WaterGun", New Rectangle(0, 16, 16, 16), ""), New Vector3(0.5F), 0.5F, 3, 1)
|
||||||
MoveAnimation.AnimationFade(HitEntity, True, 1.0F, False, 0.0F, 5, 0)
|
MoveAnimation.AnimationFade(HitEntity, True, 1.0F, False, 0.0F, 5, 0)
|
||||||
|
|
||||||
Dim WaterDrop1Position As Vector3 = New Vector3(-0.25, 0.25, -0.25)
|
Dim WaterDrop1Position As Vector3 = New Vector3(-0.25, 0.25, -0.25)
|
||||||
|
@ -99,8 +99,8 @@ Namespace BattleSystem.Moves.Water
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC, ByVal CurrentModel As Entity)
|
Public Overrides Sub InternalOpponentPokemonMoveAnimation(ByVal BattleScreen As BattleScreen, ByVal BattleFlip As Boolean, ByVal CurrentPokemon As Pokemon, ByVal CurrentEntity As NPC)
|
||||||
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip,, True)
|
Dim MoveAnimation As AnimationQueryObject = New AnimationQueryObject(CurrentEntity, BattleFlip, True)
|
||||||
MoveAnimation.AnimationPlaySound("Battle\Attacks\Water\Whirlpool", 0.0F, 0)
|
MoveAnimation.AnimationPlaySound("Battle\Attacks\Water\Whirlpool", 0.0F, 0)
|
||||||
Dim WhirlpoolEntity As Entity = MoveAnimation.SpawnEntity(New Vector3(0, -0.3F, 0), TextureManager.GetTexture("Textures\Battle\Water\Whirlpool"), New Vector3(0.0F), 1.0F, 0.0F, 0.0F)
|
Dim WhirlpoolEntity As Entity = MoveAnimation.SpawnEntity(New Vector3(0, -0.3F, 0), TextureManager.GetTexture("Textures\Battle\Water\Whirlpool"), New Vector3(0.0F), 1.0F, 0.0F, 0.0F)
|
||||||
MoveAnimation.AnimationRotate(WhirlpoolEntity, False, CSng(MathHelper.Pi * 1.5), 0, 0, CSng(MathHelper.Pi * 1.5), 0, 0, 0, 0, True, False, False, False)
|
MoveAnimation.AnimationRotate(WhirlpoolEntity, False, CSng(MathHelper.Pi * 1.5), 0, 0, CSng(MathHelper.Pi * 1.5), 0, 0, 0, 0, True, False, False, False)
|
||||||
|
@ -17,7 +17,6 @@
|
|||||||
|
|
||||||
Dim p As Pokemon
|
Dim p As Pokemon
|
||||||
|
|
||||||
Dim ModelVisible As Boolean = True
|
|
||||||
Dim SpriteVisible As Boolean = False
|
Dim SpriteVisible As Boolean = False
|
||||||
|
|
||||||
Dim BattleScreen As BattleSystem.BattleScreen
|
Dim BattleScreen As BattleSystem.BattleScreen
|
||||||
@ -34,7 +33,6 @@
|
|||||||
Me.BattleScreen = BattleScreen
|
Me.BattleScreen = BattleScreen
|
||||||
p = BattleScreen.OppPokemon
|
p = BattleScreen.OppPokemon
|
||||||
|
|
||||||
Me.ModelVisible = BattleScreen.OppPokemonModel.Visible
|
|
||||||
Me.SpriteVisible = BattleScreen.OppPokemonNPC.Visible
|
Me.SpriteVisible = BattleScreen.OppPokemonNPC.Visible
|
||||||
|
|
||||||
SetCamera()
|
SetCamera()
|
||||||
@ -47,11 +45,7 @@
|
|||||||
|
|
||||||
Dim RenderObjects As New List(Of Entity)
|
Dim RenderObjects As New List(Of Entity)
|
||||||
|
|
||||||
If BattleScreen.OppPokemonModel IsNot Nothing Then
|
RenderObjects.Add(BattleScreen.OppPokemonNPC)
|
||||||
RenderObjects.Add(BattleScreen.OppPokemonModel)
|
|
||||||
Else
|
|
||||||
RenderObjects.Add(BattleScreen.OppPokemonNPC)
|
|
||||||
End If
|
|
||||||
|
|
||||||
If RenderObjects.Count > 0 Then
|
If RenderObjects.Count > 0 Then
|
||||||
RenderObjects = (From r In RenderObjects Order By r.CameraDistance Descending).ToList()
|
RenderObjects = (From r In RenderObjects Order By r.CameraDistance Descending).ToList()
|
||||||
@ -192,9 +186,6 @@ nextIndex:
|
|||||||
Loop While SmokeParticlesClose <= 38
|
Loop While SmokeParticlesClose <= 38
|
||||||
' Pokémon Shrinks
|
' Pokémon Shrinks
|
||||||
CatchAnimation.AnimationScale(BattleScreen.OppPokemonNPC, False, False, 0.0F, 0.0F, 0.0F, 0.035F, 3, 0)
|
CatchAnimation.AnimationScale(BattleScreen.OppPokemonNPC, False, False, 0.0F, 0.0F, 0.0F, 0.035F, 3, 0)
|
||||||
If BattleScreen.OppPokemonModel IsNot Nothing Then
|
|
||||||
CatchAnimation.AnimationScale(BattleScreen.OppPokemonModel, False, False, 0.0F, 0.0F, 0.0F, 0.035F, 3, 0)
|
|
||||||
End If
|
|
||||||
|
|
||||||
' Ball falls
|
' Ball falls
|
||||||
CatchAnimation.AnimationMove(BallEntity, False, 3, -0.35, 0, 0.1F, False, False, 8, 0)
|
CatchAnimation.AnimationMove(BallEntity, False, 3, -0.35, 0, 0.1F, False, False, 8, 0)
|
||||||
@ -242,9 +233,7 @@ nextIndex:
|
|||||||
|
|
||||||
' Pokemon appears
|
' Pokemon appears
|
||||||
CatchAnimation.AnimationScale(BattleScreen.OppPokemonNPC, False, True, PokemonScale.X, PokemonScale.Y, PokemonScale.Z, 0.035F, 12 + Shakes.Count * 10, 0)
|
CatchAnimation.AnimationScale(BattleScreen.OppPokemonNPC, False, True, PokemonScale.X, PokemonScale.Y, PokemonScale.Z, 0.035F, 12 + Shakes.Count * 10, 0)
|
||||||
If BattleScreen.OppPokemonModel IsNot Nothing Then
|
|
||||||
CatchAnimation.AnimationScale(BattleScreen.OppPokemonModel, False, True, PokemonScale.X, PokemonScale.Y, PokemonScale.Z, 0.035F, 12 + Shakes.Count * 10, 0)
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
AnimationList.Add(CatchAnimation)
|
AnimationList.Add(CatchAnimation)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user