Avatar billede Himbear Nybegynder
14. marts 2001 - 12:32 Der er 3 kommentarer og
1 løsning

Message til behaviors

Hvordan starter jeg Fade in/out behavior\'en når den er sat til \"start by message\"? 
Jeg har læst i Help\'en om scriptInstanceList, Call sprite og Send sprite, men jeg kan ikke helt finde ud hvad jeg helt præcis skal skrive!
Avatar billede kanding Nybegynder
31. marts 2001 - 16:37 #1
Antaget at sprite er i kanal 1 så prøv sendsprite(1, #mActivate).

Avatar billede Himbear Nybegynder
17. april 2001 - 12:07 #2
Det virker faktisk!

Kender du også kommandoen til at tilfølge en behavior?

Det er fordi at den skal fade in ved mouseover og så skal den fade out ved mouseleave.

Hvad er smartest at gøre der?
Avatar billede kanding Nybegynder
17. april 2001 - 13:06 #3
Noget i denne stil kunne virke fint:

on beginSprite me
pFade = 0 -- flag der bestemmer hvilken vej vi fader
end

on mouseenter me
pBlend = 0
pFade = 1
end

on mouseLeave me
pBlend = 100
pFade = 2
end

on exitframe me
if pFade = 1 then
if pBlend < 100 then
pBlend = pBlend  +10
sprite(me.spriteNum).blend = pBlend
end if
end if

if pFade = 2 then
if pBlend > 0 then
pBlend = pBlend  - 10
sprite(me.spriteNum).blend = pBlend
end if
end if

end

Hvis du har rigtig mange knapper er det en dårlig ide\' at have en masse exitframe som bare står og venter på at køre.

Director kan dynamisk tilføje og fjerne scripts fra sprites
Antaget at din fade behavior hedder \"fadeScript\"

scr = new (script \"fadeScript\")
-- tilføj scriptet til spritens scriptList
sprite(10).scriptinstanceList.add(scr)
-- da spriten ikke får et beginsprite kald
-- må vi kalde det selv
sprite(10).beginSprite()

Inde i \"fadeScript\" skal du når du har fadet out eller in, kalde en lille handler der fjerner scriptet igen. Her er handleren.
on killObj me
  sprite(me.spriteNum).scriptInstanceList.deleteOne(me)
end

Me er referencen til objectet, ved at fjerne via objectet skal vi ikke først finde scriptet i listen.
Prøv at lege lidt med det så forstår du det bedre.

Avatar billede Himbear Nybegynder
23. april 2001 - 09:28 #4
Jeg får ikke lige så meget tid det næste stykke tid, så du må hellere lige få dine point!

Men jeg har ikke lige nået at prøve det sidste endnu, men det ser ud til at være rigtigt!

Tak for hjælpen!

mvh Tino
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