﻿1
00:00:10,570 --> 00:00:11,650
‫Bem vindo de volta.

2
00:00:11,680 --> 00:00:14,650
‫Neste vídeo, estamos preocupados em reproduzir sons.

3
00:00:14,890 --> 00:00:18,430
‫Gostaríamos de tocar alguns sons quando dispararmos o projétil.

4
00:00:18,580 --> 00:00:23,380
‫Quando o projétil atinge algo e quando um de nossos peões morre.

5
00:00:23,590 --> 00:00:25,060
‫Então vamos pular direto.

6
00:00:25,540 --> 00:00:32,770
‫Agora estou aqui no ED, e se eu for na pasta de assets, temos essa pasta de áudio e temos

7
00:00:32,770 --> 00:00:38,350
‫dois sons diferentes e isso será bom para quando nosso projétil atingir alguma coisa.

8
00:00:38,350 --> 00:00:44,170
‫Usaremos o baque e quando um de nossos peões morrer usaremos o áudio de explosão.

9
00:00:44,170 --> 00:00:48,520
‫E também podemos reutilizar o áudio do baque quando estamos lançando um projétil.

10
00:00:48,550 --> 00:00:54,590
‫Agora gostaríamos que nosso projétil tivesse duas variáveis representando esses ativos sonoros.

11
00:00:54,610 --> 00:00:59,980
‫Agora, aqui embaixo na seção privada, vou adicionar algumas variáveis e vou declarar

12
00:00:59,980 --> 00:01:01,210
‫essa classe.

13
00:01:01,210 --> 00:01:06,820
‫Agora, a classe que vou usar é sua base de som e isso será um ponteiro.

14
00:01:06,820 --> 00:01:09,580
‫Agora vou chamar isso de som de lançamento.

15
00:01:09,760 --> 00:01:15,250
‫Isso vai representar o som que tocamos quando lançamos um projétil.

16
00:01:15,280 --> 00:01:19,570
‫Agora, sua base de som é uma classe que podemos usar para sons.

17
00:01:19,570 --> 00:01:26,050
‫Agora, se expormos isso a blueprints, podemos definir isso usando nossos ativos de som que temos em nossa pasta de

18
00:01:26,050 --> 00:01:26,650
‫sons.

19
00:01:26,650 --> 00:01:30,910
‫Então, eu vou em frente e dar a isso uma propriedade U para que possamos expô-la.

20
00:01:30,910 --> 00:01:36,100
‫E vou editá-lo em qualquer lugar e colocá-lo na categoria de combate.

21
00:01:36,100 --> 00:01:39,550
‫Então está lá com nossas outras variáveis de combate.

22
00:01:39,850 --> 00:01:45,460
‫Agora eu gostaria de usar outra variável baseada em som para quando o projétil atingir algo.

23
00:01:45,460 --> 00:01:49,090
‫Então este será outro ponteiro baseado em som U.

24
00:01:49,090 --> 00:01:55,300
‫E vou chamar isso de som de acerto e vou dar a mesma propriedade de você como som de lançamento.

25
00:01:55,300 --> 00:02:01,660
‫Agora observe que eu não estou declarando que você é base de som para som de sucesso, isso é porque eu já declarei

26
00:02:01,660 --> 00:02:03,760
‫que você é base de som aqui.

27
00:02:03,760 --> 00:02:10,720
‫Então, uma vez que você tenha declarado um tipo em uma linha, esse tipo pode ser usado depois dele no arquivo.

28
00:02:10,720 --> 00:02:16,420
‫Agora, por esse motivo, algumas pessoas colocam suas declarações avançadas até aqui no topo.

29
00:02:16,420 --> 00:02:17,950
‫Essa é outra maneira de fazer isso.

30
00:02:17,950 --> 00:02:26,350
‫Então, se eu disse classe, você soa base aqui, então isso cuida da declaração de encaminhamento e eu posso usar o tipo

31
00:02:26,350 --> 00:02:32,710
‫de base de som de uso em qualquer lugar deste arquivo após a declaração de encaminhamento.

32
00:02:32,710 --> 00:02:34,420
‫Então essa é outra maneira de fazer isso.

33
00:02:34,420 --> 00:02:40,870
‫Então, apenas para mostrar a você os dois lados, vou declarar que você está bem aqui no topo,

34
00:02:40,870 --> 00:02:43,180
‫em vez de declarar aqui embaixo.

35
00:02:43,330 --> 00:02:48,830
‫Então agora temos que usar variáveis de base de som no projétil h.

36
00:02:48,970 --> 00:02:55,210
‫Eu gostaria de adicionar uma base sólida à classe de peões base e isso será para quando o peão base for destruído.

37
00:02:55,210 --> 00:02:59,920
‫Então, isso estará na seção privada e eu vou declará-lo aqui e será

38
00:02:59,920 --> 00:03:07,210
‫um ponteiro de base de som e vou chamar isso de som da morte e isso obterá uma propriedade de você.

39
00:03:07,240 --> 00:03:10,780
‫Vou rolar para baixo para que você possa ver melhor sua propriedade.

40
00:03:10,810 --> 00:03:12,490
‫Ele será adicionado em qualquer lugar.

41
00:03:14,240 --> 00:03:16,760
‫E eu vou colocar isso na categoria.

42
00:03:18,350 --> 00:03:19,220
‫Combate.

43
00:03:19,700 --> 00:03:26,420
‫Então agora que nossa base -- e nosso projétil usaram variáveis de base de som, vamos em frente e

44
00:03:26,420 --> 00:03:29,930
‫compilá-los e dar uma olhada nessas variáveis no Blueprint.

45
00:03:29,930 --> 00:03:35,690
‫E, claro, recebo um erro de compilação porque digitei sua propriedade um pouco apressadamente.

46
00:03:35,690 --> 00:03:38,420
‫Esse y minúsculo deve ser um y maiúsculo.

47
00:03:38,420 --> 00:03:45,530
‫Essas coisas diferenciam maiúsculas de minúsculas, portanto, corrigindo esse erro de digitação e compilando novamente, agora tenho uma compilação

48
00:03:45,530 --> 00:03:46,160
‫bem-sucedida.

49
00:03:46,160 --> 00:03:52,820
‫Então vamos voltar para o editor agora aqui o editor, vou abrir a pasta de atores

50
00:03:52,820 --> 00:03:59,420
‫e o projétil BP e vou abrir o editor de blueprint completo, prefiro fazer isso.

51
00:03:59,420 --> 00:04:02,540
‫Isso torna mais fácil para mim ver onde tudo está agora.

52
00:04:02,540 --> 00:04:09,050
‫Eu tenho o som de lançamento e o som de hit aqui e, como eles são editados em qualquer lugar, podemos

53
00:04:09,050 --> 00:04:14,390
‫selecionar ativos de som no menu suspenso e ele apenas me mostra as opções válidas que tenho.

54
00:04:14,390 --> 00:04:19,400
‫Agora, o que estou vendo aqui é o som de lançamento e vou usar o áudio do baque para isso.

55
00:04:19,700 --> 00:04:23,000
‫Agora vou usar o áudio Thud para o som do hit também.

56
00:04:23,000 --> 00:04:24,560
‫Mas eu fiz duas variáveis.

57
00:04:24,560 --> 00:04:30,230
‫Portanto, se você conseguir mais efeitos sonoros, poderá usar um som diferente para o lançamento versus o som

58
00:04:30,230 --> 00:04:31,010
‫do hit.

59
00:04:31,010 --> 00:04:33,740
‫Então, isso está configurado para você, caso você goste de fazer isso.

60
00:04:33,740 --> 00:04:38,480
‫Agora isso cuida do som de lançamento e do som de acerto no projétil.

61
00:04:38,480 --> 00:04:41,810
‫Então eu vou compilar e salvar e fechar isso.

62
00:04:42,080 --> 00:04:46,280
‫Em seguida, vou abrir as lagoas e abrir o tanque da lagoa BP.

63
00:04:46,280 --> 00:04:49,250
‫E aqui está o meu som de morte na seção de combate.

64
00:04:49,490 --> 00:04:56,480
‫Vou clicar no menu suspenso e usar o áudio de explosão e definir o som da morte para o recurso de som de áudio

65
00:04:56,480 --> 00:04:57,230
‫de explosão.

66
00:04:57,260 --> 00:05:04,370
‫Vou compilar e salvar isso e fechar o tanque da lagoa BP e abrir a torre da lagoa BP porque colocamos

67
00:05:04,370 --> 00:05:09,320
‫essa variável na classe base da lagoa da qual a torre também herda.

68
00:05:09,320 --> 00:05:13,940
‫Então, vou definir o som da morte para explodir o áudio aqui também.

69
00:05:13,940 --> 00:05:21,200
‫Então agora temos ativos de som e eles estão armazenados em variáveis tanto em nossas lagoas quanto no projétil.

70
00:05:21,200 --> 00:05:24,530
‫A única coisa que resta é realmente tocar esses sons.

71
00:05:24,860 --> 00:05:28,550
‫Agora, a estática do jogo tem outra função útil.

72
00:05:28,550 --> 00:05:31,310
‫Chama-se reproduzir som no local.

73
00:05:31,310 --> 00:05:37,370
‫Agora podemos rolar para baixo e ver que são necessários vários parâmetros de entrada, mas, como

74
00:05:37,370 --> 00:05:42,590
‫a maioria dessas funções, há vários parâmetros opcionais que possuem valores padrão.

75
00:05:42,770 --> 00:05:45,680
‫Então, podemos cavar no código para ver isso.

76
00:05:45,950 --> 00:05:51,410
‫Então eu vou pular no CP do projétil e aqui e começar a jogar.

77
00:05:51,410 --> 00:06:00,200
‫Eu vou digitar suas estatísticas de jogo, tocar o som no local e apertar os parênteses de abertura lá e verei

78
00:06:00,200 --> 00:06:02,750
‫que diz um dos dois.

79
00:06:03,020 --> 00:06:07,460
‫Agora, esta primeira versão que está me mostrando leva um objeto de contexto mundial.

80
00:06:07,460 --> 00:06:09,830
‫Sabemos que podemos passar isso para isso.

81
00:06:09,830 --> 00:06:12,110
‫E em seguida é preciso uma base de som de uso.

82
00:06:12,110 --> 00:06:17,810
‫Então, temos variáveis de base de som e, em seguida, leva um vetor F para a localização.

83
00:06:17,810 --> 00:06:23,360
‫Agora, se quisermos reproduzir o som no local do projétil, podemos apenas usar get ator location

84
00:06:23,360 --> 00:06:26,060
‫e o restante dessas entradas são opcionais.

85
00:06:26,060 --> 00:06:32,420
‫Então, se você quiser dar uma olhada nisso, dê outra olhada na página de documentação desta função e

86
00:06:32,420 --> 00:06:33,830
‫faça mais pesquisas.

87
00:06:33,830 --> 00:06:40,250
‫Mas estamos preocupados apenas com as três primeiras entradas, então sabemos como tocar sons em locais que podemos

88
00:06:40,250 --> 00:06:40,970
‫usar.

89
00:06:40,970 --> 00:06:47,870
‫A estática do jogo reproduz o som no local, que recebe um objeto de contexto do mundo, um som para o qual podemos

90
00:06:47,870 --> 00:06:54,110
‫usar nossa base de som de uso e um local para o qual podemos usar obter a localização do ator.

91
00:06:54,110 --> 00:07:00,410
‫Portanto, seu desafio será chamar o som de reprodução no local e reproduzir sons para os vários aspectos do nosso

92
00:07:00,410 --> 00:07:02,360
‫jogo que precisam de sons.

93
00:07:02,360 --> 00:07:10,220
‫Então, chame você de estática de jogo, reproduza o som no local da classe do projétil primeiro na função ao acertar e use

94
00:07:10,220 --> 00:07:12,500
‫nossa variável de som de acerto.

95
00:07:12,530 --> 00:07:18,830
‫Faça isso na verificação if quando verificamos se outro ator é válido, bem como certifique-se de que o outro ator

96
00:07:18,830 --> 00:07:20,840
‫não é este ou o proprietário.

97
00:07:20,840 --> 00:07:27,020
‫Mas chame antes de destruir o projétil e chame o som de reprodução no local e comece a jogar para

98
00:07:27,020 --> 00:07:29,630
‫o projétil e use o som de lançamento.

99
00:07:29,630 --> 00:07:35,300
‫Dessa forma, teremos o som reproduzido quando o projétil for gerado, bem como quando o projétil atingir

100
00:07:35,330 --> 00:07:36,650
‫algo em seguida.

101
00:07:36,650 --> 00:07:42,110
‫Vá para a classe básica de pong e chame o som de reprodução no local e lide com a destruição.

102
00:07:42,110 --> 00:07:43,730
‫E você vai usar o som da morte.

103
00:07:43,730 --> 00:07:45,110
‫Essa é a explosão.

104
00:07:45,110 --> 00:07:50,000
‫Portanto, pause o vídeo e adicione essas chamadas para reproduzir o som no local agora.

105
00:07:53,530 --> 00:07:53,800
‫OK.

106
00:07:53,830 --> 00:07:59,470
‫Então primeiro estamos aqui no Projétil CP e eu vou na ordem do desafio.

107
00:07:59,470 --> 00:08:04,290
‫Então primeiro eu vou descer até o hit e tocar o som aqui embaixo.

