svnno****@sourc*****
svnno****@sourc*****
2016年 2月 25日 (木) 16:13:43 JST
Revision: 82 http://sourceforge.jp/projects/shoginextmove/scm/svn/commits/82 Author: bellyoshi Date: 2016-02-25 16:13:43 +0900 (Thu, 25 Feb 2016) Log Message: ----------- Modified Paths: -------------- Quantum/QuantumShogi/QuantumShogi.Logic/MoveDirection.cs Quantum/QuantumShogi/QuantumShogi.Logic/PieceNumbersOfSide.cs Quantum/QuantumShogi/QuantumShogi.Logic.Test/QuantumShogi.Logic.Test.csproj Added Paths: ----------- Quantum/QuantumShogi/QuantumShogi.Logic.Test/PieceNumbersOfSideTests.cs Modified: Quantum/QuantumShogi/QuantumShogi.Logic/MoveDirection.cs =================================================================== --- Quantum/QuantumShogi/QuantumShogi.Logic/MoveDirection.cs 2016-02-24 02:47:30 UTC (rev 81) +++ Quantum/QuantumShogi/QuantumShogi.Logic/MoveDirection.cs 2016-02-25 07:13:43 UTC (rev 82) @@ -33,27 +33,6 @@ this.IsLine = isLine; } - MoveDirection upper = new MoveDirection(0, -1, false);//前進 - MoveDirection upperLeft = new MoveDirection(1, -1, false);//左上 - MoveDirection upperRight = new MoveDirection(-1, -1, true);//右上 - MoveDirection down = new MoveDirection(0, 1, false);//下がる - MoveDirection downLeft = new MoveDirection(1, 1, false); - MoveDirection downRight = new MoveDirection(-1, 1, false); - MoveDirection right = new MoveDirection(-1, 0, false); - MoveDirection left = new MoveDirection(1, 0, false); - //飛びききにはすぐ1歩動く方向は含めない。 - //例えば香車は直進すると定義されるが、直進+一歩前進と重複して定義する。 - MoveDirection straightUpper = new MoveDirection(0, -1, true);//前へ直進 - MoveDirection straightUpperLeft = new MoveDirection(1, -1, false); - MoveDirection straightUpperRight = new MoveDirection(-1, -1, true); - MoveDirection straightDown = new MoveDirection(0, 1, false); - MoveDirection straightDownLeft = new MoveDirection(1, 1, false); - MoveDirection straightDownRight = new MoveDirection(-1, 1, false); - MoveDirection straightRight = new MoveDirection(-1, 0, false); - MoveDirection straightLeft = new MoveDirection(1, 0, false); - - MoveDirection upper2Left = new MoveDirection(1, -2, false);//桂馬飛び - MoveDirection upper2Right = new MoveDirection(-1, -2, true);//桂馬飛び } } Modified: Quantum/QuantumShogi/QuantumShogi.Logic/PieceNumbersOfSide.cs =================================================================== --- Quantum/QuantumShogi/QuantumShogi.Logic/PieceNumbersOfSide.cs 2016-02-24 02:47:30 UTC (rev 81) +++ Quantum/QuantumShogi/QuantumShogi.Logic/PieceNumbersOfSide.cs 2016-02-25 07:13:43 UTC (rev 82) @@ -5,11 +5,16 @@ namespace QuantumShogi.Logic { - class PieceNumbersOfSide + public class PieceNumbersOfSide { Piece[] pieces; Piece[][] piecesOfDirection; int[] maxOfpieceDirection; - int[] maxOfpieceType; + public int[] maxOfpieceType { get; } + public PieceNumbersOfSide() + { + //歩,香,桂,銀,金,角,飛,玉の枚数を設定 + maxOfpieceType = new int[] { 9,2,2,2,2,1,1,1}; + } } } Added: Quantum/QuantumShogi/QuantumShogi.Logic.Test/PieceNumbersOfSideTests.cs =================================================================== --- Quantum/QuantumShogi/QuantumShogi.Logic.Test/PieceNumbersOfSideTests.cs (rev 0) +++ Quantum/QuantumShogi/QuantumShogi.Logic.Test/PieceNumbersOfSideTests.cs 2016-02-25 07:13:43 UTC (rev 82) @@ -0,0 +1,29 @@ +using Microsoft.VisualStudio.TestTools.UnitTesting; +using QuantumShogi.Logic; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace QuantumShogi.Logic.Tests +{ + [TestClass()] + public class PieceNumbersOfSideTests + { + [TestMethod()] + public void PieceNumbersOfSideTest() + { + var ps = new PieceNumbersOfSide(); + Assert.AreEqual(Piece.King + 1, ps.maxOfpieceType.Count()); + Assert.AreEqual(9,ps.maxOfpieceType[Piece.Pawn]); + Assert.AreEqual(2, ps.maxOfpieceType[Piece.Lance]); + Assert.AreEqual(2, ps.maxOfpieceType[Piece.Knight]); + Assert.AreEqual(2, ps.maxOfpieceType[Piece.Gold]); + Assert.AreEqual(2, ps.maxOfpieceType[Piece.Silver]); + Assert.AreEqual(1, ps.maxOfpieceType[Piece.Bishop]); + Assert.AreEqual(1, ps.maxOfpieceType[Piece.Rook]); + Assert.AreEqual(1, ps.maxOfpieceType[Piece.King]); + + } + } +} \ No newline at end of file Modified: Quantum/QuantumShogi/QuantumShogi.Logic.Test/QuantumShogi.Logic.Test.csproj =================================================================== --- Quantum/QuantumShogi/QuantumShogi.Logic.Test/QuantumShogi.Logic.Test.csproj 2016-02-24 02:47:30 UTC (rev 81) +++ Quantum/QuantumShogi/QuantumShogi.Logic.Test/QuantumShogi.Logic.Test.csproj 2016-02-25 07:13:43 UTC (rev 82) @@ -54,6 +54,7 @@ </Choose> <ItemGroup> <Compile Include="BoardInitializerTests.cs" /> + <Compile Include="PieceNumbersOfSideTests.cs" /> <Compile Include="UnitTest1.cs" /> <Compile Include="Properties\AssemblyInfo.cs" /> </ItemGroup>