Roboterspezifisches Python#

Einführung#

Der VR Rover-Roboter verfügt über einen Antriebsstrang, einen Distanzsensor und Aktionen, die speziell für den Rover Rescue-Spielplatz entwickelt wurden.

Alle Standardmethoden von VEXcode VR stehen im Rover Rescue Playground zur Verfügung. Nachfolgend finden Sie eine Liste aller verfügbaren Playground-spezifischen Methoden:

Antriebsstrang – Den VR-Rover bewegen und überwachen.

  • Aktionen

    • drive - Bewegt den VR Rover endlos vorwärts oder rückwärts.

    • drive_for - Bewegt den VR Rover vorwärts oder rückwärts über eine bestimmte Distanz.

    • turn - Dreht den VR Rover endlos nach links oder rechts.

    • turn_for - Dreht den VR Rover um eine bestimmte Anzahl von Grad nach links oder rechts.

    • turn_to_heading - Dreht den VR Rover in eine bestimmte Richtung von -359 bis 359 Grad.

    • drive_to - Steuert den VR Rover direkt auf das ausgewählte Objekt zu.

    • turn_to - Dreht den VR Rover so, dass er dem ausgewählten Objekt zugewandt ist.

    • go_to - Dreht und steuert den VR Rover zum ausgewählten Objekt.

    • stop - Stoppt die Bewegung des VR Rovers.

  • Mutatoren

    • set_heading – Ändert die aktuelle Richtung des VR Rovers in eine neue Richtung.

    • set_timeout - Legt fest, wie lange der VR Rover versucht, eine Bewegung abzuschließen.

    • set_drive_velocity – Sagt dem VR Rover, wie schnell er fahren soll.

    • set_turn_velocity – Sagt dem VR Rover, wie schnell er sich drehen soll.

  • Getter

    • heading - Gibt die aktuelle Richtung des VR Rovers von 0 bis 359,99 Grad zurück.

    • is_done - Gibt zurück, ob der VR Rover seine Bewegung beendet hat.

    • is_moving - Gibt zurück, ob sich der VR Rover bewegt.

Konsole – Werte auf der Konsole ausgeben und überwachen.

  • Drucken

    • brain.print — Zeigt Text, Zahlen oder Variablenwerte in der Konsole an.

    • brain.new_line — Verschiebt den Konsolencursor an den Anfang der nächsten Zeile.

    • brain.set_print_color — Legt die Farbe fest, die für in der Konsole ausgegebenen Text verwendet wird.

    • brain.clear — Löscht alle Zeilen aus der Konsole.

  • Monitor

    • monitor_variable — Fügt der Registerkarte „Monitor“ eine oder mehrere vordefinierte Variablen hinzu.

    • monitor_sensor — Fügt dem Monitor-Tab einen oder mehrere Sensorwerte hinzu.

Sensorik – Der Rover erkennt Objekte in der Nähe mithilfe seines Abstandssensors.

  • Distanz

    • found_object - Gibt zurück, ob der Distanzsensor ein Objekt erkennt.

    • get_distance - Gibt die Entfernung zum nächstgelegenen erkannten Objekt zurück.

