06. september 2002 - 11:30
Der er
10 kommentarer og
1 løsning
flupper effekt
Hi med jer,
er der nogen som har scriptet til en "flubber effekt". Ved i hvad jeg mener. F.eks. en kasse der står og blævre lidt inden den står stille (måske kaldes det gele-effekte). Det skal være muligt og tydeligt hvor jeg skal rette i scriptet for at jeg kan rette på blævret.
06. september 2002 - 11:35
#1
Uha... Godt spørgsmål... Effekten vandt en actionscript konkurrence for noget tid siden her:
http://www.bit-101.com/ascontest.htmlDu kan finde koden ved at scrolle ned af siden...
Da konkurrencen netop handlede om at lave 25 liniers kode med en fed effekt, så er det kun kode og den er ret simpel...
Mit spaceinvaders-spil med highscore vandt ikke :o(
06. september 2002 - 11:52
#3
Heller ikke linket til .fla'en længere ned... sikker samme sti som .swf...
Ellers har bit-101 selv lavet noget tilsvarende for nogen tid siden... kig i hans laboratory... Det er inden for de sidste par uger (pas på - man bruger hurtigt mange timer derinde). Det er dog uden kilde...
Men jello-algoritmen er "open source", så du kan sikker finde tråden på were-here hvor konkurrencen hørte, finde hypah's indlæg og skrive en mail til ham...
/Barklund
06. september 2002 - 12:11
#4
Her:
sides=18;
arrays={fx:[], fy:[], nx:[], ny:[], fmx:[], fmy:[], nmx:[], nmy:[], x:[], y:[], mx:[], my:[], ax:[], ay:[], amx:[], amy:[]};
for (i=0; i<sides; i++) {
arrays.fx[i]=arrays.nx[i]=arrays.x[i]=(60/Math.cos(3.1415926/sides))*Math.cos(-1.5707963+(6.2831852/sides)*i);
arrays.fy[i]=arrays.ny[i]=arrays.y[i]=(60/Math.cos(3.1415926/sides))*Math.sin(-1.5707963+(6.2831852/sides)*i);
arrays.fmx[i]=arrays.nmx[i]=arrays.mx[i]=60*Math.cos(-1.5707963+(6.2831852/sides)*i+(3.1415926/sides));
arrays.fmy[i]=arrays.nmy[i]=arrays.my[i]=60*Math.sin(-1.5707963+(6.2831852/sides)*i+(3.1415926/sides));
}
b=this.createEmptyMovieClip("circle", 20);
b.onEnterFrame=function() {
vars={x:0,y:0,vvx_xmouse-275)-vars.ox,vvy_ymouse-200)-vars.oy,ox:_xmouse-275,oy:_ymouse-200};
for (i=0;i<sides;i++) {
d={d1(arrays.nx[i]-vars.ox)*(arrays.nx[i]-vars.ox))+((arrays.ny[i]-vars.oy)*(arrays.ny[i]-vars.oy)),d2(arrays.nmx[i]-vars.ox)*(arrays.nmx[i]-vars.ox))+((arrays.nmy[i]-vars.oy)*(arrays.nmy[i]-vars.oy))};
arrays.nx[i]+=(arrays.ax[i]=(arrays.ax[i]+vars.vvx*(100/(d.d1+1000))+(arrays.fx[i]-arrays.nx[i])/7)*.95);
arrays.ny[i]+=(arrays.ay[i]=(arrays.ay[i]+vars.vvy*(100/(d.d1+1000))+(arrays.fy[i]-arrays.ny[i])/7)*.95);
arrays.nmx[i]+=(arrays.amx[i]=(arrays.amx[i]+vars.vvx*(100/(d.d2+1000))+(arrays.fmx[i]-arrays.nmx[i])/7)*.95);
arrays.nmy[i]+=(arrays.amy[i]=(arrays.amy[i]+vars.vvy*(100/(d.d2+1000))+(arrays.fmy[i]-arrays.nmy[i])/7)*.95);
vars={ox:vars.ox, oy:vars.oy, vvx:vars.vvx, vvy:vars.vvy, x:vars.x+((arrays.nmx[i]+arrays.nx[i])/2)/sides,y:vars.y+((arrays.nmy[i]+arrays.ny[i])/2)/sides};
}
b.clear();
b.beginGradientFill("radial", [0x0020FF,0x0020FF], [50,100], [0,255], { matrixType:"box", x:275+vars.x-120, y:200+vars.y-120, w:200, h:200, r:0 });
b.moveTo(275+arrays.nmx[0], 200+arrays.nmy[0]);
for (i=1; i<=sides; i++) b.curveTo(275+arrays.nx[i%sides], 200+arrays.ny[i%sides], 275+arrays.nmx[i%sides], 200+arrays.nmy[i%sides]);
b.endFill();
}
stop();
Den stod i hans indlæg i tråden...
06. september 2002 - 15:12
#6
Tag en helt tom fil i mx, klik på første frame og åbn actions-panellet og skriv koden. That's it!
Koden stod i were-here tråden, hvor konkurrencen kørte under hypah's eget indlæg (side 2)
21. september 2002 - 16:35
#9
Den melder fejl:
Scene=Scene 1, Layer=Layer 1, Frame=1: Line 11: ':' expected
vars={x:0,y:0,vvx_xmouse-275)-vars.ox,vvy_ymouse-200)-vars.oy,ox:_xmouse-275,oy:_ymouse-200};
Scene=Scene 1, Layer=Layer 1, Frame=1: Line 13: ':' expected
d={d1(arrays.nx[i]-vars.ox)*(arrays.nx[i]-vars.ox))+((arrays.ny[i]-vars.oy)*(arrays.ny[i]-vars.oy)),d2(arrays.nmx[i]-vars.ox)*(arrays.nmx[i]-vars.ox))+((arrays.nmy[i]-vars.oy)*(arrays.nmy[i]-vars.oy))};
Scene=Scene 1, Layer=Layer 1, Frame=1: Line 19: Unexpected '}' encountered
}
Billigt bras ((((O;