﻿1
00:00:04,380 --> 00:00:05,370
‫Hallo en welkom.

2
00:00:05,370 --> 00:00:10,260
‫In deze lezing gaan we leren over if-statements, in wezen C++ branch-statements, en we

3
00:00:10,590 --> 00:00:14,520
‫gaan het gebruiken om ons platform heen en weer te sturen.

4
00:00:14,520 --> 00:00:15,180
‫Laten we erin duiken.

5
00:00:16,300 --> 00:00:21,340
‫Dus er zijn nu een paar plaatsen in de reacties waar we zeiden dat we iets moesten doen als

6
00:00:21,640 --> 00:00:23,260
‫we te ver zijn gegaan.

7
00:00:23,560 --> 00:00:25,690
‫Hoe doen we dit als.

8
00:00:25,990 --> 00:00:31,210
‫Welnu, eerder in Blueprint deden we dat als we een vertakkingsknooppunt hadden.

9
00:00:31,450 --> 00:00:36,550
‫Nu is er in C++ een soortgelijk concept en het wordt een if-statement genoemd.

10
00:00:36,880 --> 00:00:39,970
‫Dus hier is een vertakkingsknooppunt dat we eerder als voorbeeld hadden.

11
00:00:40,300 --> 00:00:45,070
‫En je kunt zien dat deze variabele zegt, ik heb honger, het is een boolean, en

12
00:00:45,070 --> 00:00:50,980
‫we kunnen het in de voorwaarde plaatsen en dan kunnen we ofwel een echte uitvoeringstak of een valse uitvoeringstak

13
00:00:50,980 --> 00:00:53,080
‫hebben en we kunnen codefuncties uitvoeren.

14
00:00:53,410 --> 00:00:58,270
‫Alles in Blueprint in C++ lijkt erg op elkaar, behalve dat het tekstueel is.

15
00:00:58,270 --> 00:01:04,810
‫Dus we zouden een variabele hebben met de naam I'm Hungry, wat een boolean is, en we kunnen gewoon zeggen of er haakjes

16
00:01:04,810 --> 00:01:05,410
‫omheen staan.

17
00:01:06,250 --> 00:01:14,140
‫Dan zouden we enkele accolades openen na onze if-statement, vaak op de volgende regel, en dan binnen deze accolades

18
00:01:14,170 --> 00:01:19,570
‫kunnen we de dingen uitvoeren die zouden moeten gebeuren als het waar is.

19
00:01:19,570 --> 00:01:25,210
‫Dus we zeggen dat als ik honger heb, junkfood eet terwijl de vrouw niet kijkt en dan kunnen we onze accolade

20
00:01:25,210 --> 00:01:28,840
‫sluiten om te zeggen, oké, dat is het einde van dit gedoe.

21
00:01:28,840 --> 00:01:30,400
‫Dat moet voorwaardelijk gebeuren.

22
00:01:31,150 --> 00:01:35,530
‫En dan is er een optie dat als we een false branch willen plaatsen,

23
00:01:35,530 --> 00:01:42,160
‫als we iets willen verbinden met de false hier, we een else trefwoord plaatsen en we een tweede set accolades kunnen starten.

24
00:01:42,160 --> 00:01:46,360
‫En hier kunnen we videospelletjes blijven spelen en dan kunnen we de beugels sluiten.

25
00:01:46,690 --> 00:01:51,310
‫Nu kunnen we hier zoveel regels hebben als we willen tussen deze accolades, het is niet nodig dat er

26
00:01:51,310 --> 00:01:52,600
‫maar één enkele regel is.

27
00:01:52,900 --> 00:01:57,040
‫Dus je zou hier veel code kunnen toevoegen als je wilt, of je kunt gewoon een enkele regel hebben.

28
00:01:57,340 --> 00:02:01,660
‫En ook met de variabele hier, hoeft het geen variabele te zijn die in een if-statement wordt gestoken.

29
00:02:01,660 --> 00:02:04,960
‫Het kan elke expressie zijn die een boolean retourneert.

30
00:02:04,960 --> 00:02:08,680
‫Dus je kunt hier een beetje een functie aanroepen.

31
00:02:08,680 --> 00:02:12,250
‫U kunt een operator gebruiken om een ander resultaat te krijgen.

32
00:02:12,670 --> 00:02:15,100
‫Er zijn dus een paar verschillende opties voor ons beschikbaar.

33
00:02:15,340 --> 00:02:21,460
‫Maar daarvoor moeten we configureren hoe ver dit platform mag gaan voordat het moet terugkeren

34
00:02:21,460 --> 00:02:22,870
‫en dat doen.

35
00:02:22,870 --> 00:02:24,670
‫We hebben een nieuw pand nodig.

36
00:02:25,030 --> 00:02:28,270
‫We hebben momenteel onze afstand verplaatst als een zichtbare overal.

37
00:02:28,270 --> 00:02:34,330
‫Laten we hier net boven een nieuwe maken, een paar eigenschappen die overal moeten worden toegevoegd omdat we deze

38
00:02:34,330 --> 00:02:36,460
‫in de editor willen kunnen configureren.

