‫Hallo en welkom.
‫In deze lezing hebben we een A. L. die ons over de hele wereld volgt.
‫We gaan het onderzoeken als hij me uit het oog verliest.
‫Het is dus best moeilijk om te verliezen.
‫Maar als ik te veel bochten weg ga, kan hij het niet bijbenen en uiteindelijk
‫zal hij zijn interesse verliezen en teruggaan naar zijn startlocatie daar.
‫Dat gaan we in deze lezing implementeren door onze gedragsboomtaak af te ronden.
‫Laten we erin duiken en kijken hoe het gedaan is.
‫Dus we willen onze taak laten uitvoeren, daadwerkelijk iets doen.
‫En vooral wilden we dat Blackboard Valley kunnen opruimen, doen wat er op het blik staat.
‫Dus hoe gaan we dat doen?
‫Daarvoor moeten we naar onze basisklasse gaan en kijken wat daar is geïmplementeerd.
‫Sterker nog, we moeten een niveau hoger, wat je kunt zien aan de overerving van
‫de vrolijke taak Blackboard Base.
‫Daarboven hebben we het UBC-taakknooppunt.
‫Dus laten we F12 gebruiken om daar naar de implementatie te navigeren.
‫En als je omhoog scrolt naar de bovenkant van het taakknooppunt in de balk, punt h hoofd van het bestand, kun je zien dat er informatie is
‫over deze klasse.
‫En het belangrijkste is dat dit de virtuele functies zijn die we waarschijnlijk
‫willen implementeren.
‫Dus de eerste is taak uitvoeren.
‫Dit wordt aangeroepen wanneer de taak wordt uitgevoerd.
‫We hebben dan een bordtaak, en dat is wanneer wordt besloten dat we moeten stoppen met uitvoeren, bijvoorbeeld
‫omdat een voorwaarde onwaar is geworden en we die signalering hebben ingesteld.
‫Dus het breekt deze taak af.
‫Tick-taak gebeurt de hele tijd dat de taak wordt uitgevoerd, maar niet de eerste vink.
‫Dus de eerste taak zal de taak uitvoeren noemen, daarna zal elke keer een vinktaak worden aangeroepen.
‫En dat is voor gedrag dat langer dan één tik kan duren, zoals het verplaatsen naar een vijand kan
‫meerdere tikken kosten.
‫Dus tick task stelt ons in staat om iets te doen.
‫Elk aangevinkt bericht is voor andere dingen dan het afbreken dat een bericht naar deze taak zou kunnen
‫sturen.
‫Over deze specifieke functie hoeven we ons geen zorgen te maken.
‫Dus de eerste drie zijn klaar.
‫Degenen waren meer geïnteresseerd in en aangezien het onze taak is om gewoon de schoolbordwaarde te
‫wissen zodra het is uitgevoerd, en dan zal het meteen eindigen.
‫Het hoeft geen dingen over meerdere vinkjes te doen.
‫We zijn geïnteresseerd in de taak uitvoeren.
‫Dus als we in deze kop van het bestand zoeken naar een taak uitvoeren, kunt u zien dat de volledige handtekening
‫hier is en dat het retourtype hier dit IBT-knooppuntresultaat is.
‫En er zijn twee dingen nodig, de eigenaarcomponent en het knooppuntgeheugen.
‫De reden waarom het node-geheugen nodig heeft, is een
‫beetje ingewikkeld, maar het belangrijkste om te weten is dat een taakklasse of taakklasse-instantie er slechts één is per alle schoolborden.
‫In wezen worden ze door alles gedeeld, en daarom, als je wat informatie
‫die gerelateerd is aan een knooppunt in een bepaalde gedragsboom wilt opslaan, je het in deze geheugenaanwijzer
‫moet opslaan.
‫Maar daar gaan we niets mee doen.
‫Het is iets geavanceerder om dat te moeten doen.
‫En er zijn andere manieren om dit te omzeilen, zoals Unreal toestaan om meerdere instanties te maken voor elke gedragsboom,
‫wat misschien een beetje netjes is of niet, maar dit is een iets efficiëntere manier en we hoeven
‫ons geen zorgen te maken over het.
‫Waar we uiteindelijk in geïnteresseerd zijn, is het feit dat we bij onze eigenaarcomponent, de gedragsboomcomponent, kunnen komen en van daaruit
‫kunnen we naar andere dingen gaan, zoals de pion, enz. Maar dat is ook het onderwerp
‫van een andere lezing.
‫Dus wat nu interessant en belangrijk is, is om de taak te implementeren en uit te voeren.
‫Dus we gaan de handtekening kopiëren, naar Clear Blackboard Value Dot H gaan en eens kijken, is
‫dit nu openbaar?
‫Ik denk dat dit wordt beschermd omdat het in de standaardsectie staat.
‫Dus we gaan een beschermde sectie voor onszelf maken en deze daar plakken en dan gaan we door en maken de
‫plaats een override om er zeker van te zijn dat het veilig is.
‫En dan gaan we een implementatie maken in de C ++, onthoudend dat we altijd
‫naar super willen bellen wanneer we het overschrijven, dus super taak uitvoeren met de eigenaarcomponent en het knooppuntgeheugen
‫dat hier naar onze ouder wordt opgeroepen.
‫En dan willen we ons schoolbord pakken, zodat we de sleutel kunnen wissen.
‫En er zijn twee dingen die hier belangrijk zijn.
‫Allereerst, hoe weten we welke Key is geselecteerd?
‫Welnu, als we naar ons schoolbord gaan op basis van H, kun je zien dat een van de methoden daar is om de
‫geselecteerde schoolbordsleutel te krijgen.
‫Dus je kunt dit eenvoudig elke C++ noemen, de geselecteerde schoolbordtoets krijgen en dat komt terug.
‫Als we de muisaanwijzer erop plaatsen, wordt een F-naam geretourneerd, de F-naam van de schoolbordtoets die is geselecteerd in
‫de gedragsstructuur.
‫Nu, het andere dat we moeten doen, is om daadwerkelijk in staat te zijn om het bord met betrekking tot deze
‫gedragsboom te bemachtigen.
‫Dus daarvoor hebben we onze eigen comp.
‫Merk nu op dat het type eigenaar dat hier wordt doorgegeven eigenlijk een referentie is, geen pointer.
‫Het kan dus om te beginnen niet nul zijn.
‫Dat is geweldig.
‫Maar het betekent ook dat we de DOT-operator moeten gebruiken in
‫plaats van de at-the-pijl-operator, omdat we geen aanwijzer gebruiken en van hieruit kunnen we gewoon schoolbordcomponenten krijgen.
‫Dus dat krijgt gewoon de schoolbordcomponent als je erover zweeft.
‫Deze is een verwijzing naar een schoolbordcomponent, dus u moet pijloperators gebruiken.
‫We weten dus al hoe we toetsen op blackboard moeten wissen.
‫Dat wordt jouw uitdaging.
‫Dus hopelijk is de uitdaging niet te ingewikkeld.
‫U wilt de geselecteerde sleutel wissen.
‫We kunnen controleren waar we dit eerder hebben gedaan.
‫Heeft u hiervoor insluitsels nodig?
‫Misschien heeft het schoolbord het nodig.
‫Gebruik de sleutel die is geselecteerd in uw gedragsstructuur als de sleutel die we willen wissen.
‫Dus pauzeer de video en probeer het.
‫Oké.
‫Welkom terug.
‫Dus laten we dit een kans geven.
‫Dus het eerste is dat we onze schoolbordcomponent hebben.
‫Laten we hier de pijloperator gebruiken.
‫Er komt niets aan.
‫Dus ik neem aan dat ik dat nodig heb, en er zijn inderdaad wat rode kronkels. Ik heb hier een hash nodig
‫om de gedragsboom te doen en dan de schoolbordcomponent hier en nu.
‫Hopelijk zou mijn autocomplete moeten werken, zodat ik het duidelijk kan hebben.
‫Laten we proberen onze herinneringen op te frissen.
‫Waar hebben we dit eerder gedaan?
‫Als we gaan schieten, controleer ik A en kijk wat we hier hebben.
‫We hebben een duidelijke waarde.
‫Dat is degene die we zoeken.
‫Dus laten we die duidelijke waarde eens proberen.
‫En wat kost het?
‫Er is een F-toets of een F-naam voor nodig, een geweldige f-naam die we kunnen krijgen.
‫En waar zeiden we dat we dat konden krijgen met de toets 'Geselecteerde schoolbord' die in deze klas zit omdat deze in
‫de bovenliggende klas zit.
‫Dus selecteer Blackboard Key. Zo simpel is het, we wissen de waarde van de geselecteerde Blackboard Key.
‫Nu, een laatste ding dat we moeten doen.
‫Dit was geen onderdeel van de uitdaging, dus maak je geen zorgen.
‫Als je dit niet wist, is dit dat we moeten terugkeren omdat er een retourwaarde is voor een duidelijke taak voor
‫het uitvoeren van de schoolbordwaarde en de retourwaarde best interessant is.
‫Laten we eens kijken.
‫Laten we het volgen met een F12 en kijken welke verschillende statussen we kunnen teruggeven van onze uitvoeringstest.
‫Nu is de eerste geslaagd.
‫Super goed.
‫Dat geeft in feite aan de gedragsboom aan dat deze notitie is uitgevoerd en dat we naar de
‫volgende kunnen gaan.
‫Weer mislukt.
‫Dit is klaar, dus we kunnen doorgaan naar de volgende, maar deze keer zegt het dat het is mislukt.
‫Dus dat geeft de verschillende indicaties aan bijvoorbeeld onze sequentieknooppunten of onze geselecteerde knooppunten over wat die
‫knooppunten eigenlijk zouden moeten doen.
‫Dan zijn we geaborteerd, wat in feite hetzelfde is als falen en we hebben aan de gang.
‫Als je in uitvoering terugkeert van een uitvoeringstaak, betekent dit in feite dat je moet blijven vinken totdat ik
‫je anders vertel, totdat ik zeg dat ik klaar ben, nu gaan we dit niet gebruiken.
‫Maar het is goed om in gedachten te houden dat als je een taak moet maken die lang duurt
‫en over meerdere vinkjes zal lopen, we in uitvoering moeten terugkeren.
‫Maar zoals ik al zei, we willen slagen.
‫Dus laten we naar binnen gaan en dat doen.
‫Retourneer leeg knooppuntresultaat.
‫Dikke darm.
‫En het gaat lukken, want we zijn erin geslaagd om die waarde in principe hoe dan ook te zuiveren.
‫Dus we kunnen doorgaan en dit allemaal opslaan, naar de editor gaan en op compileren klikken.
‫En als dat voltooid is, laten we doorgaan en onze AI en de gedragsboom openen.
‫Dus is die ene Beattie-vijand?
‫Ik koppel het aan het hoofdvenster en laten we eens kijken.
‫We hebben een duidelijk schoolbord.
‫Value zou ons nu in staat moeten stellen om naar de laatst bekende locatie te gaan, de
‫schoolbordwaarde te wissen, vijf te wachten, en dan zouden we moeten zien dat het onderzoek naar deze laatst bekende speellocatie moet
‫worden uitgeschakeld, dus we moeten teruggaan naar onze startlocatie .
‫Dus laten we eens kijken of dit gedrag nu werkt nu de taak volledig is geïmplementeerd.
‫Dus hij komt naar me toe, hij onderzoekt me.
‫Ik ga me verstoppen.
‫Dus laten we naar binnen gaan.
‫Hides komt op onderzoek.
‫Laten we gaan en ons weer verstoppen.
‫Dus ga en verstop je.
‫Eens kijken of we hem daar kunnen spotten.
‫Hij zou op dit moment moeten wachten en dan gaat hij terug naar zijn startlocatie,
‫waardoor hij mij helaas kruist.
‫Dus laten we eens kijken of dit echt werkt zoals we verwachten door onze vijand door het raam naar buiten te brengen
‫en naar rechts aan te meren en ons hoofdvenster aan de linkerkant te plaatsen.
‫Het is een beetje krap, maar we kunnen het doen en dan gaan we proberen om nog een keer aan deze
‫man te ontsnappen en kijken wat er met zijn gedrag gebeurt.
‫Je kunt zien dat hij naar de laatst bekende speellocatie gaat.
‫En nu wacht hij, nadat hij de vallei heeft vrijgemaakt.
‫En dan zie je dat hij ook gaat bewegen.
‫En je kunt zien dat deze rode balken op de decorateurs ons vertellen dat geen van deze twee voorwaarden
‫waar is.
‫Dus hij kan geen van beide doen om uiteindelijk naar de startlocatie te gaan.
‫Dus nu flikkert het omdat het eigenlijk niets kan doen.
‫Dus dat komt in feite erop neer dat we in deze lezing hebben gezien hoe we de beat-taken kunnen krijgen om code uit te voeren, de verschillende
‫statussen begrepen die je kunt terugkeren van taak uitvoeren, hoe je het schoolbord van de taak
‫kunt krijgen en ook hoe je de momenteel geselecteerde toets op kunt krijgen een schoolbordtaak.
‫In de volgende lezing gaan we kijken hoe we de wereld buiten de schoolbordgedragsboom kunnen pakken,
‫hoe we de pion kunnen pakken vanuit een gedragsboomtaak.
‫Ik zal dat zien.