Aktionen – Interagiere mit den Ressourcen des Rovers, Feinden und den integrierten KI-Systemen.

  • Aktionen

    • pickup - Sammelt Mineralien auf.

    • drop - Lässt Mineralien fallen.

    • use - Nutzt Mineralien zur Wiederherstellung der Energie.

    • absorb_radiation - Absorbiert Strahlung von einem Feind.

    • standby - Versetzt den VR Rover in den Standby-Modus, bis ein bestimmter Batteriestand erreicht ist.

  • Getter

    • angle - Gibt die Richtung zu einem Objekt in Grad zurück.

    • get_distance - Gibt die Entfernung zu einem Objekt in Millimetern oder Zoll zurück.

    • location - Gibt die X- oder Y-Koordinate eines Objekts in Millimetern oder Zoll zurück.

    • battery - Gibt den Batteriestand des VR Rovers zurück.

    • minerals_stored - Gibt zurück, wie viele Mineralien der VR Rover mitführt.

    • storage_capacity - Gibt die Tragfähigkeit des VR Rovers zurück.

    • level - Gibt das aktuelle Level des VR Rovers zurück.

    • exp - Gibt die aktuellen Erfahrungspunkte des VR Rovers zurück.

    • enemy_level - Gibt die Stufe des nächstgelegenen erkannten Gegners zurück.

    • enemy_radiation - Gibt die Strahlung des nächstgelegenen erkannten Feindes zurück.

    • detects - Gibt zurück, ob der VR Rover Mineralien oder Feinde in seinem Erfassungsradius erkennt.

    • sees - Gibt zurück, ob der VR Rover ein Objekt in seinem Sichtfeld sieht.

    • under_attack - Gibt zurück, ob der VR Rover aktuell angegriffen wird.

  • Rückrufe

    • on_under_attack - Führt einen Callback aus, wenn der VR Rover angegriffen wird.

    • on_level_up - Führt einen Callback aus, wenn der VR Rover ein Level aufsteigt.

Die Beispiele auf dieser Seite verwenden die standardmäßige Startposition des Playgrounds.

Antriebsstrang#

Der Antriebsstrang steuert das Fahr- und Kurvenverhalten des VR-Rovers. Er ermöglicht Vorwärts- und Rückwärtsfahrt, Links- und Rechtskurven, Richtungswechsel und das Fahren zu Mineralien, Feinden oder der Basis.

Aktionen#

fahren#

drive , bis er eine andere Aktion ausführt, z. B. Abbiegen oder Anhalten.

Usage:
drivetrain.drive(direction)

Parameter

Beschreibung

direction

Die Bewegungsrichtung des VR Rovers: FORWARD oder REVERSE.

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

# VR threads — Do not delete
vr_thread(main)

fahren_für#

drive_for bewegt den VR-Rover eine bestimmte Strecke vorwärts oder rückwärts. Das Projekt wartet, bis der VR-Rover die Bewegung abgeschlossen hat, bevor die nächste Codezeile ausgeführt wird.

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

Parameter

Beschreibung

direction

Die Bewegungsrichtung des VR Rovers: FORWARD oder REVERSE.

distance

Die vom VR Rover zurückgelegte Strecke. Dies kann eine ganze Zahl integer ) oder eine Dezimalzahl (float ) sein.

units

Die Entfernungseinheit: INCHES oder MM (Millimeter).

wait

Optional. wait=True (Standard) Das Projekt wartet, bis der VR-Rover seine Bewegung abgeschlossen hat, bevor die nächste Codezeile ausgeführt wird. wait=False Die nächste Codezeile wird sofort ausgeführt.

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

# VR threads — Do not delete
vr_thread(main)

drehen#

turn links oder rechts – endlos. Der VR Rover dreht sich so lange, bis er eine andere Aktion ausführt, z. B. fahren oder anhalten.

Usage:
drivetrain.turn(direction)

Parameter

Beschreibung

direction

Die Richtung, in die sich der VR Rover dreht: LEFT oder RIGHT.

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

# VR threads — Do not delete
vr_thread(main)

turn_for#

Der Befehl turn_for dreht den VR-Rover um eine bestimmte Gradzahl nach links oder rechts. Die Drehung erfolgt relativ zur aktuellen Position des VR-Rovers. Das Projekt wartet, bis der VR-Rover die Drehung abgeschlossen hat, bevor die nächste Codezeile ausgeführt wird.

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

Parameter

Beschreibung

direction

Die Richtung, in die sich der VR Rover dreht: LEFT oder RIGHT.

angle

Der Drehwinkel des VR Rovers in Grad. Dies kann eine ganze Zahl integer ) oder eine Dezimalzahl (float ) sein.

units

Die Rotationseinheit: DEGREES.

wait

Optional. wait=True (Standard) Das Projekt wartet, bis der VR-Rover seine Drehung abgeschlossen hat, bevor die nächste Codezeile ausgeführt wird. wait=False Die nächste Codezeile wird sofort ausgeführt.

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

# VR threads — Do not delete
vr_thread(main)

Richtung ändern#

Die Richtung, in die der VR-Rover zeigt, wird in Grad gemessen. turn_to_heading dreht den VR-Rover in eine bestimmte Richtung zwischen -359 und 359 Grad. Der VR-Rover wählt dabei den kürzesten Weg, um die Zielrichtung zu erreichen.

Die Ausgangsrichtung des VR Rovers beträgt 0 Grad.

Das Projekt wartet, bis der VR-Rover die Drehung abgeschlossen hat, bevor die nächste Codezeile ausgeführt wird.

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

Parameter

Beschreibung

heading

Die Richtung, in die der VR-Rover zeigen soll, in Grad. Dies kann eine ganze Zahl integer ) oder eine Dezimalzahl (float) zwischen -359 und 359 sein.

units

Die Überschrifteneinheit: DEGREES.

wait

Optional. wait=True (Standard) Das Projekt wartet, bis der VR-Rover seine Drehung abgeschlossen hat, bevor die nächste Codezeile ausgeführt wird. wait=False Die nächste Codezeile wird sofort ausgeführt.

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

# VR threads — Do not delete
vr_thread(main)

Laufwerk#

drive_to lenkt den VR Rover direkt auf das ausgewählte Objekt zu.

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

Parameter

Beschreibung

object

Zu welchem ​​Objekt fährt der VR Rover?

  • BASE
  • ENEMY
  • MINERALS

wait

Optional. wait=True (Standard) Das Projekt wartet, bis die Bewegung abgeschlossen ist, bevor die nächste Codezeile ausgeführt wird. wait=False Die nächste Codezeile wird sofort ausgeführt.

Wird beim Aufruf von drive_to kein Mineral oder Feind im Sichtfeld des VR-Rovers entdeckt, fährt der VR-Rover nicht. Die Basis kann jederzeit anvisiert werden.

Wenn der VR-Rover mehrere Mineralien oder mehrere Feinde erkennt, fährt er auf die nähere Option zu.

def main():
    drivetrain.drive_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

turn_to#

turn_to dreht den VR Rover so, dass er dem ausgewählten Objekt zugewandt ist.

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

Parameter

Beschreibung

object

Zu welchem ​​Objekt wird sich der VR-Rover drehen?

  • BASE
  • ENEMY
  • MINERALS

wait

Optional.

  • wait=True (Standard) — Warten, bis der Zug beendet ist.
  • wait=False — Den Zug starten und sofort fortfahren.

Wird beim Aufruf von turn_to kein Mineral oder Feind im Sichtfeld des VR-Rovers entdeckt, dreht sich der VR-Rover nicht. Die Basis kann jederzeit anvisiert werden.

Wenn der VR-Rover mehrere Mineralien oder mehrere Feinde erkennt, steuert er die nähere Option an.

def main():
    drivetrain.turn_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

gehe zu#

go_to dreht und fährt den VR Rover zum ausgewählten Objekt.

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

Parameter

Beschreibung

object

Zu welchem ​​Objekt wird der VR-Rover abbiegen und fahren?

  • BASE
  • ENEMY
  • MINERALS

wait

Optional. wait=True (Standard) Das Projekt wartet, bis die Bewegung abgeschlossen ist, bevor die nächste Codezeile ausgeführt wird. wait=False Die nächste Codezeile wird sofort ausgeführt.

Wird beim Aufruf von go_to kein Mineral oder Feind im Sichtfeld des VR-Rovers entdeckt, fährt der VR-Rover nicht. Die Basis kann jederzeit anvisiert werden.

Wenn der VR-Rover mehrere Mineralien oder mehrere Feinde erkennt, fährt er zur näheren Option.

def main():
    drivetrain.go_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

stoppen#

stop stoppt die Bewegung des VR Rovers.

Usage:
drivetrain.stop()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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

# VR threads — Do not delete
vr_thread(main)

Mutatoren#

set_heading#

