*   >> Læs Uddannelse artikler >> science >> programming

Realiseringen af ​​et Space Invaders klon med Trykknap - Den player

afspille DEMO

hente kildekoden

TILBAGE TIL tutorial INDEX

Det næste skridt i at skabe det rum angribere klon er at tilføje spilleren. Fordi spilleren ikke er animeret det er faktisk lettere at definere end fjenden på grund af det faktum, at vi ikke behøver at beskæftige sig med AnimationController. Afspilleren vil blive defineret som en skabelon, ikke fordi mere end én vil blive tilføjet på én gang, men fordi det gør det lettere at skabe en ny spiller enhed fra flere niveauer, hvis nødvendigt.

Uden en fælles skabelon hver enkelt plan vil definere afspilleren enhed individuelt, hvilket er en unødig ulejlighed. Faktisk derfor stort set hver enhed i en multilevel spil ville være defineret i en skabelon, og refereres fra en definition niveau.

Kode

Mens Pushbutton indeholder komponenter gør beskæftige sig med en masse det grundlæggende, ligesom positionering, flytte og gøre en enhed, en ting det ikke gøre, er at give nogen måde at styre en enhed. Dette kan enten være styring via tastatur eller mus input, eller en AI styrer en fjende.

Spilleren i Space Invader spil kan kun udføre et par enkle tiltag, nemlig at flytte til venstre og højre, og fyre sin våben. Denne logik vil blive opstaldet i en komponent kaldet PlayerControllerComponent.

Kode

PlayerControllerComponent.as

spillerne bevægelse (og i sidste ende affyringen af ​​våbnet) vil blive opdateret en gang pr ramme. Den nemmeste måde at udføre handlinger i trykknap gør løkken er at skabe en komponent, der udvider TickedComponent klassen. .

Dette giver dig adgang til onTick funktion, som kaldes en gang pr ramme

 public class PlayerControllerComponent udvider TickedComponent {

PlayerControllerComponent brug to referencer til variabler, som indehaves af dets moderselskab enhed: hastigheden og position. Flytning spilleren til venstre og højre vil blive opnået ved at ændre x komponent af hastigheden, mens holdning vil blive ændret for at forhindre afspilleren i at bevæge sig væk fra skærmen.

 [TypeHint (type = "flash.geom. Point ")] offentlige var velocityReference: PropertyReference; [TypeHint (type = "flash.

geom.Point")] offentlige var positionReference: PropertyReference

De næste tre variable definerer bredden på skærmen, hastigheden, at spillerne skibet vil bevæge sig, og hvor langt væk fra kanten af skærmen for at stoppe spilleren som den bevæger sig horisontalt

 offentlige var screenWidth:. int =

Page   <<       [1] [2] [3] [4] >>
Copyright © 2008 - 2016 Læs Uddannelse artikler,https://uddannelse.nmjjxx.com All rights reserved.