Giochi di programmazione per Android

Giochi di programmazione per Android 18: atto attore

42 Video

238 minuti

Dopo aver visto la classe ActorJugador, ovviamente dobbiamo ancora spiegare il funzionamento del metodo act (). Quello che farò è Instantiate, o creare una nuova classe, un nuovo tipo di attore, in questo caso ActorPinchos per rappresentare le mie punte, che non è molto complicato da fare, È esattamente lo stesso. Solo in questo caso, se ne ricorda quando ho portato spiedini, questa è la trama che ho usato come una scusa per stipare

parlando di TextureRegions, così ActorPinchos noi avranno bisogno di passare, non è una texture come parametro, ma un TextureRegion, in modo da sapere dove i confini della texture da utilizzare per disegnare lo sono. Questo è lo stesso: ho il costruttore e passato come parametro questi picchi. E come prima, dico batch.draw (spiedini, GetX (), Gety ()). In questo caso, istanziare è altrettanto semplice. Prima faccio una texture punte.

pinchos = nuova struttura ( 'pinchos.png'). In questo caso ho, non solo per prendersi cura della texture, ma nella regione. TextureRegion regionPinchos. Si comincia a capire perché un assetManager diventa più chiaro perché guardate come è in esecuzione. RegionPincho essere una nuova regione, e se non ricordo male i numeri dovrebbero essere 0, 64, 128, 64. memoria. Ora quello che faccio è istanziare i miei ActorPinchos, che mi passano la regione,

e con questo l'ho caricato. stage.addActor (spiedini), e metterò nella posizione (400, 100). In realtà quello che voglio è quello di spiegare come funziona il metodo atto, in modo che appare sul contenuto side'm destra. Vediamo dove appare, perché francamente non lo so. Tutto ok. Molto intelligente di me dimenticare di chiamare la variabile corretta, ma la cosa importante è che appaiono sul lato destro dello schermo. Dove sto andando con questo?

Sono spiedini interessati si spostano verso sinistra per colpire il lettore. Per fare questo userò l'atto per il mio metodo spiedo ha un movimento verso sinistra costante. Ciò richiede usando la variabile delta. Perché? Perché qualcuno dirà: 'Io dico qui in atto, Voglio spostare a sinistra, ed è semplice. Guardo dove i miei punti sono, e regolato nuovamente X - 10 pixel. 'Questo è un errore. Non farlo. In primo luogo,

questo sarà fatto 60 volte al secondo in modo che possa andare molto veloce. Troppo veloce per i miei gusti. In secondo luogo, perché se il nostro gioco inizia a fluttuare, immaginare che l'inizio cellulare facendo cose sottofondo o si verificano problemi, come abbasserà il tasso al quale è chiamato ad agire, perché abbassa il numero tempi che possono essere chiamati al secondo, si accelera, rallenta e creare un effetto sgradevole. Invece ciò che è fatto è un effetto di movimento

velocità uniforme, approfittando abbiamo parametro delta. Per fare questo ho Skitch aperto perché voglio mostrare quello che voglio raggiungere. Consegna della base successiva. Ho uno schermo, presumo questo rettangolo bianco per semplificare le cose, che occupa 640 o così ampio. Ho qui le mie punte e il mio personaggio avere qui. Supponiamo che il personaggio deve destra una distanza di 600 pixel,

anche se sembra un po 'eccessivo, quindi quello che faremo è ridurlo a 500. Le punte si muovono 500 pixel a sinistra e ha colpito il giocatore. Quello che voglio è quello di dare al giocatore un tempo di 2 secondi. Non voglio mettere molto difficile, ma non voglio rendere il più semplice del mondo. L'intenzione è che il rotolo spiedini di classe entro due secondi una distanza di 500 pixel. Se facciamo il calcolo, e questa è una regola di 3,

il mio objetito deve viaggiare velocità -250 pixel nella direzione X; cioè ogni secondo la sua posizione X dovrebbe decrementato di 250 pixel. L'unico problema è che non sappiamo quando andare un secondo, solo ogni 0,01 o 0,02 secondi per richiamare il metodo atto, e che si sta per dire quanti Secondi sono passati dall'ultima volta che è stato chiamato ad agire, essendo un valore molto piccolo decimale. Quindi l'ultima cosa da fare è dividere questo

in piccoli pacchetti e formare una regola 3: se si va in un 1 250 pixel, 0.01 secondi X. Se si sposta lo faccio, che devo fare è figura la velocità lineare moltiplicando per il delta velocità in pixel al secondo. Ad esempio, per rendere un carattere di questi progressi a -250 Velocità px / sec, devo moltiplicare per -250 delta, per determinare quanto a spostare questo fascio di un paio di millisecondi

ci è stato concesso. Ad esempio, setX (coordinatax () - 250 * delta). Così, se in 0.01 secondi ha ormai superato 2,5 pixel si muoveranno, se ho fatto bene i conti. Se il gioco è più lenta e richiede 40 millisecondi ... moltiplicarlo, lasciando comunque un valore molto piccolo. Attraverso questi aumenti si ottiene un giro più sicuro. Se ora ho posto in posizione 500 avrò 2 secondi di tempo fino a scomparire

sul lato sinistro dello schermo. Tale che bene. In realtà ho anche passato perché è molto lento. La cosa importante è, come si vede Abbiamo un po 'serio problema, perché se si ripete l'animazione, il personaggio non è impassibile dall'esistenza delle punte. Introdurre collisioni devono rilevare che c'è stata una collisione.

Per trovare nuovi corsi, iscriviti. Non ci sarà lo spam, promesso :)

Circa l'autore

foto de jotajotavm
José Javier Villena

Biografia: Analista Programmatore-in diverse lingue. piattaforme Tutor PREMIUM riconosciuti a livello mondiale come CodigoFacilito. articoli Editor Cristalab. Il mio canale YouTube è sponsorizzato dalla casa editrice ANAYA e LaTostadora. Mi piace spiegare in dettaglio e dare alcuni esempi per evitare ogni dubbio.