• R/O
  • SSH
  • HTTPS

コミット

タグ
未設定

よく使われているワード(クリックで追加)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

どうぶつしょうぎの完全解析をするGUI


コミットメタ情報

リビジョン10 (tree)
日時2015-07-18 14:27:44
作者bellyoshi

ログメッセージ

変更サマリ

差分

--- doubutu.UI.tests/KomaUtilTest.vb (nonexistent)
+++ doubutu.UI.tests/KomaUtilTest.vb (revision 10)
@@ -0,0 +1,74 @@
1+Imports Microsoft.VisualStudio.TestTools.UnitTesting
2+
3+Imports doubutu.UI.Form
4+
5+
6+
7+'''<summary>
8+'''KomaUtilTest のテスト クラスです。すべての
9+'''KomaUtilTest 単体テストをここに含めます
10+'''</summary>
11+<TestClass()> _
12+Public Class KomaUtilTest
13+
14+
15+ Private testContextInstance As TestContext
16+
17+ '''<summary>
18+ '''現在のテストの実行についての情報および機能を
19+ '''提供するテスト コンテキストを取得または設定します。
20+ '''</summary>
21+ Public Property TestContext() As TestContext
22+ Get
23+ Return testContextInstance
24+ End Get
25+ Set(value As TestContext)
26+ testContextInstance = Value
27+ End Set
28+ End Property
29+
30+#Region "追加のテスト属性"
31+ '
32+ 'テストを作成するときに、次の追加属性を使用することができます:
33+ '
34+ 'クラスの最初のテストを実行する前にコードを実行するには、ClassInitialize を使用
35+ '<ClassInitialize()> _
36+ 'Public Shared Sub MyClassInitialize(ByVal testContext As TestContext)
37+ 'End Sub
38+ '
39+ 'クラスのすべてのテストを実行した後にコードを実行するには、ClassCleanup を使用
40+ '<ClassCleanup()> _
41+ 'Public Shared Sub MyClassCleanup()
42+ 'End Sub
43+ '
44+ '各テストを実行する前にコードを実行するには、TestInitialize を使用
45+ '<TestInitialize()> _
46+ 'Public Sub MyTestInitialize()
47+ 'End Sub
48+ '
49+ '各テストを実行した後にコードを実行するには、TestCleanup を使用
50+ '<TestCleanup()> _
51+ 'Public Sub MyTestCleanup()
52+ 'End Sub
53+ '
54+#End Region
55+
56+
57+ '''<summary>
58+ '''OppositeKoma のテスト
59+ '''</summary>
60+ <TestMethod()> _
61+ Public Sub OppositeKomaTest()
62+ Assert.AreEqual(Koma.GoteHI, KomaUtil.OppositeKoma(Koma.SenteHI))
63+ Assert.AreEqual(Koma.GoteKI, KomaUtil.OppositeKoma(Koma.SenteKI))
64+ Assert.AreEqual(Koma.GoteLI, KomaUtil.OppositeKoma(Koma.SenteLI))
65+ Assert.AreEqual(Koma.GoteNI, KomaUtil.OppositeKoma(Koma.SenteNI))
66+ Assert.AreEqual(Koma.GoteZO, KomaUtil.OppositeKoma(Koma.SenteZO))
67+ Assert.AreEqual(Koma.SenteHI, KomaUtil.OppositeKoma(Koma.GoteHI))
68+ Assert.AreEqual(Koma.SenteKI, KomaUtil.OppositeKoma(Koma.GoteKI))
69+ Assert.AreEqual(Koma.SenteLI, KomaUtil.OppositeKoma(Koma.GoteLI))
70+ Assert.AreEqual(Koma.SenteNI, KomaUtil.OppositeKoma(Koma.GoteNI))
71+ Assert.AreEqual(Koma.SenteZO, KomaUtil.OppositeKoma(Koma.GoteZO))
72+
73+ End Sub
74+End Class
--- doubutu.UI.tests/My Project/AssemblyInfo.vb (nonexistent)
+++ doubutu.UI.tests/My Project/AssemblyInfo.vb (revision 10)
@@ -0,0 +1,37 @@
1+Imports System
2+Imports System.Reflection
3+Imports System.Runtime.InteropServices
4+
5+' アセンブリに関する一般情報は以下の属性セットを通して制御されます。
6+' アセンブリに関連付けられている情報を変更するには、
7+' これらの属性値を変更してください。
8+
9+' アセンブリ属性の値を確認します。
10+
11+<Assembly: AssemblyTitle("doubutu.UI.tests")>
12+<Assembly: AssemblyDescription("")>
13+<Assembly: AssemblyCompany("")>
14+<Assembly: AssemblyProduct("doubutu.UI.tests")>
15+<Assembly: AssemblyCopyright("Copyright © 2015")>
16+<Assembly: AssemblyTrademark("")>
17+
18+<Assembly: CLSCompliant(True)>
19+
20+<Assembly: ComVisible(False)>
21+
22+'このプロジェクトが COM に公開される場合、次の GUID がタイプ ライブラリの ID になります。
23+<Assembly: Guid("2300f9db-cee6-47a4-9a92-61199aad88e5")>
24+
25+' アセンブリのバージョン情報は、以下の 4 つの値で構成されています:
26+'
27+' Major Version
28+' Minor Version
29+' Build Number
30+' Revision
31+'
32+' すべての値を指定するか、下のように '*' を使ってビルドおよびリビジョン番号を
33+' 既定値にすることができます:
34+' <Assembly: AssemblyVersion("1.0.*")>
35+
36+<Assembly: AssemblyVersion("1.0.0.0")>
37+<Assembly: AssemblyFileVersion("1.0.0.0")>
--- doubutu.UI.Form/Board.vb (nonexistent)
+++ doubutu.UI.Form/Board.vb (revision 10)
@@ -0,0 +1,41 @@
1+Public Class Board
2+
3+ Const SIZE_X As Integer = 3
4+ Const SIZE_Y As Integer = 4
5+
6+ ''' <summary>
7+ ''' 盤枠
8+ ''' </summary>
9+ ''' <remarks></remarks>
10+ Private _Cells(SIZE_X + 2, SIZE_Y + 2)
11+
12+ ''' <summary>
13+ ''' 持ち駒
14+ ''' </summary>
15+ ''' <remarks></remarks>
16+ Private _Capured(5) As Integer
17+
18+ ''' <summary>
19+ ''' 取った駒の持ち駒のインデックスを返す
20+ ''' </summary>
21+ ''' <param name="komaval"></param>
22+ ''' <returns></returns>
23+ ''' <remarks></remarks>
24+ Private Shared Function CapuredKomaIndex(ByVal komaval As Koma) As Koma
25+ '先手のひよこ,ぞう,きりん」,「後手のひよこ,ぞう,きりんの順
26+ Select Case komaval
27+ Case Koma.SenteHI
28+ Return 0
29+ Case Koma.SenteZO
30+ Return 1
31+ Case Koma.SenteKI
32+ Return 2
33+ Case Koma.GoteHI
34+ Return 3
35+ Case Koma.GoteZO
36+ Return 4
37+ Case Koma.GoteKI
38+ Return 5
39+ End Select
40+ End Function
41+End Class
--- doubutu.UI.Form/Koma.vb (nonexistent)
+++ doubutu.UI.Form/Koma.vb (revision 10)
@@ -0,0 +1,57 @@
1+Public Enum Koma
2+ ''' <summary>
3+ ''' 空
4+ ''' </summary>
5+ ''' <remarks></remarks>
6+ Empty = 0
7+ ''' <summary>
8+ ''' ライオン
9+ ''' </summary>
10+ ''' <remarks></remarks>
11+ SenteLI = 1
12+ ''' <summary>
13+ ''' きりん
14+ ''' </summary>
15+ ''' <remarks></remarks>
16+ SenteKI = 2
17+ ''' <summary>
18+ ''' ぞう
19+ ''' </summary>
20+ ''' <remarks></remarks>
21+ SenteZO = 3
22+ ''' <summary>
23+ ''' ひよこ
24+ ''' </summary>
25+ ''' <remarks></remarks>
26+ SenteHI = 4
27+ ''' <summary>
28+ ''' にわとり
29+ ''' </summary>
30+ ''' <remarks></remarks>
31+ SenteNI = 5
32+ ''' <summary>
33+ ''' ライオン
34+ ''' </summary>
35+ ''' <remarks></remarks>
36+ GoteLI = 6
37+ ''' <summary>
38+ ''' きりん
39+ ''' </summary>
40+ ''' <remarks></remarks>
41+ GoteKI = 7
42+ ''' <summary>
43+ ''' ぞう
44+ ''' </summary>
45+ ''' <remarks></remarks>
46+ GoteZO = 8
47+ ''' <summary>
48+ ''' ひよこ
49+ ''' </summary>
50+ ''' <remarks></remarks>
51+ GoteHI = 9
52+ ''' <summary>
53+ ''' にわとり
54+ ''' </summary>
55+ ''' <remarks></remarks>
56+ GoteNI = 10
57+End Enum
--- doubutu.UI.Form/Image/ImageLoader.vb (nonexistent)
+++ doubutu.UI.Form/Image/ImageLoader.vb (revision 10)
@@ -0,0 +1,58 @@
1+Imports System.Reflection
2+
3+Namespace Image
4+
5+ Public Class ImageLoader
6+
7+ Public Shared _instance As New ImageLoader
8+ Public Shared Function GetInstance() As ImageLoader
9+ Return _instance
10+ End Function
11+
12+ Private Sub New()
13+ End Sub
14+
15+ Private _komaBitmap(10) As Bitmap
16+
17+ Private _isBoardViewRotated As Boolean
18+
19+ Private Function GetBitmapFromResource(ByVal imageName As String) As Bitmap
20+ Dim executingAssembly As Assembly = Assembly.GetExecutingAssembly()
21+ Return New Bitmap(executingAssembly.GetManifestResourceStream(String.Format("doubutu.checkState.{0}", imageName)))
22+ End Function
23+
24+
25+ Private Sub GetResourcesFromExecutingAssembly()
26+
27+ _komaBitmap(Koma.SenteHI) = GetBitmapFromResource("senteHiyoko.bmp")
28+ _komaBitmap(Koma.SenteKI) = GetBitmapFromResource("senteKirin.bmp")
29+ _komaBitmap(Koma.SenteLI) = GetBitmapFromResource("senteLion.bmp")
30+ _komaBitmap(Koma.SenteNI) = GetBitmapFromResource("senteNiwatori.bmp")
31+ _komaBitmap(Koma.SenteZO) = GetBitmapFromResource("senteZou.bmp")
32+ _komaBitmap(Koma.GoteHI) = GetBitmapFromResource("goteHiyoko.bmp")
33+ _komaBitmap(Koma.GoteKI) = GetBitmapFromResource("goteKirin.bmp")
34+ _komaBitmap(Koma.GoteLI) = GetBitmapFromResource("goteLion.bmp")
35+ _komaBitmap(Koma.GoteNI) = GetBitmapFromResource("goteNiwatori.bmp")
36+ _komaBitmap(Koma.GoteZO) = GetBitmapFromResource("goteZou.bmp")
37+
38+ End Sub
39+
40+ Public Sub Load()
41+ GetResourcesFromExecutingAssembly()
42+ End Sub
43+
44+ Public Sub SetBoardBiewRotated(ByVal isBoardViewRotated As Boolean)
45+ Me._isBoardViewRotated = isBoardViewRotated
46+ End Sub
47+
48+ Public Function GetKomaImage(koma As Byte) As Bitmap
49+ Dim image As Bitmap = _komaBitmap(koma)
50+ If Me._isBoardViewRotated Then
51+ koma = KomaUtil.OppositeKoma(koma)
52+ image = _komaBitmap(koma)
53+ End If
54+ Return image
55+ End Function
56+ End Class
57+
58+End Namespace
--- doubutu.UI.Form/KomaUtil.vb (nonexistent)
+++ doubutu.UI.Form/KomaUtil.vb (revision 10)
@@ -0,0 +1,26 @@
1+Public Class KomaUtil
2+
3+ Public Shared Function OppositeKoma(ByVal komaVal As Koma) As Koma
4+ If komaVal = Koma.Empty Then
5+ Return Koma.Empty
6+ End If
7+ If komaVal >= 6 Then
8+ Return komaVal - 5
9+ Else
10+ Return komaVal + 5
11+ End If
12+ End Function
13+
14+ Public Shared Function CaputringKoma(ByVal komaVal As Koma) As Koma
15+ If komaVal = Koma.GoteNI Then
16+ Return Koma.SenteHI
17+ End If
18+ If komaVal = Koma.SenteNI Then
19+ Return Koma.GoteHI
20+ End If
21+ Return OppositeKoma(komaVal)
22+ End Function
23+
24+
25+
26+End Class