19. august 2006 - 23:19
Der er
5 kommentarer og 1 løsning
Oversættelse af kode til flash 8?
Hej Er der nogen der kan oversætte denne her kode så den fungere i flashplayer 8. P.t. virker den kun i flashplayer 5! Kode: 1. det som ligger på i roden på actions laget: Movieclip.prototype.elasticScale = function(target, accel, convert) { xScale = xScale*accel+(target-this._xscale)*convert; yScale = yScale*accel+(target-this._yscale)*convert; this._xscale += xScale; this._yscale += yScale; }; 2.Det som ligger på mine movie clips: onClipEvent (enterFrame) { if (this.hitTest(_root._xmouse, _root._ymouse, true)) { elasticScale(150, 0.9, 0.1); } else { elasticScale(100, 0.9, 0.1); } } Det er sikkert gjort i en ruff, men jeg ved bare ikke hvor jeg skal starte eller begynde. Hvis der er en alternativ måde at gøre det på så, er det også fint bare effekten er den samme. Det som det skal gøre er at scalere mc med en bounce effekt, når muser laver en rollOver. På for hånd tak. :)
Annonceindlæg fra Idura
19. august 2006 - 23:53
#1
function elasticScale(mc:MovieClip):Void { var accel:Number = 0.9; var convert:Number = 0.1; var targ:Number = 100; mc.xScale = 0; mc.yScale = 0; mc.onEnterFrame = function():Void { targ = (this.hitTest(_root._xmouse, _root._ymouse)) ? 150 : 100; this.xScale = this.xScale*accel+(targ-this._xscale)*convert; this.yScale = this.yScale*accel+(targ-this._yscale)*convert; this._xscale += this.xScale; this._yscale += this.yScale; }; } elasticScale(mit_mc); Hvor 'mit_mc' er instancenavnet på det movieclip du vil tilføje effekten på.
20. august 2006 - 00:06
#2
Tak, men jeg får de her fejl: **Error** Scene=Scene 1, layer=actions, frame=1:Line 1: '{' expected function elasticScale(mc:MovieClip):Void { **Error** Scene=Scene 1, layer=actions, frame=1:Line 7: '{' expected mc.onEnterFrame = function():Void { **Error** Scene=Scene 1, layer=actions, frame=1:Line 13: Unexpected '}' encountered }; Total ActionScript Errors: 3 Reported Errors: 3
20. august 2006 - 00:25
#3
Sorry det var mig som havde min settings til at stå til as 1.0. :) Det virker perfekt. Smid et svar hvis du samler på point og tak for det hurtige svar.
20. august 2006 - 00:36
#4
Jeg har lige en ting til, kan man få den til at skifte depth, altså så det mc musen er over ligger øverst?? function elasticScale(mc:MovieClip):Void{ var accel:Number = 0.9; var convert:Number = 0.1; var targ:Number = 100; mc.xScale = 0; mc.yScale = 0; mc.onEnterFrame = function():Void { targ = (this.hitTest(_root._xmouse, _root._ymouse)) ? 150 : 100; this.xScale = this.xScale*accel+(targ-this._xscale)*convert; this.yScale = this.yScale*accel+(targ-this._yscale)*convert; this._xscale += this.xScale; this._yscale += this.yScale; }; } elasticScale(box1_mc); elasticScale(box2_mc); elasticScale(box3_mc); elasticScale(box4_mc); elasticScale(box5_mc);
20. august 2006 - 08:45
#5
Ja, det kan du gøre sådan her: function elasticScale(mc:MovieClip):Void { var accel:Number = 0.9; var convert:Number = 0.1; var targ:Number = 100; mc.xScale = 0; mc.yScale = 0; mc.onEnterFrame = function():Void { if (this.hitTest(_root._xmouse, _root._ymouse)) { targ = 150; var depth:Number = _root.getNextHighestDepth(); if (this.getDepth()<depth-1) { this.swapDepths(depth); } } else { targ = 100; } this.xScale = this.xScale*accel+(targ-this._xscale)*convert; this.yScale = this.yScale*accel+(targ-this._yscale)*convert; this._xscale += this.xScale; this._yscale += this.yScale; }; } elasticScale(box1_mc); elasticScale(box2_mc); elasticScale(box3_mc); elasticScale(box4_mc); elasticScale(box5_mc);
20. august 2006 - 09:54
#6
Tak for hjælpen, jeg er imponeret, det fungere bare perfekt. :)
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.