Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 24-03-2006, 02:50   #1 (permalink)
bald ist sommer!
 
Benutzerbild von bummelhummel
 
Registriert seit: Mar 2006
Ort: berlin ofenheitzung blick@ring
Beiträge: 4
Unhappy MC proportional zu mc._y spiegeln und skalieren....

Hallo Liebe Leutz!
Bin zumindest als aktiver Teilnehmer am Forum neu hier und möcht mich mal freundlich als ambitionierter nub vorstellen, den ein ehrgeiziges Projekt vor ein vielleicht auch fuer euch ganz interessantes Problem gestellt hat....

Will eine Hummel als animierten MC fliegen lassen
von der Maus gesteuert
Cursor invisible = true
die soll sich umdrehen wenn man die Richtung aendert
und nach oben hin im Bild (nach hinten) kleiner werden
....

Klappt alles schon super!

ausser:

---->

es geht nich beides.
Groesser-kleiner-fade UND spiegelscale in einem

Hab den Canvas (y400) mit ner if-schleife in zwei zweihunderter unterteilt weil der MC erst in der unteren mit dem Faden anfangen soll.

oben klappt das hin und her fliegen per *=-1 super aber das faden nich (naja soll ja auch nich)

und unten geht das faden super klar aber dafuer kann sie dann nich mehr die richtung wechseln.

Hab mir deshalb schon die Letzten beiden Naechte um die Lauscher gehaun immer in der Hoffnung....

muss irgentwas mir der _x eigenschaft zu tun haben denn wenn ich aus dem script die this._xscale=this._y*this._y*this._y/500000 passage rausnehm (einer der unentlich vielen versuche dem uebel auf die schliche zu kommen) dann spiegelscaled und groessenfadet er auch unten einwandfrei --> ausser halt dass er dann den MC auffer Yachse verzerrt.


Hier der CODE:



onClipEvent(load)
{
speed=30
}

onClipEvent(enterFrame)
{
if(root._xmouse<this._y)
{
this._xscale*=-1}
}

onClipEvent(enterFrame)
{
if(_xmouse>this._y)
{
this._xscale*=-1
}
}


onClipEvent(enterFrame)
{
endX = _root._xmouse;
endY = _root._ymouse;
_x += (endX-_x)/speed;
_y += (endY-_y)/speed;
}

onClipEvent(enterFrame)
{
if(this._y>200)
{
this._yscale=this._y*this._y*this._y/500000;
this._xscale=this._y*this._y*this._y/500000
}
}


Geht das vielleicht gar nich?

Vielen Dank fuer eure von mir hochgeschaetzten antworten!

Gruss Harry
bummelhummel ist offline   Mit Zitat antworten
Alt 24-03-2006, 07:54   #2 (permalink)
°.oO°O.o°.oO.o°O
 
Benutzerbild von bamboocha
 
Registriert seit: Jun 2005
Ort: CH
Beiträge: 1.490
Hallo und herzlich willkommen im Forum!
Also, erstmal veraltete Syntax!
Nimm das Skript ab dem MovieCip und setze es auf die Hauptzeitleiste! Danach schreibst du das um:
PHP-Code:
onClipEvent(enterFrame
wird zu:
PHP-Code:
this.MovieClipName.onEnterFrame = function() { 
Dann kannst du nicht mehrere onEnterFrames auf den selben MC knallen! Das Neuere überschreibt immer das bereits bestehende!
Leg doch die Funktionen einfach alle in das selbe onEnterFrame! Du unterscheidest ja eh mit if-Abfragen!
PHP-Code:
this.MC.speed=30
this
.MC.onEnterFrame = function() {
    if(
root._xmouse<this._y)
    {
        
this._xscale*=-1}
    }
    if(
_xmouse>this._y)
    {
        
this._xscale*=-1
    
}
    
endX _root._xmouse;
    
endY _root._ymouse;
    
_x += (endX-_x)/speed;
    
_y += (endY-_y)/speed;
    if(
this._y>200)
    {
        
this._yscale=this._y*this._y*this._y/500000;
        
this._xscale=this._y*this._y*this._y/500000;
    }

Das ganze sollte so irgendwie aussehen. Kann sein, dass jetzt nicht mehr ganz alles funktioniert, aber ohne Datei ist das schwierig auszutesten! Jetzt müsstest du nur das "MC" durch den Instanzennamen deines MC's ersetzen und probieren!
__________________
There is no way to happiness, happiness is the way! - Buddha
bamboocha ist offline   Mit Zitat antworten
Alt 29-03-2006, 14:45   #3 (permalink)
bald ist sommer!
 
Benutzerbild von bummelhummel
 
Registriert seit: Mar 2006
Ort: berlin ofenheitzung blick@ring
Beiträge: 4
Bambooochaa!

Vielen Vielen Dank für deine schnelle Antwort!
Hab mich heute Nacht mit dem nötigen Abstand nochmal rangesetzt und viel ausprobiert.
Hab dann zumindest den Part:

[QUOTE=bamboocha]
if(root._xmouse<this._y)
{
this._xscale*=-1}
}
if(_xmouse>this._y)
{
this._xscale*=-1
}

aus dem MC rausgenommen und in die HZL gesetzt und siehe da:
Bambocha! klappt!

Wer lust hat kann sichs ja mal anschaun.

http://www.bummelhummel.de

Bin da auch immer dankbar und offen für Tips und verbesserungsvorschläge!

Also nochmal Vielen Dank!
bummelhummel ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 22:19 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele