I. 414.
Kovcs 246 Benedek
12. osztly
Budapesti Fazekas Mihly Gyakorl ltalnos Iskola s Gimnzium

A program Visual Basic 2010 Expressben kszlt, Windows Forms tpus alkalmazsknt fordthat. Az i414.zip-ben a program forrskdja s a lefordtshoz szksges sszes fjl megtallhat, illetve a bin/Debug/tilitoli.exe tvonalon a futtathat program is.

A program kezelse:
Elszr vlasszuk ki a kpet a kezdkpernyn lv Tallzs gombbal. A kp mindkt mretnek 160 s 840 kz kell esnie (a helyes megjelens rdekben). Ha nem kpfjlt, vagy rossz mret fjlt vlasztunk, hibazenetet kapunk.

Vlasszuk ki a kvnt felosztst, valamint azt, hogy a darabokon megjelenjen-e a szmozs; ezutn kattintsunk a kezds gombra. A kpkockk ekkor automatikusan sszekeverve jelennek meg, s kezdhetjk is a jtkot.

A darabok tologatst tbbflekppen vgezhetjk. Rkattinthatunk az elmozdtani kvnt darabra, illetve tbb darab egyttes mozgatsa esetn az utols mozgatand darabra. Az egyenknti tologats azonban a nyilakkal vagy a WASD billentykkel is vgezhet. Az elemek jrakeversre a Space szolgl.

Ha kiraktuk a jtkot, akkor a hinyz darab is megjelenik, s tovbbi tologatsokat nem vgezhetnk addig, amg a Space-szel jra nem keverjk az elemeket.

A program szerkezete:
Kt ablakot tartalmaz a program: a frmMenu.vb a men (ami a kp kivlasztsra s a paramterek belltsra szolgl), s a frmTiliToli.vb tartalmazza a tnyleges jtkot.

Mkdsi jellegzetessgek:
- A Doboz(x,y) s Cimke(x,y) objektumok futsidben jnnek ltre a megfelel mret- s hely tulajdonsgokkal. A cmkk akkor is ltrejnnek, ha a szmozst nem vlasztottuk ki, csak ekkor resek maradnak. Minden dobozhoz s cmkhez hozzrendelem a megfelel kattintsi (egrlenyomsi) esemnyt, ami kivlthat egy tolst. Egy kattints akkor eredmnyez tolst, ha a jtk nincsen kirakva, s a kattints helye egy sorban vagy egy oszlopban van a lyuk helyvel.

- A jtk els keverse az alapllapotbl trtnik 1000 random mozgatssal, ezltal biztosan kirakhat lesz a kapott llapot.

- A kp felvgsakor lehet, hogy a kp valamelyik mrete nem oszthat az adott irnyban kvnt darabok szmval. Ekkor is termszetesen az sszes darab egyforma mret lesz, a kivgand darabok helyt pedig gy hatrozzuk meg, hogy kt szomszdos darab kztt mindig legfeljebb 1 pixelnyi rs maradjon ki.