Logic GetPlayerScore Method Delta Engine Documentation

Namespace: Drench.Logics
Assembly: Drench (in Drench.exe) Version: 1.1.1.0 (1.1.1)
Syntax

public int GetPlayerScore(
	int player
)

Return Value

Type: Int32
Remarks

Tests: Drench.Tests.Logics.TwoPlayerLogicTests
Remarks

Tests: Drench.Tests.Logics.SinglePlayerLogicTests
Examples

5 unit tests call Drench.Logics.Logic.GetPlayerScore(System.Int32)
[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));
}
Examples

2 unit tests call Drench.Logics.Logic.GetPlayerScore(System.Int32)
[Test]
public void GameIsNotFinishedAfterFirstMove()
{
    bool isGameFinished = false;
    logic.GameFinished += () => isGameFinished = true;
    logic.MakeMove(Color.Red);
    Assert.IsFalse(logic.IsGameOver);
    Assert.IsFalse(isGameFinished);
    Assert.AreEqual(1, logic.GetPlayerScore(0));
}
[Test]
public void WhenBoardIsAllTheSameColorGameIsFinished()
{
    bool isGameFinished = false;
    logic.GameFinished += () => isGameFinished = true;
    MakeWinningMove();
    Assert.IsTrue(logic.IsGameOver);
    Assert.IsTrue(isGameFinished);
    Assert.AreEqual(BoardTests.Width * BoardTests.Height, logic.GetPlayerScore(0));
}
See Also