機器人專用 Python#

介紹#

VR 漫遊車機器人包括驅動系統、距離感應器和 漫遊車救援 遊樂場特有的動作。

所有標準的 VEXcode VR 方法均可在 Rover Rescue Playground 中使用。以下是所有 Playground 特有的可用方法清單:

動力系統 - 移動和監控虛擬實境漫遊車。

  • 操作

    • drive - 使 VR 漫遊車無限向前或向後移動。

    • drive_for - 使 VR 漫遊車向前或向後移動指定的距離。

    • turn - 使 VR 漫遊車無限向左或向右轉彎。

    • turn_for - 將 VR 漫遊車向左或向右旋轉指定的度數。

    • turn_to_heading - 將 VR 漫遊車轉向 -359 到 359 度之間的特定航向。

    • drive_to - 將 VR 漫遊車直接駛向選定的物體。

    • turn_to - 將 VR 漫遊車轉向面向選定的物體。

    • go_to - 轉向並將 VR 漫遊車駕駛到選定的物件。

    • stop - 停止 VR 漫遊車的移動。

  • 變異因子

  • Getters

    • heading - 返回 VR Rover 的目前航向,範圍從 0 到 359.99 度。

    • is_done - 返回 VR 漫遊車是否已完成移動。

    • is_moving - 返回 VR 漫遊車是否正在移動。

控制台 – 將資訊列印到控制台並監控數值。

  • 列印

  • 監視器

    • monitor_variable — 在「監視器」標籤中新增一個或多個預定義變數。

    • monitor_sensor — 在監視器標籤上新增一個或多個感測器值。

感知 - 使用探測車的距離感知器探測附近物體。

  • 距離

    • found_object - 返回距離感測器是否偵測到物件。

    • get_distance - 返回到最近偵測到的物件的距離。

操作 - 與探測車的資源、敵人和內建人工智慧系統進行互動。

  • 操作

    • pickup - 拾取礦物。

    • drop - 滴礦物。

    • use - 利用礦物質恢復能量。

    • absorb_radiation - 吸收敵人的輻射。

    • standby - 將 VR Rover 置於待機模式,直到達到電池閾值。

  • Getters

    • angle - 傳回物件的方向(以度為單位)。

    • get_distance - 返回到物件的距離,單位為毫米或英吋。

    • location - 傳回物件的 X 或 Y 座標(以毫米或英吋為單位)。

    • battery - 返回 VR 漫遊車的電池電量。

    • minerals_stored - 返回 VR 漫遊車攜帶的礦物數量。

    • storage_capacity - 返回 VR 漫遊車的承載能力。

    • level - 返回 VR 漫遊車的目前等級。

    • exp - 返回 VR 漫遊車的當前經驗值。

    • enemy_level - 傳回偵測到的最近敵人的等級。

    • enemy_radiation - 傳回偵測到的最近敵人的輻射值。

    • detects - 返回 VR 漫遊車在其探測半徑內是否偵測到礦物或敵人。

    • sees - 返回 VR 漫遊車是否在其視野範圍內看到物體。

    • under_attack - 返回 VR 漫遊車目前是否受到攻擊。

  • 回呼函數

本頁範例使用 Playground 的預設起始位置。

傳動系統#

動力系統控制虛擬實境漫遊車的行駛和轉向。動力系統可以前進或後退、左轉或右轉、轉向指定方向,並朝著礦物、敵人或基地方向行駛。

行動#

駕駛#

drive 使 VR 漫遊車無限前進或後退。 VR 漫遊車將持續移動,直到收到其他指令,例如轉向或停止。

Usage:
drivetrain.drive(direction)

參數

描述

direction

VR Rover 的移動方向: FORWARD 或 REVERSE。

def main():
    drivetrain.drive(FORWARD)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

驅動#

drive_for 使 VR 漫遊車向前或向後移動指定距離。程式會等待 VR 漫遊車移動完畢後,才會執行下一行程式碼。

Usage:
drivetrain.drive_for(direction, distance, units, wait=True)

參數

描述

direction

VR Rover 的移動方向: FORWARD 或 REVERSE。

distance

VR Rover 行駛的距離。這可以是整數 integerfloat)。

units

距離單位: INCHES 或 MM (毫米)。

wait

