Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 3 odgovora
  • 4.691 pregleda

Najnovija ↓

Action Script 2 DragOver 20.02.2013. u 13:00 · pre 166 meseci #1
Imam dva movie clipa A i B i hocu da kada A clip opcijom drag and drop prevucem preko B klipa da ode na frame 2.

Objektu B dodao sam sledecu akciju:

on (dragOver) {
gotoAndStop (2);
}

I kada prevucem objekat preko njega nista se ne desava.

Dok sa opcijom rollover radi ali meni je potrebno da za odredjeni objekat zato mi treba dragover.

Moze i neko drugo resenje da nije komplikovano.
Re: Action Script 2 DragOver 21.02.2013. u 00:48 · pre 166 meseci #2
Da bi utvrdio da li je movieclip A dodirnuo movieclip B koristi hitTest() funkciju:
Code:
if (A.hitTest(B))
{
    B.gotoAndStop(2);
}

Evo kako bi izgledao kod u tvom primeru:
Code:
A.onPress = function():Void 
{
    this.startDrag();
}

A.onRelease = function():Void 
{
    this.stopDrag();
}

function provera():Void
{
    if (A.hitTest(B))
    {
        B.gotoAndStop(2);
        clearInterval(intervalProvere);
    }
}

var intervalProvere:Number = setInterval(provera, 1000);

Prvo ćeš pritiskom na mc A započeti prevlačenje, a na otpuštanje levog tastera miša ćeš ga zaustaviti. Zatim ćeš proveravati da li je mc A dodirnuo mc B i u tom slučaju će se prikazati drugi frejm mc-a B. Dodao sam setInterval() funkciju kako bi se vršila provera svake sekunde da li je došlo do dodirivanja između dva mc-a. Ukoliko želiš da proveriš da li se mc A nalazi unutar mc-a B onda u funkciji hitTest() umesto naziva mc-a možeš da proslediš X i Y poziciju mc-a B uvećanu za širinu i visinu mc-a A:
Code:
var xPozicija:Number = B._x + A._width;
var yPozicija:Number = B._y + A._height;

function provera():Void
{
    if (A.hitTest(xPozicija,yPozicija))
    {
        B.gotoAndStop(2);
        clearInterval(intervalProvere);
    }
}
Potpis
Pogledajte odličnu knjigu ActionScript 3.0: Visual QuickStart Guide na Safari Books Online unošenjem kupon koda TPJVJGA: https://ssl.safaribooksonline.com/safarienabled
Obavezno pogledati besplatan tutorijal "Installing Apache, MySQL, and PHP" na lynda.com: http://www.lynda.com/MySQL-5-t...che-mysql-and-php/77958-2.html
Re: Action Script 2 DragOver 21.02.2013. u 01:53 · pre 166 meseci
izmenjeno 1 put, poslednji put princ92 21.02.2013. u 02:23
  1. princ9221.02.2013. u 02:23zapis iz teksta poruke
#3
Pazi ovako u prilogu imam fajl kako sam to zamislio.

http://www.mediafire.com/?nk11oc6a8s78jjh

Imas pincetu uhvatis neki komad i vuces ga kroz lavirint ako udaris u zid baca te na frame 2.

Problem je sto ako hocu da napravim krive linije od lavirinta on ce gledati kao celinu odnosno kao kvadrat i cim prenesem preko kocke on ce da izbaci da je udareno a meni treba da samo kada predje preko te linije prebaci na frame 2, jel to moguce i kako?

Bio bih ti jako zahvalan ako bi mi pomogao to da uradim.
Re: Action Script 2 DragOver 21.02.2013. u 23:56 · pre 166 meseci #4
Najjednostavnije rešenje jeste da napraviš 2 movieclip-a od zida (za horizontalnu i vertikalnu liniju) i da onda proveravaš da li je lopta dodirnula neki od ta dva mc-a:
Code:
function provera():Void
{
    if (bounce.hitTest(horizontalni_mc))
    {
        trace("dodirnula je horizontalni zid");
    }
    if (bounce.hitTest(vertikalni_mc))
    {
        trace("dodirnula je vertikalni zid");
    }
}

var intervalProvere:Number = setInterval(provera, 100);

Preuzmi iz priloga izmenjeni FLA (kompatibilan je sa verzijom Flash CS5, CS5.5 i CS6).
Potpis
Pogledajte odličnu knjigu ActionScript 3.0: Visual QuickStart Guide na Safari Books Online unošenjem kupon koda TPJVJGA: https://ssl.safaribooksonline.com/safarienabled
Obavezno pogledati besplatan tutorijal "Installing Apache, MySQL, and PHP" na lynda.com: http://www.lynda.com/MySQL-5-t...che-mysql-and-php/77958-2.html
Sviđa mi se1
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme