﻿1
00:00:04,470 --> 00:00:05,220
‫Olá e bem-vindo.

2
00:00:05,220 --> 00:00:08,250
‫Nesta palestra, estamos adicionando uma barra de saúde, como você pode ver no canto inferior esquerdo aqui.

3
00:00:08,250 --> 00:00:14,550
‫Também estamos tornando nosso jogador muito mais forte que o inimigo, para que possamos dar a volta e realmente atirar

4
00:00:14,550 --> 00:00:18,300
‫em muitos inimigos e matá-los antes que nossa saúde se esgote.

5
00:00:18,310 --> 00:00:21,060
‫Então vamos mergulhar e ver como fazer essa barra de saúde.

6
00:00:21,840 --> 00:00:26,850
‫Então, no momento em que não temos como saber se temos saúde suficiente como jogador, quanto tempo temos

7
00:00:26,850 --> 00:00:29,970
‫para jogar com base em nossa quantidade atual de saúde?

8
00:00:30,360 --> 00:00:31,050
‫Agora vamos fazer isso.

9
00:00:31,050 --> 00:00:33,660
‫Eu gostaria de apresentar uma barra de saúde ao nosso HUD.

10
00:00:33,900 --> 00:00:37,380
‫Então, vamos fazer isso indo para o nosso widget HUD.

11
00:00:37,380 --> 00:00:43,710
‫Se ainda não estiver aberto no seu ED, vamos procurar no palato a barra de progresso e trazer essa barra

12
00:00:43,710 --> 00:00:44,700
‫de progresso.

13
00:00:44,730 --> 00:00:46,020
‫E por que uma barra de progresso?

14
00:00:46,050 --> 00:00:51,420
‫Porque, na verdade, ele também tem todos os atributos de uma barra de integridade, ou seja, se

15
00:00:51,420 --> 00:00:58,200
‫rolarmos para baixo no painel de detalhes até a porcentagem, você poderá ver isso alterando essa porcentagem, que na verdade é

16
00:00:58,200 --> 00:01:03,330
‫um número entre zero e um, tão ligeiramente nome confuso, você pode ver que nós

17
00:01:03,360 --> 00:01:05,100
‫enchemos nossa barra e escoamos.

18
00:01:05,100 --> 00:01:12,000
‫Então, o que realmente vamos fazer uma vez é iniciar uma porcentagem de um e depois esgotá-la até atingir a porcentagem de

19
00:01:12,000 --> 00:01:14,820
‫zero, ponto em que nosso jogo vai morrer.

20
00:01:15,930 --> 00:01:16,920
‫Então esse é o objetivo.

21
00:01:16,920 --> 00:01:22,410
‫O que eu quero fazer aqui também é ir em frente e mudar o estilo de preenchimento.

22
00:01:22,530 --> 00:01:28,920
‫Então, novamente, para preenchê-lo um pouco e, em seguida, olhar para a imagem de preenchimento e alterar, vamos ver se podemos

23
00:01:28,920 --> 00:01:30,000
‫alterar esse tom.

24
00:01:31,410 --> 00:01:37,770
‫Para algo como um pouco de verde, a cor típica da saúde lá e, em seguida, torná-lo super óbvio.

25
00:01:37,860 --> 00:01:40,230
‫O que temos aqui é mesmo saúde.

26
00:01:40,380 --> 00:01:47,160
‫Vou adicionar um bloco de texto, rotulá-lo de saúde e colocá-lo ao lado de uma barra de saúde assim.

27
00:01:48,130 --> 00:01:53,380
‫E, em seguida, selecionando esses dois componentes, quero ancorá-los no canto inferior esquerdo para que eles se

28
00:01:53,380 --> 00:01:56,290
‫movam com a borda inferior esquerda da tela.

29
00:01:56,440 --> 00:01:57,340
‫Então é isso que eu vou fazer.

30
00:01:57,610 --> 00:02:02,110
‫Ele se foi e mudou os padrões de âncora e, na verdade, vou movê-los um pouco mais

31
00:02:02,110 --> 00:02:04,030
‫para perto da borda inferior esquerda.

32
00:02:04,750 --> 00:02:08,240
‫E eu vou compilar isso e vamos jogar em tela cheia.

33
00:02:08,260 --> 00:02:11,310
‫Você pode ver que a barra de saúde está bem ali no canto inferior esquerdo.

34
00:02:11,320 --> 00:02:15,670
‫Obviamente, atualmente não está representando nossa saúde.

35
00:02:16,180 --> 00:02:23,530
‫Então, para fazer isso, o que vamos fazer é expor uma função de problema para personagem, CVP para blueprint para que

36
00:02:23,860 --> 00:02:26,770
‫possamos obter isso no widget de país.

37
00:02:26,980 --> 00:02:32,800
‫Então, basicamente, vou copiar o modelo de PUA que temos para está morto, mas em vez

38
00:02:32,800 --> 00:02:38,440
‫de retornar um booleano, retornaremos um float que será essa porcentagem entre zero e um.

39
00:02:38,560 --> 00:02:39,610
‫Não tecnicamente uma porcentagem.

40
00:02:39,610 --> 00:02:40,870
‫Mais de uma fração, mas ei.

41
00:02:41,410 --> 00:02:44,950
‫E vamos chamá-lo de porcentagem de saúde.

42
00:02:44,950 --> 00:02:50,020
‫E vamos querer que seja ao mesmo tempo blueprint, puro e contract, porque não deve, quando o

43
00:02:50,020 --> 00:02:55,300
‫chamamos, alterar esta classe de forma alguma, então vamos seguir em frente e controlar o shift p, criar a

44
00:02:55,300 --> 00:02:56,080
‫implementação .

45
00:02:56,740 --> 00:03:00,340
‫E o que a gente quer devolver aqui é a saúde em porcentagem.

46
00:03:00,370 --> 00:03:02,800
‫Então pense nisso, um pequeno mini desafio para você.

47
00:03:02,800 --> 00:03:07,570
‫Como você faria o cálculo da saúde aqui como uma porcentagem da saúde total?

48
00:03:07,790 --> 00:03:08,620
‫Kate, bem-vinda de volta.

49
00:03:08,800 --> 00:03:15,280
‫Então, vamos ver se você tentasse, seria saúde dividida pelo máximo, saúde tão simples assim, porque quando tivermos nossa

50
00:03:15,280 --> 00:03:16,990
‫saúde máxima, será um.

51
00:03:17,350 --> 00:03:21,340
‫Quando tivermos zero de saúde, será zero e em todos os lugares intermediários.

52
00:03:21,460 --> 00:03:24,180
‫Então vamos voltar ao editor e compilar.

53
00:03:24,190 --> 00:03:29,260
‫Então vamos entrar na nossa interface do HUD e de alguma forma precisamos pegar aquele personagem.

54
00:03:29,770 --> 00:03:36,430
‫Então, o que vamos fazer é ir para nossa barra de progresso e rolar para baixo até onde tínhamos essa propriedade de

55
00:03:36,430 --> 00:03:37,060
‫porcentagem.

56
00:03:37,450 --> 00:03:39,580
‫E ao lado dele você pode ver que há um botão chamado bind.

57
00:03:39,730 --> 00:03:45,760
‫Se você soltar isso e criar vinculação, isso criará uma função cujo trabalho é obter

58
00:03:45,760 --> 00:03:47,470
‫esse valor percentual.

59
00:03:47,470 --> 00:03:51,340
‫E toda vez que isso retornar um valor diferente, ele atualizará a interface do usuário.

60
00:03:51,970 --> 00:03:53,200
‫Então isso é bastante simples.

61
00:03:53,200 --> 00:03:54,220
‫Chama-se obter por cento.

62
00:03:54,220 --> 00:03:55,180
‫Vamos dar-lhe um nome melhor.

63
00:03:55,180 --> 00:04:00,670
‫Vou clicar nele, ir para os detalhes e renomeá-lo para Get Health assim.

64
00:04:01,300 --> 00:04:05,620
‫E então o que precisamos fazer é, de alguma forma, nos apossarmos de nosso caráter.

65
00:04:05,980 --> 00:04:11,590
‫Agora, a maneira como podemos fazer isso é, em primeiro lugar, essa interface do usuário está conectada ao controlador do player.

66
00:04:12,010 --> 00:04:14,050
‫Então já podemos pegar o controle de jogo.

67
00:04:14,050 --> 00:04:16,870
‫E então, a partir do controlador do jogador, podemos obter o controle --.

68
00:04:16,870 --> 00:04:22,420
‫E, de fato, se você apenas procurar por --, você pode ver que há um peão de jogador proprietário

69
00:04:22,420 --> 00:04:23,590
‫que faz isso diretamente.

70
00:04:23,590 --> 00:04:27,580
‫Ele vai em frente e pega o jogador dono, depois pega o peão que está controlando.

71
00:04:27,580 --> 00:04:33,790
‫E a partir daí, o que precisamos fazer é um elenco para o personagem atirador para ter acesso à função

72
00:04:33,790 --> 00:04:35,380
‫que acabamos de criar.

73
00:04:35,380 --> 00:04:43,090
‫E então, a partir daí, podemos obter o percentual de saúde e podemos simplesmente afunilá-lo para o nosso nó

74
00:04:43,090 --> 00:04:49,090
‫de retorno e garantir que passamos nosso pino de execução do personagem atirador lançado.

75
00:04:49,670 --> 00:04:52,480
‫Vou compilar e salvar isso e clicar em play.

76
00:04:52,900 --> 00:04:58,090
‫E o que devemos ver é uma barra de saúde 100% e, em seguida, caindo quando levamos um tiro, eu demorei um pouco

77
00:04:58,090 --> 00:04:58,840
‫para ver isso.

78
00:04:58,840 --> 00:05:05,260
‫Então eu vou fazer isso da porta de visualização do nível principal, aperte play barras de saúde um, então vai para a

79
00:05:05,260 --> 00:05:06,580
‫saúde, então você morre.

80
00:05:07,060 --> 00:05:09,940
‫Então tudo isso está acontecendo um pouco rápido demais.

81
00:05:09,940 --> 00:05:14,500
‫Então eu gostaria de desafiá-lo a aumentar apenas a saúde do jogador, não a saúde dos aliados.

82
00:05:14,770 --> 00:05:18,970
‫Eu quero ter a sensação do nível em que vocês dois atiraram para matar o inimigo.

83
00:05:19,390 --> 00:05:25,600
‫Mas então seu jogador tem muito mais saúde e leva muito mais tiros da IA para realmente fazer você cair porque

84
00:05:25,600 --> 00:05:27,790
‫você é um herói grande e forte.

85
00:05:28,270 --> 00:05:32,530
‫Então a ideia aqui é criar um filho para o jogador.

86
00:05:32,650 --> 00:05:37,660
‫Então, isso será um filho da classe de personagem, mas não apenas da classe de personagem,

87
00:05:37,900 --> 00:05:39,940
‫provavelmente já dessa classe de projeto.

88
00:05:40,330 --> 00:05:43,930
‫Você terá que substituir algumas variáveis diferentes, ou seja, a saúde máxima.

89
00:05:44,530 --> 00:05:49,840
‫Vai ser maior para o jogador e talvez você queira uma malha diferente para diferenciá-lo de todos os

90
00:05:49,840 --> 00:05:51,400
‫inimigos ao seu redor.

91
00:05:52,030 --> 00:05:54,880
‫Houve um vídeo e veja se você pode tentar este desafio.

92
00:05:56,250 --> 00:05:56,790
‫OK.

93
00:05:56,790 --> 00:05:57,250
‫Bem vindo de volta.

94
00:05:57,270 --> 00:06:02,790
‫Então, vamos até a pasta de conteúdo e vamos encontrar o personagem que temos o personagem

95
00:06:02,820 --> 00:06:03,750
‫BP Shoots.

96
00:06:03,750 --> 00:06:09,450
‫Vou clicar com o botão direito do mouse sobre isso e criar uma classe de

97
00:06:09,450 --> 00:06:15,300
‫modelo filho aqui, que será um personagem de atirador de jogador de sublinhado da BP assim.

98
00:06:15,330 --> 00:06:20,160
‫E agora abrir este blueprint terá todas as mesmas propriedades de seu blueprint pai porque elas

99
00:06:20,160 --> 00:06:21,720
‫já foram definidas no pai.

100
00:06:22,140 --> 00:06:24,230
‫Mas agora podemos optar por substituir algumas coisas.

101
00:06:24,240 --> 00:06:27,360
‫A primeira coisa que vou substituir é a malha.

102
00:06:27,540 --> 00:06:28,350
‫Então estamos começando.

103
00:06:28,350 --> 00:06:29,430
‫Esta é uma malha vermelha.

104
00:06:29,430 --> 00:06:31,440
‫Acho que isso é bom para os inimigos.

105
00:06:31,560 --> 00:06:34,950
‫Mas o que eu gostaria é a malha verde para o meu herói.

106
00:06:34,950 --> 00:06:37,560
‫Então vai ser super óbvio que ele é um cara diferente.

107
00:06:38,190 --> 00:06:44,970
‫Então vamos para a raiz ou para os padrões de classe e alterar a saúde máxima.

108
00:06:44,970 --> 00:06:50,190
‫Então eu quero que ele tenha cerca de dez vezes mais saúde que os inimigos neste nível.

109
00:06:50,550 --> 00:06:52,350
‫Então eu vou em frente, compilar e salvar isso.

110
00:06:52,620 --> 00:06:56,730
‫E então mais uma coisa que temos que fazer é mudar nosso projeto.

111
00:06:56,970 --> 00:07:04,800
‫Então, vamos encontrar o modo de ganho BP KML e vamos mudar o padrão -- classe do personagem BP shooter

112
00:07:04,800 --> 00:07:11,250
‫para o BP player shooter porque já temos um shooter que coloquei no mundo e então

113
00:07:11,430 --> 00:07:14,730
‫vamos em frente e apertamos o play.

114
00:07:14,730 --> 00:07:17,700
‫E você pode ver que temos um personagem diferente.

115
00:07:17,970 --> 00:07:18,990
‫Ele tem um visual diferente.

116
00:07:19,380 --> 00:07:24,540
‫E quando ele está sendo alvejado, estamos fazendo a bola de saúde descer muito mais devagar

117
00:07:24,660 --> 00:07:26,760
‫e eu posso matar o inimigo.

118
00:07:27,000 --> 00:07:31,200
‫Mas ainda pode ser bastante desafiador se você colocar inimigos suficientes em sua cena.

119
00:07:31,290 --> 00:07:32,250
‫Então é isso para esta palestra.

120
00:07:32,250 --> 00:07:39,870
‫Vimos como podemos adicionar um componente de integridade com vinculação e com um componente de barra de progresso.

121
00:07:39,870 --> 00:07:44,640
‫Na próxima palestra, vamos olhar um pouco novamente para a animação para que nosso jogador

122
00:07:44,640 --> 00:07:48,210
‫possa mirar para cima e para baixo com a malha.

123
00:07:48,510 --> 00:07:49,080
‫Eu vou ver isso.

