官术网_书友最值得收藏!

Time for action – GamePiece class methods – part 1 – updating

  1. Add the following methods to the GamePiece class:
    Public Sub SetPiece(type As String, suffix As String)
      _pieceType = type
      _pieceSuffix = suffix
    End Sub
    
    Public Sub SetPiece(type As String)
      SetPiece(type, "")
    End Sub
    
    Public Sub AddSuffix(suffix As String)
      If Not _pieceSuffix.Contains(suffix) Then
        _pieceSuffix &= suffix
      End If
    End Sub
    
    Public Sub RemoveSufix(suffix As String)
      _pieceSuffix = _pieceSuffix.Replace(suffix, "")
    End Sub

    The first two methods are overloads with the same name, but different parameter lists. In a manner similar to the GamePiece constructors, code that wishes to update a GamePiece can pass it a piece type and, optionally, a suffix.

    Additional methods have been added to modify suffixes without changing the pieceType associated with the piece. The AddSuffix() method first checks to see if the piece already contains the suffix. If it does, nothing happens. If it does not, the suffix value passed to the method is added to the _pieceSuffix member variable.

    The RemoveSuffix() method uses the Replace() method of the String class to remove the passed suffix from the _pieceSuffix variable.

Rotating pieces

The heart of the Flood Control play mechanic is the ability of the player to rotate pieces on the game board to form continuous pipes. In order to accomplish this, we can build a table that, given an existing piece type and a rotation direction, supplies the name of the piece type after rotation. We can then implement this code as a switch statement:

Rotating pieces
主站蜘蛛池模板: 佛山市| 珲春市| 安多县| 呈贡县| 铜陵市| 卓资县| 宝兴县| 江孜县| 淮滨县| 天全县| 丰都县| 将乐县| 邯郸县| 沙雅县| 惠来县| 黄龙县| 安远县| 靖边县| 黄浦区| 封开县| 鄱阳县| 买车| 福清市| 永吉县| 社旗县| 平安县| 马鞍山市| 云林县| 麻江县| 工布江达县| 揭西县| 淮安市| 东平县| 洪湖市| 保亭| 开鲁县| 健康| 黔西县| 安义县| 革吉县| 阳原县|