可選 wait=True (預設值)表示專案等待VR漫遊車完成移動後才執行下一行程式碼。 2 wait=False 表示立即執行下一行程式碼。

def main():
    drivetrain.drive_for(FORWARD, 200, MM)

# VR threads — Do not delete
vr_thread(main)

轉動#

turn 。 VR 漫遊車將持續轉彎,直到收到其他指令,例如行駛或停止。

Usage:
drivetrain.turn(direction)

參數

描述

direction

VR Rover 的方向: LEFT 或 RIGHT。

def main():
    drivetrain.turn(RIGHT)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

轉彎#

turn_for 函數使 VR 漫遊車向左或向右旋轉指定角度。旋轉角度相對於 VR 漫遊車的當前位置。程式會等待 VR 漫遊車完成旋轉後,才會執行下一行程式碼。

Usage:
drivetrain.turn_for(direction, angle, units, wait=True)

參數

描述

direction

VR Rover 的方向: LEFT 或 RIGHT。

angle

The number of degrees the VR Rover turns. This can be an integer or decimal (float).

units

旋轉單位: DEGREES。

wait

可選 wait=True (預設值)使專案等待 VR 漫遊車完成轉向後再執行下一行程式碼。 2 wait=False 使下一行程式碼立即運作。

def main():
    drivetrain.turn_for(RIGHT, 90, DEGREES)

# VR threads — Do not delete
vr_thread(main)

轉向航向#

航向是指虛擬實境漫遊車的朝向,以度為單位。 0 turn_to_heading 表示將虛擬實境漫遊車轉向 -359 度到 359 度之間的特定航向。虛擬實境漫遊車將沿著最短路徑轉向以達到目標航向。

VR探測車的初始航向為0度。

該專案將等待虛擬實境漫遊車完成轉向後,才會執行下一行程式碼。

Usage:
drivetrain.turn_to_heading(heading, units, wait=True)

參數

描述

heading

VR Rover 的朝向,以度為單位。可以是 integer 整數,也可以是 -359 到 359 之間的十進位數(float)。

units

航向單位: DEGREES。

wait

可選 wait=True (預設值)使專案等待 VR 漫遊車完成轉向後再執行下一行程式碼。 2 wait=False 使下一行程式碼立即運作。

def main():
    drivetrain.turn_to_heading(90, DEGREES)

# VR threads — Do not delete
vr_thread(main)

驅動到#

drive_to 將 VR 漫遊車直接駛向選定的物體。

Usage:
drivetrain.drive_to(object, wait=True)

參數

描述

object

VR偵測車將駛向哪個目標:

  • BASE
  • ENEMY
  • MINERALS

wait

可選 wait=True (預設值)使專案等待移動完成後再執行下一行程式碼。 2 wait=False 使下一行程式碼立即運作。

如果在呼叫 drive_to 時,VR 漫遊車的視野範圍內未偵測到礦物或敵人,則 VR 漫遊車不會行駛。基地始終可以被攻擊。

如果虛擬實境探測車探測到多個礦物或多個敵人,它將向最近的目標駛去。

def main():
    drivetrain.drive_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

轉向#

turn_to 將 VR 漫遊車轉向選定的物件。

Usage:
drivetrain.turn_to(object, wait=True)

參數

描述

object

VR偵測車將轉向哪個物體:

  • BASE
  • ENEMY
  • MINERALS

wait

Optional.

  • wait=True (default) — Wait for the turn to finish.
  • wait=False — Start the turn and continue immediately.

如果在呼叫 turn_to 時,VR 探測車的視野範圍內沒有偵測到礦物或敵人,則 VR 探測車不會轉向。基地始終可以被瞄準。

如果虛擬實境探測車探測到多個礦物或多個敵人,它將轉向距離最近的目標。

def main():
    drivetrain.turn_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

跳到#

go_to 轉向並將 VR 漫遊車駕駛到選定的物體上。

Usage:
drivetrain.go_to(object, wait=True)

參數

描述

object

VR偵測車將轉向並駛向哪個物體:

  • BASE
  • ENEMY
  • MINERALS

wait

可選 wait=True (預設值)使專案等待移動完成後再執行下一行程式碼。 2 wait=False 使下一行程式碼立即運作。

如果在呼叫 go_to 時,VR 漫遊車的視野範圍內未偵測到礦物或敵人,則 VR 漫遊車不會行駛。基地始終可以被攻擊。

