FŐOLDAL

KAPCSOLAT

MÉDIAAJÁNLAT


REGISZTRÁCIÓ HÍRLEVÉL
PC-ÁRUHÁZ DRIVERS SZAMITOGEP Antivirus SZAKÜZLET

· Friss (Szoftver)
·  Úmutató az Intel SpeedStep bekapcsolásásához
·  Úmutató a Cool'n'Quiet bekapcsolásásához
·  Windows XP ”Reloaded” - A hivatalos álláspont
·  Peer-to-peer telefonálás egyszerűen
·  Novell Kisvállalati Csomag 6.5
·  Microsoft Office Visio 2003
·  Windows Media
·  Spamek szűrése szabállyal
·  Itt a SUSE LINUX 9.0
·  OpenOffice
·  NetMeeting
·  Shavlik HFNetChk 4.0 – Windowsupdate.com helyett
·  Új email szerver a SuSE-től
·  Novembertől a boltokban a magyar SuSE Linux 7.3
·  Készítsünk honlapot
·  Hány lapra elegendő a festék???
·  Az NTFS 5 filerendszer
·  Idő szinkronizálása Windows 2000 erdőben
·  A Windows2000 lemezkezelésének újdonságai
·  Bill Gates, mint Napóleon
· Cikkek > Szoftver
· COLOBOT
Dátum : 2001-10-16 19:46:01
Szerző : gigahertz


Ezzel a programmal szó szerint játszva tanulhatunk meg programozni. De azért ne vegyük olyan komolyan, hiszen egy játékról van szó, vagy talán mégsem? Érdemes kipróbálni...

A PC tulajdonosok többsége már bizonyára elgondolkozott azon, hogy jó lenne egy kicsit megtanulni programozni. De ez sokszor nem könnyű feladat, a programozást kevesen, de számítógépes játékokat nagyon sokat kedvelik. Így ha csak hobbi szinten kerül elő a programozás és a játék lehetősége, a felhasználók többsége általában az utóbbit választja.

Most bemutatok egy "játékot", ennek segítségével némi programozói "rutinra" is szert tehetünk. Tehát ez a cikk azoknak szól, akik alig tudnak programozni, és szeretnének ebben némi sikert elérni.

A játék neve: COLOBOT, de nem is igazán illik rá a játék név, azonnal kiderül, hogy miért. A tapasztalatok azt mutatják, hogy ha az ember irányítani tud valamit (az uralkodáshoz hasonlóan), az kvázi örömet okoz. Ez a megfogalmazás nagyon nyers és lényegretörő volt, de ha belegondolunk, akkor ez tényleg sokaknak komoly motiváló erőt jelent. Lásd, ha a kis gyerek kezébe távirányítós autót adunk, akkor hatalmas örömet okozhatunk (amíg az elemek bírják). Később sincs ez másként, csak ekkor már másként gondolkodunk. Némi lelki bemelegítő után nézzük meg, mit is tud a COLOBOT. Kezdjük a játék részével, majd rátérünk a programozásra is:

Ez a COLOBOT 1.7-es demo verziójának nyitó lapja. Mivel demo verzióról van szó, így a játék funkcióit a küldetésekben korlátozták. De ez most nem is olyan fontos, hiszen programozni szeretnénk... Természetesen nem arról van szó, hogy a program végét nem írták meg és nekünk kell pótolni, hanem arról, hogy spéci robot autóirányító programját kell megírnunk. Ez kezdetben egyáltalán nem nehéz, a zseniális help-nek köszönhetően.

Először célszerű a beállításokat lerendezni. Egyből kezdjük a felbontás beállításával:

A 3D-s gyorsítós videokártya elengedhetetlen. Az RGB emulációval egy 1.5GHz-es processzorral szerelt gép is csak 8-10FPS-re képes, ami finoman szólva kevés. Megjegyzem, hogy ha Voodoo videokártyánk van, akkor gondban leszünk (mindegy milyen típusú ezen belül), mert kép zavarodottá válik, sokszor csak a felét látjuk a tárgyaknak.

Minimális gépigény:

Processzor

Intel Pentium 300MHz vagy ennek megfelelő

Memória

64M

Videokártya

3D gyorsító, min. 16M

HDD

min. 100M szabad háttérterület

A program 31Mbyte méretű lesz a feltelepítés után (mentések nélkül).

Meglepően jó az egész program grafikus motorja. A dinamikus megvilágítások beállításától kezdve a ködön és az égen át mindenfélét beállíthatunk.

Az irányítás részt (controll) nem is érdemes megnézni, illetve átállítani, úgy is csak az egérre és a billentyűzetre lesz szükségünk. Ezt úgy értem, hogy a billentyűzetre is csak azért, hogy a programot meg tudjuk írni.

