[AS3]arguments in eventlistener

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • ebborazor
  • Registratie: Maart 2002
  • Laatst online: 10-09-2022
Dag!

Ik ben nu al een tijdje bezig met het maken van een rpg. Hiervoor ben ik nu o.a. een mapeditor aan het maken. De basis werkt eigenlijk al prima: http://megaswf.com/view/0...3b4d1f26f71c49ceec82.html.
Zoals je kan zien staan er aan de rechterkant verschillende knoppen om de tiles die je wilt gebruiken te selecteren. Deze knoppen maak ik op de volgende manier:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
            //create tile buttons
            buttonArray = new Array();
            for(var i = 0; i <2; i++) {
                tileButton = new tilesG();
                tileButton.x = 274;
                tileButton.y = 30 + (i * 45);
                tileButton.tType = i+1;
                tileButton.gotoAndStop(i+1);
                tileButton.selectedG.visible = false;
                tileButton.addEventListener(MouseEvent.CLICK, changeTileType );
                buttonArray.push(tileButton);
                addChild(tileButton);
             }


Nu begrijp ik dat in de standaard event class van as geen mogelijkheid zit om argumenten met de eventlistener mee te geven. Na wat gegoogle heb ik verschillende oplossingen gevonden waarvan het schrijven van een custom event class het meest werd aangeraden. Het argument wat ik mee zou willen geven is in dit geval om wel tile type (tType) het gaat. Nu vroeg ik mij af of er geen makkelijkere/snellere manier is om dit te doen.

Voor de tiles gebruik ik trouwens een movieclip met op elk frame een andere graphic (bos/bergen/gras/weg/etc). Is dit een goede aanpak, of krijg ik straks, met veel grotere maps (en dus veel meer tiles) dan in bovenstaand voorbeeld, problemen?

TIA!

Acties:
  • 0 Henk 'm!

  • Tsjilp
  • Registratie: November 2002
  • Niet online

Tsjilp

RS[I]ds

Als tType public is kan je gewoon event.currentTarget.tType opvragen.

Raar... Is zo gek nog niet


Acties:
  • 0 Henk 'm!

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Zie voor wat mogelijke oplossingen: http://board.flashkit.com/board/showthread.php?p=3841510

Ik snap niet zozeer waarom je het makkelijk wilt, want een custom event class is ook weer niet zo moeilijk :)

Makkelijk (maar ranziger) is je mc tileButton gewoon properties meegeven die je later weer opvraagt

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Acties:
  • 0 Henk 'm!

  • ebborazor
  • Registratie: Maart 2002
  • Laatst online: 10-09-2022
Bedankt voor de reacties, ik heb uiteindelijk de custom class gebruikt waarna bovenstaande poster mij verwees. Aangezien dit topic nu toch actief is leek mij het geen probleem om hier nog een vraag te stellen. Mocht dit niet de bedoeling zijn dan start ik een nieuw topic.

Mijn plan was om de levels die ik in de mapeditor gemaakt heb, gebruik makend van een 2darray met daarin alle relavante data, te "saven" naar een .txt bestand. Hiervoor dacht ik de ingebouwde loadVars class te gebruiken maar alle tutorials en resources die ik hier over lezen zijn gericht op het binnenhalen van externe data ipv precies het tegenovergestelde. Kan iemand mij een hint geven waar ik hier meer informatie over zou kunnen vinden?


EDIT: Aangezien vooralsnog ik alleen de mapeditor ga gebruiken is deze vraag vrij overbodig aangezien ik met een simpele trace(), ctrl-c en ctrl-v de data manueel in een tekstbestand kan zetten.

[ Voor 12% gewijzigd door ebborazor op 27-04-2009 22:48 ]


Acties:
  • 0 Henk 'm!

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Als ik ga [google=flash save to file], dan kom ik o.a. tegen: http://www.actionscript.org/forums/showthread.php3?t=38036

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.