ロボット専用のPython#

導入#

VRローバーロボットには、ドライブトレイン、距離センサー、およびローバーレスキュープレイグラウンド固有のアクションが含まれています。

Rover Rescue Playgroundでは、すべての標準VEXcode VRメソッドが利用可能です。以下に、Playground固有の利用可能なメソッドの一覧を示します。

駆動系 - VRローバーの移動と監視。

  • アクション

    • drive - VR ローバーを永久に前進または後退させます。

    • drive_for - VR Rover を特定の距離だけ前進または後退させます。

    • turn - VR ローバーを永久に左または右に回転させます。

    • turn_for - VR Rover を特定の角度だけ左右に回転させます。

    • turn_to_heading - VR Rover を -359 度から 359 度までの特定の方向に向けて回転させます。

    • drive_to - VR ローバーを選択したオブジェクトに向かってまっすぐ走らせます。

    • turn_to - VR ローバーを選択したオブジェクトの方に向けます。

    • go_to - VR ローバーを旋回させて選択したオブジェクトまで移動させます。

    • stop - VR ローバーの動きを停止します。

  • ミューテーター

    • set_heading – VR Rover の現在の進行方向を新しい進行方向に変更します。

    • set_timeout - VR Rover が動作を完了しようとする時間を設定します。

    • set_drive_velocity – VR Roverに走行速度を指示します。

    • set_turn_velocity – VR Roverに旋回速度を指示します。

  • ゲッターズ

    • heading - VR Rover の現在の方位を 0 ~ 359.99 度の範囲で返します。

    • is_done - VR Rover の移動が完了したかどうかを返します。

    • is_moving - VR Rover が移動しているかどうかを返します。

コンソール – コンソールに出力し、値を監視します。

  • 印刷

    • brain.print — コンソールにテキスト、数値、または変数値を表示します。

    • brain.new_line — コンソールカーソルを次の行の先頭に移動します。

    • brain.set_print_color — コンソールに表示されるテキストの色を設定します。

    • brain.clear — コンソールからすべての行をクリアします。

  • モニター

    • monitor_variable — 1 つ以上の定義済み変数をモニター タブに追加します。

    • monitor_sensor — モニター タブに 1 つ以上のセンサー値を追加します。

センシング - ローバーの距離センサーで近くの物体を検出します。

  • 距離

    • found_object - 距離センサーがオブジェクトを検出したかどうかを返します。

    • get_distance - 検出された最も近いオブジェクトまでの距離を返します。

アクション - ローバーのリソース、敵、および内蔵AIシステムとインタラクトする。

  • アクション

    • pickup - 鉱物を拾います。

    • drop - 鉱物をドロップします。

    • use - 鉱物を使用してエネルギーを回復します。

    • absorb_radiation - 敵からの放射線を吸収します。

    • standby - バッテリー残量がしきい値に達するまで、VR Rover をスタンバイ モードにします。

  • ゲッターズ

    • angle - オブジェクトの方向を度数で返します。

    • get_distance - オブジェクトまでの距離をミリメートルまたはインチで返します。

    • location - オブジェクトの X 座標または Y 座標をミリメートルまたはインチ単位で返します。

    • battery - VR Rover のバッテリーレベルを返します。

    • minerals_stored - VR ローバーが運んでいる鉱物の数を返します。

    • storage_capacity - VR Rover の積載容量を返します。

    • level - VR ローバーの現在のレベルを返します。

    • exp - VR Rover の現在の経験値を返します。

    • enemy_level - 最も近い検出された敵のレベルを返します。

    • enemy_radiation - 最も近い検出された敵の放射線を返します。

    • detects検出 - VR ローバーが検出範囲内で鉱物または敵を検出したかどうかを返します。

    • sees - VR Rover が視界範囲内のオブジェクトを認識しているかどうかを返します。

    • under_attack - VR ローバーが現在攻撃を受けているかどうかを返します。

  • コールバック

    • on_under_attack - VR ローバーが攻撃されたときにコールバックを実行します。

    • on_level_up - VR Rover がレベルアップしたときにコールバックを実行します。

このページに掲載されている例では、Playgroundのデフォルトの開始位置を使用しています。

パワートレイン#

駆動系はVRローバーの走行と旋回を制御します。駆動系は前進、後退、左折、右折、方向転換、鉱物、敵、基地への移動が可能です。

行動#

ドライブ#