39
00:02:37,360 --> 00:02:44,770
‫En ik gebruik dezelfde categorie van bewegend platform van bovenaf en dan van beneden, hier zal het van het type zweven

40
00:02:44,770 --> 00:02:50,830
‫zijn omdat het een afstand zal zijn en ik ga het de verplaatsingsafstand noemen, zoals zo wanneer

41
00:02:51,070 --> 00:02:55,540
‫gegeven een standaardwaarde, ik ga het 100 eenheden als standaard geven.

42
00:02:55,540 --> 00:03:00,640
‫Maar dan kunnen we dat natuurlijk overschrijven, dat veranderen in de editor en dan kunnen we dit

43
00:03:00,640 --> 00:03:02,080
‫gebruiken in het C++-bestand.

44
00:03:02,470 --> 00:03:06,220
‫Dus de manier waarop we dit gaan doen, is dat we onze variabele afstand al hebben verplaatst.

45
00:03:06,730 --> 00:03:12,100
‫Ik wil eigenlijk niet meer kunnen observeren, dus ik ga de eigenschap visible overal en de

46
00:03:12,100 --> 00:03:14,560
‫variabele distance move uit het headerbestand verwijderen.

47
00:03:15,280 --> 00:03:20,140
‫Dan ga ik terug naar de C++ en in plaats daarvan declareren we het als een lokale variabele.

48
00:03:20,200 --> 00:03:26,560
‫Dus de makkelijke manier om dat te veranderen is door een dobber voor afstandsbeweging te houden die het in feite als een lokale variabele

49
00:03:26,560 --> 00:03:31,240
‫hier binnen de technologie declareert, wat betekent dat we weten dat het elke keer dat we het gebruiken

50
00:03:31,240 --> 00:03:32,320
‫volledig vers is.

51
00:03:33,010 --> 00:03:35,590
‫Dus nu moeten we de richting omkeren van wie te ver is gegaan.

52
00:03:35,830 --> 00:03:43,840
‫Dus de manier waarop we dit kunnen doen, is dat we operatoren kleiner dan of gelijk aan of groter dan kunnen gebruiken die we

53
00:03:43,840 --> 00:03:46,930
‫in het verleden als knooppunten in blauwdruk hebben gezien.

54
00:03:46,930 --> 00:03:51,250
‫Maar nu kunnen we ze gebruiken als operatoren zoals we zouden doen met plus of vermenigvuldiging.

55
00:03:51,850 --> 00:03:56,290
‫En de manier waarop we dit kunnen doen is door te zeggen, oké, we hebben de afstand verplaatst.

56
00:03:56,770 --> 00:04:00,280
‫Is dit groter dan op de verplaatsingsafstand?

57
00:04:00,280 --> 00:04:07,750
‫Dus we kunnen het groter dan-symbool gebruiken, dat is deze juiste Chevron, en dan kunnen we de verplaatsingsafstand zetten.

58
00:04:08,030 --> 00:04:11,410
‫Het lijkt erop dat ik het de verplaatsingsafstand heb genoemd, maar ik denk dat het de verplaatsingsafstand zou moeten zijn.

59
00:04:11,410 --> 00:04:13,480
‫Dus ik heb er per ongeluk een extra D in gehad.

60
00:04:13,480 --> 00:04:19,870
‫Laten we dat uit de kop van het bestand verwijderen en je ziet dat deze expressie hier een boolean retourneert, zodat

61
00:04:19,870 --> 00:04:22,420
‫we het daadwerkelijk in ons if-statement kunnen gebruiken.

62
00:04:22,930 --> 00:04:32,290
‫Dus wat we kunnen doen, is dat we kunnen zeggen of de spatie haakjes opent en dan ga ik deze uitdrukking knippen en

63
00:04:32,290 --> 00:04:33,940
‫tussen die haakjes plakken.

64
00:04:33,940 --> 00:04:40,270
‫Dus het is oké als de verplaatste afstand groter is dan de verplaatsingsafstand, dan willen we in

65
00:04:40,270 --> 00:04:41,800
‫wezen de richting omkeren.

66
00:04:41,800 --> 00:04:44,460
‫Dus daar doen we deze opmerking voor.

67
00:04:44,480 --> 00:04:48,250
‫We willen de bewegingsrichting omkeren en de bewegingsrichting omkeren.

68
00:04:48,250 --> 00:04:50,140
‫We hebben een platformsnelheid.

69
00:04:50,350 --> 00:04:57,010
‫Dus laten we de platformsnelheid op het negatieve van zichzelf instellen, in feite de richting omkerend.

70
00:04:57,010 --> 00:04:59,560
‫Dus platformsnelheid is gelijk aan.

71
00:05:00,630 --> 00:05:02,640
‫Negatieve platformsnelheid.

72
00:05:02,880 --> 00:05:07,140
‫Dus dat gaat in feite de pijl over de snelheid draaien.

73
00:05:07,590 --> 00:05:11,820
‫Ik ga een puntkomma aan het einde van die regel plaatsen en laten we eens kijken of deze verklaring echt werkt zoals we