108
00:08:04,300 --> 00:08:11,440
‫Agora você provavelmente verificou para ver se o som era nulo e se você fez, eu te dou os parabéns porque você

109
00:08:11,440 --> 00:08:14,100
‫já está adquirindo esses bons hábitos de programação.

110
00:08:14,110 --> 00:08:16,120
‫Agora, se você não fez, tudo bem.

111
00:08:16,150 --> 00:08:16,990
‫Vá em frente e faça isso.

112
00:08:16,990 --> 00:08:17,290
‫Agora.

113
00:08:17,290 --> 00:08:24,550
‫Vamos verificar se o som do hit é válido antes de chamarmos a nova função de estática do jogo.

114
00:08:24,550 --> 00:08:25,450
‫Então vai ser você.

115
00:08:25,450 --> 00:08:32,200
‫As estáticas do jogo reproduzem o som no local e primeiro precisamos de um objeto de contexto do mundo que será

116
00:08:32,200 --> 00:08:32,650
‫este.

117
00:08:32,650 --> 00:08:37,660
‫Em seguida, precisamos do próprio som do hit e vamos tocá-lo no local do ator.

118
00:08:37,660 --> 00:08:42,670
‫Portanto, obter a localização do ator satisfará esse terceiro parâmetro.

119
00:08:43,090 --> 00:08:44,260
‫Ok, perfeito.

120
00:08:44,260 --> 00:08:47,170
‫Em seguida, precisamos tocar um som e começar a tocar.

121
00:08:47,170 --> 00:08:49,000
‫Então vamos voltar para começar a jogar.

122
00:08:49,000 --> 00:08:54,010
‫E para este, vamos verificar se o som de lançamento é válido.

123
00:08:54,010 --> 00:09:02,500
‫Então, vamos dizer que se você iniciar o som, o jogo, a estática, reproduz o som no local e, é claro, precisamos do objeto

124
00:09:02,500 --> 00:09:04,030
‫de contexto do mundo.

125
00:09:04,030 --> 00:09:09,910
‫Essa é a base de som de uso que será o som de lançamento e vamos tocar isso no local

126
00:09:09,910 --> 00:09:10,570
‫do ator.

127
00:09:10,570 --> 00:09:17,140
‫Então pegue a localização do ator e isso se encarrega de tocar o som e começar a tocar.

128
00:09:17,140 --> 00:09:23,830
‫Então a última coisa a fazer é tocar o som na base -- class e lidar com a destruição.

129
00:09:23,830 --> 00:09:29,410
‫E agora que estamos lidando com efeitos visuais e sonoros, não precisamos dizer para fazer aqui porque

130
00:09:29,410 --> 00:09:30,100
‫fizemos isso.

131
00:09:30,100 --> 00:09:34,120
‫Então, primeiro, vamos verificar se o som da morte é válido.

132
00:09:34,120 --> 00:09:41,380
‫Se for, então podemos chamá-lo de estática de jogo reproduzir som no local com o objeto de contexto do mundo.

133
00:09:41,380 --> 00:09:49,510
‫Essa será a base de som que será o som da morte e a localização do ator satisfará

134
00:09:49,540 --> 00:09:52,330
‫a localização desse som da morte.

135
00:09:52,450 --> 00:09:53,770
‫Oq Incrível.

136
00:09:53,770 --> 00:09:58,570
‫Vamos em frente e compilar nosso código com uma compilação bem-sucedida.

137
00:09:58,600 --> 00:10:02,200
‫Vamos voltar aqui para o editor e vamos testar isso.

138
00:10:02,200 --> 00:10:05,590
‫Então eu vou apertar o play e esperar o cronômetro.

139
00:10:14,030 --> 00:10:16,930
‫Então, em resumo, agora temos som.

140
00:10:16,940 --> 00:10:23,540
‫Estamos tocando um som para o projétil no acerto e no lançamento, e estamos tocando um som para o peão

141
00:10:23,540 --> 00:10:24,560
‫na morte.

142
00:10:24,830 --> 00:10:30,560
‫Então, olhando para o nosso plano de seção, vemos que marcamos quase todos os itens aqui.

143
00:10:30,560 --> 00:10:34,610
‫Ainda estamos nos efeitos especiais, temos a fumaça, as explosões e os sons.

144
00:10:34,610 --> 00:10:40,850
‫Há apenas algumas coisas a fazer para polir este jogo e ter certeza de que está parecendo e se sentindo

145
00:10:40,850 --> 00:10:43,730
‫bem antes de prosseguirmos e encerrarmos esta seção.

146
00:10:43,730 --> 00:10:46,580
‫Então te vejo no próximo vídeo.

