Python specifický pro roboty#

Zavedení#

VR Rover Robot obsahuje hnací ústrojí, senzor vzdálenosti a akce jedinečné pro hřiště Rover Rescue.

Všechny standardní metody VR VEXcode jsou k dispozici pro použití na hřišti Rover Rescue. Níže je uveden seznam všech dostupných metod specifických pro hřiště:

Pohon – Pohybujte a sledujte VR Rover.

  • Akce

    • drive - Pohybuje VR Roverem vpřed nebo vzad navždy.

    • drive_for - Pohybuje VR Roverem vpřed nebo vzad o určitou vzdálenost.

    • turn - Otočí VR Rover doleva nebo doprava natrvalo.

    • turn_for - Otočí VR Rover doleva nebo doprava o určitý počet stupňů.

    • turn_to_heading - Otočí VR Rover tak, aby směřoval v určitém směru, od -359 do 359 stupňů.

    • drive_to - Najede VR Rover přímo k vybranému objektu.

    • turn_to - Otočí VR rover čelem k vybranému objektu.

    • go_to - Otočí a najede VR roverem k vybranému objektu.

    • stop - Zastaví pohyb VR Roveru.

  • Mutátory

  • Získávači

    • heading - Vrátí aktuální směr VR Roveru od 0 do 359,99 stupňů.

    • is_done - Vrací, zda VR Rover dokončil pohyb.

    • is_moving - Vrací, zda se VR Rover pohybuje.

Konzola – Výpis do konzole a sledování hodnot.

  • Vytisknout

    • brain.print — Zobrazí text, čísla nebo hodnoty proměnných v konzoli.

    • brain.new_line — Přesune kurzor konzole na začátek dalšího řádku.

    • brain.set_print_color — Nastaví barvu použitou pro text vytištěný v konzoli.

    • brain.clear — Vymaže všechny řádky z konzole.

  • Monitor

    • monitor_variable — Přidá jednu nebo více předdefinovaných proměnných na kartu Monitor.

    • monitor_sensor — Přidá jednu nebo více hodnot senzoru na kartu Monitor.

Snímání – Detekce blízkých objektů pomocí senzoru vzdálenosti roveru.

  • Vzdálenost

    • found_object - Vrací, zda senzor vzdálenosti detekoval objekt.

    • get_distance - Vrátí vzdálenost k nejbližšímu detekovanému objektu.

Akce – Interakce s roverem, jeho zdroji, nepřáteli a vestavěnými systémy umělé inteligence.

  • Akce

    • pickup - Sbírá minerály.

    • drop - Drops minerály.

    • use - Využívá minerály k obnovení energie.

    • absorb_radiation - Absorbuje záření z nepřítele.

    • standby - Přepne VR Rover do pohotovostního režimu, dokud nedosáhne prahové hodnoty nabití baterie.

  • Získávači

    • angle - Vrátí směr k objektu ve stupních.

    • get_distance - Vrátí vzdálenost k objektu v milimetrech nebo palcích.

    • location - Vrátí souřadnici X nebo Y objektu v milimetrech nebo palcích.

    • battery - Vrátí úroveň nabití baterie VR Roveru.

    • minerals_stored - Vrátí, kolik minerálů VR Rover nese.

    • storage_capacity - Vrátí nosnost VR Roveru.

    • level - Vrátí aktuální úroveň VR Roveru.

    • exp - Vrátí aktuální zkušenostní body VR Roveru.

    • enemy_level - Vrátí úroveň nejbližšího detekovaného nepřítele.

    • enemy_radiation - Vrátí radiaci nejbližšího detekovaného nepřítele.

    • detects - Vrátí, zda VR Rover detekuje minerály nebo nepřátele ve svém detekčním okruhu.

    • sees - Vrací, zda VR Rover vidí objekt ve svém zorném poli.

    • under_attack - Vrátí, zda je VR Rover aktuálně pod útokem.

  • Zpětná volání

    • on_under_attack - Spustí zpětné volání, když je VR Rover napaden.

    • on_level_up - Spustí zpětné volání, když VR Rover dosáhne vyšší úrovně.

Příklady na této stránce používají výchozí počáteční pozici hřiště.

Hnací ústrojí#