74
00:05:11,820 --> 00:05:12,390
‫bedoeld hadden.

75
00:05:12,390 --> 00:05:14,520
‫Laten we naar de editor gaan en op compileren klikken.

76
00:05:14,610 --> 00:05:19,590
‫En nu dat met succes is voltooid, kunnen we doorgaan en op play klikken en kijken wat er gebeurt.

77
00:05:20,220 --> 00:05:26,820
‫Dus ik verwacht dat het vooruit en achteruit gaat zoals het nu gaat, en dat is best goed.

78
00:05:27,090 --> 00:05:31,410
‫Wat er feitelijk aan de hand is, is dat het een beetje voorbij zijn beginpunt gaat.

79
00:05:31,870 --> 00:05:33,340
‫Nu, de reden daarvoor.

80
00:05:33,360 --> 00:05:35,100
‫Dus als we kijken, is dat het uitgangspunt.

81
00:05:35,100 --> 00:05:40,290
‫En als ik op play druk en naar de zijkant kijk vanuit dezelfde hoek als waar mijn speler staat,

82
00:05:40,290 --> 00:05:44,520
‫kun je zien dat hij dezelfde afstand vanaf het startpunt in elke richting aflegt.

83
00:05:44,910 --> 00:05:50,970
‫En dat komt omdat als we kijken naar wat hier wordt berekend, de afstand die wordt afgelegd vanaf een

84
00:05:50,970 --> 00:05:52,950
‫startlocatie is die nooit verandert.

85
00:05:53,250 --> 00:05:56,310
‫We werken die startlocatie nooit bij.

86
00:05:56,310 --> 00:05:58,830
‫We gaan dus de negatieve kant op.

87
00:05:58,830 --> 00:06:03,000
‫We gaan er dan even veel langs als we de andere kant op reisden.

88
00:06:03,480 --> 00:06:06,180
‫Dus dat is niet hoe ik wil dat mijn platform werkt.

89
00:06:06,300 --> 00:06:09,930
‫Dus ik ga je uitdagen om je startlocatie bij te werken.

90
00:06:09,930 --> 00:06:12,210
‫We gaan dat doen in de verklaring.

91
00:06:12,210 --> 00:06:17,850
‫Dus het gaat alleen gebeuren wanneer we het einde van onze reis bereiken en je gaat het als de

92
00:06:17,850 --> 00:06:23,760
‫huidige locatie instellen, zodat we in feite ons startpunt naar de andere kant resetten en dan kunnen we in de

93
00:06:23,760 --> 00:06:24,850
‫tegenovergestelde richting reizen.

94
00:06:24,870 --> 00:06:28,200
‫Dus test de resultaten en kijk of het werkt zoals je verwacht.

95
00:06:28,320 --> 00:06:29,610
‫Pauzeer de video en probeer het.

96
00:06:32,840 --> 00:06:33,410
‫Oké.

97
00:06:33,410 --> 00:06:34,100
‫Welkom terug.

98
00:06:34,130 --> 00:06:39,240
‫Dus we gaan nadat we de snelheid hier hebben omgekeerd, het maakt eigenlijk niet uit of het erna

99
00:06:39,240 --> 00:06:42,230
‫of ervoor is, omdat ze geen invloed op elkaar hebben.

100
00:06:42,890 --> 00:06:52,010
‫We gaan de startlocatie gelijk stellen aan de huidige locatie, wat in wezen betekent dat in het volgende frame de verplaatste afstand

101
00:06:52,010 --> 00:06:57,470
‫nul zal zijn, omdat we weten dat de afstand tussen de startlocatie en

102
00:06:57,470 --> 00:06:59,570
‫zichzelf nul zal zijn.

103
00:06:59,690 --> 00:07:02,300
‫Laten we teruggaan naar en echt op de compileerknop drukken.

104
00:07:02,480 --> 00:07:05,600
‫En als dat klaar is, laten we dan op play drukken en kijken wat er nu gebeurt.

105
00:07:06,380 --> 00:07:09,010
‫Dus ik verwacht dat dit zowel voor- als achteruit gaat.

106
00:07:09,020 --> 00:07:09,680
‫Daar ga je.

107
00:07:09,860 --> 00:07:15,230
‫Ongeveer hetzelfde aantal eenheden gaat altijd terug naar de startlocatie, niet verder terug,

108
00:07:15,230 --> 00:07:16,610
‫wat fantastisch is.

109
00:07:16,610 --> 00:07:18,220
‫Precies wat ik wilde dat er zou gebeuren.

110
00:07:18,230 --> 00:07:24,950
‫Dus dat was het voor deze lezing. We hebben geleerd hoe we onze if-statements en Booleaanse uitdrukkingen kunnen gebruiken om dat te

111
00:07:24,950 --> 00:07:29,300
‫doen en we hebben toegestaan dat ons platform heen en weer wordt gestuurd.

112
00:07:29,330 --> 00:07:30,020
‫Goed spul.

113
00:07:30,380 --> 00:07:31,760
‫Ik zie je in de volgende lezing.