Die Richtung, in die der VR-Rover zeigt, wird in Grad gemessen. Mit dem Befehl set_heading wird die aktuelle Richtung des VR-Rovers auf einen neuen Wert geändert.

Wenn sich der VR-Rover beispielsweise nach rechts gedreht hat, wird durch Einstellen des Kurses auf 0 Grad diese Position nach rechts zum neuen 0-Grad-Punkt. Anschließend kann der VR-Rover basierend auf diesem neuen Kurs andere Positionen einnehmen.

Usage:
drivetrain.set_heading(heading, units)

Parameter

Beschreibung

heading

Der Kurswert in Grad, der für den VR-Rover eingestellt werden soll. Dies kann eine ganze Zahl ( integer ) oder eine Dezimalzahl (float ) sein.

units

Die Überschrifteneinheit: DEGREES.

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

# VR threads — Do not delete
vr_thread(main)

set_timeout#

set_timeout wird festgelegt, wie lange der VR-Rover versucht, eine Bewegung abzuschließen. Gelingt ihm dies nicht, bricht er den Versuch ab und fährt mit der nächsten Codezeile fort. Dadurch wird verhindert, dass der VR-Rover bei einer Bewegung hängen bleibt.

Usage:
drivetrain.set_timeout(value, units)

Parameter

Beschreibung

value

Die Zeitspanne, in der der VR-Rover versuchen kann, eine Bewegung abzuschließen. Dies kann eine positive ganze Zahl integer ) oder eine Dezimalzahl (float ) sein.

units

Die Zeiteinheit: SECONDS oder MSEC (Millisekunden).

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

# VR threads — Do not delete
vr_thread(main)

set_drive_velocity#

Der Wert set_drive_velocity gibt dem VR-Rover die Fahrgeschwindigkeit vor. Ein höherer Prozentwert beschleunigt den VR-Rover, ein niedrigerer Prozentwert verlangsamt ihn.

Jedes Projekt beginnt damit, dass der VR Rover standardmäßig mit 50 % Geschwindigkeit fährt.

Hinweis: Eine höhere Geschwindigkeit lässt den VR-Rover schneller fahren, kann aber die Präzision verringern. Eine niedrigere Geschwindigkeit lässt den VR-Rover langsamer fahren, kann aber die Präzision erhöhen.

Usage:
drivetrain.set_drive_velocity(velocity, units)

Parameter

Beschreibung

velocity

The velocity to drive with from 0% to 100%. This can be an integer or decimal (float).

units

Die Geschwindigkeitseinheit: PERCENT.

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

# VR threads — Do not delete
vr_thread(main)

set_turn_velocity#

Der Wert set_turn_velocity gibt dem VR-Rover die gewünschte Drehgeschwindigkeit vor. Ein höherer Prozentwert beschleunigt die Drehung, ein niedrigerer Wert verlangsamt sie.

Jedes Projekt beginnt damit, dass sich der VR Rover standardmäßig mit 50 % Geschwindigkeit dreht.

Hinweis: Eine höhere Geschwindigkeit lässt den VR-Rover schneller drehen, aber die Drehgenauigkeit kann geringer sein. Eine niedrigere Geschwindigkeit lässt den VR-Rover langsamer drehen, aber die Drehgenauigkeit kann höher sein.

Usage:
drivetrain.set_turn_velocity(velocity, units)

Parameter

Beschreibung

velocity

The velocity to turn with from 0% to 100%. This can be an integer or decimal (float).

units

Die Geschwindigkeitseinheit: PERCENT.

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

# VR threads — Do not delete
vr_thread(main)

Getter#

Überschrift#

Der Kurs gibt die Richtung an, in die der VR-Rover zeigt, gemessen in Grad. heading liefert den aktuellen Kurs des VR-Rovers von 0 bis 359,99 Grad.

Die Ausgangsrichtung des VR Rovers beträgt 0 Grad.

Usage:
drivetrain.heading(units)

Parameter

Beschreibung

units

Die Überschrifteneinheit: DEGREES.

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

# VR threads — Do not delete
vr_thread(main)

ist_fertig#