ドライブ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)

ドライブ_for#

drive_for は、VR ローバーを特定の距離だけ前進または後退させます。プロジェクトは、VR ローバーの移動が完了するまで待機し、その後次のコードが実行されます。

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

パラメータ

説明

direction

VR Rover の移動方向: FORWARD または REVERSE。

distance

VR Roverが走行する距離。これは、 integer または小数(float )のいずれかになります。

units

距離の単位: INCHES または MM (ミリメートル)。

wait

オプション wait=True (デフォルト) は、VR Rover の移動が完了するまでプロジェクトを待機させ、次のコード行を実行します。2 wait=False は、次のコード行をすぐに実行します。

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

# VR threads — Do not delete
vr_thread(main)

振り向く#

turn と、VRローバーは左右どちらかに永久に回転します。VRローバーは、運転や停止などの別の操作が与えられるまで回転し続けます。

Usage:
drivetrain.turn(direction)

パラメータ

説明

direction

VRローバーの旋回方向: LEFT または RIGHT。

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

# VR threads — Do not delete
vr_thread(main)

ターン_フォー#

turn_for は、VR Rover を特定の角度だけ左右に回転させます。回転角度は、VR Rover の現在位置を基準としています。プロジェクトは、VR Rover の回転が完了するまで待機し、その後次のコードが実行されます。

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

パラメータ

説明

direction

VRローバーの旋回方向: 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 Rover の旋回が完了するまでプロジェクトを待機させ、次のコード行を実行します。2 wait=False は、次のコード行をすぐに実行します。

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

# VR threads — Do not delete
vr_thread(main)

見出しへ#

方位とは、VR Roverが向いている方向のことで、度数で表されます。0 turn_to_heading 、VR Roverを-359度から359度までの特定の方位に向けます。VR Roverは、目標の方位に到達するために最短の方向へ旋回します。

VRローバーの初期進行方向は0度です。

このプロジェクトでは、VRローバーの旋回が完了するまで、次のコード行の実行を待ちます。

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

パラメータ

説明

heading

VRローバーが向くべき方向(度数) integer は小数、-359から359までの小数値(float)を指定できます。

units

見出し単位: DEGREES。

wait

オプション wait=True (デフォルト) は、VR Rover の旋回が完了するまでプロジェクトを待機させ、次のコード行を実行します。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 ローバーは走行しません。基地は常にターゲットにすることができます。

VRローバーが複数の鉱物または複数の敵を検出した場合、より近い方に向かって走行します。

def main():
    drivetrain.drive_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

ターン_トゥ#

turn_to は、VR Rover を選択したオブジェクトの方に向けます。

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 ローバーは旋回しません。基地は常にターゲットにすることができます。

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 ローバーは走行しません。基地は常にターゲットにすることができます。

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)

変異誘発者#

見出しを設定#

方位とは、VR Roverが向いている方向を度数で表したものです。0 set_heading 、VR Roverの現在の方位を新しい方位値に変更します。

例えば、VRローバーが右を向いた場合、方位を0度に設定すると、その右向きの位置が新たな0度になります。その後、VRローバーはその新たな方位に基づいて他の位置に旋回することができます。

Usage:
drivetrain.set_heading(heading, units)

パラメータ

説明

heading

VR Rover に設定する方位角の値(度)。これは、 integer または小数 (float ) を指定できます。

units

見出し単位: DEGREES。

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

# VR threads — Do not delete
vr_thread(main)

set_timeout#

set_timeout は、VR Rover が動作を完了するまでの試行時間を設定します。VR Rover がその時間内に動作を完了できない場合、試行を停止して次のコード行に進みます。これにより、VR Rover が動作中に停止してしまうのを防ぎます。

Usage:
drivetrain.set_timeout(value, units)

パラメータ

説明

value

VR Rover が動作を完了しようと試みる時間。これは、正の整数 integerfloat ) になります。

units

時間単位: SECONDS または MSEC (ミリ秒)。

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

# VR threads — Do not delete
vr_thread(main)

set_drive_velocity#

set_drive_velocity 、VR Rover の走行速度を指定します。パーセンテージが高いほど VR Rover は速く走行し、低いほど遅く走行します。

すべてのプロジェクトは、VRローバーがデフォルトで50%の速度で走行する状態から始まります。

注: 速度を上げるとVRローバーの走行速度は速くなりますが、精度が低下する可能性があります。速度を下げるとVRローバーの走行速度は遅くなりますが、精度は向上する可能性があります。

