All language subtitles for 40. Menu - Pause Menu

af Afrikaans
sq Albanian
am Amharic
ar Arabic
hy Armenian
az Azerbaijani
eu Basque
be Belarusian
bn Bengali
bs Bosnian
bg Bulgarian
ca Catalan
ceb Cebuano
ny Chichewa
zh-CN Chinese (Simplified)
zh-TW Chinese (Traditional)
co Corsican
hr Croatian
cs Czech
da Danish
nl Dutch
en English Download
eo Esperanto
et Estonian
tl Filipino
fi Finnish
fr French
fy Frisian
gl Galician
ka Georgian
de German
el Greek
gu Gujarati
ht Haitian Creole
ha Hausa
haw Hawaiian
iw Hebrew
hi Hindi
hmn Hmong
hu Hungarian
is Icelandic
ig Igbo
id Indonesian
ga Irish
it Italian
ja Japanese
jw Javanese
kn Kannada
kk Kazakh
km Khmer
ko Korean
ku Kurdish (Kurmanji)
ky Kyrgyz
lo Lao
la Latin
lv Latvian
lt Lithuanian
lb Luxembourgish
mk Macedonian
mg Malagasy
ms Malay
ml Malayalam
mt Maltese
mi Maori
mr Marathi
mn Mongolian
my Myanmar (Burmese)
ne Nepali
no Norwegian
ps Pashto
fa Persian
pl Polish
pt Portuguese
pa Punjabi
ro Romanian
ru Russian
sm Samoan
gd Scots Gaelic
sr Serbian
st Sesotho
sn Shona
sd Sindhi
si Sinhala
sk Slovak
sl Slovenian
so Somali
es Spanish
su Sundanese
sw Swahili
sv Swedish
tg Tajik
ta Tamil
te Telugu
th Thai
tr Turkish
uk Ukrainian
ur Urdu
uz Uzbek
vi Vietnamese
cy Welsh
xh Xhosa
yi Yiddish
yo Yoruba
zu Zulu
or Odia (Oriya)
rw Kinyarwanda
tk Turkmen
tt Tatar
ug Uyghur
Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated: 1 00:00:00,766 --> 00:00:02,832 15. The Grid Menu - Pause Menu 2 00:00:03,067 --> 00:00:05,800 Agora a gente vai fazer o Menu de pause. 3 00:00:06,800 --> 00:00:09,375 Existem algumas maneiras de implementar isso. 4 00:00:09,400 --> 00:00:12,433 A gente pode colocar, por exemplo, no Player Controller. 5 00:00:12,631 --> 00:00:15,100 Que é um bom lugar pra gente colocar o Menu de pause. 6 00:00:15,513 --> 00:00:18,448 Eu posso tentar seguir a mesma lógica que eu fiz anteriormente 7 00:00:18,473 --> 00:00:23,515 e colocar dentro do GameMode, que a gente colocou o Update UI. 8 00:00:25,199 --> 00:00:27,220 Só que o problema é que o GameMode não vive. 9 00:00:27,511 --> 00:00:29,978 Ele não sobrevive na troca de Level. 10 00:00:30,003 --> 00:00:32,600 Quando eu trocar o Level, eu tenho que usar o mesmo 11 00:00:32,625 --> 00:00:35,425 GameMode ou então implementar a mesma estrutura 12 00:00:35,450 --> 00:00:37,354 no GameMode novo que eu utilizar. 13 00:00:37,742 --> 00:00:40,875 A gente pode colocar a lógica no HeroChar, né? 14 00:00:43,330 --> 00:00:45,323 E por causa da gente estar seguindo a questão… 15 00:00:45,348 --> 00:00:48,281 O Hero tem as opções de input. 16 00:00:48,476 --> 00:00:51,138 Por exemplo, a gente tem o botão de Jump, o botão de Sprint… 17 00:00:51,163 --> 00:00:53,046 A gente poderia ter um botão de pause aqui também. 18 00:00:53,605 --> 00:00:55,446 São muitas variações, né. 19 00:00:55,925 --> 00:00:57,578 De como a gente pode implementar isso. 20 00:00:57,603 --> 00:00:59,464 A gente está pensando aqui num jogo pequeno. 21 00:00:59,708 --> 00:01:02,442 Então qualquer um dos caminhos dá muito certo. 22 00:01:02,467 --> 00:01:05,245 O ideal que eu posso sugerir pra você é criar essas lógicas, 23 00:01:05,270 --> 00:01:07,008 por exemplo, no Player Controller. 24 00:01:07,667 --> 00:01:11,049 Mas pra não mudar a nossa lógica que a gente tá fazendo nesse jogo, 25 00:01:11,752 --> 00:01:13,415 eu posso fazer isso no HeroChar. 26 00:01:13,761 --> 00:01:15,583 Porque é ele que tá cuidando dos meus Inputs. 27 00:01:15,608 --> 00:01:20,178 Vou criar um novo Input pra que ele dispare o Menu de pause quando eu apertar o botão. 28 00:01:21,602 --> 00:01:26,335 A gente vai fazer o despausar o jogo pelo botão e também pelo teclado. 29 00:01:26,585 --> 00:01:27,633 Vamos começar a fazer isso então. 30 00:01:27,658 --> 00:01:30,156 Primeiramente, vou fazer um novo HUD. 31 00:01:30,665 --> 00:01:31,865 Que é o Menu de pause. 32 00:01:31,890 --> 00:01:33,314 Novo Widget. 33 00:01:34,910 --> 00:01:38,604 Menu de pause então seria, vou colocar como Menupause. 34 00:01:40,025 --> 00:01:43,359 Aí dentro desse Menu a gente vai ter os botões pra despausar, 35 00:01:43,384 --> 00:01:46,283 pra sair do jogo e pra voltar ao Menu principal. 36 00:01:46,308 --> 00:01:48,046 Por enquanto, a gente não tem o Menu principal, né? 37 00:01:48,702 --> 00:01:49,776 Vamos começar a criar então. 38 00:01:49,801 --> 00:01:51,534 Vou criar um Vertical Box. 39 00:01:52,584 --> 00:01:53,973 Vertical Box… 40 00:01:54,707 --> 00:01:57,035 Porque eu vou ter botões um em cima do outro. 41 00:01:57,060 --> 00:01:58,784 Então Vertical Box é perfeito pra isso. 42 00:01:58,984 --> 00:02:01,127 Eu vou centralizar o meu Vertical Box. 43 00:02:01,409 --> 00:02:03,785 Posição zero zero. Anchor Point no meio… 44 00:02:03,810 --> 00:02:05,343 O alinhamento 0.5, 0.5. 45 00:02:05,368 --> 00:02:06,930 A gente já fez isso muitas vezes. 46 00:02:07,419 --> 00:02:09,286 E vou trazer um primeiro botão. 47 00:02:09,516 --> 00:02:10,516 Button. 48 00:02:10,757 --> 00:02:14,157 E vou criar primeiro um botão pra que depois a gente 49 00:02:14,182 --> 00:02:17,285 possa criar os outros só duplicando este. 50 00:02:17,706 --> 00:02:22,399 Então esse botão eu vou chamar de “BotãoVoltarAoJogo”. 51 00:02:22,835 --> 00:02:27,087 Colocar aqui: VoltarAoJogoBotão. Button. 52 00:02:28,236 --> 00:02:30,826 Button. Pra gente continuar com a mesma estrutura de inglês que a gente 53 00:02:30,851 --> 00:02:32,534 está utilizando para os botões. 54 00:02:32,559 --> 00:02:36,359 Vou trazer um texto. Pra ter um texto neste botão. Text. 55 00:02:36,384 --> 00:02:37,851 Jogo em cima do botão. 56 00:02:38,841 --> 00:02:44,933 E esse texto eu vou nomear como VoltarAoJogoText. 57 00:02:44,958 --> 00:02:47,691 Aqui no Text eu coloco “Voltar ao Jogo”. 58 00:02:52,411 --> 00:02:55,411 Vertical Box eu coloco como Size to Content. 59 00:02:55,436 --> 00:02:58,036 Ele pega o tamanho inteiro do negócio. 60 00:02:58,061 --> 00:03:01,730 Posso trocar a fonte, posso trocar o tamanho da fonte, cores e tal. 61 00:03:01,755 --> 00:03:03,784 Vou fazer isso aqui um pouquinho depois. 62 00:03:04,378 --> 00:03:07,285 Primeiro eu quero implementar isso pra eu conseguir ver dentro do jogo. 63 00:03:07,321 --> 00:03:08,727 Compilar e salvar. 64 00:03:08,985 --> 00:03:10,385 Tá salvo esse Widget. 65 00:03:10,459 --> 00:03:12,326 A gente vai implementar ele então. 66 00:03:12,723 --> 00:03:15,285 Primeira coisa: eu vou fazer um botão pra gente pausar o jogo. 67 00:03:15,310 --> 00:03:16,910 Então: Project Settings. 68 00:03:16,935 --> 00:03:19,585 Aqui em Action Mapping a gente tem nossos botões setados. 69 00:03:19,610 --> 00:03:20,626 Eu vou criar um novo. 70 00:03:20,871 --> 00:03:22,585 Eu vou criar um botão. 71 00:03:23,036 --> 00:03:26,316 É… pauseButton. 72 00:03:26,897 --> 00:03:31,831 E já vou selecionar, por exemplo, Enter no teclado, que é o botão de Start. 73 00:03:33,499 --> 00:03:37,823 Vou colocar o botão P no teclado. De pause, P de pause. 74 00:03:38,259 --> 00:03:43,370 E no botão do controle do videogame eu coloco Special. 75 00:03:43,951 --> 00:03:46,127 Special GamePad Right. 76 00:03:46,306 --> 00:03:47,906 Que é o botãozinho do Start. 77 00:03:48,917 --> 00:03:51,250 Aqui no HeroChar: pauseButton, né. 78 00:03:52,607 --> 00:03:55,250 E a partir daqui, então, eu vou chamar a lógica de pause. 79 00:03:55,577 --> 00:03:58,002 Como eu comentei, aqui no meu GameMode 80 00:03:58,027 --> 00:04:00,680 a gente criou a HUD do Viewport. 81 00:04:00,705 --> 00:04:03,972 Então a gente poderia criar também a HUD do pauseMenu. 82 00:04:04,869 --> 00:04:06,751 E acessar ela quando for necessário. 83 00:04:07,499 --> 00:04:08,833 Vou fazer isso aqui. 84 00:04:09,341 --> 00:04:12,751 Depois, no próximo Level que a gente tiver, a gente vai usar o mesmo GameMode 85 00:04:12,776 --> 00:04:14,230 pra gente ter a mesma estrutura. 86 00:04:14,520 --> 00:04:16,751 Então eu vou criar essa Widget no começo do jogo. 87 00:04:17,402 --> 00:04:18,872 Create Widget. 88 00:04:19,837 --> 00:04:22,002 A Widget é pause Menu. 89 00:04:22,027 --> 00:04:24,751 Ele vai criar uma cópia, um objeto dessa classe. 90 00:04:25,343 --> 00:04:26,507 Menu de pause. 91 00:04:27,444 --> 00:04:37,120 O valor que retornar eu coloco numa variável e eu chamo essa variável de pause. Menupausarefer. 92 00:04:39,509 --> 00:04:41,376 Compilar o nosso amigo aqui. 93 00:04:42,297 --> 00:04:49,095 E o Controller. PlayerController é o Owner Player desse menu de pause. 94 00:04:50,123 --> 00:04:51,501 Isso acontece no Begin Play. 95 00:04:51,526 --> 00:04:55,569 Então eu vou adicionar um novo pin aqui e eu conecto aqui. 96 00:04:57,323 --> 00:04:59,323 Tenho um Menu de pause criado. 97 00:04:59,686 --> 00:05:02,143 Por enquanto ele não aparece na tela porque eu não chamei. 98 00:05:02,488 --> 00:05:07,221 Vou criar um comentário. Create Menu pause. 99 00:05:09,863 --> 00:05:11,785 E, maravalha. Tá aí. 100 00:05:11,975 --> 00:05:13,501 A gente vai fazer um Evento então aqui, 101 00:05:13,526 --> 00:05:17,326 nesse GameMode pra que ele pause o jogo quando precisar. 102 00:05:17,562 --> 00:05:20,495 A gente já tem aqui um Evento de Update UI. 103 00:05:20,748 --> 00:05:22,812 Vou criar um Evento novo aqui embaixo. 104 00:05:23,533 --> 00:05:24,765 Custom Event. 105 00:05:27,375 --> 00:05:29,274 Eu vou chamar de pause Game. 106 00:05:32,418 --> 00:05:35,892 A primeira coisa que a gente faz pra pausar o jogo é SetGamepaused. 107 00:05:36,746 --> 00:05:37,946 Vou deixar ligado. 108 00:05:38,699 --> 00:05:40,971 E o contrário seria UnpauseGame. 109 00:05:40,996 --> 00:05:46,607 Então eu vou criar um novo Evento chamado de UnpauseGame. 110 00:05:48,557 --> 00:05:51,875 E colocar SetGamepaused como falso. 111 00:05:54,018 --> 00:05:57,752 Quando isso acontecer a gente tem que colocar o Widget, o menu na tela. 112 00:05:58,422 --> 00:06:02,422 Então a gente vai pegar aquele Menu que a gente criou aqui. 113 00:06:03,053 --> 00:06:04,120 O Menu de pause. 114 00:06:04,145 --> 00:06:06,002 Menupausarefer e vai colocar na tela. 115 00:06:06,800 --> 00:06:11,451 Então, Menupausarefer Add to Viewport. 116 00:06:12,700 --> 00:06:15,500 Antes disso a gente tem que remover tudo o que tá na tela 117 00:06:15,525 --> 00:06:17,592 que é o HUD do jogador, lembra? 118 00:06:18,278 --> 00:06:19,001 A gente tem que tirar isso da tela. 119 00:06:19,402 --> 00:06:21,202 Então eu vou pegar o HUD do jogador. 120 00:06:21,755 --> 00:06:24,002 Vou remover da tela. 121 00:06:24,576 --> 00:06:25,843 Remove from Parent. 122 00:06:28,800 --> 00:06:32,252 Depois eu coloco o Menu de pause. Maravilha então. 123 00:06:32,277 --> 00:06:34,543 Quando eu pauso o jogo, eu pauso o jogo. 124 00:06:34,579 --> 00:06:37,779 Eu tiro o HUD da tela e coloco o Menu de pause. 125 00:06:37,804 --> 00:06:41,920 Quando eu despausar o jogo, eu vou tirar o Menu de pause da tela. 126 00:06:42,226 --> 00:06:47,250 Pego o meu Menu pause. Remove from Parent. 127 00:06:52,835 --> 00:06:55,168 E volto a adicionar o HUD na tela, 128 00:06:55,193 --> 00:06:56,540 pro jogador ver o HUD de novo. 129 00:06:56,925 --> 00:06:58,500 Basicamente, é o contrário. 130 00:06:58,799 --> 00:07:01,532 Eu adiciono na Viewport o HUD novamente. 131 00:07:01,557 --> 00:07:04,002 Add to Viewport. 132 00:07:05,313 --> 00:07:06,252 Por enquanto é isso. 133 00:07:06,277 --> 00:07:08,744 A parte básica. Por enquanto é isso. 134 00:07:11,001 --> 00:07:12,201 Compilar e salvar. 135 00:07:12,226 --> 00:07:14,250 Nenhum desses Eventos tá sendo chamado por enquanto. 136 00:07:15,558 --> 00:07:17,002 A gente tem que chamar esses caras. 137 00:07:17,027 --> 00:07:18,501 Eu vou chamar esses caras no HeroChar. 138 00:07:19,175 --> 00:07:21,752 HeroChar, quando eu apertar o botão de pause. 139 00:07:21,777 --> 00:07:25,446 Então a primeira vez que eu apertar aquele a gente vai pausar o jogo. 140 00:07:25,471 --> 00:07:28,516 Vou chamar aqui GameMode. 141 00:07:28,766 --> 00:07:31,252 Pego o GameMode, a referência, a gente já tem ela pronta. 142 00:07:31,836 --> 00:07:34,751 E eu chamo pauseGame. 143 00:07:36,614 --> 00:07:37,614 Pronto. 144 00:07:39,283 --> 00:07:41,451 Vamos só testar por enquanto se tá funcionando. 145 00:07:41,476 --> 00:07:43,180 Compilar e salvar. 146 00:07:43,996 --> 00:07:44,642 Play. 147 00:07:44,801 --> 00:07:49,002 Se eu apertar o P, pausei o jogo. Não tem como despausar por enquanto. 148 00:07:49,139 --> 00:07:53,002 Então pra despausar o jogo eu preciso chamar o Evento de UnpauseGame 149 00:07:53,027 --> 00:07:54,627 que está lá no GameMode. 150 00:07:54,652 --> 00:07:59,250 Então, Unpause game. A gente poderia fazer aqui uma das coisas 151 00:07:59,275 --> 00:08:02,500 que a gente pode pensar. Seria um FlipFlop. 152 00:08:04,422 --> 00:08:06,797 E aí a primeira vez que eu aperto eu pauso o jogo 153 00:08:06,822 --> 00:08:08,940 e a segunda vez que eu aperto eu despauso o jogo. 154 00:08:09,243 --> 00:08:13,002 O problema dessa técnica, desse jeito, é que a gente pode despausar o jogo 155 00:08:13,027 --> 00:08:16,473 de outras maneiras, como, por exemplo, clicar no botão de despausar o jogo. 156 00:08:16,930 --> 00:08:20,268 E aí eu vou clicar no botão de despausar e eu não chamei o FlipFlop 157 00:08:20,480 --> 00:08:21,752 porque eu não apertei o botão. 158 00:08:22,084 --> 00:08:25,502 E a próxima vez que eu chamar o FlipFlop, ele vai chamar de volta o Unpause Game. 159 00:08:25,527 --> 00:08:26,752 Vai dar um conflitinho aí. 160 00:08:27,693 --> 00:08:29,502 Então o FlipFlop não é a melhor opção aqui. 161 00:08:29,683 --> 00:08:35,002 A melhor opção é a gente fazer um Branch pra gente ver se o jogo está pausado ou não. 162 00:08:36,083 --> 00:08:38,752 Pra fazer isso é só a gente pegar Get Game paused. 163 00:08:41,631 --> 00:08:42,631 Is Game paused. 164 00:08:43,832 --> 00:08:44,752 Essa é a condição. 165 00:08:45,163 --> 00:08:49,475 Se ele está pausado, se isso for verdadeiro… 166 00:08:50,624 --> 00:08:55,752 Então você Unpause game. Se ele não está pausado, você pause o jogo. 167 00:08:55,957 --> 00:08:57,752 Beleza? Só a gente mudou a ordem aqui. 168 00:08:58,485 --> 00:09:01,752 Espero que tenha ficado claro. A gente faz dessa maneira. 169 00:09:01,901 --> 00:09:07,502 FlipFlop não vai dar um resultado legal pra gente porque vai dar conflito com… 170 00:09:08,015 --> 00:09:12,287 Quando a gente for clicar com o mouse no botão de despausar. 171 00:09:12,407 --> 00:09:14,501 Compilar e salvar. Vamos ver se vai funcionar? 172 00:09:14,526 --> 00:09:16,395 Eu já sei que não vai funcionar e eu vou mostrar porquê. 173 00:09:16,589 --> 00:09:17,143 Play. 174 00:09:17,872 --> 00:09:19,799 Aperto o P. 175 00:09:19,939 --> 00:09:23,939 Apertei pause. Aperto o P de novo e não despausa. Tá vendo? 176 00:09:23,964 --> 00:09:24,609 Por quê? 177 00:09:24,796 --> 00:09:28,002 Porque este Evento aqui eu vou clicar neste Evento. Neste nó. 178 00:09:28,479 --> 00:09:33,250 Aqui, em detalhes, no lado direito, a gente tem Execute When paused. 179 00:09:33,688 --> 00:09:38,250 Tá desligado. Então, este Evento não pode ser executado quando o jogo está pausado. 180 00:09:38,275 --> 00:09:39,608 Tenho que clicar aqui. 181 00:09:40,068 --> 00:09:44,501 Deixar ligado esse cara e agora este Evento pode ser executado quando o jogo estiver pausado. 182 00:09:45,102 --> 00:09:47,502 Então, save. Play. 183 00:09:48,117 --> 00:09:52,054 Aperto o P, pause, aperto o P, despause, aperto o P, pause, aperto o P, despause. 184 00:09:52,079 --> 00:09:55,252 Aí o HUD tá indo embora. O HUD do player vai embora. 185 00:09:55,545 --> 00:09:58,612 Ele só coloca o HUD… O menu de pause em cima. 186 00:09:59,657 --> 00:10:03,502 Agora a gente tem que implementar um menuzinho pra eu poder clicar ali e despausar o jogo. 187 00:10:03,828 --> 00:10:04,699 Certo? 188 00:10:04,833 --> 00:10:08,102 Eu vou colocar aqui só... pause. 189 00:10:08,541 --> 00:10:12,002 Aqui a gente completou, basicamente, o que o jogador vai fazer. 190 00:10:12,296 --> 00:10:16,001 Pra gente poder usar o Menu, a primeira coisa que a gente tem que fazer é colocar o mouse, né? 191 00:10:16,839 --> 00:10:18,906 Então eu venho em GameMode, né? 192 00:10:18,935 --> 00:10:21,750 Este Evento de pauseGame eu tenho que mostrar o mouse. 193 00:10:22,185 --> 00:10:25,882 Então, Show Mouse Cursor. 194 00:10:25,907 --> 00:10:29,129 Se isso não aparecer pra você, você desliga o Context Sensitive, 195 00:10:29,154 --> 00:10:34,502 porque o Mouse Cursor é uma função da classe Player Controller, 196 00:10:34,527 --> 00:10:36,752 então ele não vai entender se ele estiver ligado. Tá vendo? 197 00:10:36,969 --> 00:10:41,250 A gente tira e coloca Set Mouse Cursor ligado. 198 00:10:42,855 --> 00:10:44,900 Quando a gente pausar o jogo a gente quer ver o mouse 199 00:10:45,624 --> 00:10:54,363 e a gente quer ver o mouse no Get Player Controller, Controller 0. 200 00:10:55,115 --> 00:10:56,866 Quando ele despausar o jogo é ao contrário. 201 00:10:57,452 --> 00:10:59,040 Copiar esse cara. CTRL C, CTRL V… 202 00:11:00,987 --> 00:11:02,987 A gente não quer mais o mouse. 203 00:11:04,634 --> 00:11:05,834 Compilar e salvar. 204 00:11:06,064 --> 00:11:07,064 Play. 205 00:11:08,231 --> 00:11:10,993 Pause o jogo. Tô vendo o mouse. Posso até clicar aqui. 206 00:11:17,525 --> 00:11:21,501 Agora a gente tem que implementar o Menu de pause e os botões sendo clicados. 207 00:11:21,526 --> 00:11:24,750 A melhor maneira de fazer isso é lá na Widget do Menu pause 208 00:11:24,775 --> 00:11:28,203 a gente implementar as funções dos botões. 209 00:11:28,228 --> 00:11:31,993 Então eu vou selecionar esse botão. Voltar Ao Jogo Button. 210 00:11:32,026 --> 00:11:34,750 E aqui no lado direito a gente tem os Eventos. 211 00:11:35,167 --> 00:11:38,002 Eu quero o Evento OnClicked. O Evento quando eu clicar. 212 00:11:38,392 --> 00:11:44,259 Quando eu clicar aqui aparece o gráfico e tem toda a funcionalidade de clicar no botão. 213 00:11:44,284 --> 00:11:46,002 Então o que eu vou fazer aqui quando eu clicar nesse botão? 214 00:11:46,027 --> 00:11:47,027 SetGamepaused. 215 00:11:51,479 --> 00:11:52,479 Desligado. 216 00:11:52,504 --> 00:11:55,037 A gente vai desligar o pause do game. 217 00:11:55,062 --> 00:11:56,329 Basicamente é isso. 218 00:11:56,696 --> 00:11:58,296 Compilar e salvar. Play. 219 00:11:59,196 --> 00:12:00,502 Aperto o pause. Pausou o jogo. 220 00:12:00,527 --> 00:12:02,527 Se eu clicar, despausa o jogo. 221 00:12:02,841 --> 00:12:06,107 Só que vocês perceberam que o Menu não saiu, né? 222 00:12:06,360 --> 00:12:09,889 Porque toda essa questão do Menu está aqui no GameMode. 223 00:12:10,145 --> 00:12:12,001 Tirar o Menu… Botar o Menu e tal… 224 00:12:12,083 --> 00:12:13,752 Então eu vou chamar essa função também. 225 00:12:14,120 --> 00:12:16,502 A melhor maneira é a gente chamar a função direto. 226 00:12:16,634 --> 00:12:18,253 Pra gente chamar a função que tá lá no GameMode 227 00:12:18,278 --> 00:12:22,252 a primeira coisa que eu tenho que fazer é meu Widget precisa saber do meu GameMode. 228 00:12:22,277 --> 00:12:24,250 Então eu preciso fazer um Cast pra ele. 229 00:12:24,748 --> 00:12:28,661 Vou fazer isso no EventConstruct, que é quando essa Widget é construída. 230 00:12:29,991 --> 00:12:31,752 GetGameMode… 231 00:12:34,234 --> 00:12:36,855 CastTo GameMode… 232 00:12:36,880 --> 00:12:38,426 GamePlay, GameMode. 233 00:12:38,917 --> 00:12:40,651 Coloca isso numa variável. 234 00:12:40,936 --> 00:12:47,689 Eu vou chamar de “GamePlayGameModeRefer”. 235 00:12:48,248 --> 00:12:51,502 Nome gigantesco, mas, mostra exatamente pra mim o que é. 236 00:12:53,650 --> 00:12:58,001 Então assim que eu clicar nesse cara, em vez de só despausar o Menu, joga fora isso. 237 00:12:58,187 --> 00:13:00,368 Pegar uma função que está pronta lá no meu GameMode. 238 00:13:00,948 --> 00:13:02,622 Que se chama UnpauseGame. 239 00:13:05,346 --> 00:13:06,346 Pronto. 240 00:13:07,611 --> 00:13:10,178 Agora o HUD vai sair. Vai tudo funcionar. 241 00:13:10,644 --> 00:13:11,910 Agora vamos testar. 242 00:13:12,721 --> 00:13:14,188 Aperto o P, deu pause. 243 00:13:14,785 --> 00:13:16,585 Cliquei aqui… Deu despause. 244 00:13:17,395 --> 00:13:19,989 Você percebe que deu alguns probleminhas. Tá vendo? 245 00:13:20,334 --> 00:13:21,667 Meu input mode… tal… 246 00:13:22,243 --> 00:13:25,252 Eu continuo com o mouse. Se eu clicar, o mouse some. 247 00:13:25,277 --> 00:13:27,002 A gente tem que começar a arrumar essas coisinhas aí. 248 00:13:27,124 --> 00:13:28,991 Isso é o foco da Widget, né? 249 00:13:29,353 --> 00:13:30,650 Então, GamePlayGameMode. 250 00:13:30,999 --> 00:13:36,403 Quando despausar o jogo eu preciso colocar o meu GameMode apenas como Game. 251 00:13:36,428 --> 00:13:41,049 Então, SetInputModeGameOnly. 252 00:13:43,286 --> 00:13:46,151 Target: PlayerController. Então conecta esse cara aqui. 253 00:13:46,802 --> 00:13:48,385 Então basicamente o que eu coloquei agora foi: 254 00:13:48,427 --> 00:13:51,900 Quando despausar o jogo, você coloca o input mode como Game Only. 255 00:13:52,431 --> 00:13:53,698 Vamos testar agora. 256 00:13:54,430 --> 00:13:57,400 Aperto o Play. Quando eu clicar aqui despausar o jogo. 257 00:13:57,758 --> 00:14:00,652 Então agora eu não preciso dar o foco novamente no jogo. 258 00:14:01,176 --> 00:14:03,402 No entanto, eu tô fazendo dois cliques, né? 259 00:14:04,350 --> 00:14:06,402 Aperta o P e eu não consigo clicar. 260 00:14:06,427 --> 00:14:08,900 Tem que clicar uma vez e depois clicar de novo. 261 00:14:09,606 --> 00:14:10,677 Tem que trocar isso também. 262 00:14:10,702 --> 00:14:12,496 Então isso a gente vai fazer aqui ó. 263 00:14:13,095 --> 00:14:14,628 No pause Game. 264 00:14:14,653 --> 00:14:19,053 Quando eu pausar o jogo você tem que colocar o SetInputMode como… 265 00:14:24,582 --> 00:14:25,582 UIOnly. 266 00:14:27,408 --> 00:14:30,075 Aí a gente vai colocar Widget de Focus. 267 00:14:30,100 --> 00:14:33,244 Ele tem que focar na Widget pra gente não precisar clicar 2 vezes. 268 00:14:33,529 --> 00:14:35,856 Lembra que a gente viu isso tudo na aula de HUD, né? 269 00:14:36,344 --> 00:14:37,677 Não é novidade, não. 270 00:14:37,702 --> 00:14:40,400 Widget Focus é o Menu pause Refer. 271 00:14:40,425 --> 00:14:41,425 Vem pra cá. 272 00:14:44,535 --> 00:14:45,902 Tudo isso pra fazer um menu de pause. 273 00:14:45,937 --> 00:14:48,713 E Target é o controle. 274 00:14:49,095 --> 00:14:50,095 Beleza. 275 00:14:50,482 --> 00:14:51,648 Vamos ver se funciona então? 276 00:14:51,897 --> 00:14:53,233 Save, Play… 277 00:14:53,607 --> 00:14:54,607 Aperto o P. 278 00:14:55,127 --> 00:14:59,509 Ó, já tá com foco na Widget. Não preciso clicar 2 vezes. 279 00:14:59,569 --> 00:15:00,836 Cliquei, despausou. 280 00:15:00,861 --> 00:15:01,861 Aperto o P. 281 00:15:02,251 --> 00:15:03,251 Não despausa. 282 00:15:03,972 --> 00:15:05,401 Percebeu que eu aperto o P e não despause. 283 00:15:05,453 --> 00:15:06,224 Por quê? 284 00:15:06,438 --> 00:15:10,651 É só Input Mode e o Hero tá no Play. 285 00:15:10,676 --> 00:15:11,400 Ele tá como Play. 286 00:15:11,425 --> 00:15:13,958 Então eu vou ter que tirar esse cara. 287 00:15:14,358 --> 00:15:18,652 Ao invés de ser só Input Mode tem que ser Game and Input. 288 00:15:18,901 --> 00:15:23,651 Set Input Mode Game and UI. 289 00:15:24,079 --> 00:15:25,412 Agora vai dar certo. 290 00:15:26,792 --> 00:15:28,725 Target é o Player Controller. 291 00:15:28,954 --> 00:15:32,924 Widget to focus é o Player Menu. O mouse menu. 292 00:15:33,970 --> 00:15:34,901 Compilar e salvar. 293 00:15:34,926 --> 00:15:36,983 Caramba, é bastante coisa, né? Play. 294 00:15:37,709 --> 00:15:41,661 Aperto o P. Despausa. Aperto o P, clica, despausa. 295 00:15:42,132 --> 00:15:43,999 E sem um monte de cliques, né? 296 00:15:44,350 --> 00:15:47,152 Tudo isso pro Menu de pause mas tá funcionando. 297 00:15:47,769 --> 00:15:51,046 Vou voltar aqui no meu Menu de pause pra gente fazer os outros botões. 298 00:15:52,296 --> 00:15:54,896 Tem esse botão aqui. Vou duplicar ele. 299 00:15:55,015 --> 00:15:59,450 CTRL C, copy. CTRL v, paste. 300 00:15:59,475 --> 00:16:05,867 Este botão vai ser o botão de Menu Principal, que a gente ainda não tem. 301 00:16:06,371 --> 00:16:07,452 O botão vai tá só aí. 302 00:16:09,451 --> 00:16:11,452 Vou fazer a mesma coisa com o texto. 303 00:16:11,680 --> 00:16:17,730 Vou mudar o texto para Menu Principal. Text. 304 00:16:17,976 --> 00:16:20,701 Aqui no Menu Principal é Menu Principal Button. 305 00:16:24,383 --> 00:16:27,999 Este texto vai ser Voltar Menu Principal. 306 00:16:29,292 --> 00:16:31,369 Falta mais um botão que é Sair do Jogo. 307 00:16:31,776 --> 00:16:36,974 CTRL C, copy. CTRL V. 308 00:16:37,262 --> 00:16:39,840 Aqui no vertical box. CTRL V, paste. 309 00:16:41,034 --> 00:16:46,146 Este botão se chama QuitGameButton. 310 00:16:47,430 --> 00:16:52,931 E o texto se chama QuitGameText. 311 00:16:53,523 --> 00:16:55,710 E o texto aqui se chama Quit Game. 312 00:16:56,305 --> 00:16:57,450 Sair do jogo, né. 313 00:16:57,475 --> 00:16:59,942 Estamos em português. “Sair do Jogo” 314 00:17:00,375 --> 00:17:01,975 Então eu tenho os 3 botões aí. 315 00:17:02,372 --> 00:17:04,014 Menu principal, por enquanto, não vai funcionar. 316 00:17:04,039 --> 00:17:05,702 Vou deixar o Evento dele pronto. 317 00:17:07,151 --> 00:17:09,217 Vou colocar o Evento OnClicked. 318 00:17:09,983 --> 00:17:13,452 Menu principal, quando a gente clicar vai voltar pro Menu Principal. 319 00:17:13,488 --> 00:17:15,354 Mas, por enquanto, vai ser só um Print String. 320 00:17:15,877 --> 00:17:19,701 Eu vou chamar de Menu Principal. 321 00:17:22,326 --> 00:17:25,259 E o outro botãozinho vai ser “Sair do Jogo” 322 00:17:25,499 --> 00:17:26,499 Eu clico aqui. 323 00:17:27,421 --> 00:17:28,421 OnClicked. 324 00:17:29,399 --> 00:17:31,450 Quando o cara clicar aqui ele vai sair do jogo. 325 00:17:31,948 --> 00:17:34,681 E pra sair do jogo eu só faço um QuitGame. 326 00:17:35,245 --> 00:17:36,779 É uma função: QuitGame. 327 00:17:38,058 --> 00:17:43,791 Eu posso especificar o jogador aqui colocando o PlayerController. Get Player Controller. 328 00:17:47,972 --> 00:17:48,972 E pronto. 329 00:17:50,853 --> 00:17:53,787 Eu tenho os 3 botõezinhos aí no meu HUD. 330 00:17:54,329 --> 00:17:55,529 Compilar e salvar. 331 00:17:55,826 --> 00:17:56,637 Play. 332 00:17:57,034 --> 00:17:58,034 Pause Menu. 333 00:17:58,356 --> 00:18:00,644 Menu Principal ainda não tá funcionando. 334 00:18:00,828 --> 00:18:02,828 Sair do jogo, ele sai do jogo. 335 00:18:02,991 --> 00:18:05,252 A gente tem que ainda melhorar a cara desse Menu. 336 00:18:05,277 --> 00:18:09,188 Tá meio feinho. Tem que fazer um poquinho melhor. 337 00:18:09,378 --> 00:18:11,978 A gente faz isso na próxima aula então. 338 00:18:13,756 --> 00:18:16,023 A gente faz isso na próxima aula. 29076

Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.