Die Funktion is_done gibt als booleschen Wert zurück, ob der VR-Rover seine Bewegung beendet hat (Wert is_done . Dieser Wert kann verwendet werden, um den Zeitpunkt anderer Aktionen basierend auf der Bewegung des VR-Rovers zu steuern.

  • True — Der VR Rover hat seine Bewegung beendet.

  • False — Der VR Rover bewegt sich noch.

Diese Methode funktioniert zusammen mit Drivetrain-Methoden, die den Parameter wait haben, wie zum Beispiel drive_for, turn_for, turn_to_heading, drive_to, turn_to und go_to.

Usage:
drivetrain.is_done()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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)

bewegt sich#

Die Funktion is_moving gibt als booleschen Wert zurück, ob sich der VR-Rover bewegt is_moving . Dieser Wert kann verwendet werden, um den Zeitpunkt anderer Aktionen basierend auf der Bewegung des VR-Rovers zu steuern.

  • True — Der VR Rover bewegt sich.

  • False — Der VR Rover bewegt sich nicht.

Usage:
drivetrain.is_moving()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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)

Konsole#

Die Konsole zeigt während der Projektausführung Text, Zahlen und Variablenwerte an. Mit den Konsolenmethoden lässt sich außerdem der Cursor in eine neue Zeile bewegen, die Textfarbe nach einer Farbänderung festlegen, die Konsole leeren und Variablen oder Sensorwerte zum Monitor-Tab hinzufügen.

Drucken#

Gehirn.print#

brain.print zeigt Text, Zahlen oder Variablenwerte in der Konsole an der aktuellen Cursorposition an.

Verwenden Sie brain.new_line, wenn der nächste ausgegebene Wert in einer neuen Zeile beginnen soll.

Usage:
brain.print(value)

Parameter

Beschreibung

value

Der Text, die Zahl oder der Variablenwert, der in der Konsole angezeigt werden soll.

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

# VR threads — Do not delete
vr_thread(main)

Die VEXcode-Konsole zeigt die Konsole und den Text "Hallo, Roboter!" an.

Gehirn.Neue_Zeile#

brain.new_line wird der Cursor in der Konsole in die erste Spalte der nächsten Zeile gesetzt. Der nächste ausgegebene Wert erscheint in dieser Zeile.

Usage:
brain.new_line()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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)

Die VEXcode-Konsole zeigt die Konsole und den Text "Zeile 1" in der ersten Zeile und "Zeile 2" in der zweiten Zeile an.

brain.set_print_color#

brain.set_print_color wird die Farbe für den in der Konsole ausgegebenen Text nach Anwendung dieser Methode festgelegt. Zu Beginn eines Projekts ist die Textfarbe der Konsole auf BLACK eingestellt.

Usage:
brain.set_print_color(color)

Parameter

Beschreibung

color

Die für den Text in der Konsole zu verwendende Farbe:

  • 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)

Die VEXcode-Konsole zeigt die Konsole und in der ersten Zeile den schwarzen Text „Standardtextfarbe“ und in der zweiten Zeile den roten Text „Rote Textfarbe“.

Gehirn.klar#

brain.clear werden alle Zeilen in der Konsole gelöscht und der Cursor wieder auf Zeile 1 gesetzt.

Usage:
brain.clear()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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#

Monitorvariable#

monitor_variable werden dem Monitor-Tab in VEXcode eine oder mehrere vordefinierte Variablen hinzugefügt. So können Sie die Wertänderung einer Variablen während der Projektausführung beobachten.

Variablen müssen global sein, damit die Überwachung mit monitor_variable erfolgreich funktioniert. Geben Sie jeden Variablennamen als Zeichenkette an.

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

Parameter

Beschreibung

variable

Der Name einer vordefinierten globalen Variable, die überwacht werden soll, wird als Zeichenkette angegeben. Um mehrere Variablen zu überwachen, trennen Sie die Variablennamen durch Kommas.

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#

Der Befehl monitor_sensor fügt dem Monitor-Tab in VEXcode einen oder mehrere Sensorwerte hinzu. Dadurch können Sie die Änderungen der Sensorwerte während der Projektausführung beobachten.

