‫Ciao e Benvenuto.
‫In questa lezione impareremo le istruzioni if, essenzialmente le istruzioni di ramo C++, e
‫lo useremo per inviare la nostra piattaforma avanti e indietro.
‫Immergiamoci.
‫Quindi ora ci sono un paio di punti nei commenti in cui abbiamo detto che dovremmo fare qualcosa se
‫ci fossimo spinti troppo oltre.
‫Come lo facciamo se.
‫Bene, in precedenza in Blueprint, lo abbiamo fatto se abbiamo un nodo branch.
‫Ora in C++ esiste un concetto simile e si chiama istruzione if.
‫Quindi ecco un nodo branch che avevamo come esempio in precedenza.
‫E puoi vedere che avevamo questa variabile che dice, ho fame, è un booleano e
‫potremmo metterlo nella condizione e quindi potremmo avere un ramo di esecuzione vero o un ramo di esecuzione falso
‫e potremmo eseguire funzioni di codice.
‫Qualsiasi cosa in Blueprint in C++, è molto simile tranne per il fatto che è testuale.
‫Quindi avremmo una variabile chiamata I'm Hungry, che è un booleano, e possiamo solo dire se e avere parentesi attorno a
‫questo.
‫Quindi apriremo alcune parentesi graffe dopo la nostra istruzione if spesso nella riga successiva, e quindi all'interno di queste
‫parentesi graffe possiamo eseguire le cose che dovrebbero accadere se è vero.
‫Quindi diciamo che se ho fame, mangio cibo spazzatura mentre la moglie non sta guardando e poi possiamo chiudere le parentesi
‫graffe per dire, va bene, questa è la fine di questa roba.
‫Ciò dovrebbe avvenire in modo condizionale.
‫E poi c'è un'opzione che se volessimo inserire un ramo falso, se
‫volessimo collegare qualcosa a falso qui, inseriamo un'altra parola chiave e possiamo iniziare un secondo set di parentesi graffe.
‫E qui dentro potremmo continuare a giocare ai videogiochi e poi possiamo chiudere le parentesi.
‫Ora qui possiamo avere tutte le righe che vogliamo tra queste parentesi graffe, non è necessario che ci
‫sia una sola riga.
‫Quindi puoi aggiungere molto codice qui se lo desideri, oppure puoi solo avere una singola riga.
‫E anche con la variabile qui dentro, non deve essere una variabile che si collega a un'istruzione if.
‫Può essere qualsiasi espressione che restituisce un valore booleano.
‫Quindi puoi fare un po 'di chiamare una funzione qui.
‫Potresti usare un operatore per ottenere un risultato diverso.
‫Quindi ci sono alcune opzioni diverse disponibili per noi.
‫Ma prima di tutto, dobbiamo configurare fino a che punto questa piattaforma può spingersi prima che debba tornare
‫indietro e farlo.
‫Abbiamo bisogno di una nuova proprietà.
‫Al momento abbiamo spostato la nostra distanza come visibile ovunque.
‫Creiamone uno nuovo appena sopra qui, alcune proprietà che dovrebbero essere aggiunte ovunque perché
‫vogliamo poterla configurare nell'editor.
‫E userò la stessa categoria di piattaforma mobile dall'alto e poi dal basso qui sarà di tipo float perché
‫sarà una distanza e la chiamerò la distanza di movimento in questo modo quando viene
‫dato un valore predefinito, gli darò 100 unità come valore predefinito.
‫Ma poi ovviamente possiamo sovrascriverlo, cambiarlo nell'editor e quindi possiamo utilizzarlo
‫nel file C++.
‫Quindi il modo in cui lo faremo è che abbiamo già spostato la nostra distanza variabile.
‫In realtà voglio non essere più in grado di osservare, quindi rimuoverò la proprietà visibile ovunque e la variabile
‫di spostamento della distanza dal file di intestazione.
‫Quindi tornerò nel C++ e lo dichiareremo invece come variabile locale.
‫Quindi il modo più semplice per cambiarlo è attaccare un galleggiante davanti alla mossa di distanza che sostanzialmente la dichiara come una variabile
‫locale proprio qui all'interno della tecnologia, il che significa che sappiamo che è completamente nuova ogni volta
‫che la usiamo.
‫Quindi ora dobbiamo invertire la direzione di chi è andato troppo oltre.
‫Quindi il modo in cui possiamo farlo è usare meno di o uguale o uguale o maggiore di operatori che abbiamo
‫visto in passato come nodi nel progetto.
‫Ma ora possiamo usarli come operatori come faremmo con più o moltiplicazione.
‫E il modo in cui possiamo farlo è dire, ok, beh, abbiamo spostato la distanza.
‫È maggiore rispetto alla distanza di spostamento?
‫Quindi possiamo usare il simbolo maggiore di, che è questo Chevron giusto e quindi possiamo mettere la distanza di spostamento.
‫Sembra che l'ho chiamato distanza spostata, ma penso che dovrebbe essere la distanza di spostamento.
‫Quindi ho accidentalmente avuto una D in più lì dentro.
‫Rimuoviamolo dall'intestazione del file e vedrai che questa espressione qui restituisce un booleano in modo che possiamo effettivamente
‫usarlo all'interno della nostra istruzione if.
‫Quindi quello che possiamo fare è dire se lo spazio apre le parentesi e poi taglierò questa espressione e la incollerò
‫tra quelle parentesi.
‫Quindi va bene se la distanza percorsa è maggiore della distanza di spostamento, quindi essenzialmente vogliamo
‫invertire la direzione.
‫Quindi è per questo che stiamo facendo questo commento.
‫Vogliamo invertire la direzione del movimento e invertire la direzione del movimento.
‫Abbiamo una velocità di piattaforma.
‫Quindi impostiamo la velocità della piattaforma sul negativo di se stessa, sostanzialmente invertendo la sua direzione.
‫Quindi la velocità della piattaforma è uguale.
‫Velocità di piattaforma negativa.
‫Quindi in pratica capovolgerà la freccia sulla velocità.
‫Metterò punto e virgola alla fine di quella riga e vediamo se questa affermazione funziona davvero
‫come intendevamo.
‫Andiamo nell'editor e premiamo compila.
‫E ora che è stato completato con successo, possiamo andare avanti e premere play e vedere cosa succede.
‫Quindi mi aspetto che vada avanti e indietro più o meno come sta facendo, ed è abbastanza buono.
‫Ora, quello che sta effettivamente succedendo è che sta andando un po' oltre il suo punto di partenza.
‫Ora, il motivo.
‫Quindi, se diamo un'occhiata, questo è il punto di partenza.
‫E se premo play e guardo di lato dalla stessa angolazione in cui si trova il mio giocatore, puoi
‫vedere che sta andando alla stessa distanza dal punto di partenza in ogni direzione.
‫E questo perché quando osserviamo ciò che viene calcolato qui, la distanza percorsa è da una posizione
‫iniziale che non cambia mai.
‫Non aggiorniamo mai quella posizione di inizio.
‫Quindi stiamo andando nella direzione negativa.
‫Quindi lo supereremo per lo stesso importo in cui abbiamo viaggiato dall'altra parte.
‫Quindi non è così che voglio che la mia piattaforma funzioni.
‫Quindi ti sfiderò ad aggiornare la tua posizione di partenza.
‫Lo faremo all'interno della dichiarazione.
‫Quindi accadrà solo quando raggiungiamo la fine del nostro viaggio e lo imposterai come posizione corrente
‫in modo che sostanzialmente ripristiniamo il nostro punto di partenza dall'altra parte e quindi possiamo viaggiare nella
‫direzione opposta.
‫Quindi testa i risultati e vedi se funziona come ti aspetti.
‫Metti in pausa il video e prova.
‫Bene.
‫Ben tornato.
‫Quindi dopo aver invertito la velocità qui, non importa se è dopo o prima
‫perché non hanno un impatto l'uno sull'altro.
‫Imposteremo la posizione di partenza uguale alla posizione corrente, il che significa essenzialmente che nel frame successivo la distanza percorsa sarà
‫zero perché sappiamo che la distanza tra la posizione di partenza e
‫se stessa sarà zero.
‫Torniamo indietro e premiamo davvero il pulsante di compilazione.
‫E quando questo è fatto, premiamo play e vediamo cosa succede ora.
‫Quindi mi aspetto che questo vada avanti e indietro.
‫Ecco qua.
‫Circa la stessa quantità di unità che tornano sempre alla posizione iniziale, non oltre, il
‫che è fantastico.
‫Proprio quello che volevo succedesse.
‫Quindi è tutto per questa lezione, abbiamo imparato come usare le nostre affermazioni if e le espressioni booleane per
‫farlo e abbiamo permesso che mandassero avanti e indietro la nostra piattaforma.
‫Roba fantastica.
‫Ci vediamo alla prossima lezione.