Avatar billede d3froztt Nybegynder
06. oktober 2003 - 11:57 Der er 6 kommentarer

Flytte flere sprites på een gang og låse position

Ja jeg skrev for lidt tid siden og fik acceptetet svar men her nu har jeg fundet ud af at det ikke helt var godt nok?

Her er problemet:
Jeg vil gerne flytte flere sprites på een gang men det skal kun være inden for et vist område?... hvordan låser jeg spritenes position oven på hinanden - imens jeg kan flytte på dem?

lyder nok lidt mærkeligt?
forstil jer et windows vindue - som du kun kan flytte på skrivebordet men når vinduet når kanten fortsætter ikonerne indtil de rammer kanten selv?... hilfe
Avatar billede kanding Nybegynder
06. oktober 2003 - 13:36 #1
Sådan som jeg forstår dig har du f.eks 10 sprites. Når du flytter en flytter du de andre relativt ikke??
Det du så gerne vil er at begrænse det så du ikke har nogen der ryger uden for stage.

Umiddelbart kan du i dit sendAllsprites kald lade hver enkelt sprite undersøge om den er på vej ud af stage. Hvis den er, så er det ikke muligt at flytte nogen. Det kan godt være at du så skal sætte alle sprites tilbage hvis en kommer ud over stage.
F.eks. hvis du trækker til højre og kommer ud i 810 hvor stage er 800, så sætter du den sprite der er ud over stage til 800 og kalde de andre og beder dem om at sætte sig relativt som du ellers ville gøre.

Hjælper eller forvirre det svar??? ;-)
Avatar billede d3froztt Nybegynder
06. oktober 2003 - 23:42 #2
jeg har lige lavet en lille simpel test... så i kan se mit problem
http://www.home.no/d3froztt/xpert/problem.htm

det virker ikke hvis du "tager fat" i de grønne, det sku gå stærkt, men pointen er der ;)
Avatar billede d3froztt Nybegynder
06. oktober 2003 - 23:53 #3
en anden ting hvordan laver jeg in slukknap?
ummidelbart ville jeg bare skrive
On MouseUp
exit
end

men det virker ikke??? når jeg er inde i director så lukker den hele programmet men når jeg er i IE så sker der nada? - så læste jeg et sted at man sku bruge halt kommandeoen da halt stopper filmen og det betød vist også at den selv lukkede eller noget?? men ikke noget af det virker?
Avatar billede kanding Nybegynder
07. oktober 2003 - 08:19 #4
1. Til det øverste: Når du har mouseDown på en grøn knap, så kalder du sendSprite(10, #mouseDown) antaget at den blå kasse er i sprite 10. Med andre ord, når du klikker på en grøn kanp, så sender vi kommandoen vidre til den blå kasses mouseDon.

2. "exit" betyder bare at gå ud af funktionen. Hvis du skrivet "halt", så er du sikker på at du stopper director, men i Shockwave kan den ikke bruges, da du er i en browser. Det er bedre at gå til en anden webside:

On MouseUp
goToNetPage("http://www.whatever.dk")
end

eller smartere
On MouseUp
goToNetPage("java script:history.back(-1)")
end
Avatar billede d3froztt Nybegynder
07. oktober 2003 - 14:58 #5
1. Til det øverste: Når du har mouseDown på en grøn knap, så kalder du sendSprite.......... <- hvad har det med noget at gøre??

Lad mig lige gentage mig selv:
(http://www.home.no/d3froztt/xpert/problem.htm)
problemet er at når jeg "trækker den blå kasse udover kanten" så flytter de grønne prikker sig, forstil jer at det er et windows vindue? ikonerne ska blive på samme plads selvom at vinduet flyttes?

?...eller er det helt volápyk?
Avatar billede kanding Nybegynder
07. oktober 2003 - 16:27 #6
ahh... de skal blive siddende. Forstod heller ikke hvad du ville med den anden.

Den største sprite du flytter er den blå kasse. Altså er det den der skal teste om den rammer kanterne. Den skal bestemme om de andre skal flytte eller ej. Jeg formoder at du kalder sendAllSprites #move eller lign. Sålænge den blå kasse ikke rammer en kant og sålænge musen er nede, skal den kalde de andre sprites. Det vil sige den først tester på om den rammer en kant og derefter kalder de andre sprites.


Hvis du klikker på en af de andre sprites skal sende kaldet vidre til den blå kasse med sendSprite(10, #mouseDown) (hvis altså den har sprite kanal 10 selvfølgelig)

Prøv det først.

Jeg kunne forestille mig at der kunne komme forskydninger ved at flytte med sendAllsprites, så det kan være at du må lave en anden metode med repeat loop istedet.
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
Kurser inden for grundlæggende programmering

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