|
|
发表于 2007-2-14 09:39:00
|
显示全部楼层
Re:帮忙改程序(三子棋)
哈,代码我帮你改为VB6中的了,能不能用我就不知道了。
Option Explicit
'我有 范例~~
'http://bbs.gameres.com/showthread.asp?threadid=57729
'看我写的~~
'//==============================================================
'//返回战况
'//玩家
'//AI
'//平局
Private m_room(8) As Integer
Function winner(ByVal D_NONE As Integer, ByVal D_TIE As Integer) As Integer
Dim WINNING_ROWS(8, 3) As Integer, TOLAL_ROWS As Integer
Dim row As Integer, i As Integer
TOLAL_ROWS = 8
WINNING_ROWS(0, 0) = 0
WINNING_ROWS(0, 1) = 1
WINNING_ROWS(0, 2) = 2
WINNING_ROWS(1, 0) = 3
WINNING_ROWS(1, 1) = 4
WINNING_ROWS(1, 2) = 5
WINNING_ROWS(2, 0) = 6
WINNING_ROWS(2, 1) = 7
WINNING_ROWS(2, 2) = 8
WINNING_ROWS(3, 0) = 0
WINNING_ROWS(3, 1) = 3
WINNING_ROWS(3, 2) = 6
WINNING_ROWS(4, 0) = 1
WINNING_ROWS(4, 1) = 4
WINNING_ROWS(4, 2) = 7
WINNING_ROWS(5, 0) = 2
WINNING_ROWS(5, 1) = 5
WINNING_ROWS(5, 2) = 8
WINNING_ROWS(6, 0) = 0
WINNING_ROWS(6, 1) = 4
WINNING_ROWS(6, 2) = 8
WINNING_ROWS(7, 0) = 2
WINNING_ROWS(7, 1) = 4
WINNING_ROWS(7, 2) = 6
For row = 0 To TOLAL_ROWS
If (m_room(WINNING_ROWS(row, 0)) <> D_NONE) And _
(m_room(WINNING_ROWS(row, 0)) = m_room(WINNING_ROWS(row, 1))) And _
(m_room(WINNING_ROWS(row, 1)) = m_room(WINNING_ROWS(row, 2))) Then
winner = m_room(WINNING_ROWS(row, 0))
Exit Function
End If
Next row
For i = 0 To 10
If i = 9 Then
winner = D_TIE
Exit Function
End If
If m_room(i) = D_NONE Then
winner = D_NONE
Exit Function
End If
Next i
winner = D_NONE
End Function
Private Sub Form_Load()
winner 0, 0
End Sub
|
|