Mint azt kezdetben említettem a célunk egy autó irányítása. Ez egy robotkarral is rendelkezik. A cél, ezt a járművet a megfelelő helyre irányítani és a robotkarral manipulálni. Az irányítás a fenti kis programrészlettel könnyen megoldható. Kezdetben ennyi utasítás bőven elég.

move(10);

Ezzel az utasítással a jármű annyi métert megy előre, mint ami a zárójelben szerepel.

turn(90);

Ennek hatására a kocsi a zárójelben jelzett fokkal elfordul. (A -90 és a 270 fok ugyanazt eredményezi.)

grab();

A robotkar aktiválása ezzel az utasítással történik, ha a jármű előtt felvehető dolog van, akkor azt felveszi.

drop();

Ez szintén a robotkarra vonatkozik. Ennek segítségével le tudjuk tenni a felvett tárgyakat.

Ezzel a pár utasítással fapadosan ugyan, de már irányíthatjuk a járművet. És végre egy kép, mit is kell irányítani:

A képen látható "palackos" robotban mi vagyunk. Repkedhetünk, mászkálhatunk, de ez csak a nézelődést szolgálja. Gyorsan megunjuk. Kattintsunk inkább a bal oldalon látható terepjáróra. A tetején egy robotkar található. Ha figyelmesen megnézzük, akkor a jármű előtt egy kis gombócot láthatunk, itt az lesz a gyakorló feladat, hogy a gombócot egy konverterbe kell tenni. Végül is ilyen egyszerű a cél (de csak kezdetben), máris megvillogtathatjuk programozói tudásunkat. Az előbb bemutatott pár soros programot nem csak úgy a nagyvilágba begépeljük. Ha rákattintunk a robotra, akkor a képernyő alján megjelenik egy kapcsos zárójel. Erre kattintva írhatjuk meg a programot:

Noha a move(); turn(); grab(); drop(); utasításokkal is elboldogulunk, később már unalmassá válhat. Ahogy a pályák egyre nehezebbek lesznek egyre több utasítást tanít meg a program, csak az F1-es gombot meg kell nyomi és egyből (magyarázattal és példaprogrammal együtt) láthatjuk az utasítások jelentőségét/jelentését.

Ha megnézzük az előbbi kép utasításait, gyorsan rájöhetünk a program működésére. Arról van szó, amit az előbb leírtam. Elmegyünk a gombócért. De nem a move(); utasítással, mert a tárgy távolságát csak saccolni tudjuk. Így a gépünk vagy túlhalad, vagy cél előtt megáll. Ekkor sincs semmi gond, mert korrigálhatunk a programon. De sokkal elegánsabb az a megoldás, ha kihasználjuk azt, hogy van radar is a masinán. Így a radar(TitaniumOre) utasítás annyit tesz, hogy a radar által bemért titániumért (ezt eddig gombócnak neveztem) lemegy. Ezt fel kell venni, majd a konverterhez vinni.

Néhány trükk segítségével rövid, de annál hatékonyabb programot írhatunk. És pontosan ez a programozás lényege! Most az mindegy, hogy ez nyelv a fantázia műve vagy sem. Mert a stílus elsajátítása talán fontosabb, mint az utasítások ismerete (természetesen az sem árt). Megjegyzem, hogy ez a Java-hoz hasonló, tehát mégsem olyan légből kapott ez a nyelv.

Ha megírtuk a programot, akkor kattintsunk az OK-ra. Ha létező utasításokból kalapáltuk össze a programot követtük a help-ben megadott dolgokat, akkor nagy valószínűséggel futásra kész a program. Két lehetőségünk van miután megírtuk a programot. Vagy jármű belsejében foglalunk helyet, vagy kívülről szemléljük az eseményeket (utóbbi talán szimpatikusabb). Így ha nekirohanunk egy oszlopnak, vagy beleborítjuk a masinánkat a vízbe, akkor azért a programunk a felelős! Mindent úgy csinál a masina, ahogy beprogramoztuk!

Később izgalmasabb feladatokkal kell megküzdenünk. Ellenséges pókokat pörkölhetünk meg, repülőket tankolhatunk stb. Sőt arra is rá fogunk jönni, hogy a gumikerekek nem nagyon bírják a terepet, de semmi gond, lánctalpassá is varázsolhatjuk a "taligát". Innentől kezdve szinte csak a fantázia szab határt, hogy mit valósítunk meg a kis programunk segítségével. Kezdetben bővel elég lesz a 4-5 utasítás, de akár oldalakat is gépelhetünk. Jó szórakozást és programozást! 



Warning: require(../forum/centercomments.php) [function.require]: failed to open stream: No such file or directory in /var/www/www.szamitogep.hu/show/read.php on line 95

Warning: require(../forum/centercomments.php) [function.require]: failed to open stream: No such file or directory in /var/www/www.szamitogep.hu/show/read.php on line 95

Fatal error: require() [function.require]: Failed opening required '../forum/centercomments.php' (include_path='.:/usr/share/php/') in /var/www/www.szamitogep.hu/show/read.php on line 95