如果虛擬實境探測車探測到多個礦物或多個敵人,它將移動到距離較近的地點。

def main():
    drivetrain.go_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

停止#

stop 停止 VR 漫遊車的移動。

Usage:
drivetrain.stop()

參數

描述

此方法沒有參數。

def main():
    drivetrain.drive(FORWARD)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

變異體#

設定標題#

航向角是指虛擬實境漫遊車的朝向,以度為單位。 0 set_heading set_heading 實境漫遊車的目前航向角變更為新的航向角值。

例如,如果虛擬實境漫遊車已轉向右側,將航向設定為 0 度,則該右側位置將成為新的 0 度。然後,虛擬實境漫遊車可以根據新的航向轉向其他位置。

Usage:
drivetrain.set_heading(heading, units)

參數

描述

heading

若要為 VR 漫遊車設定的航向值(以度為單位)。這可以是整數 integerfloat)。

units

航向單位: DEGREES。

def main():
    drivetrain.set_heading(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

設定超時#

set_timeout 設定 VR 漫遊車嘗試完成一次移動的超時時間。如果 VR 漫遊車無法在規定時間內完成,它將停止嘗試並執行下一行程式碼。這可以防止 VR 漫遊車卡在某個移動步驟。

Usage:
drivetrain.set_timeout(value, units)

參數

描述

value

The amount of time the VR Rover can try to finish a movement. This can be a positive integer or decimal (float).

units

時間單位: SECONDS 或 MSEC (毫秒)。

def main():
    drivetrain.set_timeout(1, SECONDS)

# VR threads — Do not delete
vr_thread(main)

設定驅動速度#

set_drive_velocity 告訴 VR 漫遊車行駛的速度。百分比越高,VR 漫遊車行駛速度越快;百分比越低,VR 漫遊車行駛速度越慢。

每個項目開始時,VR Rover 預設以 50% 的速度行駛。

注意:速度越高,VR偵測車行駛速度越快,但精度可能越低;速度越低,VR偵測車行駛速度越慢,但精度可能越高。

Usage:
drivetrain.set_drive_velocity(velocity, units)

參數

描述

velocity

行駛速度,範圍從 0% 到 100%。可以是整數 integerfloat)。

units

速度單位: PERCENT。

def main():
    drivetrain.set_drive_velocity(50, PERCENT)

# VR threads — Do not delete
vr_thread(main)

設定轉彎速度#

set_turn_velocity 告訴 VR 漫遊車轉彎的速度。百分比越高,VR 漫遊車轉彎越快;百分比越低,VR 漫遊車轉彎越慢。

每個項目開始時,VR Rover 預設以 50% 的速度轉彎。

注意:速度越高,VR漫遊車的轉彎速度越快,但精準度可能越低;速度越低,VR漫遊車的轉彎速度越慢,但精準度可能越高。

Usage:
drivetrain.set_turn_velocity(velocity, units)

參數

描述

velocity

轉彎速度,範圍從 0% 到 100%。可以是整數 integerfloat)。

units

速度單位: PERCENT。

def main():
    drivetrain.set_turn_velocity(50, PERCENT)

# VR threads — Do not delete
vr_thread(main)

獲取器#

標題#

航向角是指虛擬實境漫遊車的朝向,以度為單位。 0 航向角 heading 範圍從 0 度到 359.99 度。

VR探測車的初始航向為0度。

Usage:
drivetrain.heading(units)

參數

描述

units

航向單位: DEGREES。

def main():
    brain.screen.print(drivetrain.heading(DEGREES))

# VR threads — Do not delete
vr_thread(main)

已完成#

is_done 返回 VR 漫遊車是否已完成移動,回傳值為布林值。這可用於根據 VR 漫遊車的移動狀態控制其他行為的執行時間。

  • True — VR 漫遊車已停止移動。

  • False — VR 探測車仍在移動。

此方法与具有 wait 参数的 Drivetrain 方法配合使用,例如 drive_for、turn_for、turn_to_heading、drive_to、turn_to 和 go_to。

Usage:
drivetrain.is_done()

參數

描述

此方法沒有參數。

def main():
    drivetrain.drive_for(FORWARD, 200, MM, wait=False)
    wait(0.1, SECONDS)
    if drivetrain.is_done():
        brain.screen.print("Drive complete")

# VR threads — Do not delete
vr_thread(main)

正在移動#

is_moving 返回 VR 漫遊車是否正在移動,返回值為布林值。這可用於根據 VR 漫遊車的移動狀態來控制其他行為的執行時機。

  • True — VR 漫遊車正在移動。

  • False — VR 漫遊車未移動。

Usage:
drivetrain.is_moving()

參數

描述

此方法沒有參數。

def main():
    drivetrain.drive_for(FORWARD, 200, MM, wait=False)
    wait(0.1, SECONDS)
    if drivetrain.is_moving():
        brain.screen.print("Still moving")

# VR threads — Do not delete
vr_thread(main)

安慰#

項目運行時,控制台會顯示文字、數字和變數值。控制台方法還可以將遊標移至新行、設定更改顏色後列印的文字顏色、清除控制台以及在「監視器」標籤中新增變數或感測器值。

列印#

大腦列印#

brain.print 使用目前遊標位置在控制台中顯示文字、數字或變數值。

當您希望下一個列印值從新的一行開始時,請使用 brain.new_line。

Usage:
brain.print(value)

參數

描述

value

若要在控制台中顯示的文字、數字或變數值。

def main():
    # Display a message in the Console
    brain.print("Hello, rover!")

# VR threads — Do not delete
vr_thread(main)

VEXcode 控制台,顯示控制台和文字「Hello, robot!」。

大腦.新行#

brain.new_line 將遊標移到控制台下一行的第 1 列。下一個列印的值將顯示在該行。

Usage:
brain.new_line()

參數

描述

此方法沒有參數。

def main():
    # Print on two rows
    brain.print("Row 1")
    brain.new_line()
    brain.print("Row 2")

# VR threads — Do not delete
vr_thread(main)

VEXcode 控制台,顯示控制台,第一行顯示文字“第 1 行”,第二行顯示文字“第 2 行”。

brain.set_print_color#

brain.set_print_color 設定使用此方法後控制台中列印的文字顏色。在專案開始時,控制台文字顏色設定為 BLACK。

Usage:
brain.set_print_color(color)

參數

描述

color

控制台列印文字的顏色:

  • BLACK
  • BLUE
  • GREEN
  • RED

def main():
    # Print text in different colors
    brain.print("Default text color")
    brain.new_line()
    brain.set_print_color(RED)
    brain.print("Red text color")

# VR threads — Do not delete
vr_thread(main)

VEXcode 控制台,顯示控制台和黑色文字「預設文字顏色」(第一行),紅色文字「紅色文字顏色」(第二行)。

腦清#

brain.clear 清除控制台中的所有行並將遊標移回第 1 行。

Usage:
brain.clear()

參數

描述

此方法沒有參數。

def main():
    # Display text, then clear it after two seconds
    brain.print("This will disappear...")
    wait(2, SECONDS)
    brain.clear()

# VR threads — Do not delete
vr_thread(main)

監視器#

監控變數#

monitor_variable 將一個或多個預定義變數新增至 VEXcode 的「監視器」標籤。這樣,您就可以在專案運行時監視變數值的變化。

要成功監控 monitor_variable 變數必須是全域變數。請以字串形式提供每個變數名。

Usage:
monitor_variable(“variable”)
monitor_variable(“variable1”, “variable2”)

參數

描述

variable

要監控的預定義全域變數的名稱,以字串形式給出。若要監控多個變量,請用逗號分隔每個變數名稱。

def main():
    # Monitor the amount of loops
    global loops
    monitor_variable("loops")

    # Drive forward 3 times
    for loops in range(3):
        drivetrain.drive_for(FORWARD, 200, MM)

# VR threads — Do not delete
vr_thread(main)

監控感測器#

monitor_sensor 將一個或多個感測器值新增至 VEXcode 的「監視器」標籤。這樣,您就可以在專案運行時觀察感測器值的變化。

請以字串形式提供每個感測器的值。

Usage:
monitor_sensor(“sensor”)
monitor_sensor(“sensor1”, “sensor2”)

參數

描述

sensor

