Colobot Wiki
Advertisement

Język CBOT jest bardzo podobny w strukturze i składni do C++ oraz Java. Został przystosowany do potrzeb gry COLOBOT oraz dla wydajnego podejścia pedagagicznego. Język składa się z instrukcji (poniżej), bloków, funkcji, klas, zmiennych, tablic, wyrażeń i warunków.

Instrukcje (inaczej: funkcje)[]

W edytorze programu, instrukcje w języku CBOT są zawsze wyświetlane na pomarańczowym tle. Jeżeli instrukcja nie ma takiego tła, Prawdopodobnie została wpisana z błędem. Nazwy instrukcji są zawsze zapisane małymi literami.

Typy[]

Typy zmiennych przedstawiane są na zielonym tle.

Kategorie[]

Nazwy pozwalające zidentifikować obiekt np. budynek lub robota.

Stałe[]

Stałe takie jak kategorie są wyświetlane na czerwonym tle.

Komentarze[]

Tekst w kodzie źródłowym, który nie jest kompilowany nazywamy komentarzem.

Instrukcje w języku CBOT[]

  • if - Wybiera strukturę
  • else - Alternatywny wybór struktury
  • for - Struktura pętli
  • while - Struktura kontrolna
  • do - Struktura kontrolna
  • continue - Kontynuuje pętlę
  • return - Zamyka funkcję

Instrukcje charakterystyczne dla robotów[]

  • radar - Wykrywa obiekty
  • direction - Oblicza kąt obrotu
  • distance - Oblicza dystans
  • distance2d - Oblicza dystans
  • move - Porusza robota
  • turn - Skręca robota
  • goto - Kieruje robota do wskazanej pozycji
  • motor - Bezpośrednia kontrola silnika
  • jet - Bezpośrednia kontrola silnika odrzutowego
  • retobject - Zwraca obiekt z funkcji
  • errmode - Kontrola tolerancji błędów
  • abstime - Zwraca czas absolutny

Instrukcje dotyczące topologii:[]

  • space - Oblicza wolne miejsce
  • topo - Zwraca wysokość punktu
  • flatground - Zwraca promień płaskiego terenu

Instrukcje charakterystyczne dla niektórych robotów:[]

  • grab - Podnosi obiekt
  • drop - Odkłada obiekt
  • sniff - Skanuje podglebie
  • thump - Przewraca wrogich obcych
  • recycle - Przetwarza wrak robota
  • shield - Rozkłada bądź składa osłonę
  • fire - Strzela
  • aim - Pionowy kąt lufy

Instrukcje charakterystyczne dla stacji przekaźnikowych:[]

  • receive - Odbiera informację
  • send - wysyła informację
  • testinfo - Sprawdza czy informacja istnieje
  • deleteinfo - Usuwa istniejącą informację

Instrukcje charakterystyczne dla klas:[]

  • public - Deklaracja funkcji publicznej
  • private - Deklaruje prywatnego członka klasy
  • static - Deklaruje stałego członka klasy
  • synchronized - Uniemożliwia jednoczesne wykonanie
  • new - Tworzy nową instancję
  • this - Odniesienie do bieżącej instancji

Instrukcje charakterystyczne dla tekstu:[]

Zajrzyj do strony o typie String.

  • strlen - Zwraca długość tekstu
  • strleft - Wyciąga lewą część
  • strright - Wyciąga prawą część
  • strmid - Wyciąga środkową część
  • strfind - Znajduje podtekst
  • strval - Zamienia tekst na liczbę
  • strupper - Zamienia na wielkie litery
  • strlower - Zamienia na małe litery

Instrukcje charakterystyczne dla plików:[]

Samouczek obsługi plików.

  • open - Otwiera plik
  • close - Zamyka plik
  • writeln - Zapisuje linię w pliku
  • readln - Odczytuje linię z pliku
  • eof - Sprawdza koniec pliku
  • deletefile - Usuwa plik

Funkcje matematyczne[]

Nieudokumentowane funkcje[]

Mogą się przydać w tworzeniu poziomów bądź oszustwach.

  • produce - Tworzy obiekt przenośny, znacznik lub obcego na mapie
  • cmdline - Zwraca parametr umieszczony w pliku źródłowym poziomu
  • ismovie - Sprawdza, czy poziom się rozpoczął
Advertisement