Geben Sie jeden Sensorwert als Zeichenkette an.

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

Parameter

Beschreibung

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)

Sensorik#

Distanz#

gefundenes Objekt#

found_object gibt zurück, ob der Distanzsensor ein Objekt erkennt.

Usage:
distance.found_object()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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

# VR threads — Do not delete
vr_thread(main)

get_distance#

get_distance gibt die Entfernung zum nächstgelegenen erkannten Objekt vom Distanzsensor zurück.

Usage:
distance.get_distance(units)

Parameter

Beschreibung

units

Die Entfernungseinheit: INCHES oder MM

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

# VR threads — Do not delete
vr_thread(main)

Aktionen#

Aktionen#

abholen#

pickup Mineralien ein.

Usage:
rover.pickup(object)

Parameter

Beschreibung

object

Objekte, die der VR-Rover aufnehmen kann:

  • MINERALS

def main():
    rover.pickup(MINERALS)

# VR threads — Do not delete
vr_thread(main)

fallen#

drop Tropfen enthielten Mineralien.

Usage:
rover.drop(object)

Parameter

Beschreibung

object

Objekte, die der VR-Rover abwerfen kann:

  • MINERALS

def main():
    rover.drop(MINERALS)

# VR threads — Do not delete
vr_thread(main)

verwenden#

use verwendet Mineralien zur Energiegewinnung. Mineralien müssen im Boden vorhanden sein, um verwendet werden zu können.

Usage:
rover.use(object)

Parameter

Beschreibung

object

Objekte, die der VR-Rover nutzen kann:

  • MINERALS

def main():
    rover.use(MINERALS)

# VR threads — Do not delete
vr_thread(main)

absorb_radiation#

absorb_radiation absorbiert Strahlung von einem Feind.

Usage:
rover.absorb_radiation(object)

Parameter

Beschreibung

object

Das Objekt, von dem der VR-Rover Strahlung absorbieren kann:

  • ENEMY

def main():
    rover.absorb_radiation(ENEMY)

# VR threads — Do not delete
vr_thread(main)

stehen zu#

standby versetzt den VR Rover in den Standby-Modus, bis der angegebene Batterieschwellenwert erreicht ist.

Usage:
rover.standby(percent)

Parameter

Beschreibung

percent

Der Batterieschwellenwert, der den VR Rover aus dem Standby-Modus veranlasst, von 0 bis 100.

Wenn der gewählte Schwellenwert gleich oder größer als der aktuelle Batteriestand ist, wechselt der VR Rover nicht in den Standby-Modus.

def main():
    rover.standby(50)

# VR threads — Do not delete
vr_thread(main)

Getter#

Winkel#

angle gibt die Richtung in Grad zum ausgewählten Objekt zurück.

Usage:
rover.angle(object)

Parameter

Beschreibung

object

Das Objekt, dessen Richtung gemeldet werden soll:

  • BASE
  • ENEMY
  • MINERALS

Bei Mineralien und Feinden muss sich das Objekt innerhalb von 1000 mm und im Sichtfeld des VR-Rovers befinden. Die Basis kann jederzeit gemeldet werden.

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

# VR threads — Do not delete
vr_thread(main)

get_distance#

get_distance gibt die Entfernung vom VR Rover zum ausgewählten Objekt zurück.

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

Parameter

Beschreibung

object

Das Objekt, zu dem die Entfernung gemeldet werden soll:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

units

Optional. Die Einheit zur Angabe der Entfernung: INCHES oder MM

Bei Mineralien und Feinden muss sich das Objekt innerhalb von 1000 mm und im Sichtfeld des VR-Rovers befinden. Die Basis kann jederzeit gemeldet werden.

Bei Hindernissen und Gefahren ermittelt die Methode die Entfernung zum sichtbaren Objekt. Sind keine Hindernisse oder Gefahren sichtbar, gibt sie 1000 oder 39.37 zurück.

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

# VR threads — Do not delete
vr_thread(main)

