New Immissions/Updates:
boundless - educate - edutalab - empatico - es-ebooks - es16 - fr16 - fsfiles - hesperian - solidaria - wikipediaforschools
- wikipediaforschoolses - wikipediaforschoolsfr - wikipediaforschoolspt - worldmap -

See also: Liber Liber - Libro Parlato - Liber Musica  - Manuzio -  Liber Liber ISO Files - Alphabetical Order - Multivolume ZIP Complete Archive - PDF Files - OGG Music Files -

PROJECT GUTENBERG HTML: Volume I - Volume II - Volume III - Volume IV - Volume V - Volume VI - Volume VII - Volume VIII - Volume IX

Ascolta ""Volevo solo fare un audiolibro"" su Spreaker.
CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
CBot - Wikipedia, wolna encyklopedia

CBot

Z Wikipedii

Cbot jest językiem programowania stworzonym specjalnie dla gry Colobot. Jest podobny do języka C.


Spis treści

[edytuj] Zastosowanie

  • CBot został przeznaczony do programowania robotów w grze Colobot.
  • CBot ułatwia naukę języków C++, C oraz Java (a także JavaScript, PHP i wiele innych)

[edytuj] Podstawy CBota

[edytuj] Proste instrukcje

Po wyświetlenieniu edytora programu dostępnego przy każdym robocie w grze Colobot, wyświetla się następujący tekst:

extern void object::Nowy()
{

}

W klamrach {}, umieszczane są instrukcje, czyli polecenia, co robot ma robić. Reszta słów:

  • extern - Oznacza (wyróżnia) główną funkcję, czyli tą która ma być uruchomiona przy włączeniu programu. Mogą występwać inne funkcje po klamrze "}" funkcjii extern, ale już bez tego słówa (tylko void object lub object).
  • void - Oznacza że funkcja nie zwraca żadnego wyniku, dlatego nawiasy są puste.
  • object - Typ objektu (czyli nie ciągu znaków, lub cyfr, lub wartośći logicznej)
  • nowy - Nazwa funkcjii, w wypadku tej funkcjii (głównej), nazwa programu jaka będzie się pojawiać.


Instrukcja, to jakieś polecenie. Po każdej instrukcji musi wystąpić średnik. W colobocie występują podstawowe instrukcje:

  • move(); - W nawiasach umieszczamy wartość dodatnią, lub ujemną. Wartość dodatnia przesuwa robota o tyle metrów, ile podało się w nawiasach, natomiast wartość ujemna cofa robota do tyłu o tyle metrów, ile podało się w nawiasach.
  • turn(); - W nawiasach umieszczamy wartość dodatnią, lub ujemną. Wartość dodatnia spowoduje obrót robota o tyle stopni w lewo, ile się podało w nawiasach, natomiast wartość ujemna spowoduje obrót robota o tyle stopni w prawo, ile się podało w nawiasach.
  • wait(); - Powoduje że robot czeka, przez tyle sekund, ile się podało w nawiasach.
  • grab(); - Powoduje podniesienie przez robota jakiegoś przedmiotu (np. kostki tytanu). W nawiasach możemy (nie musimy) podać stałą, informującą skąd robot ma podnieść przedmiot.
  • drop(); - Powoduje pozostawienie przez robota jakiegoś przedmiotu (np. kostki tytanu). W nawiasach możemy (nie musimy) podać stałą, informującą gdzie robot ma pozostawić przedmiot.
  • message(); - Powoduje wyświetlenie komunikatu. W nawiasach możemy podać ciąg znaków. Ciąg znaków należy umieśćić w cudzysłowach - np. message("jakis tam tekst");

W przypadku instrukcjii grab i drop dostępne są trzy stałe:

  • InFront - powoduje podniesienie/opuszczenie przedmiotu z przodu.
  • Behind - powoduje podniesienie/opuszczenie przedmiotu z tyłu.
  • EnergyCell - powoduje podniesienie/opuszczenie przedmiotu w miejscu, gdzie robot ma umieszczone własne ogniwo elektryczne.

Uwaga: Nie należy pisać stałych i zmiennych małymi literami. Litery muszą być takie same (np. nie wolno pisać infront, lub INFRONT, albo Infront, lecz należy pisać InFront)

W nawiasach podajemy tak zwane argumenty. Może wystąpić więcej niż jeden argument.

Przykładowy program:

extern void object::Przyklad()
{
move(5);
turn(90);
move(-5);
turn(-180);
wait(10);
move(10);
}

Powyższy (bardzo, bardzo prosty) program powoduje że robot posuwa się 5 metrów w przód, następnie obraca się w lewo (o 90 stopni) cofa się o 5 metrów, obraca się w prawo (bo liczba ujemna) o 180 stopni, czeka 10 sekund, a następnie posuwa się 10 metrów w przód.

[edytuj] Zmienne

Ważnym elementem każdego języka programowania, w tym również tego, są zmienne. Bez zmiennych, programowanie byłoby bez sensu. Zmienna jest jak pudełko w której przechowywujemy pewne dane. Zawartośćią zmiennej może być np. odległość od robota do kostki tytanu, jakiś tekst itd.

Zmienne mają typy, czyli to co je określa

  • int - ten typ określa zmienną jako liczbę całkowitą (np. 5, 4 , 128)
  • float - ten typ określa zmienną jako liczbę zmiennoprzecinkową (np. 5.34524525 lub 546.345)
  • object - ten typ określa zmienną jako informację o obiekcie 9np. o mrówce lub kostce tyanu)
  • point - ten typ określa zmienną jako punkt, czyli miejsce (wspórzędne) (np. x=35 y=-55.55 z=-2)
  • string - ten typ określa zmienną jako ciąg znaków (np. Witaj świecie! ,czy blebleble)
  • boolean - ten typ określa zmienną jako wartość logiczną (TRUE lub FALSE [prawda lub fałsz] )

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu