﻿1
00:00:04,350 --> 00:00:05,280
‫Olá e bem-vindo.

2
00:00:05,280 --> 00:00:12,390
‫Nesta palestra, vamos configurar uma chave de quadro-negro em C++ para que possamos definir a localização

3
00:00:12,390 --> 00:00:15,090
‫do jogador e começar a jogar.

4
00:00:15,090 --> 00:00:16,800
‫Vamos mergulhar e ver como isso funciona.

5
00:00:17,930 --> 00:00:18,070
‫OK.

6
00:00:18,110 --> 00:00:26,150
‫Então, como eu disse na última palestra, queremos ser capazes de definir algum estado de nossa jogabilidade no quadro-negro para

7
00:00:26,150 --> 00:00:27,830
‫a IA agir.

8
00:00:28,460 --> 00:00:36,560
‫Portanto, o quadro-negro se parece com isso e atualmente possui essa tecla de ator automático, mas não possui outras teclas

9
00:00:36,560 --> 00:00:37,370
‫aqui.

10
00:00:37,370 --> 00:00:40,940
‫Podemos adicionar chaves como clicar neste novo botão de chave.

11
00:00:40,940 --> 00:00:42,500
‫Você pode alterar o tipo.

12
00:00:43,250 --> 00:00:48,260
‫Na verdade, não há um tipo para atores ou qualquer coisa assim que vá sob o tipo nebuloso

13
00:00:48,260 --> 00:00:55,040
‫de objeto para tudo o que há de bolas, aulas, etc. mas você pode escolher o tipo de objeto que

14
00:00:55,040 --> 00:01:00,230
‫deseja que seja, acessando os detalhes do quadro-negro, descendo e escolhendo a classe base

15
00:01:00,230 --> 00:01:01,250
‫que deseja.

16
00:01:01,250 --> 00:01:05,510
‫Então, por exemplo, está dizendo aqui que o ator próprio é do tipo ator.

17
00:01:05,990 --> 00:01:08,090
‫Ele acabou de ser colocado aqui por padrão.

18
00:01:08,390 --> 00:01:12,500
‫Mas o que queremos fazer aqui é definir uma nova chave.

19
00:01:13,040 --> 00:01:19,490
‫E para isso precisamos descobrir como podemos ter acesso a isso no C++.

20
00:01:20,180 --> 00:01:29,390
‫Portanto, já temos uma função fácil que nos permite obter o quadro-negro fazendo um componente

21
00:01:29,390 --> 00:01:32,780
‫get blackboard no controlador aéreo.

22
00:01:32,780 --> 00:01:41,240
‫Tão simples quanto podemos obter os componentes do quadro-negro e vamos dar uma olhada nos componentes do quadro-negro, ponto

23
00:01:42,230 --> 00:01:45,620
‫he ver o que está disponível aqui.

24
00:01:45,620 --> 00:01:54,200
‫Queremos fazer algo como set key ou set blackboard ou, na verdade, é tão simples quanto definir

25
00:01:54,200 --> 00:01:54,950
‫valor.

26
00:01:55,040 --> 00:02:01,610
‫Então aqui você tem um monte de funções diferentes nesse componente do quadro-negro que permitem que você defina esses valores diferentes para que

27
00:02:01,910 --> 00:02:06,590
‫você possa fazer isso por um nome de chave, que é um nome F aqui.

28
00:02:06,950 --> 00:02:13,670
‫E então você pode definir o valor como um objeto ou pode definir a classe de todos os diferentes tipos

29
00:02:13,670 --> 00:02:14,660
‫disponíveis aqui.

30
00:02:15,260 --> 00:02:16,730
‫Então vamos dar uma chance.

31
00:02:16,820 --> 00:02:25,670
‫Vou para o C++ e tentar definir a localização do nosso player --'s como uma das variáveis.

32
00:02:25,670 --> 00:02:30,890
‫Então vamos fazer primeiro de tudo, precisamos pegar os componentes do quadro-negro.

33
00:02:31,400 --> 00:02:34,910
‫Então, vamos tentar, obter componentes de quadro-negro.

34
00:02:34,910 --> 00:02:37,070
‫Então precisamos ter as inclusões certas.

35
00:02:37,070 --> 00:02:42,260
‫Então, se eu passar o mouse sobre o componente blackboard em H, você pode ver que precisamos incluir o

36
00:02:42,260 --> 00:02:44,000
‫componente blackboard da árvore de comportamento.

37
00:02:44,000 --> 00:02:52,700
‫Então, vamos fazer essa inclusão de hash, então será o componente do quadro-negro da árvore de comportamento ou

38
00:02:52,700 --> 00:02:53,330
‫H.

39
00:02:54,020 --> 00:02:58,970
‫Agora podemos usar o operador de seta nesse tipo e devemos estar executando.

40
00:02:59,270 --> 00:03:04,310
‫Queremos, neste caso, definir um vetor e definir a localização.

41
00:03:04,310 --> 00:03:10,340
‫Então, defina um vetor e não copie a linha inteira, mas apenas defina o vetor.

42
00:03:11,150 --> 00:03:16,160
‫E então queremos qual é o primeiro parâmetro é o nome que estamos tentando definir para que possamos usar nossa macro

43
00:03:16,160 --> 00:03:17,360
‫de texto para isso.

44
00:03:17,800 --> 00:03:23,420
‫E vou chamá-lo de localização do jogador que nos dará a localização no início por causa de chamá-lo de

45
00:03:23,420 --> 00:03:24,350
‫Begin Play.

46
00:03:25,100 --> 00:03:30,620
‫E então precisamos realmente definir o local para que possamos obter isso da linha de código, obtendo nosso

47
00:03:30,620 --> 00:03:32,330
‫player -- em primeiro lugar.

48
00:03:32,840 --> 00:03:41,510
‫Então, descomente isso e queremos que o jogador puxe uma seta e obtenha a localização do ator assim e termine a linha com

49
00:03:41,510 --> 00:03:42,860
‫ponto e vírgula.

50
00:03:43,130 --> 00:03:47,540
‫E é tão simples quanto seguir em frente e definir um valor de quadro-negro.

51
00:03:47,780 --> 00:03:52,910
‫Então, seu desafio será fazer a outra metade disso, que é criar uma chave no quadro-negro.

52
00:03:52,910 --> 00:03:57,080
‫Portanto, adicione a chave ao quadro-negro, verifique se está no tipo certo, no nome certo e, se

53
00:03:57,080 --> 00:04:00,080
‫tudo funcionou corretamente, você poderá verificar esse valor em tempo de execução.

54
00:04:00,080 --> 00:04:01,310
‫Lembra da última aula?

55
00:04:01,310 --> 00:04:04,010
‫Vimos como podemos ver a árvore de comportamento.

56
00:04:04,010 --> 00:04:04,790
‫Você pode fazer a mesma coisa.

57
00:04:04,790 --> 00:04:09,800
‫Você pode inspecionar o quadro-negro em tempo de execução quando estiver jogando e poderá ver qual

58
00:04:09,800 --> 00:04:11,810
‫valor foi definido pelo código C++.

59
00:04:12,230 --> 00:04:14,150
‫Pause o vídeo e vá em frente.

60
00:04:15,190 --> 00:04:15,460
‫OK.

61
00:04:15,460 --> 00:04:16,090
‫Bem vindo de volta.

62
00:04:16,390 --> 00:04:21,130
‫Então, vou passar para a compilação de hits do editor, porque ainda não fiz isso.

63
00:04:21,490 --> 00:04:23,650
‫E vamos adicionar uma nova chave de quadro-negro.

64
00:04:23,650 --> 00:04:26,770
‫E neste caso, temos que acertar os nomes e os tipos corretos.

65
00:04:27,070 --> 00:04:28,390
‫Caso contrário, as coisas vão dar errado.

66
00:04:28,750 --> 00:04:34,090
‫Portanto, temos uma chave vetorial, que chamaremos de localização do jogador, e vou

67
00:04:34,090 --> 00:04:38,710
‫copiá-la para ter certeza de que temos a ortografia correta aqui.

68
00:04:38,710 --> 00:04:40,870
‫Sim, temos feijão fresco.

69
00:04:41,620 --> 00:04:47,950
‫E então o que vamos fazer é ir até lá e verificar se os detalhes do quadro-negro estão

70
00:04:47,950 --> 00:04:48,670
‫corretos.

71
00:04:49,060 --> 00:04:51,520
‫Portanto, há um nome que você pode adicionar uma descrição, se quiser.

72
00:04:51,520 --> 00:04:52,510
‫O tipo é um vetor.

73
00:04:52,510 --> 00:04:53,140
‫Isso é legal.

74
00:04:53,650 --> 00:04:55,090
‫Seleção de instância.

75
00:04:55,120 --> 00:04:59,890
‫Esta é uma variável na qual não estamos particularmente interessados no momento.

76
00:05:00,220 --> 00:05:00,640
‫Frio.

77
00:05:00,640 --> 00:05:06,100
‫Nós temos nosso código compilado, então vamos apertar play e ver se podemos esperar esse valor de

78
00:05:06,100 --> 00:05:06,460
‫quadro-negro.

79
00:05:06,460 --> 00:05:11,710
‫Vá até o quadro-negro e você pode ver que ainda podemos ter aquela lista suspensa de escolher com qual eu queremos que isso

80
00:05:11,710 --> 00:05:12,370
‫se relacione.

81
00:05:12,370 --> 00:05:17,200
‫Nós só temos um em nosso mundo, mas você pode ver esse eu e isso não foi definido, mas

82
00:05:17,200 --> 00:05:19,240
‫a localização do jogador realmente foi definida.

83
00:05:19,240 --> 00:05:21,250
‫Vamos verificar se isso é aproximadamente correto.

84
00:05:21,610 --> 00:05:27,700
‫Se eu possuir, dê uma olhada no meu jogador e dê uma olhada na localização do jogador.

85
00:05:27,700 --> 00:05:28,360
‫Você pode ver isso.

86
00:05:28,360 --> 00:05:29,860
‫Sim, está bastante correto.

87
00:05:29,980 --> 00:05:32,950
‫2000 -5100.

88
00:05:33,730 --> 00:05:36,220
‫2000 -5100.

89
00:05:36,520 --> 00:05:39,910
‫Então, isso é definir o valor por meio de C++.

90
00:05:39,910 --> 00:05:40,570
‫Simples assim.

91
00:05:40,960 --> 00:05:44,650
‫Podemos começar a ver como podemos interagir com nossas árvores de comportamento.

92
00:05:44,650 --> 00:05:50,530
‫Na próxima aula vamos olhar para a estrutura real das árvores de comportamento e fazê-las fazer alguma

93
00:05:50,530 --> 00:05:51,020
‫coisa.

94
00:05:51,070 --> 00:05:52,090
‫A parte emocionante.

95
00:05:52,150 --> 00:05:52,690
‫Vê isso?