要监测的传感器值,以字符串形式给出。要监测多个传感器值,请用逗号分隔每个传感器值。支持的传感器标识符包括:

  • 大脑
    • brain.timer_time
  • 传动系统
    • drivetrain.is_done
    • drivetrain.is_moving
    • drivetrain.heading
  • 距离传感器
    • distance.found_object
    • distance.get_distance
  • 车
    • rover.battery
    • rover.minerals_stored
    • rover.level
    • rover.exp
    • rover.storage_capacity
    • rover.under_attack
    • rover.enemy_radiation
    • rover.enemy_level
    • rover.angle
    • rover.location
    • rover.detects
    • rover.sees
    • rover.get_distance

def main():
    # Monitor the rover's battery
    monitor_sensor("rover.battery")
    drivetrain.drive_for(FORWARD, 200, MM)

# VR threads — Do not delete
vr_thread(main)

感測#

距離#

找到的對象#

found_object 返回距離感測器是否偵測到物體。

Usage:
distance.found_object()

參數

描述

此方法沒有參數。

def main():
    if distance.found_object():
        brain.screen.print("Object detected")

# VR threads — Do not delete
vr_thread(main)

取得距離#

get_distance 傳回距離感測器偵測到的最近物件的距離。

Usage:
distance.get_distance(units)

參數

描述

units

距離單位: INCHES 或 MM

def main():
    brain.screen.print(distance.get_distance(MM))

# VR threads — Do not delete
vr_thread(main)

行動#

行動#

撿起#

pickup 拾取礦物。

Usage:
rover.pickup(object)

參數

描述

object

VR偵測車可拾取的物品:

  • MINERALS

def main():
    rover.pickup(MINERALS)

# VR threads — Do not delete
vr_thread(main)

降低#

drop 滴攜帶礦物。

Usage:
rover.drop(object)

參數

描述

object

VR偵測車可丟棄的物品:

  • MINERALS

def main():
    rover.drop(MINERALS)

# VR threads — Do not delete
vr_thread(main)

使用#

use 使用礦物質來恢復能量。礦物質必須存在於地面上才能被利用。

Usage:
rover.use(object)

參數

描述

object

VR偵測車可使用的物件:

  • MINERALS

def main():
    rover.use(MINERALS)

# VR threads — Do not delete
vr_thread(main)

吸收輻射#

absorb_radiation 吸收來自敵人的輻射。

Usage:
rover.absorb_radiation(object)

參數

描述

object

VR偵測車可以吸收下列物體的輻射:

  • ENEMY

def main():
    rover.absorb_radiation(ENEMY)

# VR threads — Do not delete
vr_thread(main)

支援#

standby 將 VR Rover 置於待機模式,直到達到指定的電池閾值。

Usage:
rover.standby(percent)

參數

描述

percent

使 VR Rover 退出待機模式的電池閾值,從 0 到 100。

如果選定的閾值等於或高於目前電池電量,VR Rover 將不會進入待機模式。

def main():
    rover.standby(50)

# VR threads — Do not delete
vr_thread(main)

獲取器#

角度#

angle 傳回所選物件的方向(以度為單位)。

Usage:
rover.angle(object)

參數

描述

object

報告方向的對象:

  • BASE
  • ENEMY
  • MINERALS

對於礦物和敵方目標,目標必須位於虛擬實境探測車的視野範圍內,距離在 1000 毫米以內。基地位置始終可以報告。

def main():
    brain.screen.print(rover.angle(MINERALS))

# VR threads — Do not delete
vr_thread(main)

取得距離#

get_distance 返回 VR 漫遊車到所選物件的距離。

Usage:
rover.get_distance(object, units=MM)

參數

描述

object

需報告距離的目標:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

units

可選。距離單位: INCHES 或 MM

對於礦物和敵方目標,目標必須位於虛擬實境探測車的視野範圍內,距離在 1000 毫米以內。基地位置始終可以報告。

對於障礙物和危險物,此方法會報告可見物體距離。如果視野內沒有障礙物和危險物,則返回 1000 毫米或 39.37 英吋。

def main():
    brain.screen.print(rover.get_distance(MINERALS, MM))

# VR threads — Do not delete
vr_thread(main)

地點#

location 傳回所選物件的 X 或 Y 座標位置。

Usage:
rover.location(object, axis, units)

參數

描述

object

需要報告以下目標的位置:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

axis

要回傳哪個座標:

  • X
  • Y

units

用於報告位置的單位: INCHES 或 MM