Standort#

location gibt die X- oder Y-Koordinatenposition des ausgewählten Objekts zurück.

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

Parameter

Beschreibung

object

Das zu meldende Objekt:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

axis

Welche Koordinate soll zurückgegeben werden:

  • X
  • Y

units

Die Einheit, die zur Angabe des Standorts verwendet wird: INCHES oder MM

Bei Mineralien und Feinden muss sich das Objekt innerhalb von 1000 mm und im Sichtfeld des VR-Rovers befinden. Die Basis kann jederzeit gemeldet werden.

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

# VR threads — Do not delete
vr_thread(main)

Batterie#

battery gibt den aktuellen Batteriestand des VR Rovers zurück.

Usage:
rover.battery()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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

# VR threads — Do not delete
vr_thread(main)

Mineralien gespeichert#

minerals_stored gibt die aktuelle Menge an Mineralien zurück, die der VR Rover gespeichert hat.

Usage:
rover.minerals_stored()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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

# VR threads — Do not delete
vr_thread(main)

Speicherkapazität#

storage_capacity gibt die Tragfähigkeit des VR Rovers zurück.

Usage:
rover.storage_capacity()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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

# VR threads — Do not delete
vr_thread(main)

Ebene#

level gibt das aktuelle Level des VR Rovers zurück.

Usage:
rover.level()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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

# VR threads — Do not delete
vr_thread(main)

exp#

exp gibt die Anzahl der Erfahrungspunkte zurück, die der VR Rover auf dem aktuellen Level hat.

Usage:
rover.exp()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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

# VR threads — Do not delete
vr_thread(main)

Feindstufe#

enemy_level gibt die Stufe des nächstgelegenen vom VR Rover erkannten Gegners zurück.

Usage:
rover.enemy_level()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

Wenn sich innerhalb des Erfassungsradius des Rovers kein Feind befindet, gibt diese Methode 0 zurück.

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

# VR threads — Do not delete
vr_thread(main)

Feindliche Strahlung#

enemy_radiation gibt die Strahlung des nächstgelegenen vom VR Rover erfassten Feindes zurück.

Usage:
rover.enemy_radiation()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

Wenn sich innerhalb des Erfassungsradius des Rovers kein Feind befindet, gibt diese Methode 0 zurück.

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

# VR threads — Do not delete
vr_thread(main)

erkennt#

detects gibt an, ob der VR Rover Mineralien oder Feinde in seinem Erfassungsradius erkennt.

Usage:
rover.detects(object)

Parameter

Beschreibung

object

Das zu erkennende Objekt:

  • ENEMY
  • MINERALS

Der Erfassungsradius des VR Rovers beträgt 800 mm.

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

# VR threads — Do not delete
vr_thread(main)

sieht#

sees zurück, ob der VR Rover das ausgewählte Objekt in seinem Sichtfeld sieht.

Usage:
rover.sees(object)

Parameter

Beschreibung

object

Das zu sehende Objekt:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

Der VR Rover kann Objekte innerhalb von 1000 mm und innerhalb seines 40-Grad-Sichtfelds erkennen.

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

# VR threads — Do not delete
vr_thread(main)

unter Beschuss#

under_attack gibt an, ob der VR Rover aktuell von einem Feind angegriffen wird.

Usage:
rover.under_attack()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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

# VR threads — Do not delete
vr_thread(main)

Rückrufe#

on_under_attack#

on_under_attack registriert eine Callback-Funktion, die ausgeführt wird, wenn der VR Rover von einem Gegner Schaden erleidet.

Usage:
rover.on_under_attack(callback)

Parameter

Beschreibung

callback

Die Funktion, die ausgeführt werden soll, wenn der VR Rover angegriffen wird.

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#

on_level_up registriert eine Callback-Funktion, die ausgeführt wird, wenn der VR Rover von einem Level zum nächsten wechselt.

Usage:
rover.on_level_up(callback)

Parameter

Beschreibung

callback

Die Funktion, die beim Levelaufstieg des VR Rovers ausgeführt werden soll.

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)