Hoe maak je een flashgame?

Schrijver: Morris Wright
Datum Van Creatie: 22 April 2021
Updatedatum: 1 Juli- 2024
Anonim
Flash: Hoe maak je een simpele Laadbalk in ActionScript 2.0 (HD)
Video: Flash: Hoe maak je een simpele Laadbalk in ActionScript 2.0 (HD)

Inhoud

Flash is een populair formaat voor games die in browsers worden uitgevoerd. Hoewel dit formaat terrein verliest aan mobiele applicaties, worden veel goede games in dit formaat geschreven. Flash gebruikt ActionScript, een eenvoudig te leren programmeertaal waarmee u objecten op het scherm kunt besturen.

Stappen

Deel 1 van 3: Aan de slag

  1. 1 Bedenk een game (de verhaallijn) voordat je begint met coderen. Flash maakt eenvoudige games, dus kies een gamegenre en denk na over een concept. Lees het artikel Hoe maak je een computerspel. Belangrijke genres zijn onder meer:
    • Eindeloos rennen. In dergelijke spellen beweegt het personage automatisch, en de speler leidt hem alleen en springt over obstakels (of heeft anderszins interactie met het spel).
    • Gevechten. In dergelijke games moet de hoofdpersoon vijanden verslaan in eindeloze gevechten / veldslagen.
    • Puzzels. Puzzel spelletjes. Ze variëren van de eenvoudigste puzzels (drie identieke ballen verzamelen) tot de complexe puzzels die de basis vormen van avonturenspellen.
    • RPG. In dergelijke spellen is het noodzakelijk om het hoofdpersonage (zijn vaardigheden, uiterlijk, karakter) te ontwikkelen om met verschillende tegenstanders te kunnen vechten. De RPG-spelcode is veel complexer dan de eenvoudigste spelcode.
  2. 2 Flash is beter geschikt voor het maken van 2D (2D)-spellen. Je kunt er ook 3D-games (driedimensionaal) in maken, maar hiervoor moet je de programmeertaal en andere geavanceerde technieken goed kennen. Bijna alle populaire Flash-spellen zijn 2D-spellen.
    • Flash-games zijn het meest geschikt voor korte gamesessies omdat ze worden gespeeld wanneer er vrije tijd is (niet meer dan 15 minuten).
  3. 3 Raak vertrouwd met de programmeertaal ActionScript3 (AS3) voor het schrijven van Flash-games. U kunt een eenvoudig spel maken met een basiskennis van AS3.
    • Er zijn verschillende ActionScript-boeken beschikbaar op Amazon en andere winkels, samen met veel zelfstudies en online voorbeelden.
  4. 4 Flash-professional downloaden. Dit is een betaald, maar het beste programma waarin Flash-games worden gemaakt. Er zijn andere soortgelijke programma's, waaronder gratis, maar vaak zijn ze niet compatibel of duurt het langer om dezelfde doelen te bereiken.
    • Flash Professional is het enige programma dat je nodig hebt om een ​​spel te maken.