Usage:
drivetrain.set_drive_velocity(velocity, units)

パラメータ

説明

velocity

0%から100%までの走行速度。0は整数、 integerfloat小数です。

units

速度の単位: PERCENT。

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

# VR threads — Do not delete
vr_thread(main)

set_turn_velocity#

set_turn_velocity VR Rover の旋回速度を指定します。パーセンテージが高いほど VR Rover の旋回速度が速くなり、低いほど旋回速度が遅くなります。

すべてのプロジェクトは、VRローバーがデフォルトで50%の速度で旋回するところから始まります。

注: 速度が速いほどVRローバーの旋回速度は速くなりますが、精度が低下する可能性があります。速度が遅いほどVRローバーの旋回速度は遅くなりますが、精度は向上する可能性があります。

Usage:
drivetrain.set_turn_velocity(velocity, units)

パラメータ

説明

velocity

0%から100%までの旋回速度。0は整数、 integerfloat小数です。

units

速度の単位: PERCENT。

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

# VR threads — Do not delete
vr_thread(main)

ゲッター#

見出し#

方位とは、VRローバーが向いている方向を度数で表したものです。0 heading VRローバーの現在の方位を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 Rover の移動が完了したかどうかをブール値で返します。これは、VR Rover の動きに基づいて他の動作のタイミングを制御するために使用できます。

  • True — VRローバーの移動が完了しました。

  • False — VRローバーはまだ動いています。

This method works together with Drivetrain methods that have the wait parameter, such as drive_for, turn_for, turn_to_heading, drive_to, turn_to, and 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 Roverが移動しているかどうかをブール値で返します。これは、VR Roverの動きに基づいて他の動作のタイミングを制御するために使用できます。

  • 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コンソールが表示され、コンソールと「こんにちは、ロボット!」というテキストが表示されています。

脳.改行#

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行目に「Row 1」、2行目に「Row 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コンソールが表示され、コンソールと、1行目に黒色のテキスト「デフォルトのテキストカラー」、2行目に赤色のテキスト「赤色のテキストカラー」が表示されています。

脳をクリアにする#

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 のモニター タブに 1 つ以上の定義済み変数を追加します。これにより、プロジェクトの実行中に変数の値の変化を監視できます。

変数を正常に監視するには 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 のモニター タブに 1 つ以上のセンサー値を追加します。これにより、プロジェクトの実行中にセンサー値の変化を監視できます。

各センサー値を文字列として指定してください。

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

パラメータ

説明

sensor

The sensor value to monitor, given as a string. To monitor more than one sensor value, separate each sensor value with a comma. Supported sensor identifiers include:

  • Brain
    • brain.timer_time
  • Drivetrain
    • drivetrain.is_done
    • drivetrain.is_moving
    • drivetrain.heading
  • Distance Sensor
    • distance.found_object
    • distance.get_distance
  • Rover
    • 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

鉱物や敵については、対象物が1000mm以内かつVRローバーの視野内にある必要があります。基地はいつでも報告可能です。

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

# VR threads — Do not delete
vr_thread(main)

距離を取得する#

get_distance VR Roverから選択したオブジェクトまでの距離を返します。

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

パラメータ

説明

object

距離を報告する対象物:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

units

オプション。距離の報告に使用する単位: INCHES または MM

鉱物や敵については、対象物が1000mm以内かつVRローバーの視野内にある必要があります。基地はいつでも報告可能です。

障害物や危険物については、この方法は可視物体までの距離を報告します。何も視界に入らない場合は、 1000 mm または 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

鉱物や敵については、対象物が1000mm以内かつVRローバーの視野内にある必要があります。基地はいつでも報告可能です。

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 Rover の積載容量を返します。

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#

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ローバーの検出半径は800mmです。

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ローバーは、1000mm以内、かつ40度の視野角内にある物体を視認できる。

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

# VR threads — Do not delete
vr_thread(main)

攻撃を受けている#

under_attack VR Rover が現在敵から攻撃を受けているかどうかを返します。

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ローバーが攻撃を受けた際に実行される関数。

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 Rover があるレベルから次のレベルに移動したときに実行されるコールバック関数を登録します。

Usage:
rover.on_level_up(callback)

パラメータ

説明

callback

VRローバーがレベルアップした際に実行される関数。

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)