Hirdetés
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Mr Dini: Mindent a StreamSharkról!
- gban: Ingyen kellene, de tegnapra
- Magga: PLEX: multimédia az egész lakásban
- Luck Dragon: Asszociációs játék. :)
- Dr. Mózes: Lakberendezési tanácskérés
- eldiablo: 30 év után szakítottunk, de azért még beszélünk...
- Brogyi: CTEK akkumulátor töltő és másolatai
- GoodSpeed: Te hány éves vagy?
-
LOGOUT

Új hozzászólás Aktív témák
-
vanek
tag
Üdv!
Szeretnék készíteni egy flash-játékot: http://ingyenesjatek.hu/globs.html
El is jutottam addig, hogy be tudom színezni olyan színűre az első összefüggő területet amilyenre akarom, de onnantól kezdve mindig csak ugyan azt a területet színezi át. Nem halad tovább a "terjeszkedéssel".
A kód lényege, hogy mindig a bal felső sarokból kezdem a bejárást és megkeresem az összes azonos színű szomszédját, majd átszínezem őket a választott színre.
A kód pedig így néz ki:
X = 10; // a pálya mérete
Y = 10; //
var tabla:Array = []; // tabla tomb tartalmazza a i,j pozición levő MC-t
darab = 0; // hány bogyó ment már ki
var lepesek;
meretx = 25; // a bogyók mérete
merety = 25;
init();
function init() {
lepesek=0;
var i, j;
for ( i = 0; i < X; i++ ) {// minden oszlopra
tabla[i]= []; // tabla tömb oszlopai is mind tömbök
for ( j = 0;j < Y; j++) {// minden sorra
_root.attachMovie("pont", "b"+darab, darab );
var b:MovieClip = eval("b"+darab++);
tabla[i][j] = b; // au új MC az i,j pozicióra kerül
b.szin = Math.floor((Math.random() * 5)+1); //színkód
b.x = i; // minden bogyo tudja, hogy ő hanyadik oszlopban van
b.y = j; // és h. hanyadik sorban
b._x = kepx(i); // pozicionálás a képernyőn
b._y = kepy(j); // y irányban is
b.gotoAndStop(b.szin); // mutassa a megfelelő színét
}
}
}
function klikk(szam)
{
var db=0;
var i,j;
var list:Array = []; // a feldolgozandó szomszédok listája
var szomszed:Array = []; // a feldolgozott szomszédok
var sx=[-1,1, 0,0]; // a 4 szomszéd relatív x koord
var sy=[0 ,0,-1,1]; // ill. y
for ( i = 0; i < X; i++ )// a bejárás kezdőállapotának beállítása
for ( j = 0;j < Y; j++ )
tabla[i][j].bejar = false; // kezdetben egyetlen bogyót sem látogattunk meg
list.push(tabla[0][0]);
tabla[0][0].bejar=true;
while( list.length > 0 ) { // amig van feldolgozandó szomszed
var a = list.pop(); // vegyünk ki egyet
szomszed.push(a); // tegyük át a véglegesbe
for( i = 0; i < 4; i++ ) { // mind a négy szomszédjára
var b = tabla[a.x+sx[i]][a.y+sy[i]]; // b az akttuális elem (a) szomszédja
if ( b.szin == tabla[0][0].szin && b.bejar == false ) { // ha ugyanolyan színű mint az eredeti és még nem jártuk be
list.push(b); // vegyük fel a feldolgozandók listajára
b.bejar = true; // jegyezzük fel, hogy itt már jártunk
}
}
}
while( szomszed.length > 0 ) {
var a:MovieClip = eval("b"+db++);
a = szomszed.pop();// vegyük ki az MC-ket
tabla[a.x][a.y]=a;
a.gotoAndStop(szam);
}
lepesek=lepesek+1;
}
// segéd függvények a képernyő kezeléséhez
function kepx(oszlop) {
return oszlop*meretx + meretx/2;
}
function kepy(sor) {
return sor*merety + merety/2;
}A gombok pedig a klikk függvényt hívják meg egy színnel.
Köszi
Új hozzászólás Aktív témák
Hirdetés
● olvasd el a téma összefoglalót!
- Crucial BX500 500GB 2,5" SSD
- Samsung 960 EVO 250GB M2 NVMe SSD
- Inno3D RTX 3070 ICHILL 8GB / Csavarmatricás! / Beszámítás OK!
- Eladó Konfig Intel Core Ultra 7 265KF 32GB DDR5 2TB SSD RTX5070Ti 16GB O11 EVO Lamborghini!
- Bontatlan Dobozos Új Lenovo Thinkpad T14 G5 Laptop 14" -45% Ultra 7 155U 32/512 FHD+ Magyar!
- Beszámítás! Acer Predator Helios Neo 16 notebook-i9 14900HX 16GB DDR5 1TB SSD RTX 4060 8GB W11
- Wifis fèlkonfig! Kamatmentes rèszletre is! Èrdeklődj!
- ÚJ HP EliteBook 6 G1a Ryzen 5 PRO 230 4.9GHz 32GB DDR5 1TB FHD+ 16:10 már jobbik kijelző, gar 2028
- Akciós kisWorkstation! Dell Precision 3560 i7-1165G7 4.7GHz / 32GB / 512GB / Quadro T500 2GB FHD 15"
- Samsung Galaxy S24 Ultra 512GB Kártyafüggetlen 1év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


