Avatar billede donslund Nybegynder
01. november 2001 - 11:40 Der er 24 kommentarer og
1 løsning

Hittest eller lignende

Jeg skal have en brik til at glide på plads hvis den er over bestemmelsesstedet.

on (press) {
    startDrag (brik11);
    _root.depthHolder++;
    swapDepths(_root.depthHolder);
}
on (release) {
    stopDrag ();
    if (brik11.hittest( _root.dest11) == true) {
        _root.rigtig.gotoAndPlay(2);
    }
}

I følge dette spilles frame 2 i rigtig hvis brikker ligger korrekt mend et virker ikke.
Avatar billede cgleerup Nybegynder
01. november 2001 - 11:47 #1
prøv at indsætte en else så den ved hvad den skal gøre hvis ikke værdien er sand!
Avatar billede paask Nybegynder
01. november 2001 - 12:32 #2
Det eneste jeg kan se der er galt er, at det skal skrives hitTest, ikke hittest.

Et andet lille forslag: Ellers kan du også bruge _dropTarget. Med hitTest benyttes hele din dest11\'s bounding box, dvs. hele den ramme der er omkring objektet. Med _dropTarget (der i øvrigt både kan skrives _droptarget og _dropTarget, modsat hitTest) benyttes selve din cursers x og y værdier. Dermed er det kun true hvis man præcist rammer din dest, hitTesten kan oftest ske \'for nemt\' :0)

Så skal din knaps action se sådan ud:

on (release){
    stopDrag();
    if (eval(this._dropTarget) == _root.dest11){
    _root.rigtig.gotoAndPlay(2);
    }
}

mvh
paask
Avatar billede donslund Nybegynder
01. november 2001 - 12:32 #3
Jeg har nu forsøgt mig med _droptarget også men det ser heller ikke ud til at give resultat:

on (press) {
    startDrag (brik11);
    _root.depthHolder++;
    swapDepths(_root.depthHolder);
}
on (release) {
    stopDrag ();
    if (brik11._droptarget == \"/dest11\") {
    } else {
        setProperty (brik11, _x, 100);
    }
}
Avatar billede donslund Nybegynder
01. november 2001 - 12:33 #4
paask----> Jeg så ikke din kommentar. Jeg prøver lige.
Avatar billede cgleerup Nybegynder
01. november 2001 - 12:33 #5
right!
Avatar billede donslund Nybegynder
01. november 2001 - 12:35 #6
Det er meget svært  at ramme 100% rigtigt med en puslespilsbrik, så er der ikke en måde hvor man bare skal ramme inden for en radius af 10 pix?
Avatar billede paask Nybegynder
01. november 2001 - 12:39 #7
I stedet for at det skal være dine felter i puslespillet man skal ramme, kan du lave nogle kasser, rent grafik i MC\'s med alpha 0. Du kan så lave din dropTarget test på disse.

Men, hvis alle dine felter ligger lige ved siden af hinanden kan dette give et problem, da de extra MC\'s så kan overlappe... Så må du skifte disse extra MC\'s swapDepths dynamisk alt afhængigt af din curser. Det kan du evt gøre med en hitTest.
Avatar billede paask Nybegynder
01. november 2001 - 12:40 #8
I øvrigt skal du ikke ramme 100 % rigtigt, din cirser skal bare være indenfor dit felts, grafik (der er grafik i felterne ikke?).
Avatar billede donslund Nybegynder
01. november 2001 - 12:41 #9
i min sidstbeskrevet if sætning har jeg brik11. Den er flybar og så har jeg dest11 det er min destination som har alpha 0
Kan jeg ikke bruge dem?
Avatar billede paask Nybegynder
01. november 2001 - 12:42 #10
Jo jo, det ser helt fint ud, der burde ingen problemer være... ?!
:o)
Avatar billede paask Nybegynder
01. november 2001 - 12:45 #11
I den sidst beskrevede (release) har du ikke defineret noget hvis brik11 laver en _dropTarget på dest11...! Er det en fejl du har rettet, elles er der jo ingen kommando til den _dropTarget!
Avatar billede donslund Nybegynder
01. november 2001 - 13:14 #12
Jeg har lige tilføjet _root.rigtig.playgoto(2)
Avatar billede paask Nybegynder
01. november 2001 - 13:29 #13
_root.rigtig.gotoAndPlay(2) mener du vel ;0)
Avatar billede donslund Nybegynder
01. november 2001 - 13:47 #14
ja da
Avatar billede paask Nybegynder
01. november 2001 - 13:59 #15
Er der stadig problemer, eller har du fået det til at virke?
Avatar billede donslund Nybegynder
01. november 2001 - 14:06 #16
Det virker ikke endnu.
Avatar billede donslund Nybegynder
01. november 2001 - 14:10 #17
hvad skal jeg skrive hvis jeg vil lave mine dropTarget de mc\'s som jeg skal ramme med mine brikker?
Avatar billede donslund Nybegynder
01. november 2001 - 14:16 #18
Er det ikke muligt, at få brikken til at falde på plads selv om man holder den med musen?
Avatar billede paask Nybegynder
01. november 2001 - 14:26 #19
Jo, du kan med _dropTarget tjekke om din brik er over feltet, hvis den er det skal dens x og y værdier sættes til feltets. Det gør du med en if sætning, dvs. idet brikken ikke længere er over feltet dragger du den igen som normalt. Oki?! :0)
Avatar billede gotcha Nybegynder
01. november 2001 - 14:27 #20
Bare send den til mig på morten_barslund@hotmail.com , så skal jeg nok ordne det :)

Mvh Morten
Avatar billede donslund Nybegynder
01. november 2001 - 15:00 #21
paask-----> Kan du ikke skrive lidt kode.
Avatar billede paask Nybegynder
01. november 2001 - 15:09 #22
Hmmm, jo men jeg skal lige til at re-installere windows og generelt rive min maskine rundt ;0)

Derfor bliver det lidt hurtigt, og ikke testet, men det bliver noget lignende dette:

on (press){
    startDrag (brik11);
    _root.depthHolder++;
    swapDepths(_root.depthHolder);
    if (eval(this._dropTarget) == _root.dest11){
    this._x = _root.dest11._x;
    this._y = _root.dest11._y;
    }
}


on (release){
    stopDrag();
    if (eval(this._dropTarget) == _root.dest11){
    _root.rigtig.gotoAndPlay(2);
    this._x = _root.dest11._x;
    this._y = _root.dest11._y;
    }
}

På denne måde burde din brik \'falde på plads\' hvis man dragger den rigtigt (ind over feltet), og ellers dragger man den som normalt. Idet man stopDragger og _dropTarget er feltet, bliver brikken placeret på selve feltet.

Det blev lidt hurtigt, men det er denne idé du skal gå udfra, jeg har ikke mulighed for at teste, da jeg som sagt skal til at rive hele maskinen rundt nu.

Håber du finder ud af det, leg lidt med det så burde du få et fint puslespil :0)

mvh
paask
Avatar billede paask Nybegynder
02. november 2001 - 15:55 #23
Fik du det til at fungere? Nu er min maskine samlet igen, så nu kan jeg bedre hjælpe ;0)
Avatar billede donslund Nybegynder
02. november 2001 - 17:38 #24
Ja, det var helt perfekt.
Kan du ikke lige sende et svar, så du kan få nogle point.
Tak for hjælpen.
Avatar billede paask Nybegynder
02. november 2001 - 19:15 #25
Okay, jeg troede vi skuklle arbejde videre på det, men great hvis det virker :0)

mvh
paask
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester