Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[Flash] Items uit de library van een andere file halen

Pagina: 1
Acties:
  • 228 views sinds 30-01-2008
  • Reageer

  • Bozozo
  • Registratie: Januari 2005
  • Laatst online: 20-02 16:10

Bozozo

Your ad here?

Topicstarter
Ik ben bezig aan een spelletje, en nu wil ik een editor maken voor dat spelletje. Denk aan tegeltjes waar je bepaalde objecten op kunt zetten. Er zijn drie bestanden in het spel:
  1. game.fla: het spelletje, met de grafische tegeltjes in de library;
  2. Level.as: bevat de Level class, die arrays bevat van alle levels;
  3. Editor.fla: de editor
Game.fla laadt dus een level uit Level.as, en plakt vervolgens tegeltjes op het scherm aan de hand van het levelarray.
Editor.fla moet hetzelfde doen, maar heeft de grafische tegeltjes niet in de library.

Nou kan ik gewoon alle tegeltjes kopieëren naar editor.fla, maar het spelletje is nog volop in ontwikkeling dus dan blijf ik voortdurend knippen en plakken. Het zou handiger zijn als editor.fla gewoon de library van game.fla kon importeren.

Weet iemand of dat mogelijk is?

edit: beetje meer PROG trouwens... ik post automatisch in WEB :X

[ Voor 3% gewijzigd door Bozozo op 26-01-2008 17:16 ]

TabCinema : NiftySplit


  • Mr.Qips
  • Registratie: Juli 2005
  • Laatst online: 07:42
Ik weet vrijwel niets van Flash en programmeren etc af, maar vind t een beetje sneu dat je geen antwoord krijgt :p . Vandaar:

Is het niet mogelijk om je tegeltjes in een apart bestand te zetten? Dus dat je ze ook uit het spel zelf haalt. Dan doe je vervolgens in zowel het spel als in de leveleditor iets als 'include', waarmee je je tegels dus ophaalt. Zo hoort het volgens mij in de programmeerwereld.

  • Bozozo
  • Registratie: Januari 2005
  • Laatst online: 20-02 16:10

Bozozo

Your ad here?

Topicstarter
Tja met classes enzo kan dat wel. Maar ik weet dus geen include commando voor een library of library items ;(

Sowieso zijn er niet veel AS3 gebruikers op tweakers heb ik het idee.

TabCinema : NiftySplit


Verwijderd

swf = new Loader();
swf.load(new URLRequest("bestand.swf"));
swf.contentLoaderInfo.addEventListener(Event.COMPLETE, geladen);

private function geladen(event:Event):void{
// Hier maak je dan gebruik van event.target.content, zoals je een mc zou aanspreken.
}

  • beetle71
  • Registratie: Februari 2003
  • Laatst online: 07-11 09:12
Shared library is mogelijk in flash:

Zie hier

  • Bozozo
  • Registratie: Januari 2005
  • Laatst online: 20-02 16:10

Bozozo

Your ad here?

Topicstarter
Jup, dit had ik ook gevonden in de flash help. Het is echter niet zo dat ik van plan ben om online meerdere bestanden te gebruiken die dezelfde library delen. Even heel specifiek:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//in LevelTile.as

//constructor functie zet this.type naar opgegeven waarde (zie onder)

var graphic;
switch(this.type) {
  case 0:
    graphic = new tile_Empty();
  break;
  case 1:
    graphic = new tile_Ground();
  break;
  case 2:
    graphic = new tile_Door();
  break;
  //etc etc
}
this.addChild(graphic);

code:
1
2
//in Game.fla
var sometile = new LevelTile(1); //ik wil dus een grondtegeltje maken

code:
1
2
//in Editor.fla
var sometile = new LevelTile(1); //ik wil dus een grondtegeltje maken

Helaas staat tile_Ground in Game.fla, en niet in Editor.fla, dus werkt het laatste script niet. Ik wil dus zonder te publishen of wat dan ook gewoon zeggen 'kijk tijdens runtime ook in de library van Game.fla'. Als ik elke keer moet publishen en alle movieclips opnieuw moet knippen en plakken als ik ze update dan kan ik net zo goed gewoon elke keer alles knippen en plakken.

Het lijkt erop dat deze 'feature' gewoon niet in Flash CS3 zit. Even bij adobe zeuren misschien }:O

TabCinema : NiftySplit

Pagina: 1