It doesn't work perfectly but something happens
This commit is contained in:
parent
046df24c43
commit
99bf455a6e
Binary file not shown.
After Width: | Height: | Size: 233 B |
Binary file not shown.
After Width: | Height: | Size: 407 B |
|
@ -28208,6 +28208,9 @@
|
||||||
<Content Include="Content\Textures\VoltorbFlip\Cursor_Memo.png">
|
<Content Include="Content\Textures\VoltorbFlip\Cursor_Memo.png">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
|
<Content Include="Content\Textures\VoltorbFlip\HUD.png">
|
||||||
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
</Content>
|
||||||
<Content Include="Content\Textures\VoltorbFlip\Memo_Background.png">
|
<Content Include="Content\Textures\VoltorbFlip\Memo_Background.png">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
|
@ -28220,6 +28223,9 @@
|
||||||
<Content Include="Content\Textures\VoltorbFlip\Memo_Index.png">
|
<Content Include="Content\Textures\VoltorbFlip\Memo_Index.png">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
|
<Content Include="Content\Textures\VoltorbFlip\Quit_Button.png">
|
||||||
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
</Content>
|
||||||
<Content Include="Content\Textures\VoltorbFlip\Tile_Back.png">
|
<Content Include="Content\Textures\VoltorbFlip\Tile_Back.png">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
|
|
|
@ -16,7 +16,7 @@ Public Class FontContainer
|
||||||
Me._spriteFont = Font
|
Me._spriteFont = Font
|
||||||
|
|
||||||
Select Case FontName.ToLower()
|
Select Case FontName.ToLower()
|
||||||
Case "braille"
|
Case "braille", "voltorbflipfont"
|
||||||
Me._spriteFont.DefaultCharacter = CChar(" ")
|
Me._spriteFont.DefaultCharacter = CChar(" ")
|
||||||
Case Else
|
Case Else
|
||||||
Me._spriteFont.DefaultCharacter = CChar("?")
|
Me._spriteFont.DefaultCharacter = CChar("?")
|
||||||
|
|
|
@ -10,16 +10,17 @@ Namespace VoltorbFlip
|
||||||
Private _screenTransitionY As Single = 0F
|
Private _screenTransitionY As Single = 0F
|
||||||
Public Shared _interfaceFade As Single = 0F
|
Public Shared _interfaceFade As Single = 0F
|
||||||
|
|
||||||
|
Private Delay As Integer = 0
|
||||||
Private MemoWindowX As Single = 0F
|
Private MemoWindowX As Single = 0F
|
||||||
Private MemoWindowSize As New Size(112, 112)
|
Private MemoMenuSize As New Size(112, 112)
|
||||||
|
|
||||||
Private Shared ReadOnly GameSize As New Size(512, 512)
|
Private Shared ReadOnly GameSize As New Size(576, 544)
|
||||||
Public Shared ReadOnly BoardSize As New Size(384, 384)
|
Public Shared ReadOnly BoardSize As New Size(384, 384)
|
||||||
Public Shared ReadOnly TileSize As New Size(64, 64)
|
Public Shared ReadOnly TileSize As New Size(64, 64)
|
||||||
Private Shared ReadOnly GridSize As Integer = 5
|
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 GameOrigin As New Vector2(CInt(windowSize.Width / 2 - GameSize.Width / 2), CInt(windowSize.Height / 2 - GameSize.Height / 2))
|
||||||
Public Shared BoardOrigin As New Vector2(GameOrigin.X + 32, GameOrigin.Y + 96)
|
Public Shared BoardOrigin As New Vector2(GameOrigin.X + 32, GameOrigin.Y + 128)
|
||||||
|
|
||||||
Private BoardCursorPosition As New Vector2(0, 0)
|
Private BoardCursorPosition As New Vector2(0, 0)
|
||||||
Private BoardCursorDestination As New Vector2(0, 0)
|
Private BoardCursorDestination As New Vector2(0, 0)
|
||||||
|
@ -72,6 +73,13 @@ Namespace VoltorbFlip
|
||||||
Identifications.PVPLobbyScreen}
|
Identifications.PVPLobbyScreen}
|
||||||
|
|
||||||
Public Sub New(ByVal currentScreen As Screen)
|
Public Sub New(ByVal currentScreen As Screen)
|
||||||
|
GameState = States.Opening
|
||||||
|
GameOrigin = New Vector2(CInt(windowSize.Width / 2 - GameSize.Width / 2), CInt(windowSize.Height / 2 - GameSize.Height / 2 - _screenTransitionY))
|
||||||
|
BoardOrigin = New Vector2(GameOrigin.X + 32, GameOrigin.Y + 128)
|
||||||
|
BoardCursorDestination = GetCursorOffset(0, 0)
|
||||||
|
BoardCursorPosition = GetCursorOffset(0, 0)
|
||||||
|
|
||||||
|
Board = CreateBoard(CurrentLevel)
|
||||||
|
|
||||||
_preScreenTarget = New RenderTarget2D(GraphicsDevice, windowSize.Width, windowSize.Height, False, SurfaceFormat.Color, DepthFormat.Depth24Stencil8)
|
_preScreenTarget = New RenderTarget2D(GraphicsDevice, windowSize.Width, windowSize.Height, False, SurfaceFormat.Color, DepthFormat.Depth24Stencil8)
|
||||||
_blur = New Resources.Blur.BlurHandler(windowSize.Width, windowSize.Height)
|
_blur = New Resources.Blur.BlurHandler(windowSize.Width, windowSize.Height)
|
||||||
|
@ -94,17 +102,24 @@ Namespace VoltorbFlip
|
||||||
PreScreen.Draw()
|
PreScreen.Draw()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
DrawGradients(CInt(255 * _interfaceFade))
|
DrawGradients(CInt(255 * _interfaceFade))
|
||||||
|
|
||||||
|
ChooseBox.Draw()
|
||||||
|
TextBox.Draw()
|
||||||
|
|
||||||
DrawBackground()
|
DrawBackground()
|
||||||
|
|
||||||
DrawMemoMenuAndButton()
|
DrawMemoMenuAndButton()
|
||||||
|
|
||||||
|
If Board IsNot Nothing Then
|
||||||
DrawBoard()
|
DrawBoard()
|
||||||
DrawCursor()
|
DrawCursor()
|
||||||
|
End If
|
||||||
|
DrawHUD()
|
||||||
|
DrawQuitButton()
|
||||||
|
|
||||||
|
|
||||||
TextBox.Draw()
|
|
||||||
ChooseBox.Draw()
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub DrawPrescreen()
|
Private Sub DrawPrescreen()
|
||||||
|
@ -140,7 +155,77 @@ Namespace VoltorbFlip
|
||||||
mainBackgroundColor = New Color(255, 255, 255, CInt(255 * _interfaceFade))
|
mainBackgroundColor = New Color(255, 255, 255, CInt(255 * _interfaceFade))
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Canvas.DrawImageBorder(TextureManager.GetTexture("Textures\VoltorbFlip\Background"), 2, New Rectangle(CInt(GameOrigin.X), CInt(GameOrigin.Y - _screenTransitionY), CInt(GameSize.Width), CInt(GameSize.Height)), mainBackgroundColor, True)
|
Canvas.DrawImageBorder(TextureManager.GetTexture("Textures\VoltorbFlip\Background"), 2, New Rectangle(CInt(GameOrigin.X), CInt(GameOrigin.Y), CInt(GameSize.Width), CInt(GameSize.Height)), mainBackgroundColor, True)
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
Private Sub DrawHUD()
|
||||||
|
Dim mainBackgroundColor As Color = New Color(255, 255, 255)
|
||||||
|
If GameState = States.Closing Or GameState = States.Opening Then
|
||||||
|
mainBackgroundColor = New Color(255, 255, 255, CInt(255 * _interfaceFade))
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim Fontcolor As Color = New Color(0, 0, 0)
|
||||||
|
If GameState = States.Closing Or GameState = States.Opening Then
|
||||||
|
Fontcolor = New Color(0, 0, 0, CInt(255 * _interfaceFade))
|
||||||
|
End If
|
||||||
|
|
||||||
|
'Level
|
||||||
|
Dim LevelText As String = "LV." & CurrentLevel.ToString
|
||||||
|
Canvas.DrawImageBorder(TextureManager.GetTexture("Textures\VoltorbFlip\HUD"), 2, New Rectangle(CInt(GameOrigin.X + 32), CInt(GameOrigin.Y + 32), 96, 96), mainBackgroundColor, True)
|
||||||
|
SpriteBatch.DrawInterfaceString(FontManager.MainFont, LevelText, New Vector2(CInt(GameOrigin.X + 80 + 4 - FontManager.MainFont.MeasureString(LevelText).X / 2), CInt(GameOrigin.Y + 80 + 4 - FontManager.MainFont.MeasureString(LevelText).Y / 2)), Fontcolor)
|
||||||
|
|
||||||
|
'Current Coins
|
||||||
|
Canvas.DrawImageBorder(TextureManager.GetTexture("Textures\VoltorbFlip\HUD"), 2, New Rectangle(CInt(GameOrigin.X + 128 + 24), CInt(GameOrigin.Y + 32), 192, 96), mainBackgroundColor, True)
|
||||||
|
|
||||||
|
Dim CurrentCoinsText1 As String = "Coins found"
|
||||||
|
Dim CurrentCoinsText2 As String = "in this LV."
|
||||||
|
Dim CurrentCoinsText3 As String = ""
|
||||||
|
|
||||||
|
CurrentCoinsText3 &= "["
|
||||||
|
If CurrentCoins < 10000 Then
|
||||||
|
CurrentCoinsText3 &= "0"
|
||||||
|
End If
|
||||||
|
If CurrentCoins < 1000 Then
|
||||||
|
CurrentCoinsText3 &= "0"
|
||||||
|
End If
|
||||||
|
If CurrentCoins < 100 Then
|
||||||
|
CurrentCoinsText3 &= "0"
|
||||||
|
End If
|
||||||
|
If CurrentCoins < 10 Then
|
||||||
|
CurrentCoinsText3 &= "0"
|
||||||
|
End If
|
||||||
|
CurrentCoinsText3 &= CurrentCoins.ToString & "]"
|
||||||
|
|
||||||
|
SpriteBatch.DrawInterfaceString(FontManager.MainFont, CurrentCoinsText1, New Vector2(CInt(GameOrigin.X + 232 + 20 - FontManager.MainFont.MeasureString(CurrentCoinsText1).X / 2), CInt(GameOrigin.Y + 80 + 4 - FontManager.MainFont.MeasureString(CurrentCoinsText2).Y / 2 - FontManager.MainFont.MeasureString(CurrentCoinsText1).Y)), Fontcolor)
|
||||||
|
SpriteBatch.DrawInterfaceString(FontManager.MainFont, CurrentCoinsText2, New Vector2(CInt(GameOrigin.X + 232 + 20 - FontManager.MainFont.MeasureString(CurrentCoinsText2).X / 2), CInt(GameOrigin.Y + 80 + 4 - FontManager.MainFont.MeasureString(CurrentCoinsText2).Y / 2)), Fontcolor)
|
||||||
|
SpriteBatch.DrawInterfaceString(FontManager.MainFont, CurrentCoinsText3, New Vector2(CInt(GameOrigin.X + 232 + 20 - FontManager.MainFont.MeasureString(CurrentCoinsText3).X / 2), CInt(GameOrigin.Y + 80 + 4 + FontManager.MainFont.MeasureString(CurrentCoinsText2).Y / 2)), Fontcolor)
|
||||||
|
|
||||||
|
'Total Coins
|
||||||
|
Canvas.DrawImageBorder(TextureManager.GetTexture("Textures\VoltorbFlip\HUD"), 2, New Rectangle(CInt(GameOrigin.X + 336 + 32), CInt(GameOrigin.Y + 32), 192, 96), mainBackgroundColor, True)
|
||||||
|
|
||||||
|
Dim TotalCoinsText1 As String = "Total Coins"
|
||||||
|
Dim TotalCoinsText2 As String = "earned"
|
||||||
|
Dim TotalCoinsText3 As String = ""
|
||||||
|
|
||||||
|
TotalCoinsText3 &= "["
|
||||||
|
If TotalCoins < 10000 Then
|
||||||
|
TotalCoinsText3 &= "0"
|
||||||
|
End If
|
||||||
|
If TotalCoins < 1000 Then
|
||||||
|
TotalCoinsText3 &= "0"
|
||||||
|
End If
|
||||||
|
If TotalCoins < 100 Then
|
||||||
|
TotalCoinsText3 &= "0"
|
||||||
|
End If
|
||||||
|
If TotalCoins < 10 Then
|
||||||
|
TotalCoinsText3 &= "0"
|
||||||
|
End If
|
||||||
|
TotalCoinsText3 &= TotalCoins.ToString & "]"
|
||||||
|
|
||||||
|
SpriteBatch.DrawInterfaceString(FontManager.MainFont, TotalCoinsText1, New Vector2(CInt(GameOrigin.X + 440 + 28 - FontManager.MainFont.MeasureString(TotalCoinsText1).X / 2), CInt(GameOrigin.Y + 80 + 4 - FontManager.MainFont.MeasureString(TotalCoinsText2).Y / 2 - FontManager.MainFont.MeasureString(TotalCoinsText1).Y)), Fontcolor)
|
||||||
|
SpriteBatch.DrawInterfaceString(FontManager.MainFont, TotalCoinsText2, New Vector2(CInt(GameOrigin.X + 440 + 28 - FontManager.MainFont.MeasureString(TotalCoinsText2).X / 2), CInt(GameOrigin.Y + 80 + 4 - FontManager.MainFont.MeasureString(TotalCoinsText2).Y / 2)), Fontcolor)
|
||||||
|
SpriteBatch.DrawInterfaceString(FontManager.MainFont, TotalCoinsText3, New Vector2(CInt(GameOrigin.X + 440 + 28 - FontManager.MainFont.MeasureString(TotalCoinsText3).X / 2), CInt(GameOrigin.Y + 80 + 4 + FontManager.MainFont.MeasureString(TotalCoinsText2).Y / 2)), Fontcolor)
|
||||||
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
@ -185,7 +270,7 @@ Namespace VoltorbFlip
|
||||||
CoinSumString = CoinSumInteger.ToString
|
CoinSumString = CoinSumInteger.ToString
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
SpriteBatch.DrawString(FontManager.VoltorbFlipFont, CoinSumString, New Vector2(CInt(BoardOrigin.X + TileSize.Width * (GridSize - 1) + TileSize.Width / 2 - FontManager.VoltorbFlipFont.MeasureString(CoinSumString).X / 2), BoardOrigin.Y + TileSize.Height * RowIndex + 4), mainBackgroundColor)
|
SpriteBatch.DrawInterfaceString(FontManager.VoltorbFlipFont, CoinSumString, New Vector2(CInt(BoardOrigin.X + TileSize.Width * GridSize - 8 - FontManager.VoltorbFlipFont.MeasureString(CoinSumString).X), BoardOrigin.Y + TileSize.Height * RowIndex + 8), mainBackgroundColor)
|
||||||
Next
|
Next
|
||||||
'Voltorbs
|
'Voltorbs
|
||||||
For RowIndex = 0 To GridSize - 1
|
For RowIndex = 0 To GridSize - 1
|
||||||
|
@ -193,7 +278,7 @@ Namespace VoltorbFlip
|
||||||
If GameState = States.Game Or GameState = States.Memo Then
|
If GameState = States.Game Or GameState = States.Memo Then
|
||||||
VoltorbSumString = VoltorbSums(0)(RowIndex).ToString
|
VoltorbSumString = VoltorbSums(0)(RowIndex).ToString
|
||||||
End If
|
End If
|
||||||
SpriteBatch.DrawString(FontManager.VoltorbFlipFont, VoltorbSumString, New Vector2(CInt(BoardOrigin.X + TileSize.Width * (GridSize - 1) + TileSize.Width / 4 * 3 - FontManager.VoltorbFlipFont.MeasureString(VoltorbSumString).X / 2), BoardOrigin.Y + TileSize.Height * RowIndex + 17), mainBackgroundColor)
|
SpriteBatch.DrawInterfaceString(FontManager.VoltorbFlipFont, VoltorbSumString, New Vector2(CInt(BoardOrigin.X + TileSize.Width * GridSize - 8 - FontManager.VoltorbFlipFont.MeasureString(VoltorbSumString).X), BoardOrigin.Y + TileSize.Height * RowIndex + 34), mainBackgroundColor)
|
||||||
Next
|
Next
|
||||||
|
|
||||||
'Draw Columns
|
'Draw Columns
|
||||||
|
@ -208,7 +293,7 @@ Namespace VoltorbFlip
|
||||||
CoinSumString = CoinSumInteger.ToString
|
CoinSumString = CoinSumInteger.ToString
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
SpriteBatch.DrawString(FontManager.VoltorbFlipFont, CoinSumString, New Vector2(CInt(BoardOrigin.X + TileSize.Width * ColumnIndex + TileSize.Width / 2 - FontManager.VoltorbFlipFont.MeasureString(CoinSumString).X / 2), BoardOrigin.Y + TileSize.Height * (GridSize - 1) + 4), mainBackgroundColor)
|
SpriteBatch.DrawInterfaceString(FontManager.VoltorbFlipFont, CoinSumString, New Vector2(CInt(BoardOrigin.X + TileSize.Width * ColumnIndex + TileSize.Width - 8 - FontManager.VoltorbFlipFont.MeasureString(CoinSumString).X / 2), BoardOrigin.Y + TileSize.Height * (GridSize - 1) + 8), mainBackgroundColor)
|
||||||
Next
|
Next
|
||||||
'Voltorbs
|
'Voltorbs
|
||||||
For ColumnIndex = 0 To GridSize - 1
|
For ColumnIndex = 0 To GridSize - 1
|
||||||
|
@ -216,7 +301,7 @@ Namespace VoltorbFlip
|
||||||
If GameState = States.Game Or GameState = States.Memo Then
|
If GameState = States.Game Or GameState = States.Memo Then
|
||||||
VoltorbSumString = VoltorbSums(1)(ColumnIndex).ToString
|
VoltorbSumString = VoltorbSums(1)(ColumnIndex).ToString
|
||||||
End If
|
End If
|
||||||
SpriteBatch.DrawString(FontManager.VoltorbFlipFont, VoltorbSumString, New Vector2(CInt(BoardOrigin.X + TileSize.Width * ColumnIndex + TileSize.Width / 4 * 3 - FontManager.VoltorbFlipFont.MeasureString(VoltorbSumString).X / 2), BoardOrigin.Y + TileSize.Height * (GridSize - 1) + 17), mainBackgroundColor)
|
SpriteBatch.DrawInterfaceString(FontManager.VoltorbFlipFont, VoltorbSumString, New Vector2(CInt(BoardOrigin.X + TileSize.Width * ColumnIndex + TileSize.Width - 8 - FontManager.VoltorbFlipFont.MeasureString(VoltorbSumString).X / 2), BoardOrigin.Y + TileSize.Height * (GridSize - 1) + 34), mainBackgroundColor)
|
||||||
Next
|
Next
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
@ -226,10 +311,13 @@ Namespace VoltorbFlip
|
||||||
If GameState = States.Closing Or GameState = States.Opening Then
|
If GameState = States.Closing Or GameState = States.Opening Then
|
||||||
mainBackgroundColor = New Color(255, 255, 255, CInt(255 * _interfaceFade))
|
mainBackgroundColor = New Color(255, 255, 255, CInt(255 * _interfaceFade))
|
||||||
End If
|
End If
|
||||||
|
Dim Fontcolor As Color = New Color(0, 0, 0)
|
||||||
|
If GameState = States.Closing Or GameState = States.Opening Then
|
||||||
|
Fontcolor = New Color(0, 0, 0, CInt(255 * _interfaceFade))
|
||||||
|
End If
|
||||||
'Draw Button
|
'Draw Button
|
||||||
Dim ButtonOriginX As Integer = CInt(BoardOrigin.X + BoardSize.Width + MemoWindowSize.Width)
|
Dim ButtonOriginX As Integer = CInt(BoardOrigin.X + BoardSize.Width + MemoMenuSize.Width + TileSize.Width / 4)
|
||||||
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Button", New Rectangle(0, 0, 56, 56)), New Rectangle(ButtonOriginX, CInt(BoardOrigin.Y), MemoWindowSize.Width, MemoWindowSize.Height), mainBackgroundColor)
|
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Button", New Rectangle(0, 0, 56, 56)), New Rectangle(ButtonOriginX, CInt(BoardOrigin.Y + TileSize.Height / 2), MemoMenuSize.Width, MemoMenuSize.Height), mainBackgroundColor)
|
||||||
|
|
||||||
Dim ButtonTextTop As String = "Open"
|
Dim ButtonTextTop As String = "Open"
|
||||||
Dim ButtonTextBottom As String = "Memos"
|
Dim ButtonTextBottom As String = "Memos"
|
||||||
|
@ -238,33 +326,33 @@ Namespace VoltorbFlip
|
||||||
ButtonTextTop = "Close"
|
ButtonTextTop = "Close"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
SpriteBatch.DrawString(FontManager.MainFont, ButtonTextTop, New Vector2(CInt(ButtonOriginX + MemoWindowSize.Width / 2 - FontManager.MainFont.MeasureString(ButtonTextTop).X / 2), CInt(BoardOrigin.Y + 22)), mainBackgroundColor)
|
SpriteBatch.DrawInterfaceString(FontManager.MainFont, ButtonTextTop, New Vector2(CInt(ButtonOriginX + MemoMenuSize.Width / 2 - FontManager.MainFont.MeasureString(ButtonTextTop).X / 2), CInt(BoardOrigin.Y + TileSize.Height / 2 + 22)), Fontcolor)
|
||||||
SpriteBatch.DrawString(FontManager.MainFont, ButtonTextBottom, New Vector2(CInt(ButtonOriginX + MemoWindowSize.Width / 2 - FontManager.MainFont.MeasureString(ButtonTextBottom).X / 2), CInt(BoardOrigin.Y + 22 + FontManager.MainFont.MeasureString(ButtonTextTop).Y)), mainBackgroundColor)
|
SpriteBatch.DrawInterfaceString(FontManager.MainFont, ButtonTextBottom, New Vector2(CInt(ButtonOriginX + MemoMenuSize.Width / 2 - FontManager.MainFont.MeasureString(ButtonTextBottom).X / 2), CInt(BoardOrigin.Y + TileSize.Height / 2 + 22 + FontManager.MainFont.MeasureString(ButtonTextTop).Y)), Fontcolor)
|
||||||
|
|
||||||
'Draw Memo Menu
|
'Draw Memo Menu
|
||||||
If MemoWindowX > 0 Then
|
If MemoWindowX > 0 Then
|
||||||
Dim CurrentTile As Tile = Board(CInt(GetCurrentTile.X))(CInt(GetCurrentTile.Y))
|
Dim CurrentTile As Tile = Board(CInt(GetCurrentTile.X))(CInt(GetCurrentTile.Y))
|
||||||
|
|
||||||
'Draw Background
|
'Draw Background
|
||||||
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Background", New Rectangle(0, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoWindowSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoWindowSize.Height + 32), MemoWindowSize.Width, MemoWindowSize.Height), mainBackgroundColor)
|
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Background", New Rectangle(0, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoMenuSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoMenuSize.Height + TileSize.Height), MemoMenuSize.Width, MemoMenuSize.Height), mainBackgroundColor)
|
||||||
|
|
||||||
If GameState = States.Memo Then
|
If GameState = States.Memo Then
|
||||||
'Draw lit up Memos in the Memo menu when it's enabled on a tile
|
'Draw lit up Memos in the Memo menu when it's enabled on a tile
|
||||||
If CurrentTile.GetMemo(0) = True Then 'Voltorb
|
If CurrentTile.GetMemo(0) = True Then 'Voltorb
|
||||||
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Enabled", New Rectangle(0, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoWindowSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoWindowSize.Height + 32), MemoWindowSize.Width, MemoWindowSize.Height), mainBackgroundColor)
|
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Enabled", New Rectangle(0, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoMenuSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoMenuSize.Height + TileSize.Height), MemoMenuSize.Width, MemoMenuSize.Height), mainBackgroundColor)
|
||||||
End If
|
End If
|
||||||
If CurrentTile.GetMemo(1) = True Then 'x1
|
If CurrentTile.GetMemo(1) = True Then 'x1
|
||||||
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Enabled", New Rectangle(56, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoWindowSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoWindowSize.Height + 32), MemoWindowSize.Width, MemoWindowSize.Height), mainBackgroundColor)
|
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Enabled", New Rectangle(56, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoMenuSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoMenuSize.Height + TileSize.Height), MemoMenuSize.Width, MemoMenuSize.Height), mainBackgroundColor)
|
||||||
End If
|
End If
|
||||||
If CurrentTile.GetMemo(2) = True Then 'x2
|
If CurrentTile.GetMemo(2) = True Then 'x2
|
||||||
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Enabled", New Rectangle(56 + 56, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoWindowSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoWindowSize.Height + 32), MemoWindowSize.Width, MemoWindowSize.Height), mainBackgroundColor)
|
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Enabled", New Rectangle(56 + 56, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoMenuSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoMenuSize.Height + TileSize.Height), MemoMenuSize.Width, MemoMenuSize.Height), mainBackgroundColor)
|
||||||
End If
|
End If
|
||||||
If CurrentTile.GetMemo(3) = True Then 'x3
|
If CurrentTile.GetMemo(3) = True Then 'x3
|
||||||
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Enabled", New Rectangle(56 + 56 + 56, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoWindowSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoWindowSize.Height + 32), MemoWindowSize.Width, MemoWindowSize.Height), mainBackgroundColor)
|
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Enabled", New Rectangle(56 + 56 + 56, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoMenuSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoMenuSize.Height + TileSize.Height), MemoMenuSize.Width, MemoMenuSize.Height), mainBackgroundColor)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'Draw indicator of currently selected Memo
|
'Draw indicator of currently selected Memo
|
||||||
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Index", New Rectangle(56 * MemoIndex, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoWindowSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoWindowSize.Height + 32), MemoWindowSize.Width, MemoWindowSize.Height), mainBackgroundColor)
|
SpriteBatch.Draw(TextureManager.GetTexture("VoltorbFlip\Memo_Index", New Rectangle(56 * MemoIndex, 0, 56, 56)), New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoMenuSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoMenuSize.Height + TileSize.Height), MemoMenuSize.Width, MemoMenuSize.Height), mainBackgroundColor)
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
@ -284,6 +372,14 @@ Namespace VoltorbFlip
|
||||||
SpriteBatch.Draw(CursorImage, New Rectangle(CInt(VoltorbFlipScreen.BoardOrigin.X + BoardCursorPosition.X), CInt(VoltorbFlipScreen.BoardOrigin.Y + BoardCursorPosition.Y), TileSize.Width, TileSize.Height), mainBackgroundColor)
|
SpriteBatch.Draw(CursorImage, New Rectangle(CInt(VoltorbFlipScreen.BoardOrigin.X + BoardCursorPosition.X), CInt(VoltorbFlipScreen.BoardOrigin.Y + BoardCursorPosition.Y), TileSize.Width, TileSize.Height), mainBackgroundColor)
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
Private Sub DrawQuitButton()
|
||||||
|
Dim mainBackgroundColor As Color = New Color(255, 255, 255)
|
||||||
|
If GameState = States.Closing Or GameState = States.Opening Then
|
||||||
|
mainBackgroundColor = New Color(255, 255, 255, CInt(255 * _interfaceFade))
|
||||||
|
End If
|
||||||
|
Dim QuitButtonRectangle As New Rectangle(CInt(GameOrigin.X + 424), CInt(GameOrigin.Y + 448), 128, 56)
|
||||||
|
SpriteBatch.Draw(TextureManager.GetTexture("Textures\VoltorbFlip\Quit_Button"), QuitButtonRectangle, mainBackgroundColor)
|
||||||
|
End Sub
|
||||||
|
|
||||||
Private Function CreateBoard(ByVal Level As Integer) As List(Of List(Of Tile))
|
Private Function CreateBoard(ByVal Level As Integer) As List(Of List(Of Tile))
|
||||||
|
|
||||||
|
@ -297,44 +393,43 @@ Namespace VoltorbFlip
|
||||||
Dim ValueY As Integer = Random.Next(0, 5)
|
Dim ValueY As Integer = Random.Next(0, 5)
|
||||||
SpotList.AddRange({ValueX, ValueY})
|
SpotList.AddRange({ValueX, ValueY})
|
||||||
If Spots.Count > 0 Then
|
If Spots.Count > 0 Then
|
||||||
Dim AddList As Boolean = True
|
Dim AddList As Boolean = False
|
||||||
|
While AddList = False
|
||||||
For SpotIndex = 0 To Spots.Count - 1
|
For SpotIndex = 0 To Spots.Count - 1
|
||||||
If Spots(SpotIndex)(0) = ValueX AndAlso Spots(SpotIndex)(1) = ValueY Then
|
If Spots(SpotIndex)(0) <> ValueX AndAlso Spots(SpotIndex)(1) <> ValueY Then
|
||||||
AddList = False
|
AddList = True
|
||||||
|
Else
|
||||||
|
ValueX = Random.Next(0, 5)
|
||||||
|
ValueY = Random.Next(0, 5)
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
If AddList = True Then
|
End While
|
||||||
Spots.Add(SpotList)
|
Spots.Add(SpotList)
|
||||||
End If
|
|
||||||
Else
|
Else
|
||||||
Spots.Add(SpotList)
|
Spots.Add(SpotList)
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
|
|
||||||
Dim a = 0
|
For a = 0 To Data(0)
|
||||||
While a < Data(0)
|
|
||||||
Dim TileX As Integer = Spots(a)(0)
|
Dim TileX As Integer = Spots(a)(0)
|
||||||
Dim TileY As Integer = Spots(a)(1)
|
Dim TileY As Integer = Spots(a)(1)
|
||||||
|
|
||||||
Board(TileX)(TileY).Value = Tile.Values.Two
|
Board(TileX)(TileY).Value = Tile.Values.Two
|
||||||
a += 1
|
Next
|
||||||
End While
|
|
||||||
|
|
||||||
While a < Data(0) + Data(1)
|
For b = 0 To Data(1)
|
||||||
Dim TileX As Integer = Spots(a)(0)
|
Dim TileX As Integer = Spots(b + Data(0))(0)
|
||||||
Dim TileY As Integer = Spots(a)(1)
|
Dim TileY As Integer = Spots(b + Data(0))(1)
|
||||||
|
|
||||||
Board(TileX)(TileY).Value = Tile.Values.Three
|
Board(TileX)(TileY).Value = Tile.Values.Three
|
||||||
a += 1
|
Next
|
||||||
End While
|
|
||||||
|
|
||||||
While a < Data(0) + Data(1) + Data(2)
|
For c = 0 To Data(2)
|
||||||
Dim TileX As Integer = Spots(a)(0)
|
Dim TileX As Integer = Spots(c + Data(0) + Data(1))(0)
|
||||||
Dim TileY As Integer = Spots(a)(1)
|
Dim TileY As Integer = Spots(c + Data(0) + Data(1))(1)
|
||||||
|
|
||||||
Board(TileX)(TileY).Value = Tile.Values.Voltorb
|
Board(TileX)(TileY).Value = Tile.Values.Voltorb
|
||||||
a += 1
|
Next
|
||||||
End While
|
|
||||||
|
|
||||||
MaxCoins = CInt(Math.Pow(2, Data(0)) * Math.Pow(3, Data(1)))
|
MaxCoins = CInt(Math.Pow(2, Data(0)) * Math.Pow(3, Data(1)))
|
||||||
|
|
||||||
|
@ -351,9 +446,9 @@ Namespace VoltorbFlip
|
||||||
''' <returns></returns>
|
''' <returns></returns>
|
||||||
Private Function CreateGrid() As List(Of List(Of Tile))
|
Private Function CreateGrid() As List(Of List(Of Tile))
|
||||||
Dim Grid As New List(Of List(Of Tile))
|
Dim Grid As New List(Of List(Of Tile))
|
||||||
For _row = 1 To VoltorbFlipScreen.GridSize
|
For _row = 0 To VoltorbFlipScreen.GridSize - 1
|
||||||
Dim Column As New List(Of Tile)
|
Dim Column As New List(Of Tile)
|
||||||
For _column = 1 To VoltorbFlipScreen.GridSize
|
For _column = 0 To VoltorbFlipScreen.GridSize - 1
|
||||||
Column.Add(New VoltorbFlip.Tile(_row, _column, VoltorbFlip.Tile.Values.One, False))
|
Column.Add(New VoltorbFlip.Tile(_row, _column, VoltorbFlip.Tile.Values.One, False))
|
||||||
Next
|
Next
|
||||||
Grid.Add(Column)
|
Grid.Add(Column)
|
||||||
|
@ -373,43 +468,34 @@ Namespace VoltorbFlip
|
||||||
Dim RowBombs As New List(Of Integer)
|
Dim RowBombs As New List(Of Integer)
|
||||||
Dim ColumnBombs As New List(Of Integer)
|
Dim ColumnBombs As New List(Of Integer)
|
||||||
|
|
||||||
|
RowSums.AddRange({0, 0, 0, 0, 0}.ToList)
|
||||||
|
ColumnSums.AddRange({0, 0, 0, 0, 0}.ToList)
|
||||||
|
|
||||||
|
RowBombs.AddRange({0, 0, 0, 0, 0}.ToList)
|
||||||
|
ColumnBombs.AddRange({0, 0, 0, 0, 0}.ToList)
|
||||||
|
|
||||||
|
'Rows
|
||||||
For _row = 0 To GridSize - 1
|
For _row = 0 To GridSize - 1
|
||||||
For _column = 0 To GridSize - 1
|
For _column = 0 To GridSize - 1
|
||||||
If Board(_row)(_column).Value = Tile.Values.Voltorb Then
|
If Board(_row)(_column).Value = Tile.Values.Voltorb Then
|
||||||
If RowBombs(_row) = Nothing Then
|
|
||||||
RowBombs.Add(1)
|
|
||||||
Else
|
|
||||||
RowBombs(_row) += 1
|
RowBombs(_row) += 1
|
||||||
End If
|
|
||||||
Else
|
|
||||||
If RowSums(_row) = Nothing Then
|
|
||||||
RowSums.Add(Board(_row)(_column).Value)
|
|
||||||
Else
|
Else
|
||||||
RowSums(_row) += Board(_row)(_column).Value
|
RowSums(_row) += Board(_row)(_column).Value
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
Next
|
Next
|
||||||
Next
|
Next
|
||||||
|
|
||||||
|
'Columns
|
||||||
For _column = 0 To GridSize - 1
|
For _column = 0 To GridSize - 1
|
||||||
For _row = 0 To GridSize - 1
|
For _row = 0 To GridSize - 1
|
||||||
If Board(_row)(_column).Value = Tile.Values.Voltorb Then
|
If Board(_row)(_column).Value = Tile.Values.Voltorb Then
|
||||||
If ColumnBombs(_column) = Nothing Then
|
|
||||||
ColumnBombs.Add(1)
|
|
||||||
Else
|
|
||||||
ColumnBombs(_column) += 1
|
ColumnBombs(_column) += 1
|
||||||
End If
|
|
||||||
Else
|
|
||||||
If ColumnSums(_column) = Nothing Then
|
|
||||||
ColumnSums.Add(Board(_row)(_column).Value)
|
|
||||||
Else
|
Else
|
||||||
ColumnSums(_column) += Board(_row)(_column).Value
|
ColumnSums(_column) += Board(_row)(_column).Value
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
Next
|
Next
|
||||||
Next
|
Next
|
||||||
|
|
||||||
|
|
||||||
If CoinsOrVoltorbs = False Then
|
If CoinsOrVoltorbs = False Then
|
||||||
Dim Sums As New List(Of List(Of Integer))
|
Dim Sums As New List(Of List(Of Integer))
|
||||||
Sums.AddRange({RowSums, ColumnSums})
|
Sums.AddRange({RowSums, ColumnSums})
|
||||||
|
@ -422,15 +508,8 @@ Namespace VoltorbFlip
|
||||||
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function GetCursorOffset(ByVal Column As Integer, ByVal Row As Integer) As Vector2
|
Public Function GetCursorOffset(Optional ByVal Column As Integer = 0, Optional ByVal Row As Integer = 0) As Vector2
|
||||||
Dim Offset As Vector2 = New Vector2(Nothing, Nothing)
|
Return New Vector2(TileSize.Width * Column, TileSize.Height * Row)
|
||||||
If Column = Not Nothing Then
|
|
||||||
Offset.X = TileSize.Width * Column
|
|
||||||
End If
|
|
||||||
If Row = Not Nothing Then
|
|
||||||
Offset.Y = TileSize.Height * Row
|
|
||||||
End If
|
|
||||||
Return Offset
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
''' <summary>
|
''' <summary>
|
||||||
|
@ -438,13 +517,13 @@ Namespace VoltorbFlip
|
||||||
''' </summary>
|
''' </summary>
|
||||||
''' <returns></returns>
|
''' <returns></returns>
|
||||||
Public Function GetCurrentTile() As Vector2
|
Public Function GetCurrentTile() As Vector2
|
||||||
Return GetCursorOffset(CInt(BoardCursorDestination.X / TileSize.Width), CInt(BoardCursorDestination.Y / TileSize.Height))
|
Return New Vector2((BoardCursorDestination.X / TileSize.Width).Clamp(0, GridSize - 1), (BoardCursorDestination.Y / TileSize.Height).Clamp(0, GridSize - 1))
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function GetTileUnderMouse() As Vector2
|
Public Function GetTileUnderMouse() As Vector2
|
||||||
Dim AbsoluteMousePosition As Vector2 = MouseHandler.MousePosition.ToVector2
|
Dim AbsoluteMousePosition As Vector2 = MouseHandler.MousePosition.ToVector2
|
||||||
Dim RelativeMousePosition As Vector2 = New Vector2(Clamp(AbsoluteMousePosition.X - BoardOrigin.X, 0, BoardSize.Width), Clamp(AbsoluteMousePosition.Y - BoardOrigin.Y, 0, BoardSize.Height))
|
Dim RelativeMousePosition As Vector2 = New Vector2(Clamp(AbsoluteMousePosition.X - BoardOrigin.X, 0, BoardSize.Width), Clamp(AbsoluteMousePosition.Y - BoardOrigin.Y, 0, BoardSize.Height))
|
||||||
Return New Vector2(CInt(Math.Floor(RelativeMousePosition.X / TileSize.Width)), CInt(Math.Floor(RelativeMousePosition.Y / TileSize.Height)))
|
Return New Vector2(CInt(Math.Floor(RelativeMousePosition.X / TileSize.Width).Clamp(0, GridSize - 1)), CInt(Math.Floor(RelativeMousePosition.Y / TileSize.Height).Clamp(0, GridSize - 1)))
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Function GetLevelData(ByVal LevelNumber As Integer) As List(Of Integer)
|
Public Function GetLevelData(ByVal LevelNumber As Integer) As List(Of Integer)
|
||||||
|
@ -577,8 +656,8 @@ Namespace VoltorbFlip
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Overrides Sub SizeChanged()
|
Public Overrides Sub SizeChanged()
|
||||||
GameOrigin = New Vector2(CInt(windowSize.Width - GameSize.Width / 2), CInt(windowSize.Height / 2 - GameSize.Height / 2))
|
GameOrigin = New Vector2(CInt(windowSize.Width / 2 - GameSize.Width / 2), CInt(windowSize.Height / 2 - GameSize.Height / 2 - _screenTransitionY))
|
||||||
BoardOrigin = New Vector2(GameOrigin.X + 32, GameOrigin.Y + 32)
|
BoardOrigin = New Vector2(GameOrigin.X + 32, GameOrigin.Y + 128)
|
||||||
BoardCursorDestination = GetCursorOffset(0, 0)
|
BoardCursorDestination = GetCursorOffset(0, 0)
|
||||||
BoardCursorPosition = GetCursorOffset(0, 0)
|
BoardCursorPosition = GetCursorOffset(0, 0)
|
||||||
End Sub
|
End Sub
|
||||||
|
@ -592,10 +671,24 @@ Namespace VoltorbFlip
|
||||||
Next
|
Next
|
||||||
End Sub
|
End Sub
|
||||||
Public Overrides Sub Update()
|
Public Overrides Sub Update()
|
||||||
|
|
||||||
|
ChooseBox.Update()
|
||||||
|
TextBox.Update()
|
||||||
|
|
||||||
|
If Delay > 0 Then
|
||||||
|
Delay -= 1
|
||||||
|
If Delay <= 0 Then
|
||||||
|
Delay = 0
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Board IsNot Nothing Then
|
||||||
UpdateTiles()
|
UpdateTiles()
|
||||||
|
End If
|
||||||
If ChooseBox.Showing = False AndAlso TextBox.Showing = False AndAlso GameState = States.Game Or GameState = States.Memo Then
|
If Delay = 0 Then
|
||||||
|
If ChooseBox.Showing = False AndAlso TextBox.Showing = False Then
|
||||||
|
If GameState = States.Game Or GameState = States.Memo Then
|
||||||
|
TextBox.Text = ""
|
||||||
'Moving the cursor between Tiles on the board
|
'Moving the cursor between Tiles on the board
|
||||||
If Controls.Up(True, True, False) Then
|
If Controls.Up(True, True, False) Then
|
||||||
If BoardCursorDestination.Y > GetCursorOffset(Nothing, 0).Y Then
|
If BoardCursorDestination.Y > GetCursorOffset(Nothing, 0).Y Then
|
||||||
|
@ -614,24 +707,24 @@ Namespace VoltorbFlip
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If Controls.Left(True, True, False) = True Then
|
If Controls.Left(True, True, False) = True Then
|
||||||
If BoardCursorDestination.X > GetCursorOffset(Nothing, 0).X Then
|
If BoardCursorDestination.X > GetCursorOffset(0, Nothing).X Then
|
||||||
BoardCursorDestination.X -= GetCursorOffset(Nothing, 1).X
|
BoardCursorDestination.X -= GetCursorOffset(1, Nothing).X
|
||||||
Else
|
Else
|
||||||
BoardCursorDestination.X = GetCursorOffset(Nothing, 4).X
|
BoardCursorDestination.X = GetCursorOffset(4, Nothing).X
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If Controls.Right(True, True, False) = True Then
|
If Controls.Right(True, True, False) = True Then
|
||||||
If BoardCursorDestination.X < GetCursorOffset(Nothing, 4).X Then
|
If BoardCursorDestination.X < GetCursorOffset(4, Nothing).X Then
|
||||||
BoardCursorDestination.X += GetCursorOffset(Nothing, 1).X
|
BoardCursorDestination.X += GetCursorOffset(1, Nothing).X
|
||||||
Else
|
Else
|
||||||
BoardCursorDestination.X = GetCursorOffset(Nothing, 0).X
|
BoardCursorDestination.X = GetCursorOffset(0, Nothing).X
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'Animation of Cursor
|
'Animation of Cursor
|
||||||
BoardCursorPosition.X = MathHelper.Lerp(BoardCursorDestination.X, BoardCursorPosition.X, 0.8F)
|
BoardCursorPosition.X = MathHelper.Lerp(BoardCursorPosition.X, BoardCursorDestination.X, 0.6F)
|
||||||
BoardCursorPosition.Y = MathHelper.Lerp(BoardCursorDestination.Y, BoardCursorPosition.Y, 0.8F)
|
BoardCursorPosition.Y = MathHelper.Lerp(BoardCursorPosition.Y, BoardCursorDestination.Y, 0.6F)
|
||||||
|
|
||||||
Else
|
Else
|
||||||
'Reset cursor position between levels
|
'Reset cursor position between levels
|
||||||
|
@ -649,7 +742,7 @@ Namespace VoltorbFlip
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'Switching between Game and Memo GameStates (Mouse)
|
'Switching between Game and Memo GameStates (Mouse)
|
||||||
Dim ButtonRectangle As Rectangle = New Rectangle(CInt(BoardOrigin.X + BoardSize.Width + MemoWindowSize.Width), CInt(BoardOrigin.Y), MemoWindowSize.Width, MemoWindowSize.Height)
|
Dim ButtonRectangle As Rectangle = New Rectangle(CInt(BoardOrigin.X + BoardSize.Width + MemoMenuSize.Width), CInt(BoardOrigin.Y), MemoMenuSize.Width, MemoMenuSize.Height)
|
||||||
If Controls.Accept(True, False, False) = True AndAlso MouseHandler.IsInRectangle(ButtonRectangle) Then
|
If Controls.Accept(True, False, False) = True AndAlso MouseHandler.IsInRectangle(ButtonRectangle) Then
|
||||||
If GameState = States.Game Then
|
If GameState = States.Game Then
|
||||||
GameState = States.Memo
|
GameState = States.Memo
|
||||||
|
@ -660,10 +753,10 @@ Namespace VoltorbFlip
|
||||||
|
|
||||||
If GameState = States.Memo Then
|
If GameState = States.Memo Then
|
||||||
'Animate opening the Memo window
|
'Animate opening the Memo window
|
||||||
If MemoWindowX < MemoWindowSize.Width Then
|
If MemoWindowX < MemoMenuSize.Width + TileSize.Width / 4 Then
|
||||||
MemoWindowX = MathHelper.Lerp(MemoWindowSize.Width, MemoWindowX, 0.9F)
|
MemoWindowX = MathHelper.Lerp(MemoMenuSize.Width, MemoWindowX, 0.9F)
|
||||||
If MemoWindowX >= MemoWindowSize.Width Then
|
If MemoWindowX >= MemoMenuSize.Width Then
|
||||||
MemoWindowX = MemoWindowSize.Width
|
MemoWindowX = MemoMenuSize.Width
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
@ -680,6 +773,27 @@ Namespace VoltorbFlip
|
||||||
MemoIndex = 0
|
MemoIndex = 0
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
'Set the Memo type to the one under the mouse
|
||||||
|
Dim MemoMenuRectangle As New Rectangle(CInt(BoardOrigin.X + BoardSize.Width - MemoMenuSize.Width + MemoWindowX), CInt(BoardOrigin.Y + MemoMenuSize.Height + TileSize.Height), MemoMenuSize.Width, MemoMenuSize.Height)
|
||||||
|
If Controls.Accept(True, False, False) = True Then
|
||||||
|
If MouseHandler.IsInRectangle(New Rectangle(MemoMenuRectangle.X, MemoMenuRectangle.Y, CInt(MemoMenuRectangle.X / 2), CInt(MemoMenuRectangle.Y / 2))) = True Then
|
||||||
|
'Voltorb
|
||||||
|
MemoIndex = 0
|
||||||
|
End If
|
||||||
|
If MouseHandler.IsInRectangle(New Rectangle(MemoMenuRectangle.X + CInt(MemoMenuRectangle.X / 2), MemoMenuRectangle.Y, CInt(MemoMenuRectangle.X / 2), CInt(MemoMenuRectangle.Y / 2))) = True Then
|
||||||
|
'One
|
||||||
|
MemoIndex = 1
|
||||||
|
End If
|
||||||
|
If MouseHandler.IsInRectangle(New Rectangle(MemoMenuRectangle.X + CInt(MemoMenuRectangle.X / 2), MemoMenuRectangle.Y + CInt(MemoMenuRectangle.Y / 2), CInt(MemoMenuRectangle.X / 2), CInt(MemoMenuRectangle.Y / 2))) = True Then
|
||||||
|
'Two
|
||||||
|
MemoIndex = 2
|
||||||
|
End If
|
||||||
|
If MouseHandler.IsInRectangle(New Rectangle(MemoMenuRectangle.X + CInt(MemoMenuRectangle.X / 2), MemoMenuRectangle.Y + CInt(MemoMenuRectangle.Y / 2), CInt(MemoMenuRectangle.X / 2), CInt(MemoMenuRectangle.Y / 2))) = True Then
|
||||||
|
'Three
|
||||||
|
MemoIndex = 3
|
||||||
|
End If
|
||||||
|
End If
|
||||||
Else
|
Else
|
||||||
'Animate Closing the Memo window
|
'Animate Closing the Memo window
|
||||||
If MemoWindowX > 0F Then
|
If MemoWindowX > 0F Then
|
||||||
|
@ -691,28 +805,40 @@ Namespace VoltorbFlip
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'Quiting Voltorb Flip
|
'Quiting Voltorb Flip
|
||||||
If Controls.Dismiss AndAlso GameState = States.Game Then
|
If Controls.Dismiss(False, True, True) AndAlso GameState = States.Game Then
|
||||||
GameState = States.QuitQuestion
|
GameState = States.QuitQuestion
|
||||||
TextBox.Show("Do you want to stop~playing Voltorb Flip?%Yes|No%")
|
End If
|
||||||
|
|
||||||
|
'Quiting Voltorb Flip using the mouse
|
||||||
|
Dim QuitButtonRectangle As New Rectangle(CInt(GameOrigin.X + 424), CInt(GameOrigin.Y + 448), 128, 56)
|
||||||
|
If Controls.Accept(True, False, False) AndAlso MouseHandler.IsInRectangle(QuitButtonRectangle) AndAlso GameState = States.Game Then
|
||||||
|
GameState = States.QuitQuestion
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim QuitQuestionText As String = "Do you want to stop~playing Voltorb Flip?%Yes|No%"
|
||||||
|
If GameState = States.QuitQuestion And TextBox.Text <> QuitQuestionText Then
|
||||||
|
TextBox.Show(QuitQuestionText)
|
||||||
|
Else
|
||||||
If ChooseBox.readyForResult = True Then
|
If ChooseBox.readyForResult = True Then
|
||||||
If ChooseBox.result = 0 Then
|
If ChooseBox.result = 0 Then
|
||||||
Quit()
|
Quit()
|
||||||
Else
|
Else
|
||||||
|
Delay = 150
|
||||||
GameState = States.Game
|
GameState = States.Game
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'Flip currently selected Tile
|
'Flip currently selected Tile
|
||||||
If Controls.Accept(False, True, True) AndAlso GameState = States.Game Then
|
If Controls.Accept(False, True, True) AndAlso GameState = States.Game Then
|
||||||
Board(CInt(GetCurrentTile.Y))(CInt(GetCurrentTile.X)).Flip()
|
Dim CurrentTile As Vector2 = GetCurrentTile()
|
||||||
|
Board(CInt(CurrentTile.Y))(CInt(CurrentTile.X)).Flip()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'Flip the Tile that the mouse is on
|
'Flip the Tile that the mouse is on
|
||||||
If Controls.Accept(True, False, False) AndAlso GameState = States.Game Then
|
If Controls.Accept(True, False, False) AndAlso GameState = States.Game AndAlso MouseHandler.IsInRectangle(New Rectangle(CInt(BoardOrigin.X), CInt(BoardOrigin.Y), BoardSize.Width, BoardSize.Height)) Then
|
||||||
Dim TileUnderMouse As Vector2 = GetTileUnderMouse()
|
Dim TileUnderMouse As Vector2 = GetTileUnderMouse()
|
||||||
BoardCursorDestination = TileUnderMouse
|
BoardCursorDestination = GetCursorOffset(CInt(TileUnderMouse.X), CInt(TileUnderMouse.Y))
|
||||||
Board(CInt(TileUnderMouse.Y))(CInt(TileUnderMouse.X)).Flip()
|
Board(CInt(TileUnderMouse.Y))(CInt(TileUnderMouse.X)).Flip()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
@ -722,9 +848,9 @@ Namespace VoltorbFlip
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'Adding currently selected Memo to Tile that the mouse is on
|
'Adding currently selected Memo to Tile that the mouse is on
|
||||||
If Controls.Accept(True, False, False) AndAlso GameState = States.Memo Then
|
If Controls.Accept(True, False, False) AndAlso GameState = States.Memo AndAlso MouseHandler.IsInRectangle(New Rectangle(CInt(BoardOrigin.X), CInt(BoardOrigin.Y), BoardSize.Width, BoardSize.Height)) Then
|
||||||
Dim TileUnderMouse As Vector2 = GetTileUnderMouse()
|
Dim TileUnderMouse As Vector2 = GetTileUnderMouse()
|
||||||
BoardCursorDestination = TileUnderMouse
|
BoardCursorDestination = GetCursorOffset(CInt(TileUnderMouse.X), CInt(TileUnderMouse.Y))
|
||||||
Board(CInt(TileUnderMouse.Y))(CInt(TileUnderMouse.X)).SetMemo(MemoIndex, True)
|
Board(CInt(TileUnderMouse.Y))(CInt(TileUnderMouse.X)).SetMemo(MemoIndex, True)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
@ -734,20 +860,30 @@ Namespace VoltorbFlip
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'Removing currently selected Memo from Tile that the mouse is on
|
'Removing currently selected Memo from Tile that the mouse is on
|
||||||
If Controls.Dismiss(True, False, False) AndAlso GameState = States.Memo Then
|
If Controls.Dismiss(True, False, False) AndAlso GameState = States.Memo AndAlso MouseHandler.IsInRectangle(New Rectangle(CInt(BoardOrigin.X), CInt(BoardOrigin.Y), BoardSize.Width, BoardSize.Height)) Then
|
||||||
Dim TileUnderMouse As Vector2 = GetTileUnderMouse()
|
Dim TileUnderMouse As Vector2 = GetTileUnderMouse()
|
||||||
BoardCursorDestination = TileUnderMouse
|
BoardCursorDestination = GetCursorOffset(CInt(TileUnderMouse.X), CInt(TileUnderMouse.Y))
|
||||||
Board(CInt(TileUnderMouse.Y))(CInt(TileUnderMouse.X)).SetMemo(MemoIndex, False)
|
Board(CInt(TileUnderMouse.Y))(CInt(TileUnderMouse.X)).SetMemo(MemoIndex, False)
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
'Completed the level
|
'Completed the level
|
||||||
If GameState = States.GameWon Then
|
If GameState = States.GameWon Then
|
||||||
TextBox.Show("Game clear! You received" & " " & CurrentCoins & " " & "Coins!")
|
|
||||||
|
|
||||||
Dim ResultCoins As Integer = TotalCoins + CurrentCoins
|
Dim ResultCoins As Integer
|
||||||
Dim AnimationTotalCoins As Single = TotalCoins
|
Dim AnimationTotalCoins As Single
|
||||||
Dim AnimationCurrentCoins As Single = CurrentCoins
|
Dim AnimationCurrentCoins As Single
|
||||||
|
|
||||||
|
Dim GameClearText = "Game clear! You received" & " " & CurrentCoins.ToString & " " & "Coins!"
|
||||||
|
If TextBox.Text <> GameClearText AndAlso AnimationCurrentCoins = Nothing Then
|
||||||
|
TextBox.Show(GameClearText)
|
||||||
|
End If
|
||||||
|
If AnimationCurrentCoins = Nothing Then
|
||||||
|
ResultCoins = TotalCoins + CurrentCoins
|
||||||
|
AnimationTotalCoins = TotalCoins
|
||||||
|
AnimationCurrentCoins = CurrentCoins
|
||||||
|
End If
|
||||||
|
If AnimationCurrentCoins <> Nothing Then
|
||||||
While TotalCoins < ResultCoins
|
While TotalCoins < ResultCoins
|
||||||
AnimationTotalCoins += 0.05F
|
AnimationTotalCoins += 0.05F
|
||||||
If AnimationTotalCoins >= ResultCoins Then
|
If AnimationTotalCoins >= ResultCoins Then
|
||||||
|
@ -774,26 +910,37 @@ Namespace VoltorbFlip
|
||||||
|
|
||||||
'Flip all Tiles to reveal contents
|
'Flip all Tiles to reveal contents
|
||||||
Dim ReadyAmount As Integer = 0
|
Dim ReadyAmount As Integer = 0
|
||||||
For _row = 0 To GridSize
|
For _row = 0 To GridSize - 1
|
||||||
For _column = 0 To GridSize
|
For _column = 0 To GridSize - 1
|
||||||
Board(_row)(_column).Reveal()
|
Board(_row)(_column).Reveal()
|
||||||
If Board(_row)(_column).FlipProgress = 0 Then
|
If Board(_row)(_column).FlipProgress = 0 Then
|
||||||
ReadyAmount += 1
|
ReadyAmount += 1
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
Next
|
Next
|
||||||
|
If Controls.Accept = True AndAlso TextBox.Showing = False Then
|
||||||
If ReadyAmount = CInt(GridSize * GridSize) Then
|
If ReadyAmount = CInt(GridSize * GridSize) Then
|
||||||
GameState = States.FlipWon
|
GameState = States.FlipWon
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
'Revealed a Voltorb
|
'Revealed a Voltorb
|
||||||
If GameState = States.GameLost Then
|
If GameState = States.GameLost Then
|
||||||
|
Dim ResultCoins As Integer
|
||||||
|
Dim AnimationCurrentCoins As Single
|
||||||
|
|
||||||
|
If TextBox.Showing = False AndAlso AnimationCurrentCoins = Nothing Then
|
||||||
TextBox.Show("Oh no! You get 0 coins")
|
TextBox.Show("Oh no! You get 0 coins")
|
||||||
|
|
||||||
Dim ResultCoins As Integer = 0
|
End If
|
||||||
Dim AnimationCurrentCoins As Single = CurrentCoins
|
If AnimationCurrentCoins = Nothing Then
|
||||||
|
ResultCoins = 0
|
||||||
|
AnimationCurrentCoins = CurrentCoins
|
||||||
|
End If
|
||||||
|
|
||||||
|
If AnimationCurrentCoins <> Nothing Then
|
||||||
|
|
||||||
While CurrentCoins > ResultCoins
|
While CurrentCoins > ResultCoins
|
||||||
AnimationCurrentCoins -= -0.05F
|
AnimationCurrentCoins -= -0.05F
|
||||||
|
@ -806,8 +953,8 @@ Namespace VoltorbFlip
|
||||||
|
|
||||||
'Flip all Tiles to reveal contents
|
'Flip all Tiles to reveal contents
|
||||||
Dim ReadyAmount As Integer = 0
|
Dim ReadyAmount As Integer = 0
|
||||||
For _row = 0 To GridSize
|
For _row = 0 To GridSize - 1
|
||||||
For _column = 0 To GridSize
|
For _column = 0 To GridSize - 1
|
||||||
Board(_row)(_column).Reveal()
|
Board(_row)(_column).Reveal()
|
||||||
If Board(_row)(_column).FlipProgress = 0 Then
|
If Board(_row)(_column).FlipProgress = 0 Then
|
||||||
ReadyAmount += 1
|
ReadyAmount += 1
|
||||||
|
@ -816,14 +963,16 @@ Namespace VoltorbFlip
|
||||||
Next
|
Next
|
||||||
|
|
||||||
If ReadyAmount = CInt(GridSize * GridSize) Then
|
If ReadyAmount = CInt(GridSize * GridSize) Then
|
||||||
|
If Controls.Accept = True AndAlso TextBox.Showing = False Then
|
||||||
GameState = States.FlipLost
|
GameState = States.FlipLost
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
'Increase Level, reset Tiles
|
'Increase Level, reset Tiles
|
||||||
If GameState = States.FlipWon Then
|
If GameState = States.FlipWon Then
|
||||||
Dim ReadyAmount As Integer = 0
|
Dim ReadyAmount As Integer = 0
|
||||||
If Controls.Accept = True AndAlso TextBox.Showing = False Then
|
|
||||||
For _row = 0 To GridSize - 1
|
For _row = 0 To GridSize - 1
|
||||||
For _column = 0 To GridSize - 1
|
For _column = 0 To GridSize - 1
|
||||||
Board(_row)(_column).Reset()
|
Board(_row)(_column).Reset()
|
||||||
|
@ -847,7 +996,6 @@ Namespace VoltorbFlip
|
||||||
CurrentLevel = MaxLevel
|
CurrentLevel = MaxLevel
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
If ReadyAmount = CInt(GridSize * GridSize) Then
|
If ReadyAmount = CInt(GridSize * GridSize) Then
|
||||||
GameState = States.NewLevel
|
GameState = States.NewLevel
|
||||||
End If
|
End If
|
||||||
|
@ -856,7 +1004,6 @@ Namespace VoltorbFlip
|
||||||
'Drop Level, reset Tiles
|
'Drop Level, reset Tiles
|
||||||
If GameState = States.FlipLost Then
|
If GameState = States.FlipLost Then
|
||||||
Dim ReadyAmount As Integer = 0
|
Dim ReadyAmount As Integer = 0
|
||||||
If Controls.Accept = True AndAlso TextBox.Showing = False Then
|
|
||||||
For _row = 0 To GridSize - 1
|
For _row = 0 To GridSize - 1
|
||||||
For _column = 0 To GridSize - 1
|
For _column = 0 To GridSize - 1
|
||||||
Board(_row)(_column).Reset()
|
Board(_row)(_column).Reset()
|
||||||
|
@ -871,7 +1018,6 @@ Namespace VoltorbFlip
|
||||||
CurrentLevel = CurrentFlips.Clamp(MinLevel, CurrentLevel.Clamp(MinLevel, MaxLevel))
|
CurrentLevel = CurrentFlips.Clamp(MinLevel, CurrentLevel.Clamp(MinLevel, MaxLevel))
|
||||||
CurrentFlips = 0
|
CurrentFlips = 0
|
||||||
|
|
||||||
End If
|
|
||||||
If ReadyAmount = CInt(GridSize * GridSize) Then
|
If ReadyAmount = CInt(GridSize * GridSize) Then
|
||||||
GameState = States.NewLevel
|
GameState = States.NewLevel
|
||||||
End If
|
End If
|
||||||
|
@ -879,7 +1025,8 @@ Namespace VoltorbFlip
|
||||||
|
|
||||||
'Prepare new Level
|
'Prepare new Level
|
||||||
If GameState = States.NewLevel Then
|
If GameState = States.NewLevel Then
|
||||||
|
If TextBox.Showing = False Then
|
||||||
|
Board = CreateBoard(CurrentLevel)
|
||||||
If CurrentLevel < PreviousLevel Then
|
If CurrentLevel < PreviousLevel Then
|
||||||
TextBox.Show("Dropped to Game Lv." & " " & CurrentLevel & "!")
|
TextBox.Show("Dropped to Game Lv." & " " & CurrentLevel & "!")
|
||||||
End If
|
End If
|
||||||
|
@ -891,10 +1038,8 @@ Namespace VoltorbFlip
|
||||||
If CurrentLevel > PreviousLevel Then
|
If CurrentLevel > PreviousLevel Then
|
||||||
TextBox.Show("Advanced to Game Lv." & " " & CurrentLevel & "!")
|
TextBox.Show("Advanced to Game Lv." & " " & CurrentLevel & "!")
|
||||||
End If
|
End If
|
||||||
|
Else
|
||||||
Board = CreateBoard(CurrentLevel)
|
Delay = 150
|
||||||
|
|
||||||
If TextBox.Showing = False Then
|
|
||||||
GameState = States.Game
|
GameState = States.Game
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
@ -925,29 +1070,33 @@ Namespace VoltorbFlip
|
||||||
_screenTransitionY = 0
|
_screenTransitionY = 0
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
GameOrigin.Y = CInt(windowSize.Height / 2 - GameSize.Height / 2 - _screenTransitionY)
|
||||||
|
BoardOrigin = New Vector2(GameOrigin.X + 32, GameOrigin.Y + 128)
|
||||||
|
|
||||||
If _screenTransitionY <= 2.0F Then
|
If _screenTransitionY <= 2.0F Then
|
||||||
SetScreen(PreScreen)
|
SetScreen(PreScreen)
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
|
|
||||||
Dim maxWindowHeight As Integer = CInt(GameSize.Height / 2)
|
Dim maxWindowHeight As Integer = CInt(GameSize.Height / 2)
|
||||||
If _screenTransitionY < maxWindowHeight Then
|
If _screenTransitionY < maxWindowHeight Then
|
||||||
_screenTransitionY = MathHelper.Lerp(maxWindowHeight, _screenTransitionY, 0.8F)
|
_screenTransitionY = MathHelper.Lerp(maxWindowHeight, _screenTransitionY, 0.8F)
|
||||||
If _screenTransitionY >= maxWindowHeight Then
|
If _screenTransitionY >= maxWindowHeight - 0.8 Then
|
||||||
_screenTransitionY = maxWindowHeight
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
If _interfaceFade < 1.0F Then
|
|
||||||
_interfaceFade = MathHelper.Lerp(1, _interfaceFade, 0.95F)
|
|
||||||
If _interfaceFade > 1.0F Then
|
|
||||||
_interfaceFade = 1.0F
|
|
||||||
If GameState = States.Opening Then
|
If GameState = States.Opening Then
|
||||||
GameState = States.NewLevel
|
GameState = States.NewLevel
|
||||||
End If
|
End If
|
||||||
|
_screenTransitionY = maxWindowHeight
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
GameOrigin.Y = CInt(windowSize.Height / 2 - GameSize.Height / 2 - _screenTransitionY)
|
||||||
|
BoardOrigin = New Vector2(GameOrigin.X + 32, GameOrigin.Y + 128)
|
||||||
|
|
||||||
|
If _interfaceFade < 1.0F Then
|
||||||
|
_interfaceFade = MathHelper.Lerp(1, _interfaceFade, 0.95F)
|
||||||
|
If _interfaceFade = 1.0F Then
|
||||||
|
_interfaceFade = 1.0F
|
||||||
|
End If
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
@ -983,6 +1132,7 @@ Namespace VoltorbFlip
|
||||||
Private Property Memo2 As Boolean = False
|
Private Property Memo2 As Boolean = False
|
||||||
Private Property Memo3 As Boolean = False
|
Private Property Memo3 As Boolean = False
|
||||||
|
|
||||||
|
Private Property FlipWidth As Single = 1.0F
|
||||||
Private Property Activated As Boolean = False
|
Private Property Activated As Boolean = False
|
||||||
Public Property FlipProgress As Integer = 0
|
Public Property FlipProgress As Integer = 0
|
||||||
|
|
||||||
|
@ -1013,11 +1163,10 @@ Namespace VoltorbFlip
|
||||||
|
|
||||||
Dim TileWidth = VoltorbFlipScreen.TileSize.Width
|
Dim TileWidth = VoltorbFlipScreen.TileSize.Width
|
||||||
Dim TileHeight = VoltorbFlipScreen.TileSize.Height
|
Dim TileHeight = VoltorbFlipScreen.TileSize.Height
|
||||||
Dim FlipWidth As Single = 1.0F
|
|
||||||
|
|
||||||
If FlipProgress = 1 OrElse FlipProgress = 3 Then
|
If FlipProgress = 1 OrElse FlipProgress = 3 Then
|
||||||
If FlipWidth > 0F Then
|
If FlipWidth > 0F Then
|
||||||
FlipWidth -= 0.05F
|
FlipWidth -= 0.1F
|
||||||
End If
|
End If
|
||||||
If FlipWidth <= 0F Then
|
If FlipWidth <= 0F Then
|
||||||
FlipWidth = 0F
|
FlipWidth = 0F
|
||||||
|
@ -1031,7 +1180,7 @@ Namespace VoltorbFlip
|
||||||
End If
|
End If
|
||||||
If FlipProgress = 2 OrElse FlipProgress = 4 Then
|
If FlipProgress = 2 OrElse FlipProgress = 4 Then
|
||||||
If FlipWidth < 1.0F Then
|
If FlipWidth < 1.0F Then
|
||||||
FlipWidth += 0.05F
|
FlipWidth += 0.1F
|
||||||
End If
|
End If
|
||||||
If FlipWidth >= 1.0F Then
|
If FlipWidth >= 1.0F Then
|
||||||
FlipWidth = 1.0F
|
FlipWidth = 1.0F
|
||||||
|
@ -1040,7 +1189,7 @@ Namespace VoltorbFlip
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'Draw Tile
|
'Draw Tile
|
||||||
SpriteBatch.Draw(GetImage, New Rectangle(CInt(VoltorbFlipScreen.BoardOrigin.X + TileWidth * Column + (TileWidth - FlipWidth * TileWidth)), CInt(VoltorbFlipScreen.BoardOrigin.Y + TileHeight * Row), CInt(TileWidth * FlipWidth), TileHeight), mainBackgroundColor)
|
SpriteBatch.Draw(GetImage, New Rectangle(CInt(VoltorbFlipScreen.BoardOrigin.X + TileWidth * Column + (TileWidth - FlipWidth * TileWidth) / 2), CInt(VoltorbFlipScreen.BoardOrigin.Y + TileHeight * Row), CInt(TileWidth * FlipWidth), TileHeight), mainBackgroundColor)
|
||||||
|
|
||||||
'Draw Memos
|
'Draw Memos
|
||||||
If GetMemo(0) = True Then 'Voltorb
|
If GetMemo(0) = True Then 'Voltorb
|
||||||
|
|
|
@ -280,17 +280,17 @@
|
||||||
If Core.Player.Inventory.GetItemAmount(54) > 0 Then
|
If Core.Player.Inventory.GetItemAmount(54) > 0 Then
|
||||||
If Core.Player.Coins < 50000 Then
|
If Core.Player.Coins < 50000 Then
|
||||||
Core.SetScreen(New VoltorbFlip.VoltorbFlipScreen(CurrentScreen))
|
Core.SetScreen(New VoltorbFlip.VoltorbFlipScreen(CurrentScreen))
|
||||||
|
IsReady = True
|
||||||
|
CanContinue = False
|
||||||
|
|
||||||
If CurrentScreen.Identification = Screen.Identifications.OverworldScreen Then
|
If CurrentScreen.Identification = Screen.Identifications.OverworldScreen Then
|
||||||
If VoltorbFlip.VoltorbFlipScreen.TotalCoins > 0 Then
|
If VoltorbFlip.VoltorbFlipScreen.TotalCoins > 0 Then
|
||||||
Screen.TextBox.Show("You've won" & " " & VoltorbFlip.VoltorbFlipScreen.TotalCoins & " " & "Coins!")
|
Screen.TextBox.Show("You've won" & " " & VoltorbFlip.VoltorbFlipScreen.TotalCoins & " " & "Coins!")
|
||||||
Core.Player.Coins += VoltorbFlip.VoltorbFlipScreen.TotalCoins
|
Core.Player.Coins += VoltorbFlip.VoltorbFlipScreen.TotalCoins
|
||||||
VoltorbFlip.VoltorbFlipScreen.TotalCoins = 0
|
VoltorbFlip.VoltorbFlipScreen.TotalCoins = 0
|
||||||
CanContinue = False
|
|
||||||
Else
|
Else
|
||||||
Screen.TextBox.Show("Too bad, you didn't win~any Coins!*Better luck next time!")
|
Screen.TextBox.Show("Too bad, you didn't win~any Coins!*Better luck next time!")
|
||||||
End If
|
End If
|
||||||
IsReady = True
|
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
Screen.TextBox.Show("Your Coin Case is already full!")
|
Screen.TextBox.Show("Your Coin Case is already full!")
|
||||||
|
|
|
@ -89,9 +89,9 @@
|
||||||
/build:Fonts/BMP/Unown.png
|
/build:Fonts/BMP/Unown.png
|
||||||
|
|
||||||
#begin Fonts/BMP/VoltorbFlipFont.png
|
#begin Fonts/BMP/VoltorbFlipFont.png
|
||||||
/importer:TextureImporter
|
/importer:LocalizedFontTextureImporter
|
||||||
/processor:LocalizedFontTextureProcessor
|
/processor:LocalizedFontTextureProcessor
|
||||||
/processorParam:DefaultCharacter=?
|
/processorParam:DefaultCharacter=
|
||||||
/processorParam:FirstCharacter=
|
/processorParam:FirstCharacter=
|
||||||
/processorParam:PremultiplyAlpha=True
|
/processorParam:PremultiplyAlpha=True
|
||||||
/processorParam:TextureFormat=Color
|
/processorParam:TextureFormat=Color
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 448 B After Width: | Height: | Size: 447 B |
Loading…
Reference in New Issue