[flash] variabele instance name geven aan MC

Pagina: 1
Acties:

  • niXnut
  • Registratie: Februari 2001
  • Laatst online: 17-07-2020

niXnut

Hora ruit; hora est!

Topicstarter
Ik maak een menu en elke button van het menu moet de status van de overige buttons controlleren.
Zo'n controle loopje gaat wel lukken maar het is veel handiger als de instancename van de MC's (de buttons van het menu) bijvoorbeeld de variabele "nummer" heeft. zodat ik kan controlleren dmv if buttonMC+"nummer" status= true dan setvariabele status= false.

anders moet ik voor 12 buttons handmatig de code opgeven:
if buttonMC1 status=false, setvariabele status=true
if buttonMC2 status=false, setvariabele status=true
etc.

snappie, dat moet toch makkelijker kunnen?

| antec sx840 | P4 1.7 | intel 850 mv | 512Mb kingston ecc | matroxG550 | adaptec29160 | atlas 10K III 18Gb | seagate barracuda IV 40Gb | plextor 40x | Iiyama17" | w2k pro | lappie: Dell inspiron 8100 | 1,2G/512/15"/48Gb/dvdcdrw/GF2go32Mb/lan/5


Verwijderd

Dat kan ook, je kunt 'add' gebruiken om strings aan elkaar te plakken (evt. integers worden omgezet naar string)

duz:
code:
1
"buttonMC" add nummer

  • niXnut
  • Registratie: Februari 2001
  • Laatst online: 17-07-2020

niXnut

Hora ruit; hora est!

Topicstarter
die snap ik niet helemaal ben ik bang

| antec sx840 | P4 1.7 | intel 850 mv | 512Mb kingston ecc | matroxG550 | adaptec29160 | atlas 10K III 18Gb | seagate barracuda IV 40Gb | plextor 40x | Iiyama17" | w2k pro | lappie: Dell inspiron 8100 | 1,2G/512/15"/48Gb/dvdcdrw/GF2go32Mb/lan/5


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 14:46

Pelle

🚴‍♂️

Op vrijdag 12 april 2002 12:01 schreef niXnut het volgende:
die snap ik niet helemaal ben ik bang
Dat kun je in een for-loopje stoppen:
code:
1
2
3
4
/* bijvoorbeeld */
for (i=0; i<10; i++) {
    _root["buttonMC" add i].status = true;
}

  • niXnut
  • Registratie: Februari 2001
  • Laatst online: 17-07-2020

niXnut

Hora ruit; hora est!

Topicstarter
misschien kan ik beter het praktische probleem omschrijven.
ik maak een menu met buttons met een bepaalde downstatus.
nou wil ik graag dat die downstatus zichtbaar blijft tot ik op een andere knop druk. Heel simpel lijkt me, maar ik krijg het niet voor elkaar.

| antec sx840 | P4 1.7 | intel 850 mv | 512Mb kingston ecc | matroxG550 | adaptec29160 | atlas 10K III 18Gb | seagate barracuda IV 40Gb | plextor 40x | Iiyama17" | w2k pro | lappie: Dell inspiron 8100 | 1,2G/512/15"/48Gb/dvdcdrw/GF2go32Mb/lan/5


Verwijderd

Op vrijdag 12 april 2002 12:25 schreef Pelle het volgende:

[..]

Dat kun je in een for-loopje stoppen:
code:
1
2
3
4
/* bijvoorbeeld */
for (i=0; i<10; i++) {
    _root["buttonMC" add i].status = true;
}
Eigenlijk is dit sneller:
code:
1
2
3
4
5
/* bijvoorbeeld */
i = 10;
while (i--) {
    _root["buttonMC" add i].status = true;
}

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 14:46

Pelle

🚴‍♂️

Op vrijdag 12 april 2002 13:23 schreef B-Top het volgende:
Eigenlijk is dit sneller:
Sneller qua uitvoeren, of sneller qua code inkloppen? Dat laatste kun je namelijk mooi op je buik schrijven (allebei 20 chars om te tikken :)).

  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

Op vrijdag 12 april 2002 13:23 schreef B-Top het volgende:

[..]

Eigenlijk is dit sneller:
code:
1
2
3
4
5
/* bijvoorbeeld */
i = 10;
while (i--) {
    _root["buttonMC" add i].status = true;
}
en dit is nog sneller >:) :P
code:
1
2
3
4
i = 10;
while (i--) {
set ( "/buttonMC" add i add ":status", true);
}

/edit klein foutje in de code ;)

"You're only as good, as what you did last week."


Verwijderd

Op vrijdag 12 april 2002 13:34 schreef Pelle het volgende:

[..]

Sneller qua uitvoeren, of sneller qua code inkloppen? Dat laatste kun je namelijk mooi op je buik schrijven (allebei 20 chars om te tikken :)).
Sneller qua uitvoeren, en uiteindelijk ook echt kleiner, kijk maar eens naar de bytecodes :)

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 14:46

Pelle

🚴‍♂️

Op vrijdag 12 april 2002 14:08 schreef B-Top het volgende:
Sneller qua uitvoeren, en uiteindelijk ook echt kleiner, kijk maar eens naar de bytecodes :)
Okee, ik geloof je.. weer wat geleerd :)

  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

Op vrijdag 12 april 2002 14:08 schreef B-Top het volgende:

[..]

Sneller qua uitvoeren, en uiteindelijk ook echt kleiner, kijk maar eens naar de bytecodes :)
Maar beste Ralph, je weet toch dat direct object controlling veel langzamer is dan set variable? :)

Ook qua bytecode is ie korter:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
  frame 0
    constants 'i', '/buttonMC', ':status'  
    push 'i', 10
    setVariable
   label1:
    push 'i'
    getVariable
    push 'i', 'i'
    getVariable
    decrement
    setVariable
    not
    branchIfTrue label2
    push '/buttonMC', 'i'
    getVariable
    concat
    push ':status'
    concat
    push TRUE
    setVariable
    branch label1
   label2:
  end // of frame 0

VS:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  frame 0
    constants 'i', '_root', 'buttonMC', 'status'  
    push 'i', 10
    setVariable
   label1:
    push 'i'
    getVariable
    push 'i', 'i'
    getVariable
    decrement
    setVariable
    not
    branchIfTrue label2
    push '_root'
    getVariable
    push 'buttonMC', 'i'
    getVariable
    concat
    getMember
    push 'status', TRUE
    setMember
    branch label1
   label2:
  end // of frame 0

Scheelt maar 1 memoryblock maar als we dan toch aan het bitneuken zijn.. ;) Flash moet de voor de root ook nog memory reserveren op de stack.

"You're only as good, as what you did last week."


Verwijderd

I know, I know, maar ik haat flash 4 syntax :)

  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

Op vrijdag 12 april 2002 14:32 schreef B-Top het volgende:
I know, I know, maar ik haat flash 4 syntax :)
Add is eigenlijk ook Flash 4 syntax :P
However, the add operator is deprecated in Flash 5, and use of the + operator is recommended when creating content for the Flash 5 Player. Use the add operator to concatentate strings if you are creating content for Flash 4 or earlier versions of the Player.
>:) ;)

"You're only as good, as what you did last week."


  • tie-rep
  • Registratie: Oktober 2001
  • Laatst online: 19-02 15:56

tie-rep

nu met ir. !

Op vrijdag 12 april 2002 13:41 schreef oh,when? het volgende:

[..]

en dit is nog sneller >:) :P
code:
1
2
3
4
i = 10;
while (i--) {
set ( "/buttonMC" add i add ":status", true);
}

/edit klein foutje in de code ;)
of gebruik een + ipv add, is MM ook weer blij
en natuurlijk minder tiepe :)

[edit] helaas, te laat :)

Verwijderd

Op vrijdag 12 april 2002 14:33 schreef oh,when? het volgende:

[..]

Add is eigenlijk ook Flash 4 syntax :P
[..]

>:) ;)
AARRRRGGGGJHHHH!!!

Verwijderd

Op vrijdag 12 april 2002 14:33 schreef oh,when? het volgende:

[..]

Add is eigenlijk ook Flash 4 syntax :P
[..]

>:) ;)
Lol @ your sig :)
Pagina: 1