Avatar billede muddi Praktikant
14. april 2002 - 06:39 Der er 11 kommentarer og
1 løsning

Spil i Flash?

Jeg har lavet et lille spil i Flash, for at lære actionscript. Det går ud på at man skal være en lille mand der flygter fra nogen klatter, som falder ned fra himlen.
Men jeg kan ikke få scriptet der skal vise om man er ramt til at virke. Det er et script jeg har fundet på http://actionscript.org

Koden der ikke virker ligger i MC'et "processor" ...

Hvis der er nogen der vil kigge lidt på min film, så ligger den på http://redline.dk/div/mh/spil.zip

Hvis nogen også kunne få den til at vise hvor mange gange man er blevet ramt i et tekstfelt ville jeg blive MEGET glad... :o)

/Muddi
Avatar billede muddi Praktikant
14. april 2002 - 06:40 #1
Spillet kan forresten ses på http://redline.dk/div/mh/hornekjaerspillet.swf
Avatar billede muddi Praktikant
14. april 2002 - 06:45 #2
eller på http://redline.dk/div/mh/hornekjaerspillet.html hvor det er i den rigtige størrelse :o)

min kode ligner nok lort, men det er også den første rigtige flashfilm jeg har lavet *G*
Avatar billede hoejrup Nybegynder
14. april 2002 - 07:29 #3
Du har glemt at indtaste: distance_y = klat1_y - bo_y;

/per
Avatar billede muddi Praktikant
14. april 2002 - 17:11 #4
Nu har jeg gjort det, og mit actionscript ser sådan her ud:

//  KLAT 1
klat1_x = getProperty("_level0.klat1", _x);
klat1_y = getProperty("_level0.klat1", _y);
// KLAT 2
bo_x = getProperty("_level0.bo", _x);
bo_y = getProperty("_level0.bo", _y);

klat1_h = getProperty("_level0.klat1", _height)/2;
bo_h = getProperty("_level0.bo", _height)/2;

klat1_w = getProperty("_level0.klat1", _width)/2;
bo_w = getProperty("_level0.bo", _width)/2;

distance_x = klat1_x - bo_x;
distance_y = klat1_y - bo_y;

area = (Number(klat1_h) + Number(klat1_w)) * (Number(bo_h) + Number(bo_w));

if (Number(Number(distance_x * distance_x) + Number(distance_y * distance_y)) <= Number(area)) {
    /:status = "Ramt!";
} else {
    /:status = "-";
}

Men "status"-feltet skriver ikke ramt, når man bliver ramt af klatten! Hvordan kan det være? Fik du det til at virke?
Avatar billede barklund Nybegynder
14. april 2002 - 18:06 #5
Arbejder du i Flash4? I Flash5 eller Flash MX kan skrive koden noget mere gennemskueligt...
Avatar billede hoejrup Nybegynder
14. april 2002 - 19:43 #6
Han arbejder i Flash 5 med Flash 4 AS kode, og det er der ingen problemer med. For jeg har
to gamle spil, der er udviklet i Flash 4. Og de kører perfekt i Flash 5.

/per
Avatar billede hoejrup Nybegynder
14. april 2002 - 20:47 #7
Jeg har kikket lidt på jeres movieclip. For det første laver I ikke en test af klat nr. 2, og for det andet flytter I ikke movieclippet fysisk. Dermed kan I ikke teste om det virkelig rammer manden! Animation og fysisk flytning er to vidt forskellige ting i flash.

I bliver nød til selv at teste videre, og flytte movieclippet fysisk.

/per
Avatar billede muddi Praktikant
15. april 2002 - 10:02 #8
Jeps det er Flash 5 - og min AS kode er sikkert Flash 4 :o)

Hoejrup >> Mange tak for hjælpen... havde faktisk siddet og tænkt på det du skriver efter at have læst denne tutorial:
http://www.flashkit.com/tutorials/Math-Physics/Mass_Col-Dennis_S-623/index.shtml

Men jeg skal altså lave et AS der flytter mit MC i stedet for at lave en tweening i det MC med klatten?

Jeg prøver mig frem. Det er sgu en meget god måde at lære Flash at kende på!
Avatar billede hoejrup Nybegynder
15. april 2002 - 10:49 #9
Velbekomme! :o)

Du skal lave en tweening af dit movieclip. Derefter skal du flytte det fysisk, så
animationen er synkroniseret med bevægelsesforløbet.

/per
Avatar billede muddi Praktikant
15. april 2002 - 21:31 #10
Jeg tror jeg ved hvad du mener...
Hvis man ser klatten i MC klat, så bevæger den sig ikke, den ændrer bare form, Right?
I min maintimeline skal der scriptes et eller andet, som bevæger MC klat, så når klat rammer jorden, så passer det med at den splatter ud?

Det er sgu da barnemad :o) (hvis det altså er rigtigt hvad jeg skrev *GG*)
Avatar billede hoejrup Nybegynder
16. april 2002 - 09:43 #11
Klatten bevæger sig skam i MC klat, men du kan ikke ramme det andet MC med MC klat, fordi MC klat ikke flytter sig rent fysisk. Det bliver bare placeret på forskellige X positioner. Så du skal scripte en flytning af MC klat.

Det er ret simpelt this._y += 2; flytter dit MC i en onClipEvent (enterframe).

/per
Avatar billede muddi Praktikant
17. april 2002 - 16:30 #12
ok, mange tak!
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