diff --git a/P3D/Screens/VoltorbFlipScreen.vb b/P3D/Screens/VoltorbFlipScreen.vb
index d1edaa8ab..7f729a842 100644
--- a/P3D/Screens/VoltorbFlipScreen.vb
+++ b/P3D/Screens/VoltorbFlipScreen.vb
@@ -19,7 +19,7 @@ Namespace VoltorbFlip
Private Shared ReadOnly GridSize As Integer = 5
Public Shared GameOrigin As New Vector2(CInt(windowSize.Width - GameSize.Width / 2), CInt(windowSize.Height / 2 - GameSize.Height / 2))
- Public Shared BoardOrigin As New Vector2(GameOrigin.X + 32, GameOrigin.Y + 32)
+ Public Shared BoardOrigin As New Vector2(GameOrigin.X + 32, GameOrigin.Y + 96)
Private BoardCursorPosition As New Vector2(0, 0)
Private BoardCursorDestination As New Vector2(0, 0)
@@ -684,13 +684,30 @@ Namespace VoltorbFlip
'Completed the level
If GameState = States.GameWon Then
TextBox.Show("Game clear! You received" & " " & CurrentCoins & " " & "Coins!")
- TotalCoins += CurrentCoins
- If TotalCoins > 99999 Then
- TotalCoins = 99999
- End If
+ Dim ResultCoins As Integer = TotalCoins + CurrentCoins
+ Dim AnimationTotalCoins As Single = TotalCoins
+ Dim AnimationCurrentCoins As Single = CurrentCoins
+
+ While TotalCoins < ResultCoins
+ AnimationTotalCoins += 0.05F
+ If AnimationTotalCoins >= ResultCoins Then
+ AnimationTotalCoins = ResultCoins
+ End If
+
+ AnimationCurrentCoins -= -0.05F
+ If AnimationCurrentCoins <= 0 Then
+ AnimationCurrentCoins = 0
+ End If
+
+ TotalCoins = CInt(Math.Floor(AnimationTotalCoins))
+ If TotalCoins > 99999 Then
+ TotalCoins = 99999
+ End If
+
+ CurrentCoins = CInt(Math.Ceiling(AnimationCurrentCoins))
+ End While
- CurrentCoins = 0
'Flip all Tiles to reveal contents
For _row = 0 To GridSize
For _column = 0 To GridSize
@@ -703,7 +720,19 @@ Namespace VoltorbFlip
'Revealed a Voltorb
If GameState = States.GameLost Then
TextBox.Show("Oh no! You get 0 coins")
- CurrentCoins = 0
+
+ Dim ResultCoins As Integer = 0
+ Dim AnimationCurrentCoins As Single = CurrentCoins
+
+ While CurrentCoins > ResultCoins
+ AnimationCurrentCoins -= -0.05F
+ If AnimationCurrentCoins <= 0 Then
+ AnimationCurrentCoins = 0
+ End If
+
+ CurrentCoins = CInt(Math.Ceiling(AnimationCurrentCoins))
+ End While
+
'Flip all Tiles to reveal contents
For _row = 0 To GridSize
For _column = 0 To GridSize
diff --git a/lib/P3D.ContentPipeline/Content/Content.mgcb b/lib/P3D.ContentPipeline/Content/Content.mgcb
index 93eb94ea9..a309be504 100644
--- a/lib/P3D.ContentPipeline/Content/Content.mgcb
+++ b/lib/P3D.ContentPipeline/Content/Content.mgcb
@@ -88,6 +88,15 @@
/processorParam:TextureFormat=Color
/build:Fonts/BMP/Unown.png
+#begin Fonts/BMP/VoltorbFlipFont.png
+/importer:TextureImporter
+/processor:LocalizedFontTextureProcessor
+/processorParam:DefaultCharacter=?
+/processorParam:FirstCharacter=
+/processorParam:PremultiplyAlpha=True
+/processorParam:TextureFormat=Color
+/build:Fonts/BMP/VoltorbFlipFont.png
+
#begin Models/BattlePike/BattlePike.fbx
/importer:FbxImporter
/processor:ModelProcessor
diff --git a/lib/P3D.ContentPipeline/Content/Fonts/BMP/VoltorbFlipFont.png b/lib/P3D.ContentPipeline/Content/Fonts/BMP/VoltorbFlipFont.png
new file mode 100644
index 000000000..defd4d538
Binary files /dev/null and b/lib/P3D.ContentPipeline/Content/Fonts/BMP/VoltorbFlipFont.png differ
diff --git a/lib/P3D.ContentPipeline/Content/Fonts/BMP/VoltorbFlipFont.txt b/lib/P3D.ContentPipeline/Content/Fonts/BMP/VoltorbFlipFont.txt
new file mode 100644
index 000000000..72faafdcb
--- /dev/null
+++ b/lib/P3D.ContentPipeline/Content/Fonts/BMP/VoltorbFlipFont.txt
@@ -0,0 +1 @@
+ 0123456789
\ No newline at end of file
diff --git a/lib/P3D.ContentPipeline/P3D.ContentPipeline.csproj b/lib/P3D.ContentPipeline/P3D.ContentPipeline.csproj
index fddeb722e..7c2f390e9 100644
--- a/lib/P3D.ContentPipeline/P3D.ContentPipeline.csproj
+++ b/lib/P3D.ContentPipeline/P3D.ContentPipeline.csproj
@@ -86,6 +86,8 @@
+
+