Inheritance Hierarchy
Drench.Logics Logic
Drench.Logics TwoPlayerLogic
Drench.Logics HumanVsAiLogic
Drench.Logics TwoHumanLogic
Namespace: Drench.Logics
Assembly: Drench (in Drench.exe) Version: 1.1.1.0 (1.1.1)
Syntax
The TwoPlayerLogic type exposes the following members.
Constructors
Name | Description | |
---|---|---|
![]() | TwoPlayerLogic(Board Data) | Initializes a new instance of the TwoPlayerLogic class |
![]() | TwoPlayerLogic(Int32, Int32) | Initializes a new instance of the TwoPlayerLogic class |
Methods
Name | Description | |
---|---|---|
![]() | CheckForGameOver | (Inherited from Logic.) |
![]() | GameOver | (Inherited from Logic.) |
![]() | GetPlayerScore | (Inherited from Logic.) |
![]() | GetPlayerTurnsTaken | (Inherited from Logic.) |
![]() | MakeMove | (Inherited from Logic.) |
![]() | Pass | (Inherited from Logic.) |
![]() | Reset | (Inherited from Logic.) |
Fields
Name | Description | |
---|---|---|
![]() | homeSquares | (Inherited from Logic.) |
![]() | turns | (Inherited from Logic.) |
Properties
Name | Description | |
---|---|---|
![]() | ActivePlayer | (Inherited from Logic.) |
![]() | IsGameOver | (Inherited from Logic.) |
![]() | LastPlayerPassed | (Inherited from Logic.) |
Events
Name | Description | |
---|---|---|
![]() | GameFinished | (Inherited from Logic.) |
Remarks
Examples
[Test] public void FirstMoveChangesTopLeftColorAndActivePlayer() { bool isGameFinished = false; logic.GameFinished += () => isGameFinished = true; logic.MakeMove(Color.Red); Assert.AreEqual(Color.Red, logic.Board.GetColor(0, 0)); Assert.IsFalse(isGameFinished); Assert.AreEqual(1, logic.ActivePlayer); Assert.AreEqual(1, logic.GetPlayerScore(0)); }
[Test] public void SecondMoveChangesBottomRightColorAndActivePlayer() { bool isGameFinished = false; logic.GameFinished += () => isGameFinished = true; logic.MakeMove(Color.Red); logic.MakeMove(Color.Green); Assert.AreEqual(Color.Green, logic.Board.GetColor(BoardTests.Width - 1, BoardTests.Height - 1)); Assert.IsFalse(isGameFinished); Assert.AreEqual(0, logic.ActivePlayer); Assert.AreEqual(1, logic.GetPlayerScore(1)); }
[Test] public void ThirdMoveChangesTopLeftColorAndActivePlayer() { bool isGameFinished = false; logic.GameFinished += () => isGameFinished = true; logic.MakeMove(Color.Red); logic.MakeMove(Color.Green); logic.MakeMove(Color.Purple); Assert.AreEqual(Color.Purple, logic.Board.GetColor(0, 0)); Assert.IsFalse(isGameFinished); Assert.AreEqual(1, logic.ActivePlayer); Assert.AreEqual(1, logic.GetPlayerScore(0)); }
See Also