Deel 2 van 3: Het eenvoudigste spel maken

  1. 1 Begrijp de basisstructuren van AS3-code. Elke AS3-code bestaat uit drie hoofdonderdelen:
    • Variabelen. Ze slaan gegevens op (numeriek, tekst, object en vele andere). Variabelen worden gedefinieerd door code var en in één woord.

      var playerGezondheid: Getal = 100; // "var" - u definieert een variabele. // "playerHealth" is de naam van de variabele. // "Nummer" is een gegevenstype (hier numeriek). // "100" is de waarde die aan de variabele is toegewezen. // Elke regel AS3-code eindigt op ";"

    • Event handlers. Ze zoeken naar bepaalde gebeurtenissen die moeten worden uitgevoerd en rapporteren deze aan andere delen van het programma. Dit is nodig om de speler in te voeren en de code te herhalen. Gewoonlijk verwijzen gebeurtenishandlers naar functies.

      addEventListener (MouseEvent.CLICK, swingSword); // "addEventListener ()" - definitie van een gebeurtenishandler. // "MouseEvent" is de invoercategorie die naar verwachting zal worden uitgevoerd. // ".CLICK" is een specifieke gebeurtenis in de categorie MouseEvent. // "swingSword" is een functie die wordt geactiveerd wanneer de gebeurtenis wordt uitgevoerd.

    • Functies. Secties van het programma gedefinieerd door een trefwoord; ze worden genoemd naarmate het programma vordert. Complexe spelcode kan honderden functies bevatten, terwijl eenvoudige spelcode slechts enkele kan bevatten. Functies kunnen in willekeurige volgorde worden gerangschikt, omdat ze alleen worden uitgevoerd als ze worden aangeroepen.

      functie swingSword (e: MouseEvent): void; {// Code} // "function" is een trefwoord dat aan het begin van een functie wordt ingevoerd. // "swingSword" is de naam van de functie. // "e: MouseEvent" is een optionele parameter die aangeeft dat // de gebeurtenishandler de functie zal aanroepen. // ": void" is de waarde die door de functie wordt geretourneerd. // Als er geen waarde wordt geretourneerd, gebruikt u: void.

  2. 2 Maak objecten waarmee de speler zal communiceren. Objecten zijn sprites, personages of videoclips. In ons eenvoudige spelvoorbeeld maak je een rechthoek.
    • Start Flash Professional. Maak een nieuw ActionScript 3-project.
    • Klik op de werkbalk op het gereedschap Rechthoek. Dit paneel kan op verschillende locaties verschijnen, afhankelijk van uw Flash Professional-configuratie. Teken een rechthoek in het venster Scène.
    • Selecteer de rechthoek met het gereedschap Selecteren.
  3. 3 Stel de eigenschappen van het object in. Open hiervoor het menu "Wijzigen" en selecteer "Converteren naar symbool" (of druk op F8). Geef het object in het venster Converteren naar symbool een gemakkelijk herkenbare naam, zoals vijand.
    • Zoek het venster Eigenschappen. Boven aan het venster bevindt zich een leeg tekstveld met het label "Voorbeeldnaam" (als u de muisaanwijzer over dit veld beweegt). Voer dezelfde naam in die u hebt ingevoerd bij het converteren van het object naar een symbool (in ons voorbeeld "vijand"). Hierdoor ontstaat een unieke naam die in AS3-code kan worden gebruikt.
    • Elke "sample" is een afzonderlijk object dat afhankelijk is van de code. U kunt reeds gemaakte "voorbeelden" kopiëren; om dit te doen, klikt u meerdere keren op de "Bibliotheek" en sleept u het "voorbeeld" naar de "stage". Elke keer dat een "sample" wordt toegevoegd, verandert de naam ("vijand", "vijand1", "vijand2" enzovoort).
    • Als je in code naar een object verwijst, gebruik dan gewoon de naam "sample" (in ons voorbeeld "vijand").
  4. 4 De eigenschappen van het monster wijzigen. Nadat u het voorbeeld hebt gemaakt, kunt u de eigenschappen ervan wijzigen, bijvoorbeeld het formaat wijzigen. Om dit te doen, voert u de naam van het voorbeeld in, vervolgens ".", vervolgens de naam van de eigenschap en vervolgens de waarde:
    • vijand.x = 150; Stelt de positie van het vijandelijke object langs de x-as in.
    • vijand.y = 150; Stelt de positie van het "vijandige" object langs de Y-as in (de oorsprong van de Y-as ligt op het bovenste punt van de "scène").
    • vijand.rotatie = 45; Draai het vijandelijke object 45° met de klok mee.
    • vijand.schaalX = 3; Rekt het "vijandige" object in de breedte uit met een factor 3. Een negatieve waarde zal het object spiegelen.
    • vijand.schaalY = 0,5; Zal de hoogte van het object halveren.
    • .
  5. 5 Verken de opdracht traceren (). Het retourneert de huidige waarden voor specifieke objecten en is nodig om te bepalen of alles correct werkt. Je mag dit commando niet in de broncode van het spel opnemen, maar je hebt het nodig om het programma te debuggen.
  6. 6 Maak een basisspel met behulp van de bovenstaande informatie. In ons voorbeeld zul je een spel maken waarin de vijand van grootte verandert elke keer dat je op hem klikt, totdat hij geen gezondheid meer heeft.

    var vijandHP: Getal = 100; // Stelt de grootte van de gezondheid van de vijand in (100 aan het begin van het spel). var playerAttack: Getal = 10; // Stelt de aanvalssterkte van de speler in wanneer op een vijand wordt geklikt. vijand.addEventListener (MouseEvent.CLICK, attackEnemy); // De actie van deze functie is direct gericht op het "vijandige" object, // dat wil zeggen, de functie wordt alleen geactiveerd wanneer op het object wordt geklikt, // en niet ergens anders op het scherm. setEnemyLocation (); // Plaatst de vijand op het scherm. // Draait helemaal aan het begin van het spel. functie setEnemyLocation (): void {enemy.x = 200; // Verplaatst de vijand naar rechts 200 pixels vanaf de linkerkant van het scherm. vijand.y = 150; // Verplaatst de vijand 150 pixels naar beneden vanaf de bovenkant van het scherm. vijand.rotatie = 45; // Draait de vijand 45 graden met de klok mee. trace ("de x-waarde van de vijand is", vijand.x, "en de y-waarde van de vijand is", vijand.y); // Geeft de huidige positie van de vijand weer voor debuggen. } function attackEnemy (e: MouseEvent): void // Creëert een functie om een ​​aanval te beschrijven wanneer op een vijand wordt geklikt. {enemyHP = vijandHP - playerAttack; // Trekt de aanvalskracht van de speler af van de gezondheidswaarde van de tegenstander. // Het resultaat is een nieuwe waarde voor de gezondheid van de vijand. vijand.scaleX = vijand HP/100; // Verandert de breedte op basis van de nieuwe gezondheid van de vijand. // Deze waarde wordt gedeeld door 100 om een ​​decimaal te krijgen.vijand.schaalY = vijand HP / 100; // Verandert de hoogte op basis van de nieuwe gezondheidswaarde van de vijand. trace ("De vijand heeft", vijand HP, "HP links"); // Geeft verloren gezondheid weer. }

  7. 7 Start het spel. Open het menu Beheren en selecteer Testen. Je spel begint; klik op een vijand om het formaat te wijzigen. Foutopsporingsinformatie wordt weergegeven in het uitvoervenster.

Deel 3 van 3: Geavanceerde technieken

  1. 1 Pakketjes. Ze slaan (in aparte bestanden) variabelen, constanten, functies en andere informatie op; u kunt pakketten in uw programma importeren. Door een pakket te gebruiken dat al door iemand anders is gemaakt, vereenvoudigt u uw taak om een ​​programma te maken aanzienlijk.
    • Lees dit artikel voor details over hoe pakketten werken.
  2. 2 Projectmappen maken. Als je een game maakt met meerdere afbeeldingen en geluidsbestanden, maak dan meerdere mappen aan. Hierdoor kunt u niet in de war raken in verschillende elementen en pakketten opslaan in de juiste mappen.
    • Maak een basisprojectmap. In de basismap is het noodzakelijk om een ​​submap "IMG" aan te maken waar afbeeldingen worden opgeslagen, een submap "SND" voor geluidsbestanden en een submap "SRC" met pakketten en spelcode.
    • Maak een Game-map in de SRC-map voor het Constants-bestand.
    • Deze mappenstructuur is optioneel; het wordt gegeven als een voorbeeld van hoe u de elementen van uw project moet organiseren en organiseren (dit is vooral belangrijk in het geval van grote projecten). Als je een eenvoudig spel maakt (zoals in ons voorbeeld), hoef je geen mappen aan te maken.
  3. 3 Voeg geluid toe aan je spel. Spelen zonder geluid of muziek zal elke speler snel vervelen. U kunt geluid toevoegen met het gereedschap Lagen. Kijk voor meer informatie hierover op internet.
  4. 4 Maak bestand "Constant". Als je veel constanten in je spel hebt die niet veranderen tijdens het spel, kun je een "Constant"-bestand maken om alle constanten erin op te slaan. De constante waarden zijn de aantrekkingskracht, de snelheid van het personage en andere.
    • Als u een "Constant"-bestand aanmaakt, plaatst u het in de juiste projectmap en importeert u het vervolgens in het pakket. U maakt bijvoorbeeld een constants.as-bestand en plaatst dit in de gamemap. Om het te importeren, moet je de volgende code gebruiken:

      pakket {game importeren. *; }

  5. 5 Bekijk games van andere ontwikkelaars. Veel ontwikkelaars maken de codes van hun games niet bekend, maar er zijn veel tutorials en andere projecten waar je de code kunt bekijken. Dit is een geweldige manier om enkele van de beste technieken te leren om je te helpen een goed spel te maken.