對於礦物和敵方目標,目標必須位於虛擬實境探測車的視野範圍內,距離在 1000 毫米以內。基地位置始終可以報告。

def main():
    brain.screen.print(rover.location(MINERALS, X, MM))

# VR threads — Do not delete
vr_thread(main)

電池#

battery 返回 VR Rover 的當前電池電量。

Usage:
rover.battery()

參數

描述

此方法沒有參數。

def main():
    brain.screen.print(rover.battery())

# VR threads — Do not delete
vr_thread(main)

儲存的礦物#

minerals_stored 傳回 VR Rover 目前儲存的礦物數量。

Usage:
rover.minerals_stored()

參數

描述

此方法沒有參數。

def main():
    brain.screen.print(rover.minerals_stored())

# VR threads — Do not delete
vr_thread(main)

儲存容量#

storage_capacity 返回 VR 漫遊車的承載能力。

Usage:
rover.storage_capacity()

參數

描述

此方法沒有參數。

def main():
    brain.screen.print(rover.storage_capacity())

# VR threads — Do not delete
vr_thread(main)

等級#

level 返回 VR 漫遊車的目前等級。

Usage:
rover.level()

參數

描述

此方法沒有參數。

def main():
    brain.screen.print(rover.level())

# VR threads — Do not delete
vr_thread(main)

經驗#

exp 返回 VR 漫遊車目前等級的經驗值數量。

Usage:
rover.exp()

參數

描述

此方法沒有參數。

def main():
    brain.screen.print(rover.exp())

# VR threads — Do not delete
vr_thread(main)

敵方等級#

enemy_level 返回 VR Rover 偵測到的最近敵人的等級。

Usage:
rover.enemy_level()

參數

描述

此方法沒有參數。

當探測車的探測半徑內未偵測到敵人時,此方法返回 0。

def main():
    brain.screen.print(rover.enemy_level())

# VR threads — Do not delete
vr_thread(main)

敵方輻射#

enemy_radiation 傳回 VR Rover 偵測到的最近敵人的輻射值。

Usage:
rover.enemy_radiation()

參數

描述

此方法沒有參數。

當探測車的探測半徑內未偵測到敵人時,此方法返回 0。

def main():
    brain.screen.print(rover.enemy_radiation())

# VR threads — Do not delete
vr_thread(main)

偵測#

detects 返回 VR 探測車在其探測半徑內是否偵測到礦物或敵人。

Usage:
rover.detects(object)

參數

描述

object

待偵測目標:

  • ENEMY
  • MINERALS

VR Rover的探測半徑為800毫米。

def main():
    if rover.detects(MINERALS):
        brain.screen.print("Minerals detected")

# VR threads — Do not delete
vr_thread(main)

看到#

sees VR 漫遊車在其視野範圍內是否看到選定的物體。

Usage:
rover.sees(object)

參數

描述

object

需要查看的對象:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

VR Rover 可以看到 1000 毫米範圍內、40 度視野內的物體。

def main():
    if rover.sees(MINERALS):
        brain.screen.print("Minerals in view")

# VR threads — Do not delete
vr_thread(main)

遭受攻擊#

under_attack 返回 VR 漫遊車目前是否受到敵人的攻擊。

Usage:
rover.under_attack()

參數

描述

此方法沒有參數。

def main():
    if rover.under_attack():
        brain.screen.print("The rover is under attack!")

# VR threads — Do not delete
vr_thread(main)

回呼函數#

遭受攻擊#

on_under_attack 註冊一個回調函數,當 VR 漫遊車受到敵人傷害時運行。

Usage:
rover.on_under_attack(callback)

參數

描述

callback

VR Rover 遭受攻擊時要執行的函數。

def under_attack():
    brain.screen.print("The rover is under attack!")

def main():
    rover.on_under_attack(under_attack)
    wait(0.15, SECONDS)

# VR threads — Do not delete
vr_thread(main)

升級#

on_level_up 註冊一個回呼函數,當 VR 漫遊車從一個等級移動到下一個等級時運行該函數。

Usage:
rover.on_level_up(callback)

參數

描述

callback

VR Rover升級時要執行的函數。

def level_up():
    brain.screen.print("The rover leveled up!")

def main():
    rover.on_level_up(level_up)
    wait(0.15, SECONDS)

# VR threads — Do not delete
vr_thread(main)