Pohon řídí, jak se VR Rover řídí a zatáčí. Pohon se může pohybovat vpřed nebo vzad, zatáčet doleva nebo doprava, otáčet se do směru a jet k minerálům, nepřátelům nebo základně.

Akce#

řídit#

drive pohybuje VR Roverem vpřed nebo vzad navždy. VR Rover se bude pohybovat, dokud nedostane další akci, například otočení nebo zastavení.

Usage:
drivetrain.drive(direction)

Parametry

Popis

direction

Směr pohybu VR Roveru: FORWARD nebo REVERSE.

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

# VR threads — Do not delete
vr_thread(main)

drive_for#

drive_for pohybuje VR Roverem vpřed nebo vzad o určitou vzdálenost. Projekt počká, dokud se VR Rover nedokončí s pohybem, než se spustí další řádek kódu.

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

Parametry

Popis

direction

Směr pohybu VR Roveru: FORWARD nebo REVERSE.

distance

Vzdálenost, kterou VR Rover urazí. Může to být integer nebo desetinné číslo (float).

units

Jednotka vzdálenosti: INCHES nebo MM (milimetry).

wait

Volitelné. wait=True (výchozí) způsobí, že projekt počká, dokud se VR Rover nedokončí s pohybem, než se spustí další řádek kódu. wait=False způsobí, že se další řádek kódu spustí okamžitě.

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

# VR threads — Do not delete
vr_thread(main)

otočit#

turn otočí VR Rover doleva nebo doprava natrvalo. VR Rover se bude otáčet, dokud nedostane další akci, například jízdu nebo zastavení.

Usage:
drivetrain.turn(direction)

Parametry

Popis

direction

Směr otáčení VR Roveru: LEFT nebo RIGHT.

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

# VR threads — Do not delete
vr_thread(main)

otočit_pro#

turn_for otočí VR Rover doleva nebo doprava o určitý počet stupňů. Otočení je relativní vzhledem k aktuální poloze VR Roveru. Projekt počká, dokud se VR Rover nedokončí otáčení, než se spustí další řádek kódu.

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

Parametry

Popis

direction

Směr otáčení VR Roveru: LEFT nebo RIGHT.

angle

Počet stupňů, o které se VR Rover otočí. Může to být integer nebo desetinné číslo (float).

units

Jednotka rotace: DEGREES.

wait

Volitelné. wait=True (výchozí) způsobí, že projekt počká, dokud se VR Rover nedotočí, než se spustí další řádek kódu. wait=False způsobí, že se další řádek kódu spustí okamžitě.

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

# VR threads — Do not delete
vr_thread(main)

odbočka_k_směru#

Směr je směr, kterým je VR Rover otočen, měřený ve stupních. turn_to_heading otočí VR Rover tak, aby směřoval k určitému směru od -359 do 359 stupňů. VR Rover se otočí nejkratším směrem k dosažení cílového směru.

Výchozí kurz VR Roveru je 0 stupňů.

Projekt počká, dokud se VR Rover nedotočí, než se spustí další řádek kódu.

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

Parametry

Popis

heading

Směr, kterým by se měl VR Rover natočit, ve stupních. Může to být integer nebo desetinné číslo (float) od -359 do 359.

units

Jednotka záhlaví: DEGREES.

wait

Volitelné. wait=True (výchozí) způsobí, že projekt počká, dokud se VR Rover nedotočí, než se spustí další řádek kódu. wait=False způsobí, že se další řádek kódu spustí okamžitě.

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

# VR threads — Do not delete
vr_thread(main)

cesta_do#

drive_to pohání VR Rover přímo k vybranému objektu.

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

Parametry

Popis

object

K jakému objektu se VR Rover vydá:

  • BASE
  • ENEMY
  • MINERALS

wait

Volitelné. wait=True (výchozí) způsobí, že projekt počká, než se spustí další řádek kódu, dokud se nedokončí pohyb. wait=False způsobí, že se další řádek kódu spustí okamžitě.

Pokud při volání parametru drive_to není v vizuálním dosahu VR Roveru detekován minerál nebo nepřítel, VR Rover se nepohne. Základnu lze vždy zaměřit.

Pokud VR Rover detekuje více minerálů nebo více nepřátel, pohne se k bližší možnosti.

def main():
    drivetrain.drive_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

otočit_k#

