15. leden 2020 Autor: Bronislav
Tento návod obsahuje veliké obrázky. Ke komfortnímu zobrazení obrázků využijte raději stolní počítač nebo notebook. Na mobilním zařízení bude prohlížení takto velkých obrázků nepohodlné.
Seznam kapitol |
---|
1. Jak se naučit programovat - COLOBOT |
2. První mise: Leaving Earth - část 1.Equipment |
3. První mise: Leaving Earth - část 2.Building |
4. První mise: Leaving Earth - část 3.Departure |
Ve druhé části mise Leaving Earth dostaneme k dispozici svého prvního robota. V této části máme sice za úkol pomocí kosmonauta postavit pouze dvě budovy: "ResearchCenter" a "BotFactory". Ale když už máme k dispozici robota, tak jej využijeme.
Po postavení budovy "Research center" kosmonautem, bude třeba do této budovy umístit napájecí článek. Máme na výběr, zda to provedeme pomocí postavy kosmonauta nebo pomocí robota. Robota můžeme také řídit ručně, ale my si chceme vyzkoušet programování a proto robotovi napíšeme program, po jehož spuštění robot požadovaný úkol splní automaticky.
Klikneme tedy úplně vlevo dole na tlačítko "+", tím přidáme pozici pro program. A dále na tlačítko {..}, které slouží k editaci programu.
Zde se dostáváme k samotné tvorbě programu. Ikonou vpravo nahoře si můžeme otevřít příručku jak programovat.
Dovíme se, jaké byly přiřazené názvy instrukcím pro jednotlivé úkony. Například pro pohyb je to instrukce: "move", pro otáčení: "turn" nebo pro detekci: "radar".
Kliknutím na "categories" si zobrazíme, jaké jména byla přiřazena jednotlivým objektům.
Vidíme, že budově Research center bylo přiřazeno jméno: "ResearchCenter". Názvy objektů v programech musíme totiž dodržovat přesně.
Všechny programy ve hře musí obsahovat jednu hlavní funkci.
Funkce jsou jednoduše instrukce, které jsme robotovi přikázali vykonat.
Hlavní funkce ve hře se jmenuje extern a odlišuje hlavní funkci od ostatních.
Jednotlivým programům můžeme přiřadit jména. Změníme tedy výchozí název New na například move10.
Jednotlivé instrukce je třeba umístit mezi značky { }. Tedy tam umístíme instrukci move a do závorek vzdálenost a na konec řádku je třeba ještě umístit středník:
extern void object::move10()
{
    move(10);
}
Kliknutím na ikonu diskety (třetí zleva) si můžeme program uložit. Na disk se nám program uloží do textového souboru a většinou do adresáře:
C:\Users\Název uživatele\colobot\savegame\Název hráče\program
Zavřeme okno editace programu. A vrátíme se do hry.
Program spustíme kliknutím na šipku.
Co se stane? Ano, robot se pohne o 10m dopředu.
Zvládli jsme tedy napsat svůj první jednoduchý program. Jak by ale měl program vypadat, abych umístil robot napájecí článek do "Research center"?
Třeba takto:
extern void object::PowerCell_goto_ResearchCenter_1()
{
    // 1) definice promenne
    object item;                     // iformace o objektu
   
   
    // 2) jdi k napajencimu članku a vem ho
    item = radar(PowerCell);             // rozhledni se po napajecim clanku
    goto(item.position);                 // jdi na pozici
    grab();                             // uchop clanek
   
   
    // 3) jdi k ResearchCenter a poloz clanek
    item = radar(ResearchCenter);             // rozhledni se po vyzkumnem centru
    goto(item.position);                 // jdi na pozici
    drop();                             // poloz clanek
   
}
Výuková hra COLOBOT podporuje schránku, tedy můžeme využít kombinaci kláves CTRL + C, CTRL + V pro kopírování a vkládání částí programů nebo i celých programů.
Údaje za značkami // jsou poznámky a nejsou brány při vykonávání programu v potaz. Slouží pouze k lepší přehlednosti a pochopení.
Po spuštění programu robot zadaný úkol vykoná. Můžeme kliknutím na tlačítko {..} pozorovat, kterou část programu robot právě zpracovává.