‫Welkom terug.
‫In deze video gaan we functionaliteit aan onze kom toevoegen, zodat deze eindelijk van links naar rechts
‫kan bewegen en van de raketten kan afketsen, wat natuurlijk onze beoogde functionaliteit is.
‫En dan moeten we natuurlijk onze records verplaatsen.
‫Dat gaan we verderop in een van de eerste video's doen.
‫En dan zijn we bijna klaar met het spel.
‫Dus laten we beginnen met het maken van een nieuw script voor onze bal, die ik ga noemen.
‫Balbeweging en zoals je kunt zien, maak een advertentie, maak een nieuw script en we kunnen dat openen met
‫Visual Studio.
‫Oke.
‫In Visual Studio hebben we de start- en updatemethode.
‫We hebben de update-methode niet nodig, dus laten we daar vanaf komen.
‫Maar we hebben wel een methode nodig die aangeeft hoe snel de bal kan bewegen, en dat zou een publieke waarde moeten
‫zijn zodat we die in eenheid kunnen veranderen.
‫Dus openbare float-bewegingssnelheden moeten meestal floats en eenheid zijn, want waar je je snelheid voor wilt gebruiken, is meestal natuurkunde en
‫natuurkunde met float, dan hebben we een waarde nodig die ons vertelt
‫hoeveel sneller de bal is per slag kan gaan.
‫Dus voor elke hit waarmee het met een plaat raakt, moet het een beetje sneller gaan,
‫zodat het spel geleidelijk moeilijker wordt.
‫En dat is wat we bereiken door een andere float-waardevolle variabele te creëren, die extra snelheid per hit wordt
‫genoemd.
‫Dus voor elke hit zou het een beetje moeten stijgen.
‫Dan hebben we een maximale snelheid nodig zodat de bal op een gegeven moment niet supersnel gaat en niet te vangen
‫is.
‫Natuurlijk zou je kunnen zeggen, oké, dat wil ik niet, maar we willen hier een limiet instellen, dus
‫we creëren een limiet, wat een maximale extra snelheid is, zodat er in het algemeen een maximale snelheid is en we
‫zullen hulp nodig hebben variabele, die ik hitteller noem, en die telt hoe vaak het record is geraakt of een record is
‫geraakt.
‫Voorlopig willen we onze bal verplaatsen.
‫Dus laten we een methode bedenken om onze bal in het openbaar te verplaatsen, de bal te verplaatsen.
‫Zo ga ik het noemen.
‫En het heeft een vector nodig voor richting.
‫Dus ik ga gewoon een hert bellen voor de richting.
‫Zij zijn niet.
‫Die richting zou een genormaliseerde richting moeten zijn.
‫Dus deze move ball-methode kan van buitenaf worden aangeroepen.
‫Het kan binnen een andere methode worden aangeroepen, het kan bijvoorbeeld vanuit een andere klasse of vanuit een ander script
‫worden aangeroepen omdat het openbaar is.
‫En wat we willen doen, is in de eerste plaats de richting normaliseren die ons is gegeven, omdat het een heel vreemde
‫waarde zou kunnen worden.
‫Maar we willen dat het genormaliseerd wordt.
‫Dus wat we doen is zeggen dat richting de oude richting is, maar als een genormaliseerde waarde.
‫Dus het retourneert deze vector met een grootte van één.
‫Dus dat is wat we hier doen.
‫Nu kunnen we doorgaan en een snelheid creëren die de snelheid van onze bal zou moeten zijn.
‫Ik weet nu weer wat het was.
‫Allereerst hadden we de bewegingssnelheid.
‫Dus deze bewegingssnelheid.
‫En dan moeten we de extra snelheid per treffer optellen en daarom moeten we weten hoeveel treffers we hadden.
‫Dus dat betekent dat we doorgaan en zeggen dat deze dart een teller raakt.
‫Dus hoeveel treffers hadden we ooit vermenigvuldigd met deze, die extra snelheid per treffer?
‫Zo vergroten we de beweging van de bal continu.
‫Om die snelheid op onze bal toe te passen, moeten we kracht toevoegen aan onze bal en in dat geval kracht
‫aan het stijve lichaam, omdat het stijve lichaam het fysieke aspect van onze bal is.
‫Dus dat betekent dat we een rigide lichaamsstudie moeten krijgen die ik rigide lichaam noem.
‫Te diep is gelijk aan dit dartspel-object dat componenten krijgt en de naam van de componenten moet
‫rigide body 2D zijn.
‫Dus we nemen de 2d-component van het stijve lichaam van dit spelobject, dus van het spelobject dat het balbewegingsscript
‫draagt, dat voorlopig alleen onze bal zal zijn.
‫Als we meerdere ballen willen toevoegen, kunnen we dat doen en aan alle ballen moet
‫een 2D-component met een star lichaam worden toegewezen.
‫Dus nu we het starre lichaam 2D kennen, kunnen we dat gaan beïnvloeden.
‫Dus we veranderen de snelheid, de richting vermenigvuldigd met de snelheid.
‫Dat betekent dat de richting die aan onze beweegbare methode is gegeven, wordt vermenigvuldigd met de snelheid,
‫de bewegingssnelheid, plus de extra snelheid per treffer vermenigvuldigd met het aantal treffers.
‫Om onze bal nu te laten bewegen, moeten we move ball noemen.
‫De beste manier om dat te doen is door het binnen een kernroutine te noemen.
‫Dus om een coole routine te beginnen.
‫En dat betekent dat we de update-methode niet gebruiken, wat erg inefficiënt zou zijn omdat we de
‫methode constant zouden aanroepen en de snelheid heel snel zouden veranderen, enzovoort.
‫En de beste manier om dit te doen, is door een I-enumeratormethode te maken.
‫Dus jouw methode, die retourneert en ik enumerator zodat we het kunnen gebruiken voor een co-geschreven, welke aanroep dwingt
‫het al het andere om erop te wachten voordat nieuwe acties plaatsvinden.
‫Op deze manier kunt u controleren dat de ene actie op de andere wacht.
‫In plaats van parallel te lopen, zullen we interessantere manieren vinden om coole routines en verdere tutorials te
‫starten.
‫Maar laten we dat nu gebruiken om onze bal te verplaatsen.
‫Dus wat we eerst nodig hebben, is een nieuwe methode, die openbaar is, die terugkeert.
‫En ik enumerator, die, zoals je kunt zien, een eenvoudige herhaling van onze niet-generieke collectie ondersteunt.
‫Dus zo willen we die ene startbal noemen.
‫Dus dat betekent dat deze methode wordt aangeroepen wanneer we beginnen met balbewegingen.
‫En we hebben hier een boolean nodig, die startspeler één gelijk wordt genoemd.
‫Waar.
‫Dus dat betekent dat we een variabele nodig hebben, die onze startspeler is, en als er geen waarde wordt gegeven, is deze
‫gewoon waar.
‫Dat betekent dat onze speler één de startspeler wordt.
‫Dat betekent dat de bal van links naar rechts gaat.
‫Oké, en die moet Start Ball heten en we krijgen nog steeds rood op de lijn, dat betekent dat we hier nog
‫steeds een fout hebben.
‫Dat komt omdat we niets teruggeven.
‫Niet alcopops retourneren een waarde, dus laten we enkele waarden retourneren, daarom hebben we
‫allereerst onze headcount nodig.
‫Dus we stellen dat hier op nul en dan leveren we een nieuwe wachttijd op van seconden.
‫Dus dat betekent dat we ons spel maken.
‫Wacht twee seconden.
‫Dus dat betekent dat wanneer we het spel starten of wanneer we de bal starten, we twee seconden wachten nadat we de
‫head count op nul hebben gezet en dan beginnen we te bewegen.
‫Dus dat betekent dat we dit controleren als de eerste speler begint of de speler die begint.
‫Dus is Player een startende speler?
‫Als dat het geval is, ga je gang, begin de bal te verplaatsen.
‫Dus we noemen deze methode hier en we geven het een vector van nieuwe vector twee met de waarde min één en nul.
‫Dat betekent dat de bal naar links zal bewegen en anders zou de bal naar rechts moeten bewegen.
‫Dus deze bal die je vector naar nu verplaatst, zou naar rechts moeten bewegen.
‫Dus één en nul.
‫Dus één is de X-waarde en nul voor de waarom-waarde, zoals je kunt zien, zwevende Y.
‫Oke.
‫Nu we dat hebben, hoeven we alleen nog maar de oproeproutine te starten.
‫Dus begin met routine.
‫En hier noemen we onze dart-startbal.
‫Oké, laten we dat nu bewaren.
‫We zullen later nog wat extra functionaliteit aan het spel moeten toevoegen.
‫Maar laten we dat voor nu testen in eenheid.
‫Dus wat ik nu nodig heb, is de massa van onze bal veranderen.
‫Het moet superlicht zijn.
‫Dus ik ga gewoon 0 gebruiken. 01 en
‫voor de zwaartekrachtschaal ga ik gewoon voor nul.
‫We hebben helemaal geen zwaartekracht nodig voor onze bal.
‫Zoals je hier kunt zien, is de bewegingssnelheid nul, de extra snelheid per hoofd is nul en onze
‫maximale extra snelheid is ook nul.
‫En dat is niet iets wat we willen.
‫Natuurlijk willen we dat onze bal beweegt.
‫En een goede startwaarde is 400.
‫Een goede extra snelheid per hoofd is 50 en de maximale snelheid moet 1000 zijn.
‫Dit zijn dus slechts waarden die ik na het testen heb bedacht.
‫En laten we kijken wat er gebeurt.
‫Na twee seconden begint een bal naar links te bewegen omdat zijn speler één keer draait en dan heen en weer
‫gaat.
‫Zoals je kunt zien, is de snelheid erg gelijk.
‫Het verandert dus niet echt.
‫Het is altijd dezelfde snelheid, ook al hebben we deze extra snelheid per hit toegevoegd.
‫Dus laten we doorgaan en die extra snelheid per hit verhogen met het aantal hits.
‫We moeten dus een methode toevoegen die ons aantal medewerkers met één verhoogt.
‫En
‫ik ga die ene publieke leegte-toename hitteller noemen.
‫Dus dat zal doen, want het zal het aantal hits met één verhogen.
‫Er staat dus dat als ze de hitteller vermenigvuldigen met dit, die extra snelheid kleiner is, dan is deze maximale extra snelheid,
‫ga je gang en verhoog de hoofdteller, want anders zouden we een snelheid hebben van goed op
‫een gegeven moment een onbeperkte snelheid.
‫Dus het zou omhoog gaan, omhoog, omhoog en omhoog en verder omhoog.
‫Oke.
‫Dat die methode nu helemaal niet wordt aangeroepen en ook niet zal worden aangeroepen in ons balbewegingsscript.
‫We zullen het echter in het script voor onze administratie noemen.
‫Dat gaan we dus doen in een van de volgende video's.
‫Maar tot nu toe heb je gezien hoe je beweging aan je bal kunt toevoegen.
‫En daar gaan we in de volgende video's mee verder.
‫Dus tot ziens in de volgende video.
‫Voordat we dat doen, moeten we natuurlijk opruimen.
‫Dus laten we die balbeweging naar scripts slepen en laten we onze scène opslaan en tot ziens in de volgende video.