turn_to otočí VR Rover čelem k vybranému objektu.

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

Parametry

Popis

object

Ke kterému objektu se VR Rover otočí:

  • BASE
  • ENEMY
  • MINERALS

wait

Volitelné.

  • wait=True (výchozí) — Čeká na dokončení tahu.
  • wait=False — Zahájí tah a okamžitě pokračuje.

Pokud se při volání parametru turn_to v zorném poli VR Roveru nenajde minerál nebo nepřítel, VR Rover se neotočí. Základnu lze vždy zaměřit.

Pokud VR Rover detekuje více minerálů nebo více nepřátel, otočí se k bližší možnosti.

def main():
    drivetrain.turn_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

přejít na#

go_to otočí a najede VR Roverem k vybranému objektu.

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

Parametry

Popis

object

Který objekt VR Rover otočí a na který pojede:

  • BASE
  • ENEMY
  • MINERALS

wait

Volitelné. wait=True (výchozí) způsobí, že projekt počká, než se spustí další řádek kódu, dokud se nedokončí pohyb. wait=False způsobí, že se další řádek kódu spustí okamžitě.

Pokud při volání příkazu go_to není v vizuálním dosahu VR Roveru detekován minerál nebo nepřítel, VR Rover se nepohne. Základnu lze vždy zaměřit.

Pokud VR Rover detekuje více minerálů nebo více nepřátel, přesune se k bližší možnosti.

def main():
    drivetrain.go_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

zastávka#

stop zastaví pohyb VR Roveru.

Usage:
drivetrain.stop()

Parametry

Popis

Tato metoda nemá žádné parametry.

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

# VR threads — Do not delete
vr_thread(main)

Mutátory#

set_heading#

Kurz je směr, kterým je VR Rover otočen, měřený ve stupních. set_heading změní aktuální kurz VR Roveru na novou hodnotu kurzu.

Například pokud se VR Rover otočil doprava, nastavení kurzu na 0 stupňů změní tuto polohu doprava na nových 0 stupňů. VR Rover se pak může na základě tohoto nového kurzu otočit do jiných pozic.

Usage:
drivetrain.set_heading(heading, units)

Parametry

Popis

heading

Hodnota kurzu ve stupních, kterou chcete nastavit pro VR Rover. Může to být integer nebo desetinné číslo (float).

units

Jednotka záhlaví: DEGREES.

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

# VR threads — Do not delete
vr_thread(main)

set_timeout#

set_timeout nastavuje, jak dlouho se VR Rover bude snažit dokončit pohyb. Pokud VR Rover nedokončí pohyb v tomto čase, přestane se snažit a přejde na další řádek kódu. Tím se zabrání tomu, aby se VR Rover zasekl na pohybu.

Usage:
drivetrain.set_timeout(value, units)

Parametry

Popis

value

Doba, po kterou se VR Rover může pokusit dokončit pohyb. Může to být kladné celé číslo integer nebo desetinné číslo (float).

units

Časová jednotka: SECONDS nebo MSEC (milisekundy).

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

# VR threads — Do not delete
vr_thread(main)

set_drive_velocity#

set_drive_velocity určuje rychlost jízdy VR Roveru. Vyšší procento způsobí, že VR Rover pojede rychleji, a nižší procento způsobí, že VR Rover pojede pomaleji.

Každý projekt začíná s VR Roverem, který standardně jede rychlostí 50 %.

Poznámka: Vyšší rychlost způsobí, že VR Rover pojede rychleji, ale může být méně přesný. Nižší rychlost způsobí, že VR Rover pojede pomaleji, ale může být přesnější.

Usage:
drivetrain.set_drive_velocity(velocity, units)

Parametry

Popis

velocity

Rychlost, s níž se má jet, od 0 % do 100 %. Může to být integer nebo desetinné číslo (float).

units

Jednotka rychlosti: PERCENT.

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

# VR threads — Do not delete
vr_thread(main)

set_turn_velocity#

set_turn_velocity říká VR Roveru, jak rychle se má otáčet. Vyšší procento způsobí, že se VR Rover bude otáčet rychleji, a nižší procento způsobí, že se VR Rover bude otáčet pomaleji.

Každý projekt začíná s VR Roverem, který se standardně otáčí rychlostí 50 %.

Poznámka: Vyšší rychlost způsobí, že se VR Rover bude otáčet rychleji, ale otáčení může být méně přesné. Nižší rychlost způsobí, že se VR Rover bude otáčet pomaleji, ale otáčení může být přesnější.

Usage:
drivetrain.set_turn_velocity(velocity, units)

Parametry

Popis

velocity

Rychlost otáčení od 0 % do 100 %. Může to být integer nebo desetinné číslo (float).

units

Jednotka rychlosti: PERCENT.

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

# VR threads — Do not delete
vr_thread(main)

Gettery#

záhlaví#

Směr je směr, kterým je VR Rover otočen, měřený ve stupních. heading vrací aktuální směr VR Roveru od 0 do 359,99 stupňů.

Výchozí kurz VR Roveru je 0 stupňů.

Usage:
drivetrain.heading(units)

Parametry

Popis

units

Jednotka záhlaví: DEGREES.

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

# VR threads — Do not delete
vr_thread(main)

je_hotovo#

is_done vrací booleovskou hodnotu, zda VR Rover dokončil pohyb. Tuto hodnotu lze použít k řízení načasování dalších funkcí na základě pohybu VR Roveru.

  • True — VR Rover dokončil pohyb.

  • False — VR Rover se stále pohybuje.

Tato metoda funguje společně s metodami Drivetrain, které mají parametr wait , jako například drive_for, turn_for, turn_to_heading, drive_to, turn_to a go_to.

Usage:
drivetrain.is_done()

Parametry

Popis

Tato metoda nemá žádné parametry.

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)

se_pohybuje#

is_moving vrací booleovskou hodnotu, zda se VR Rover pohybuje. Tuto hodnotu lze použít k řízení načasování dalších chování na základě pohybu VR Roveru.

  • True — VR rover se pohybuje.

  • False — VR rover se nepohybuje.

Usage:
drivetrain.is_moving()

Parametry

Popis

Tato metoda nemá žádné parametry.

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)

Utěšit#

Konzole zobrazuje text, čísla a hodnoty proměnných během spuštěného projektu. Metody konzole mohou také přesunout kurzor na nový řádek, nastavit barvu textu vytištěného po změně barvy, vymazat konzoli a přidat proměnné nebo hodnoty senzorů na kartu Monitor.

Vytisknout#

mozek.tisk#

brain.print zobrazí text, čísla nebo hodnoty proměnných v konzoli s využitím aktuální pozice kurzoru.

Použijte brain.new_line, pokud chcete, aby další vytištěná hodnota začínala na novém řádku.

Usage:
brain.print(value)

Parametry

Popis

value

Text, číslo nebo hodnota proměnné, která se má zobrazit v konzoli.

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

# VR threads — Do not delete
vr_thread(main)

Konzole VEXcode zobrazující konzoli a text „Ahoj, robote!“

mozek.nový_řádek#

brain.new_line přesune kurzor do sloupce 1 na dalším řádku v konzoli. Další vypsaná hodnota se zobrazí na tomto řádku.

Usage:
brain.new_line()

Parametry

Popis

Tato metoda nemá žádné parametry.

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)

Konzole VEXcode zobrazující konzoli a text „Řádek 1“ zobrazený na prvním řádku a „Řádek 2“ na druhém řádku.

brain.set_print_color#

brain.set_print_color nastavuje barvu textu vytištěného v konzoli po použití této metody. Na začátku projektu je barva textu konzole nastavena na BLACK.

Usage:
brain.set_print_color(color)

Parametry

Popis

color

Barva textu vytištěného v konzoli:

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

Konzole VEXcode zobrazující konzoli a černý text s nápisem „Výchozí barva textu“ zobrazený na prvním řádku a červený text s nápisem „Červená barva textu“ zobrazený na druhém řádku.

mozek.jasný#

brain.clear vymaže všechny řádky z konzole a přesune kurzor zpět na řádek 1.

Usage:
brain.clear()

Parametry

Popis

Tato metoda nemá žádné parametry.

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#

monitorovací_proměnná#

monitor_variable přidá jednu nebo více předdefinovaných proměnných na kartu Monitor ve VEXcode. To umožňuje sledovat změnu hodnoty proměnné během běhu projektu.

Proměnné musí být globální, aby bylo možné je úspěšně monitorovat pomocí parametru monitor_variable Název každé proměnné zadejte jako řetězec.

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

Parametry

Popis

variable

Název předdefinované globální proměnné, která se má sledovat, zadaný jako řetězec. Chcete-li sledovat více než jednu proměnnou, oddělte jednotlivé názvy proměnných čárkou.

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_senzor#

monitor_sensor přidá jednu nebo více hodnot senzorů na kartu Monitor ve VEXcode. To umožňuje sledovat změny hodnot senzorů během běhu projektu.

Každou hodnotu senzoru zadejte jako řetězec.

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

Parametry

Popis

sensor

Hodnota senzoru, která se má sledovat, zadaná jako řetězec. Chcete-li sledovat více hodnot senzoru, oddělte je čárkou. Podporované identifikátory senzorů zahrnují:

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

Snímání#

Vzdálenost#

nalezený_objekt#

found_object vrací, zda senzor vzdálenosti detekuje objekt.

Usage:
distance.found_object()

Parametry

Popis

Tato metoda nemá žádné parametry.

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

# VR threads — Do not delete
vr_thread(main)

získat_vzdálenost#

get_distance vrací vzdálenost k nejbližšímu detekovanému objektu ze senzoru vzdálenosti.

Usage:
distance.get_distance(units)

Parametry

Popis

units

Jednotka vzdálenosti: INCHES nebo MM

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

# VR threads — Do not delete
vr_thread(main)

Akce#

Akce#

vyzvednutí#

pickup sbírá minerály.

Usage:
rover.pickup(object)

Parametry

Popis

object

Objekt, který může VR Rover zachytit:

  • MINERALS

def main():
    rover.pickup(MINERALS)

# VR threads — Do not delete
vr_thread(main)

pokles#

drop kapka obsahovala minerály.

Usage:
rover.drop(object)

Parametry

Popis

object

Objekt, který může VR Rover shodit:

  • MINERALS

def main():
    rover.drop(MINERALS)

# VR threads — Do not delete
vr_thread(main)

použití#

use využívá minerály k obnovení energie. Minerály musí být na zemi, aby mohly být použity.

Usage:
rover.use(object)

Parametry

Popis

object

Objekt, který může VR Rover použít:

  • MINERALS

def main():
    rover.use(MINERALS)

# VR threads — Do not delete
vr_thread(main)

absorbovat_záření#

absorb_radiation absorbuje záření od nepřítele.

Usage:
rover.absorb_radiation(object)

Parametry

Popis

object

Objekt, od kterého může VR Rover absorbovat záření:

  • ENEMY

def main():
    rover.absorb_radiation(ENEMY)

# VR threads — Do not delete
vr_thread(main)

pohotovostní#

standby přepne VR Rover do pohotovostního režimu, dokud není dosaženo zadané prahové hodnoty nabití baterie.

Usage:
rover.standby(percent)

Parametry

Popis

percent

Prahová hodnota baterie, která způsobí, že VR Rover ukončí pohotovostní režim, od 0 do 100.

Pokud je vybraná prahová hodnota rovna nebo vyšší než aktuální úroveň nabití baterie, VR Rover se nepřepne do pohotovostního režimu.

def main():
    rover.standby(50)

# VR threads — Do not delete
vr_thread(main)

Gettery#

úhel#

angle vrací směr ve stupních k vybranému objektu.

Usage:
rover.angle(object)

Parametry

Popis

object

Objekt, kterému se má hlásit směr:

  • BASE
  • ENEMY
  • MINERALS

V případě minerálů a nepřátel se objekt musí nacházet do 1000 mm a v zorném poli VR roveru. Základnu lze vždy nahlásit.

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

# VR threads — Do not delete
vr_thread(main)

získat_vzdálenost#

get_distance vrací vzdálenost od VR roveru k vybranému objektu.

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

Parametry

Popis

object

Objekt, ke kterému se má hlásit vzdálenost:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

units

Volitelné. Jednotka použitá k vyjádření vzdálenosti: INCHES nebo MM

V případě minerálů a nepřátel se objekt musí nacházet do 1000 mm a v zorném poli VR roveru. Základnu lze vždy nahlásit.

V případě překážek a nebezpečí metoda uvádí vzdálenost viditelného objektu. Pokud žádný není v dohledu, vrátí hodnotu 1000 mm nebo 39.37 palce.

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

# VR threads — Do not delete
vr_thread(main)

umístění#

location vrací souřadnici X nebo Y umístění vybraného objektu.

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

Parametry

Popis

object

Objekt, jehož polohu hlásit:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

axis

Kterou souřadnici vrátit:

  • X
  • Y

units

Jednotka použitá k hlášení polohy: INCHES nebo MM

V případě minerálů a nepřátel se objekt musí nacházet do 1000 mm a v zorném poli VR roveru. Základnu lze vždy nahlásit.

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

# VR threads — Do not delete
vr_thread(main)

baterie#

battery vrací aktuální úroveň nabití baterie VR Roveru.

Usage:
rover.battery()

Parametry

Popis

Tato metoda nemá žádné parametry.

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

# VR threads — Do not delete
vr_thread(main)

uložené_minerály#

minerals_stored vrací aktuální množství minerálů, které má VR Rover ve skladu.

Usage:
rover.minerals_stored()

Parametry

Popis

Tato metoda nemá žádné parametry.

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

# VR threads — Do not delete
vr_thread(main)

úložná_kapacita#

storage_capacity vrací nosnost VR Roveru.

Usage:
rover.storage_capacity()

Parametry

Popis

Tato metoda nemá žádné parametry.

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

# VR threads — Do not delete
vr_thread(main)

úroveň#

level vrací aktuální úroveň VR Roveru.

Usage:
rover.level()

Parametry

Popis

Tato metoda nemá žádné parametry.

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

# VR threads — Do not delete
vr_thread(main)

exp#

exp vrací počet zkušenostních bodů, které má VR Rover na aktuální úrovni.

Usage:
rover.exp()

Parametry

Popis

Tato metoda nemá žádné parametry.

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

# VR threads — Do not delete
vr_thread(main)

nepřátelská_úroveň#

enemy_level vrací úroveň nejbližšího nepřítele detekovaného VR roverem.

Usage:
rover.enemy_level()

Parametry

Popis

Tato metoda nemá žádné parametry.

Pokud není v detekčním okruhu roveru detekován žádný nepřítel, tato metoda vrátí hodnotu 0.

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

# VR threads — Do not delete
vr_thread(main)

nepřátelské_záření#

enemy_radiation vrací radiaci nejbližšího nepřítele detekovaného VR roverem.

Usage:
rover.enemy_radiation()

Parametry

Popis

Tato metoda nemá žádné parametry.

Pokud není v detekčním okruhu roveru detekován žádný nepřítel, tato metoda vrátí hodnotu 0.

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

# VR threads — Do not delete
vr_thread(main)

detekuje#

detects vrací, zda VR Rover detekuje minerály nebo nepřátele v dosahu detekce.

Usage:
rover.detects(object)

Parametry

Popis

object

Objekt k detekci:

  • ENEMY
  • MINERALS

Detekční rádius VR Roveru je 800 mm.

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

# VR threads — Do not delete
vr_thread(main)

vidí#

sees vrací, zda VR Rover vidí vybraný objekt ve svém zorném poli.

Usage:
rover.sees(object)

Parametry

Popis

object

Objekt k vidění:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

VR Rover dokáže vidět objekty do vzdálenosti 1000 mm a v rámci svého zorného pole 40 stupňů.

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

# VR threads — Do not delete
vr_thread(main)

pod útokem#

under_attack vrací, zda je VR Rover aktuálně pod útokem nepřítele.

Usage:
rover.under_attack()

Parametry

Popis

Tato metoda nemá žádné parametry.

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

# VR threads — Do not delete
vr_thread(main)

Zpětná volání#

pod útokem#

on_under_attack registruje funkci zpětného volání, která se spustí, když VR Rover utrpí poškození od nepřítele.

Usage:
rover.on_under_attack(callback)

Parametry

Popis

callback

Funkce, která se spustí, když je VR Rover pod útokem.

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)

na vyšší úroveň#

on_level_up registruje funkci zpětného volání, která se spustí, když se VR Rover přesune z jedné úrovně do další.

Usage:
rover.on_level_up(callback)

Parametry

Popis

callback

Funkce, která se spustí, když se VR Rover vyšplhá na vyšší úroveň.

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)