SWiSH Forum Strona Główna SWiSH Forum
Forum użytkowników programów SWiSH

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload

Poprzedni temat «» Następny temat
Konwersja skryptu
Autor Wiadomość
Gyver
Praktyk


Dołączył: 17 Maj 2010
Posty: 25
Skąd: Katowice
Wysłany: Sob 26 Lut, 2011 09:08   Konwersja skryptu

Witam,

Znalazłem bardzo ciekawą animację zrobioną w CS3 i próbowałem zrobić coś podobnego w SM, ale niestety bez skutku :/ (Podgląd animacji z CS3 w załączniku)
Skrypt w CS3 wygląda tak:

Kod:

//Vars
m = 1;
inercia = 180;
inx = _x;
iny = _y;
r = _rotation;
min = 1;
originx = _x;
originy = _y;
originr = _rotation;
//friccion
b = 1.2;
//inicializando
vr = 0;
torque = 0;
vx = 0;
vy = 0;
modo = 2;

//
onEnterFrame = function () {
    if (modo != 0) {
        if (modo == 1) {
            if (modo_time == 1) {
                modo_time = 0;
                mxx = _root._xmouse;
                my = _root._ymouse;
                mx0 = mxx;
                my0 = my;
                dmx = mxx-mx0;
                dmy = my-my0;
            } else {
                mxx = (_root._xmouse+mxx)/2;
                my = (_root._ymouse+my)/2;
                dmx = mxx-mx0;
                dmy = my-my0;
                mx0 = mxx;
                my0 = my;
            }
            fx = (dmx-vx)*m;
            fy = (dmy-vy)*m;
            ldx = mxx-inx;
            ldy = my-iny;
            if (fx == 0) {
                mlength = ldx;
                mforce = fy;
                torque = mforce*mlength;
            } else if (fy == 0) {
                mlength = ldy;
                mforce = fx;
                torque = -(mforce)*mlength;
            } else {
                k = fy/fx;
                kx = (-(k)*k*ldx+k*ldy)/(-(k)*k-1);
                ky = k*(kx-ldx)+ldy;
                mlength = Math.sqrt(kx*kx+ky*ky);
                mforce = Math.sqrt(fx*fx+fy*fy);
                if (fx*ky>0) {
                    torque = -(mforce)*mlength;
                } else {
                    torque = mforce*mlength;
                }
            }
            vx = dmx;
            vy = dmy;
            inx += vx;
            iny += vy;
            vr = vr-torque/inercia;
            ldx = mxx-inx;
            ldy = my-iny;
            var cos;
            var sin;
            cos = Math.cos(vr/180*Math.PI);
            sin = Math.sin(vr/180*Math.PI);
            addx = ldx*cos+ldy*sin-ldx;
            addy = -(ldx)*sin+ldy*cos-ldy;
            inx += -(addx);
            iny += -(addy);
        } else if (modo == 2) {
            if (modo_time == 1) {
                modo_time = 0;
                vx = vx-(addx);
                vy = vy-(addy);
            }
            torque = 0;
            addx = 0;
            addy = 0;
            inx += vx;
            iny += vy;
        }
        //rotacion
        r -= vr;
        this._rotation = r;
    }
    if (inx<0) {
        this.inx=0;
    }
    if (inx>Stage.width) {
        this.inx=Stage.width;
    }
    if (iny>Stage.height) {
        this.iny=Stage.height;
    }
    if (iny<0) {
        this.iny=0;
    }
    //posicion 
    this._x = inx;
    this._y = iny;
    vx = vx/b;
    vy = vy/b;
    vr = vr/b;
};
stop();


Kod:

on (press) {
    modo = 1;
    modo_time = 1;
}
on (release, releaseOutside) {
    modo = 2;
    modo_time = 1;
}


Może ktoś wie jak przerobić ten skrypt na potrzeby SM? Albo w inny sposób uzyskać taki efekt?
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Nowe zasady dotyczące cookies. Wykorzystujemy pliki cookies, aby nasz serwis lepiej spełniał Państwa oczekiwania. Można zablokować zapisywanie cookies, zmieniając ustawienia przeglądarki.
         
Strona wygenerowana w 0.14 sekundy. Zapytań do SQL: 11