Toon posts:

[AS] overzichtelijke code?

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

Verwijderd

Topicstarter
Hallo allemaal,

Samen met een vriend van mij zijn we bezig met het maken van een spel in Flash zoals worms :) Nou zijn wij niet bepaald programmeurs en dus ondervinden we nogal wat moeilijkheden hiermee. Het grootste probleem is echter nog wel om alles overzichtelijk en begrijpelijk te houden.

De manier waarop ik de dingen nu aanpak is om alles in 1 frame te zetten m.a.w. alles programmatisch aan te sturen. Ook gebruik ik geen global variabels, maar gebruik ik een vars object om belangrijke variabelen bij elkaar te houden. Een ander groot probleem is de algehele structuur van de game. Op dit moment gebruik ik 1 grote organizer functie die 1 argument gebruikt. Ik gebruik een switch statement om a.d.v. dat argument te bepalen wat er in de game moet gaan gebeuren en de verschillende functions aan te roepen.

voorbeeld:
Flash ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
function organizer(action) { 
    switch (action) { 
        case "init":
            [alles klaar zetten voor aanvang van het spel]
            break;
        
        case "level1":
            [alles klaar zetten voor level1 en ervoor zorgen 
             dat je kan schieten]
            break;
    }   
}


Ik vroeg me af wat jullie gedachten hier over zijn. Hoe zouden jullie dit aanpakken?

  • tec
  • Registratie: Juni 2001
  • Laatst online: 17-12-2024

tec

TEC

Ik ben ook een game aan het programmeren in flash. Heb ervoor gekozen om functies te bouwen en deze in layers te sorteren. Functies die te maken hebben met movement zitten in de layer movement, enz.

Voor mij blijft het nu nog vrij overzichtelijk.

Verwijderd

Topicstarter
Maar hoe regel je dan de algemene aansturing van de game? bijv het wisselen van levels of het springen van het intro scherm naar je optie scherm?

Verwijderd

ik zou er voor kiezen bij elkaar behorende zaken telkens in een apart frame op de tijdlijn te zetten, bv een frame init, waarin je al je functies enzo definieerd, een frame intro, opties, buildLevel, game, playerDie, gameOver etc. vanuit die frames spring je steeds naar het frame gebeurt wat je op dat moment wil. tijdens het spel blijft de hoofdtijdlijn op game staan, gaat de speler dood, stuur je hem door naar playerDie, en daarna ofwel terug naar buildLevel of game of naar gameOver, enz.
probeer overigens wel je code zoveel mogelijk op de hoofdtijdlijn te houden; vanaf flash mx gaat dat prima.

[ Voor 11% gewijzigd door Verwijderd op 27-02-2004 10:01 ]


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Verwijderd schreef op 27 februari 2004 @ 10:00:
ik zou er voor kiezen bij elkaar behorende zaken telkens in een apart frame op de tijdlijn te zetten, bv een frame init, waarin je al je functies enzo definieerd, een frame intro, opties, buildLevel, game, playerDie, gameOver etc. vanuit die frames spring je steeds naar het frame gebeurt wat je op dat moment wil. tijdens het spel blijft de hoofdtijdlijn op game staan, gaat de speler dood, stuur je hem door naar playerDie, en daarna ofwel terug naar buildLevel of game of naar gameOver, enz.
probeer overigens wel je code zoveel mogelijk op de hoofdtijdlijn te houden; vanaf flash mx gaat dat prima.
Heb je het nu over code groeperen of je animaties?

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.


Verwijderd

eigenlijk allebei; het hangt er een beetje vanaf hoeveel je al op de stage hebt staan en hoeveel je dynamisch op de stage plaatst. Ik ben nu bezig met een spelletje, waarin ik eerst een frame objDefs heb. daarin definieer (verrassend!) ik alle objecten die ik wil gebruiken. dan een frame initFunctions waarin ik alle functies heb staan die nodig zijn voor het bouwen van de levels, players enzo. dan een frame gameFunctions waarin alle functies staan die voor de besturing nodig zijn. Na al deze definities komt een introFrame, waarin opties aan te passen zijn. daarvandaan ga je na klikken op een knop naar een frame init, waarin alleen een paar acties staan die de buildMap en builPlayer functies aanroepen, en die een onEnterFrame-handler toekennen aan de mc waarin alles geplaatst wordt. daarna blijft de tijdlijn gewoon hier staan, totdat het spel over is, en dan is er een apart game-over scherm.
Pagina: 1