⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 controlrcx.bas

📁 机器人程序
💻 BAS
字号:
Attribute VB_Name = "ControlRCX"
'ControlRCX.bas
'Contain some funcition that they could control RCX to do something.
'Some of them are interfaces

'- - - - - - - - - - - - - - - - - - - - - - - - - -

Option Explicit


'初始化,Phantom 控件
Public Sub InitPhantom()
   If Have_Init_IRTower = True Then Exit Sub
   GRVBMain.GRRCX.Brick = RCX2
   GRVBMain.GRRCX.InitComm
   Have_Init_IRTower = True
End Sub

'向 RCX 发送信息
'Send a Message to RCX about Position Infomation.(mx,my) (1<=mx,my<=13),'it is an interface

Public Sub SendPosToRCX(ByVal mx As Integer, ByVal my As Integer, ByVal colour As Integer)
  Dim stone As String
  Dim SendNum As Integer
  
  If (optPlayWith = PLAY_ROBOT) Then
    InitPhantom
      
    RCXStoneNum = RCXStoneNum + 1
    
    If RCXStoneNum > 26 Then
      RCXStoneNum = 1
    End If
    
    If (RCXStoneNum <= 13) Then
      SendNum = RCXStoneNum
    Else
      SendNum = (RCXStoneNum - 13) * (-1)
    End If
        
    GRVBMain.GRRCX.SetVar 3, SRC_CON, SendNum
    GRVBMain.GRRCX.SetVar 4, SRC_CON, 14 - mx
    GRVBMain.GRRCX.SetVar 5, SRC_CON, 14 - my
  End If
  
  If (colour = BLACK) Then stone = "黑" Else stone = "白"
  ToList stone & " -> " & str$(mx) & str$(my)
End Sub

'处理从RCX发回的信息
Public Sub Receive(ByVal RecNum As Integer)

  Select Case RecNum
  
    '机器下完了
    Case PB_FINISH
            
      If optMode = MODE_RvsR Then
        RobotPlay
      ElseIf optMode = MODE_MvsR Then
        'TellManplay
        'nowPlayer = MAN_PLAY
      End If
      
    '人按了钮
    'Case PB_PUSH
      '图像处理 -> 找出不同 -> 人下棋 -> 机器人下棋
    '  FindNew
    
    '失败或有错
    Case PB_FAIL
      GRSpeak "RCX 出错了!即将退出"
      Over
  End Select

End Sub

'- - - - - - - - - - - - - - - - - - - - - - - - - -

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -