- XNA 4.0 Game Development by Example Beginner's Guide(Visual Basic Edition)
- Kurt Jaegers
- 194字
- 2021-08-20 15:50:42
Time for action – falling pieces
- Add a new class to the Flood Control project called
FallingPiece
. - Add the
Inherits
line after the class declaration as follows:Inherits GamePiece
- Add the following declarations to the
FallingPiece
class:Public VerticalOffset As Integer Public Shared FallRate As Integer = 5
- Add a constructor for the
FallingPiece
class:Public Sub New(type As String, verticalOffset As Integer) MyBase.New(type) Me.VerticalOffset = verticalOffset End Sub
- Add a method to update the piece:
Public Sub UpdatePiece() VerticalOffset = CInt(MathHelper.Max(0, VerticalOffset - FallRate)) End Sub
What just happened?
Simpler than a RotatingPiece
, a FallingPiece
is also a child of the GamePiece
class. A FallingPiece
has an offset (how high above its final destination it is currently located) and a falling speed (the number of pixels it will move per update).
As with a RotatingPiece
, the constructor passes the type parameter to its base class constructor, and uses the verticalOffset
parameter to set the VerticalOffset
member. Again, we use the Me.
notation to differentiate the two identifiers of the same name.
Lastly, the UpdatePiece()
method subtracts FallRate
from VerticalOffset
, again using the MathHelper.Max()
method to ensure that the offset does not fall below zero.
推薦閱讀
- 數據要素安全流通
- SQL Server 2016 數據庫教程(第4版)
- 虛擬化與云計算
- Remote Usability Testing
- 網站數據庫技術
- AI時代的數據價值創造:從數據底座到大模型應用落地
- 高維數據分析預處理技術
- PostgreSQL指南:內幕探索
- 中文版Access 2007實例與操作
- MySQL技術內幕:InnoDB存儲引擎
- Hands-On Deep Learning for Games
- Scratch 2.0 Game Development HOTSHOT
- Microsoft Dynamics NAV 2015 Professional Reporting
- MySQL性能調優與架構設計
- 數字化轉型方法論:落地路徑與數據中臺