fala pessoal tudo bem na aula de hoje eu vou ensinar pra vocês todos os comandos do scratch e eu vou falar desde os comandos mais básicos e simples Até os mais complexos e mais úteis para vocês criarem jogos super legais e aqui eu vou explicar detalhadamente cada um desses comandos como eles funcionam e vou mostrar aqui no nosso palco Esse comando realmente sendo executado e também vou aproveitar para explicar vários conceitos importantes como por exemplo coordenadas direção propriedades e muito mais Ah E além disso eu preparei um material super legal onde eu explico cada um
dos Comandos Tem um resuminho aqui com as principais informa que vocês precisam saber e tem uma área aqui onde você pode colocar suas próprias anotações Então aproveita que o link para baixar esse material tá aqui na descrição para começar a gente vai vir aqui no Scratch e a gente vai começar a falar desses comandos aqui de movimento que são mostrados aqui em azul mas antes disso Deixa eu aproveitar para explicar um pouquinho sobre como funciona o Scratch aqui em cima do lado direito a gente tem o nosso palco que é exatamente o que o jogador
vai ver quando ele tiver jogando o nosso game então a visão que o jogador vai ter vai ser exatamente essa daqui agora aqui do lado direito no canto a gente tem um cenário que é tudo que vai est lá atrás do nosso pauco além dos cenários aqui a gente tem todos os nossos atores e a gente pode ter quantos atores a gente fizer e quantos cenários a gente quiser para adicionar o cenário basta a gente vir aqui embaixo e escolher ou selecionar um cenário escolhendo aqui no Scratch qualquer um desses a gente também pode vir
aqui e selecionar para pintar pra gente criar o nosso próprio cenário pedir com Scratch escolha de forma aleatória um cenário pra gente ou carregar um cenário do nosso computador para adicionar atores a gente vai aqui desse lado e da mesma forma a gente também pode buscar um ator que já existe aqui no Scratch e eu posso por exemplo selecionar essa maçã aqui eu também posso vir aqui pintar o meu próprio ator pedir que ele também escolha para mim ou também carregar o ator do meu computador selecionando aqui Enviar ator agora que a gente falou dessa
região do lado direito aqui do lado esquerdo a gente vai ter todos os nossos comandos e nessas Abas aqui a gente também pode ver as fantasias que é a roupinha do ator a forma que a gente vê ele aqui e também os sons caso a gente queira que o nosso ator faça algum barulho por exemplo esse barulho aqui voltando aqui para códigos essa região central Aqui é onde a gente vai escrever os nossos códigos onde a a gente vai realmente criar o nosso jogo então para eu pedir pro meu ator fazer qualquer coisa é só
selecionar qual comando eu quero então por exemplo eu vou pedir para ele mover 10 passos trazer aqui para essa região central e quando eu clicar nesse comando o meu ator já está executando exatamente o mova da espaços ou seja ele está se movendo da espaços nessa direção aqui a primeira coisa bem importante da gente entender é que os comandos são específicos para cada ator então o comando que tiver dentro desse ator aqui Apple não vai fazer nada dentro do nosso gatinho E observa que esse comando mova da espaços ele só existe quando a gente clica
aqui na maçã se eu quiser que o meu gatinho também mova 10 passos eu preciso clicar nesse gatinho vim aqui trazer aqui pro centro então clicar nesse comando novamente Então a primeira coisa os comandos eles são específicos para cada ator o que tiver aqui nesse primeiro ator não vai influenciar em nada nos outros atores que a gente tiver aqui então beleza feito isso eu posso apagar essa maçãzinha aqui e vamos focar só nesse gatinho quando a gente usou esse comando de mova da espaço ele moveu 10 passos nessa direção aqui ele moveu pra direita mas
Lucas ele sempre vai se mover pra direita e a resposta resposta é não o mova 10 passos Ele sempre vai andar com o nosso ator na direção que ele estiver apontando e a direção é essa informação que está aqui então se eu tivesse essa setinha apontando aqui para cima o ator moveria 10 passos nessa direção aqui para cima já se essa minha setinha tivesse apontando aqui para trás quando eu clico no mova da espaos agora ele está andando nessa outra direção então basicamente o que que o mova da espaos vai fazer ele vai fazer o
nosso ator se movimentar exatamente na direção que essa setinha aqui está apontando que é a direção são do meu ator e isso aqui e tudo que tá aqui nessa caixinha aqui são propriedades do meu ator e a gente vai falar sobre elas daqui a pouquinho continuando a falar sobre a direção esses dois comandos aqui eles conseguem mudar a direção do meu ator tanto virando ele um pouquinho mais pra minha direita quanto virando ele um pouquinho pra minha esquerda Então esse comando aqui gira 15º pra direita e esse comando aqui gira 15º pra minha esquerda é
como se esse ator aqui ele tivesse uma setinha apontando aqui na frente dele e por padrão sempre que você criar um ator no Scratch ele vai começar com essa direção aqui de 90 e apontando pra direita então quando a gente volta aqui em códigos agora fica muito mais fácil de visualizar o mova 10 espaço sempre vai mover o nosso gatinho na direção dessa seta quando eu peço para ele girar 15º Ele tá mudando essa setinha aqui mas agora ele também vai mudar essa seta porque ele está apontando para uma nova direção então tô apontando ele
aqui para baixo e se eu peço novamente para agora ele mover 10 ele continua se movendo na direção dessa seta aqui toda vez que eu girar 15º e usar esse mova ele continua sempre andando na direção dessa setinha quando eu uso esse comando aqui que tem essa setinha virada pra direita ele tá girando nessa direção e esse outro comando ele gira na direção contrária ou seja ele gira aqui pra esquerda agora que a gente falou dessas direções aqui nas propriedades a gente pode falar de outra coisa que também é muito importante que são as coordenadas
do meu ator mas Lucas O que que é coordenadas e para explicar isso um pouquinho melhor eu vou vir aqui em selecionar cenário vou clicar aqui na lupa e vou utilizar esse cenário chamado de XY Grid a coordenada basicamente ela me informa aonde o meu gatinho tá aqui na minha tela então se ele tá aqui em cima se ele tá aqui embaixo se ele tiver em qualquer lugar é como se ele tivesse um endereço e se você já jogou Minecraft você sabe do que eu tô falando as coordenadas basicamente indicam aonde a gente tá no
mapa quando eu vou pra frente eu tô aumentando essa coordenada Z aqui se eu vou para trás eu tô diminuindo esse valor se eu for pra direita eu estou aumentando esse valor de X já se eu vou pra esquerda eu diminuo esse valor e agora quanto mais para cima eu vou mais eu aumento esse valor de y aqui no Scratch como a gente tá falando de um jogo 2D a gente só tem as coordenadas x e y quando eu falo da coordenada x eu falo dessa direção aqui horizontal e quando eu falo da coordenada Y
eu estou falando dessa direção vertical aqui aqui no centro A gente tem o valor de x0 e y0 quanto mais pra direita eu vou mais eu estou aumentando o valor de x e mais pra esquerda mas eu estou diminuindo o valor de x quando eu vou para cima eu estou aumentando o valor de y e quando eu vou para baixo eu diminuo meu valor de y e com isso sempre que eu tiver nessa região aqui eu tenho valores positivos de x e nessa essa outra região eu tenho valores negativos de X Pro Y é a
mesma coisa só que na vertical quando eu tiver aqui para cima eu tenho valores positivos de y e aqui para baixo eu tenho valores negativos de y e a gente consegue saber qual o x y do meu gatinho exatamente olhando essas duas informações aqui eu tenho o meu valor de x e aqui o meu valor de y tá bom Lucas mas como funciona a coordenada basicamente quando a gente quer saber a posição de um ator é como se a gente traçasse duas retas a primeira apontando para esse eixo horizontal aqui onde a gente tem o
x e a segunda apontando para esse outro eixo vertical aqui onde a gente tem os valores de y aqui como eu apontei para esse ponto aqui onde o meu valor de x é 200 exatamente a gente tem 200 aqui em X em Y é a mesma coisa como a gente tá apontando para esse ponto aqui onde o meu Y é 100 a gente tem o valor de 100 para Y então com isso a gente consegue saber a posição do meu ator Mas agora vamos supor que eu quero que o meu ator Vá para cá para
esse ponto aqui eu vou traçar uma reta vindo desse ponto até essa reta horizontal e uma outra reta vindo desse ponto até essa reta vertical Qual o valor de X aqui - 100 e qual o valor de y aqui também - 100 então se eu colocar esse - 100 aqui e colocar esse outro menos 100 aqui a gente consegue trazer esse gatinho dessa posição atual aqui para essa nova posição que a gente queria Então vou fazer isso agora vou colocar aqui Men 100 e aqui também Men 100 e pronto a gente trouxe o nosso gatinho
para cá e Lucas Por que que isso vai ser tão importante Primeiro vamos falar desse comando aqui de Vá para posição aleatória quando a gente clica nesse comando ele vai para qualquer posição aqui na minha tela podendo ser qualquer valor de x e qualquer valor de y toda vez que a gente tiver uma setinha aqui em geral a gente pode mudar a opção aqui se eu quiser ao invés de ir para uma posição aleatória eu posso ir simplesmente para onde está o meu ponteiro do mouse nesse momento então se eu coloco aqui ponteiro do mouse
e clico ele vai sempre vir para cá porque o meu ponteiro do mouse está exatamente aqui se o meu ponteiro do mouse tivesse aqui no momento que esse comando fosse executado ele viria exatamente para cá mais pra frente a gente vai explicar para você sobre isso eu volto nesse comando mas por enquanto só preciso entender quando eu clico aqui ele pode ir para uma posição aleatória ou para onde o meu mouse está e agora vamos sim para esse outro comando aqui e é o comando que a gente vai utilizar para colocar o gatinho em qualquer
posição então se eu quiser que ele venha para cá é só ver qual o valor de X aqui o X é 200 e qual o valor de y aqui o y é ig a 100 quando eu clico aqui eu consigo mover o meu gatinho Ah Lucas e se eu quisesse trazer ele para cá Qual o valor de x x = -1 Qual o valor de y y = -1 se eu coloco aqui -1 e Men 100 eu movo o meu gatinho para cá e uma coisa muito legal desse comando é que sempre que você posiciona
seu gatinho em qualquer lugar esses dois valores aqui é a posição atual do meu gatinho ou seja onde ele tá agora e esse comando aqui ele sempre vai ser atualizado exatamente com o valor da posição atual do meu gatinho então se você não quiser alterar esses valores que estão aqui não quiser mexer em nada disso basta colocar o seu gatinho aonde você quer que ele esteja arrastar Esse comando e pronto ele tá aqui se eu mover e clicar novamente aqui ele volta para cá onde ele estava inicialmente e antes de vi para esse deslize até
a posição aleatória vamos vir para esse outro comando aqui porque agora é muito important importante a gente entender a diferença entre o v e o deslize quando eu uso Esse comando de v é como se o meu gatinho tivesse se teletransportando para esse lugar ele vai chegar muito rápido então ó quando eu clico aqui olha ele foi no mesmo segundo já se o meu gatinho tiver aqui e eu pedir para ele novamente pra mesma posição para esse mesmo valor de -1 e - 100 Olha a diferença agora quando eu clico nesse comando aqui observa que
ele caminha até esse lugar então ele demora esse tempo aqui que é um segundo para chegar nessa posição então enquanto nesse primeiro comando o meu gatinho tá se teletransportando nesse segundo comando o meu gatinho tá caminhando e a gente pode inclusive fazer ele caminhar mais devagar aumentando esse tempo aqui então agora ele vai demorar 5 segundos para vir para cá e vai vir com muito mais calma ou pode fazer até ele mesmo correr para poder chegar nesse lugar então se eu boto ele aqui e peço para ele demorar 0.2 segundos ele vem para cá muito
mais rápido praticamente correndo e quanto menor foi esse número mais vai parecer que o meu gatinho tá se teletransportando se eu colocar aqui para zero é como se ele tivesse feito exatamente o mesmo comando aqui de cima porque a gente nem vai ver ele vindo para cá e vai novamente parecer que ele se teletransportou para esse lugar e é muito importante você entender essa diferença porque pode ser que no seu jogo você queira que em algum momento o seu gatinho se teletransporte que ele chegue muito rápido aqui mas em outro momento pode ser que você
queira que ele caminhe que ele vá devagarzinho até chegar em uma segunda posição como por exemplo nesse jogo aqui que eu criei recriando that's not my neighbor porque primeiro eu queria que esse ator aqui independente da onde ele tivesse no início do jogo ele fosse para essa posição aqui então para fazer ele vi para cá Independente de onde ele estivesse eu usei esse vá paraa x e y depois eu queria que parecesse como se ele tivesse chegando aqui na janelinha como se ele tivesse caminhando e se ele simplesmente surgisse aqui como se eu tivesse teletransportado
não seria algo tão natural e o jogo não ficaria tão legal então eu peço que primeiro ele vá para cá e depois ele deslize até aqui dando essa impressão de movimento pro meu ator voltando aqui o deslize por um segundo até a posição aleatória vai fazer exatamente a mesma coisa desse vá pra posição aleatória só que agora vai parecer que o nosso gatinho tá caminhando até essa posição assim como esse comando aqui acabou de fazer então quando eu clico para cá ele vem até aqui quando eu clico para cá ele tá caminhando até aqui se
eu uso esse aqui de baixo ele tá se teletransportando para diferentes posições agora eu vou tirar esses quatro comandos daqui vamos falar desse comando aqui de aponte para direção 90º e como a gente já falou sobre direção que é essa informação que tá aqui e mostra para onde o nosso gatinho tá apontando basicamente o que esse comando vai fazer é atualizar esse valor que tá aqui então se eu clico aqui ele aponta pra direção 90º e a gente pode alterar esse valor ou digitando aqui a direção que a gente quer então aqui por exemplo eu
digitei 180 ou usando essa setinha aqui pra gente escolher exatamente PR onde a gente quer que o nosso ator aponte além de escolher esse valor da direção a gente também pode pedir por exemplo que ele aponte pro ponteiro do mouse então se eu tô aqui e clico nesse comando ele tá apontando aqui para onde o meu mouse está se eu coloco o meu comando mais para baixo e clico nele como o meu mouse tá nessa posição ele tá apontando para cá outra coisa muito legal desse comando é que se eu tiver por exemplo um ator
aqui como essa maçã eu posso pedir para que ele aponte pro outro ator então agora quando eu clico aqui ele tá apontando pra maçã se eu mudo a posição da minha maçã e clico aqui novamente ele continua apontando para ela e e isso pode ser muito útil se você quiser por exemplo fazer um jogo de perseguição porque eu posso usar junto desse comando aqui o mova da espaços que a gente já falou e no Scratch pra gente executar blocos em sequência basta colocar um embaixo do outro que primeiro ele vai executar Esse comando aqui e
depois esse outro comando de mova da espaço agora ao invés de clicar só no comando Eu Tô clicando nesse bloquinho aqui e ele vai Executar tudo isso então quando eu clico aqui ele tá andando em direção à maçã e toda vez que eu mudar a maçã de lugar como eu tô fazendo aqui ele continua tentando perseguir essa maçã até chegar nela e aproveitando que a gente já tá falando do mova 10 passos vamos falar aqui desse adicione 10 a x e adicione 10 A Y A gente já explicou que o mova 10 passos vai mover
o gatinho nessa direção aqui que a seta tá apontando e esses dois comandos vão fazer algo muito similar só que em vez de olhar pra direção eles vão simplesmente olhar pras coordenadas desse ator E são essas informações que estão aqui adicione 10 a x vai adicionar 10 ao valor de X do nosso ator então quando eu clico aqui ele também está indo pra direita quando a gente usou o mova 10 passos se a gente quisesse que esse ator viesse pra esquerda a gente tinha que mudar aqui a direção para -90 E aí sim a gente
podia usar esse comando aqui mas a gente já tinha comentado que ele tava de cabeça para baixo e tava meio estranho agora com adicione 10 AX eu posso deixar aqui direção 90 e quando eu troco aqui por -10 ele vai est adicionando -10 nessa variável x aqui e agora sim ele tá indo pra esquerda mas sem mudar a direção do ator Então o que esse comando faz ele movimenta o nosso ator nessa direção horizontal Quando Ele é positivo o ator vai pra direita e quando esse valor é negativo o ator vai pra esquerda quanto maior
esse valor aqui mais rápido eu vou andar e adicione 10 A Y como vocês devem imaginar vai fazer a mesma coisa só que no eixo vertical quando eu clico nesse comando ele tá adicionando 10 a y e como o 10 é positivo ele tá indo para cima se eu coloco aqui um valor negativo ele tá diminuindo o valor de y e andando com esse gatinho aqui para baixo e da mesma forma que a gente pode adicionar valores a gente também pode pedir para mudar o valor de x e mudar o valor de y H pouco
tempo atrás a gente usou esse Vá para x e y que basicamente é a mesma coisa só que agora a gente tá dividindo Esse comando aqui nesses outros dois comandos então essa parte aqui tá mudando o meu x e essa parte aqui tá mudando o meu y e quando eu junto esses dois comandos aqui a gente tem basicamente a mesma coisa então se eu tenho o meu gatinho aqui e eu quero que ele vá aqui para x0 y0 eu posso atualizar tanto esse valor de X para zero e esse valor de y para z0 quanto
aqui embaixo também atualizando o X para zer e o Y para zer quando eu clico aqui eu venho para cá e quando eu clico aqui eu venho pra mesma posição A grande diferença desses dois comandos aqui é que às vezes eu quero mudar só o valor de x ou só o valor de y então eles vão ser muito mais úteis do que usar esse comando aqui e agora esses outros dois comandos aqui basicamente o que que que eles vão fazer vamos supor que eu tô adicionando 10ax várias vezes aqui chega um momento que esse gatinho
aqui ele chega na borda e fica meio estranho parece que ele tá tentando entrar na tela o que esse comando aqui vai fazer é exatamente falar que se ele tocar na borda eu quero que ele volte eu quero que ele vá aqui de novo para dentro desse palco então quando eu clico aqui observa que o nosso gatinho tá voltando aqui para dentro do palco e Esse comando é muito útil em jogos tipo esse aqui do pong onde a gente quer que a bolinha Fi passando aqui na tela só que quando ela chega aqui nessas bordas
ela volte porque senão ela ia ficar parada aqui em cima Então por exemp exemplo se eu quiser que essa bolinha venha para cá e ela comece a se mover e a gente já falou que a gente pode usar o mova da espaço então quando eu tô clicando aqui ela vem aqui chegou na borda e ela parou ela ficou travada aqui e basicamente o nosso jogo não teria mais o que fazer quando a gente junta esses dois comandos aqui assim que ela chegar na borda ela continua o seu movimento e agora o nosso jogo Realmente parece
muito mais legal porque a nossa Bolinha tá se movendo aqui no palco mas Lucas quando eu cheguei aqui no canto e cliquei aqui pedindo para ele voltar ele ficou de cabeça para baixo tem como eu pedir para ele não virar de cabeça para baixo e exatamente que esse outro comando que vai fazer se eu coloco ele aqui de novo na parede clico aqui em defino estilo de rotação pra esquerda e direita quando eu clicar aqui novamente no se tocar na borda volte ele voltou Mas em vez de ficar de cabeça para baixo ele só tá
apontando pra esquerda se eu volto ele aqui para 90º e mudo aqui para não rotacionar quando eu clico nesse comando e depois clico aqui no se tocar na borda volte observa que ele só volta um pouquinho para trás então ele não vira de cabeça para baixo ele não aponta pra esquerda ele só volta aqui de forma ficar totalmente dentro do pau já se eu troco aqui pra rotação completa quando eu clico nesse comando e clicar novamente aqui do s toca na borda volte Aí sim ele vira de cabeça para baixo então basicamente o que que
esse comando faz definir como o gatinho vai voltar quando ele tocar na borda se for esquerda direita ele volta dessa forma aqui como se ele tivesse espelhado se tiver Não rotacionar ele só dá alguns passinhos para trás e continua da mesma forma já se eu coloco aqui rotação completa Aí sim ele vira de cabeça para baixo e se rotaciona totalmente Então agora que a gente já falou de todos esses comandos aqui de movimento a gente vai falar dessas três outras informações aqui que são propriedades do ator que são basicamente informações sobre ele todo o comando
que tiver esse formatinho aqui como se fosse um encaixe e que a gente junta dessa forma são comandos que vão executar alguma coisa no ator ou seja fazer com que esse ator tenha alguma ação Faça algo já esses outros comandos como por exemplo esses comandos aqui de movimento esses outros comandos aqui embaixo também são propriedades são informações do ator que a gente usa para saber alguma coisa sobre ele ou seja qual a posição X Atual dele qual a posição Y Qual a direção e daqui a pouquinho a gente vai falar como a gente pode usar
essas informações aqui para tomar decisões e quando a gente traz elas aqui para essa região central quando a gente clica nela a gente tem essa mesma informação que a gente consegue ver aqui em cima Então essa informação me diz a posição x do meu ator essa aqui me diz a posição Y que é esse mesmo valor que tá aqui e essa última aqui me diz qual é a direção do ator que agora é - 90º como eu tô vendo aqui com isso a gente fecha todos os comandos de movimento agora vamos falar sobre os comandos
de aparência esse Primeiro Comando vai fazer o nosso gatinho dizer o que tiver aqui dentro por 2 segundos então quando eu clico aqui ele tá dizendo olá durante 2 segundos se eu quiser mudar a mensagem é só vir aqui digitar qualquer coisa então posso pedir para ele dizer por exemplo o meu nome durante 5 segundos já Esse comando aqui de baixo ele também vai dizer olá mas essa caixinha não vai sumir se eu quiser duplicar algum comando eu posso clicar com o botão direito aqui do mouse clicar aqui em duplicar e agora eu posso colocar
ele aqui embaixo quando eu peço agora para ele dizer uma nova palavra por exemplo eu peço para ele dizer Lucas essa caixinha que some e agora ele tá dizendo Lucas e se eu voltar aqui nesse comando e pedir para ele dizer Lucas por um único segundo Aí sim ele diz e a caixinha sumiu e se eu juntar dois comandos desse aqui ele não vai dizer olá e depois dizer Lucas porque ele já vai dizer olá E logo depois esse balão de texto vai ser substituído por Lucas Então olha o que acontece ele diz apenas Lucas
se eu quiser que ele Diga olá e depois diga Lucas Eu Posso duplicar Esse comando aqui trazer aqui para baixo aqui eu vou trocar por Olá e quando eu clico aqui ele disse olá por um segundo disse Lucas por um segundo e essa caixinha sumiu então se eu quiser que essa caixinha não desapareça É só usar esse comando diga Lucas e se eu quiser que ele fale várias frases eu preciso usar dessa forma aqui e a gente tem outro comando muito similar a esse aqui só que em vez de ter essa caixinha aqui como se
fosse uma caixinha de f ele tem uma caixinha de pensamento então quando eu clico aqui ele parece que tá pensando esse valor por 2 segundos e esse pense vai funcionar da mesma forma que eu diga essa caixinha de pensamento não vai sumir aqui do meu ator esses comandos aqui eles vão alterar a fantasia do meu ator enquanto esses dois aqui de baixo vão alterar o meu cenário e toda vez que a gente criar um ator a gente pode ter quantas fantasias a gente quiser e a gente consegue saber isso exatamente clicando aqui em cima em
fantasias e aqui a gente pode alterar para essa fantasia dois ou para essa fantasia um quando eu clico aqui do lado direito em cenários muda essa aba aqui de cima que agora se chama cenários e a gente também pode alternar entre diferentes cenários que a gente tem no jogo então voltando aqui pros comandos desse ator esse Primeiro Comando permite que a gente escolha Qual fantasia a gente quer então posso mudar aqui pra fantasia um quando eu clico aqui ele tá nessa fantasia que é exatamente a fantasia um desse ator aqui se eu quiser vir para
essa fantasia do é só voltar aqui em códigos e trocar aqui de fantasia 1 para fantasia do e clicar novamente nesse comando quando eu clico aqui em próxima fantasia Ele sempre vai indo pra fantasia seguinte aqui nessa lista de fantasias e se eu tiver 10 20 fantasias ele vai vai seguindo uma a uma as fantasias que aparecem aqui e se eu quiser por exemplo adicionar uma nova fantasia é só eu vir aqui nesse gatinho eu posso buscar uma fantasia que já existe aqui no Scratch Então posso por exemplo pegar essa aqui do gatinho voando também
posso clicar aqui para pintar uma nova fantasia selecionar de forma aleatória ou carregar do meu computador e agora que eu importei essa nova fantasia nesse ator aqui quando eu volto aqui e clico em próxima fantasia ele tá alternando entre essas três fantasias que a gente tem e aqui também a gente pode alternar entre a fantasia 1 a fantasia dois ou essa fantasia que a gente acabou de importar aqui pro cenário é a mesma coisa quando a gente clica aqui a gente clica aqui em cenários a gente pode buscar novos cenários com essas mesmas quatro opções
e até criar novos cenários clicando aqui com o botão direito do mouse e aqui em duplicar observação a gente também pode fazer isso pra fantasia e só para diferenciar ess cenários aqui eu vou escrever dois e aqui eu vou escrever três quando eu volto nesses comandos aqui do ator aqui eu posso selecionar qualquer um desses cenários Então posso colocar aqui por exemplo o cenário um e ele tá mudando para esse cenário ou também clicar aqui em próximo cenário e ele vai mudando da mesma forma que a gente fez pras fantasias A única diferença é que
aqui no cenário a gente pode pedir para ele ir pro cenário anterior pro próximo cenário ou para ele ir para qualquer cenário aleatório e aqui na fantasia a gente não consegue fazer isso eu quero agora falar para vocês do tamanho do ator que é mais uma das propriedades dele que a gente pode alterar aqui então o tamanho 40 ele tá menor o tamanho 20 ele tá menor ainda e quando eu aumento esse tamanho esse ator vai ficando cada vez maior e a gente pode alterar o tamanho tanto aqui nessa propriedade ou usando esses dois comandos
aqui de m de 10 um tamanho onde ele vai sempre aumentar em 10 o valor atual do tamanho ou essa aqui de defina o tamanho como quando a gente coloca em 100% esse valor aqui vai passar a ser 100 se eu coloco m de 10 no tamanho Eu Tô aumentando em 10 esse valor aqui e se eu colocar -10 eu tô diminuindo esse tamanho fazendo o meu ator ficar menor aqui se eu coloco 500 a gente vai mudar esse tamanho aqui por 500 só que esse valor aqui a gente não pode aumentar infinitamente então se
eu colocar 6.000 o Scratch não vai deixar porque existe um limite que o próprio Scratch define como um limite que vai ficar Ok o nosso gatinho aparecendo aqui no palco para esse gatinho esse valor foi 541 mas esse valor pode mudar para cada ator que a gente tiver se eu quiser voltar pro tamanho Inicial só mudar aqui pra cen e apertar esse comando e agora vamos falar desses outros três comandos aqui de mude 25 ao efeito cor de defin o efeito cor como zero e de removo os efeitos gráficos nessas opções aqui a gente pode
mudar várias coisas por exemplo a cor do nosso gatinho então aqui eu tô mudando um pouquinho a cor dele a gente pode mudar esse efeito aqui chamado olho de peixe é como Aquela lente olho de peixe de câmera e sempre que a gente quiser tirar algum efeito que a gente colocou é só clicar nesse comando remova os efeitos gráficos aqui por exemplo também a gente pode mudar o turbilhão que é esse efeito que faz ele ficar dessa forma assim e tem vários outros efeitos aqui que eu sugiro que vocês testem veja o que vai acontecendo
e toda vez que quiser limpar o efeito só clicar aqui em remove os efeitos gráficos o que eu mais uso nessa lista aqui realmente é o efeito fantasma e basicamente consegue fazer o nosso ator ficar meio como uma aparência um pouco mais transparente isso é útil Por exemplo quando a gente quiser fazer telas como essa daqui onde a gente tem essa tela aqui na frente mas ela tem uma certa transparência pra gente ver o que tá acontecendo no fundo então aqui eu usei Exatamente esse comando pedindo um preito fantasma C20 e aqui quanto maior esse
efeito fantasma mais transparente vai ser esse ator se a gente chegar em 100 o ator vai est totalmente transparente e se ele for zero ele vai tá totalmente visível então a gente pode usar esse comando aqui e pedir para ele definir o efeito fantasma como zero e a gente tá visualizando aqui então qual é a diferença entre esses dois comandos esse aqui vai adicionando 25 ao valor atual do efeito fantasma Então se agora esse efeito for zero quando eu adiciono 25 esse efeito vai ser 25 adiciono mais 25 vai ser 50 75 até chegar a
100 onde a gente não vê mais nada esse como aqui ele não se importa com qual o valor atual desse efeito se o valor for 100 for zero Se eu pedir aqui para ele mudar para 50 quando eu clico aqui ele vai sempre ser 50 se eu pedir para ele ser 100 ele vai se tornar 100 e se eu pedir para ele ser zero ele vira zero por padrão o efeito fantasma é zero então se ele for 50 e eu pedir para ele remover os efeitos ele volta para zero então só para deixar claro esse
Mood vai adicionar esse valor que tá aqui no efeito que a gente colocar aqui dentro dessas opções então aqui eu tô adicionando 25 ao efeito fantasma se eu quiser reduzir é só eu colocar um valor negativo aqui já esse Define um efeito como ele vai mudar o efeito para Exatamente esse valor aqui então independente do valor atual quando eu clico nesse comando o meu efeito fantasma passa a ser 50 se eu quiser eliminar todos os efeitos gráficos é só clicar aqui e agora a gente falou sobre o x sobre o y que são nossas coordenadas
falamos sobre a direção e também já falamos sobre o tamanho essa propriedade aqui basicamente é o nome do nosso ator que eu posso alterar aqui para gatinho e agora só falta a gente falar dessa propriedade aqui que é mostrar onde a gente pode clicar aqui pro ator não estar mais visível então não tô vendo mais o nosso gatinho ou aqui nesse olhinho mostrar Sprite para ele ficar visível e agora a gente tá vendo esse gatinho e a gente consegue fazer ou clicando aqui nesses dois comandos ou usando esse comando aqui de mostre para mostrar o
nosso gatinho e esconda para esconder esse ator quando eu clico aqui em esconda ele não tá aparecendo mais se eu clico aqui ele acabou de aparecer esses dois comandos vão ser extremamente úteis porque geralmente a gente tem vários atores em cada momento do jogo um ator vai aparecer o outro vai se esconder um vai sumir um vai surgir exatamente através desses dois comandos que a gente consegue fazer isso e agora para fechar vamos falar do vá a camada da frente e do vá pra frente uma camada mas antes de falar especificamente sobre esses dois comandos
Eu quero explicar para vocês bem rapidinho como funciona esse palco aqui vamos supor que eu vim aqui e adicionei esse ator balão e depois vim aqui e adicionei esse ator maçã Se eu colocar esses três atores aqui com x0 e y0 é como se o meu gatinho tivesse atrás o balão tivesse na frente e a maçã tivesse na frente de todo mundo mas Lucas Por que que isso acontece o palco do scratch ele vai funcionar como se fosse essa caixa de papelão aqui onde a gente teria um buraco aqui na frente e por aqui vai
ser onde a gente vai ver tudo acontecendo que eu vou colocar essas laterais só um pouco mais claro pra gente ver melhor e como que funciona lá atrás na última camada a gente tem os nossos cenários e aqui na frente a gente tem os nossos atores que vão estar em diferentes camadas Então vamos supor que eu quero colocar esses três atores aqui no meu Palco assim que eu coloco o primeiro ator ele é colocado numa camada qualquer aqui quando eu vou colocar um segunda ator é criado uma nova camada na frente da camada que a
gente já tinha e como a gente tá olhando por esse buraquinho aqui a gente vê esse balão na frente do nosso gatinho como a gente tá vendo aqui na direita e sempre que a gente for acionando novos atores eles vão entrando em novas camadas aqui da frente agora quando eu coloquei minha maçã ela ficou na frente tanto do gatinho quanto do balão e aqui no Scratch a gente pode ter Quantas camadas a gente quiser entender essa informação é muito importante pra gente conseguir criar um visual legal entre os nossos atores Então vamos supor que eu
não quero que essa maçã fique na frente do meu gatinho eu queria que ela fosse lá para trás tem como eu fazer isso e a gente movimenta os atores aqui no palco criando essa sensação de perspectiva Ou seja que o ator tá mais na frente do outro a posição entre eles usando essa Exatamente esse conceito de camadas e para explicar isso melhor eu quero focar nessas três camadas aqui essa camada vermelha onde a gente tem a maçã a camada Azul onde a gente tem o balão e por último essa camada laranja aqui onde a gente
tem o nosso gatinho se a gente quisesse por exemplo que a maçã tivesse atrás do balão a gente poderia simplesmente Pedir para que essa camada da maçã fosse aqui para trás Então em vez de ser essa camada mais da frente ela estaria aqui no meio dessas duas camadas e quando a gente faz isso realmente a maçã foi para trás e quando a gente olhar nessa janelinha aqui o que a gente vai ver isso primeiro o balão a maçã atrás e por último o gatinho agora vamos supor que a maçã tando aqui na frente em vez
de querer que ela vá para trás do balão eu posso querer que ela vá para trás de todos os atores Ou seja que ela fique aqui atrás o meu gatinho quando eu fui uma camada para trás ela ficou entre o balão e o gatinho se eu for duas camadas para trás aí sim ela vai ficar logo depois do meu gatinho como a gente tá vendo aqui e essa movimentação aqui de camadas de colocar uma camada para trás de colocar duas camadas de colocar na camada mais atrás de todas vai ser fundamental pra gente conseguir organizar
os atores aqui no nosso palco e criar jogos muito mais interessantes Mas tá bom Lucas como eu falo faço isso Como eu seleciono a camada exatamente usando esses dois comandos que a gente acabou de falar então quando eu volto aqui pro meu Scratch se eu clicar aqui no meu gatinho e quiser que ele vá aqui pra camada da frente é só clicar nesse comando escrito exatamente vá pra camada da frente e ele vai vir pra primeira camada então com esse comando aqui Independente de Quantas camadas tiver ele vai sempre vir aqui pra camada mais da
frente de todas e se eu troco aqui de frente para trás e clico novamente ele vai lá pra última camada já esse outro comando aqui a gente vai selecionar Quantas camadas a gente quer que ele ande então aqui como a gente viu o nosso gatinho tá na camada mais de trás a gente tem esse balão na camada da frente e mais na frente ainda a gente tem a maçã se eu peço PR ele andar pra frente uma camada ele ficou na frente do balão mas ainda atrás a maçã e se eu clico aqui novamente Aí
sim ele veio pra camada mais da frente se eu pedir para ele para trás apenas uma camada ele ficou atrás a maçã mas ainda na frente do balão e eu uso isso sempre que eu quiser que Algum objeto apareça com destaque aqui na tela como se fosse um pop-up Então vamos supor que eu tô clicando aqui nesse documento mas eu queria ver essa lista aqui eu preciso usar Exatamente esse comando aqui pedindo para ele ir pra camada da da frente pra gente conseguir visualizar ele dessa forma aqui e agora para fechar os comandos de aparência
vamos falar do fantasia número cenário número e tamanho e basicamente vão dizer o número da fantasia que a gente tá utilizando agora que nesse caso aqui do gatinho é a primeira fantasia se eu vier aqui e coloco ele na segunda fantasia e para mudar uma fantasia é só eu clicar aqui ou usar esse comando aqui de multi para fantasia quando eu faço isso essa informação já é atualizada com a fantasia atual do meu ator se eu troco aqui pra terceira fantasia ele tá na fantasia número três e além do número a gente pode também usar
a informação do nome da fantasia como aqui a a gente tá na fantasia com esse nome quando eu clico aqui aparece o mesmo nome nessas duas informações a mesma coisa pro cenário quando eu clico aqui aparece o número do cenário atual se a gente clica aqui em cenários cenários aqui em cima a gente vê que realmente a gente tá no cenário de número um e como essa fantasia aqui chama cenário um se eu volto aqui pro meu gatinho e troco aqui de número para nome tá falando o cenário um e esse tamanho aqui vai ser
exatamente essa mesma informação se eu troco aqui essa informação é atualizada com isso a gente fechou os comandos de aparência e agora a gente vai falar desses comandos aqui de som que basicamente vão ser qualquer barulho que o nosso ator vai fazer mas antes da gente começar vou clicar aqui nesses atores e clicar nessa lixeira para apagar isso daqui e vou vir aqui em fantasias e voltar com o meu gatinho para essa fantasia um agora quando eu volto aqui em código e eu arrasto Esse comando para cá o meu gatinho tá tocando Exatamente esse som
e se eu quiser adicionar novos sons editar esse som que tá aqui eu posso vir aqui nessa aba sons e aqui embaixo eu posso escolher um som que já existe no meu Scratch assim como a gente fez para fantasias e cenários eu posso gravar um som usando o meu microfone então Poderia falar por exemplo Olá galera do YouTube tudo bem meu nome é Lucas e se sejam muito bem-vindos ao meu canal quando eu faço isso eu posso usar esses ícones aqui para poder cortar o meu som e quando eu clico em salvar ele já existe
no meu gatinho se eu quiser mudar o nome é só trocar aqui quando eu dou Play eu escuto exatamente o que eu acabei de gravar Olá galera do YouTube tudo bem se eu quiser que esse som vá mais rápido eu posso clicar aqui eu posso fazer outras modificações do som como por exemplo pedir para ele mais devagar para ele ser mais alto mais baixo silenciar esse som e se você quiser reverter alguma coisa que você fez só clicar nessa setinha aqui aqui eu posso fazer o meu som começar mais baixo e aumentando no início e
aqui eu faço ele diminuindo no final então ele desaparecendo Esse comando aqui vai permitir inverter o nosso som e esse último aqui vai me fazer ficar com uma voz de robô Ola galera do YouTube clicando aqui em surpresa ele vai escolher de forma aleatória um som para você e aqui em carregar som você pode trazer qualquer som do seu computador quando a gente tem mais de um som aqui quando eu volto aqui em código eu posso trocar essa opção aqui miau para qualquer um dos sons que tiver ali naquela aba de sons então se eu
colocar aqui oi Lucas ou esse outro som ele vai dizer exatamente o som que a gente escolheu aqui nessa aba mas Lucas aqui do lado tem outro comando que parece muito com esse aqui E qual vai ser a diferença entre eles lá no início da aula a gente tinha comentado que os comandos eles são executados um após do outro na sequência que eles aparecem então se eu vim aqui em movimento e pedir para ele dar da espaço dá pra gente entender a diferença entre esses dois comandos de som aqui esse primeiro ele vai esperar o
áudio ser tocado até o final para poder fazer esse comando aqui de baixo como eu tô vendo aqui então ele Esperou o miau até o fim depois moveu da espaço já esse segundo assim que ele começa a tocar o áudio miau ele já move 10 espaço então quando eu clico aqui ao mesmo tempo que ele tava meando ele também estava se movimentando então basicamente esses dois comandos fazem a mesma coisa só que esse primeiro vai esperar o áudio finalizar para executar os próximos comandos que tiverem embaixo dele Tirando esse mova 10 passos e voltando aqui
para sons esse pare todos os sons Como o próprio nome diz ele vai parar qualquer som que tiver sendo tocado no seu jogo então se eu troco esse som aqui por um som maior enquanto esse áudio estiver tocando quando eu clico aqui ele vai parar de ser executado então quando eu clico aqui olá galera do YouTube assim que eu cliquei em par todos os sons esse udio parou agora vamos falar de desses outros três comandos aqui mude 10 no efeito Tom mude o efeito Tom para 100 e remova os efeitos sonoros basicamente o que que
vai ser essa informação de Tom o Tom Ele pode ser grave ou agudo e quando eu aumento o meu tom mais fino vai ficar a voz do meu gatinho Então se por exemplo eu tô adicionando 10 no efeito Tom e eu toco o somal de novo Olha como a voz dele vai ficar agora se eu adiciono menos 10 várias vezes nesse tom a voz dele parece ficar um pouco mais grossa quando eu clico aqui no toque somia então esse comando aqui vai adicionar um Val ao efeito Tom quando eu tenho valores positivos Eu Tô aumentando
esse tom e valores negativos Eu Estou diminuindo o meu tom já esse segundo comando vai mudar o tom pro valor que tiver aqui por padrão o nosso Tom é zero e esse aqui era o som do gatinho que a gente estava ouvindo inicialmente se eu mudo o Tom para 100 ele vai tá muito mais fino e se eu coloco o Tom como menos 100 ele já parece uma voz um pouco mais grossa se eu quiser remover os efeitos sonoros só clicar aqui nessa opção e pronto agora o meu gatinho voltou a mear igual ele tava
meando Originalmente além do Tom aqui também a gente pode mudar PR balança esquerda direita e basicamente Decide aonde esse som vai est saindo no meu fone direito ou no meu fone esquerdo da mesma forma eu posso adicionar 10 adicionar menos 10 e também posso mudar aqui embaixo e se eu coloco esse valor aqui para 100 clico nesse comando e agora peço pro meu gatinho tocar o somal ele tá saindo totalmente no meu phone da direita quando eu mudo aqui para menos 100 clico nesse comando e novamente peço pro gatinho Miá agora ele tá saindo no
meu fone da esquerda se eu volto aqui para zero o meado voltou ao normal e se eu não quisesse ter voltado aqui para zero se aqui fosse 100 eu poderia ter cli clicado aqui em remove os efeitos sonoros que a gente também teria removido qualquer efeito que tivesse aqui no nosso som e só para fechar esses comandos vamos falar de volume volume como próprio nome diz é a altura que a gente tá escutando esse som quanto mais alto ele tiver maior vai ser o volume e essa informação aqui é uma propriedade do ator que a
gente pode clicar aqui assim como a gente fez com as fantasias com cenário com tamanho com a posição x posição y e direção quando eu peço para ele diminuir 10 no volume a gente tá colocando o som cada vez mais baixinho e praticamente a gente nem vai conseguir ouvir o gatinho Miá e quando eu mudo aqui para mais 10 a gente vai aumentando esse valor e a gente pode chegar novamente a 100 aqui que era o valor original do meu volume quando eu clico em Toque somal a gente já tá escutando o barulho muito mais
alto da mesma forma que os outros comandos esse aqui tá adicionando ou reduzindo valores e esse aqui tá determinando qual vai ser o valor tá mudando pro valor que tiver aqui dentro então eu posso mudar o meu som para 20 posso mudar o meu som para 100 e uma observação importante é que nunca vai ser maior que 100 Então por mais que eu bote 500 aqui o valor máximo que essa variável vai assumir é 100 e aqui em volume quando a gente clica nele a gente vê exatamente o valor que tá aqui se eu mudar
o volume para 20 e clicar novamente a gente também vai ver 20 aqui embaixo e com isso a gente fechou todos os comandos de som e vamos agora falar sobre os eventos mas Lucas O que são eventos o evento basicamente vai nos indicar que alguma coisa aconteceu no nosso jogo de que algo mudou ou que teve um resultado de alguma ação Por exemplo quando eu clicar aqui nessa Bandeira verde quando eu pressionar qualquer tecla do meu teclado ou até mesmo quando eu tiver clicando no meu ator e os eventos são extremamente importantes sempre que a
gente tem usuários que no nosso caso aqui vão ser os jogadores porque a gente precisa saber por ex por exemplo se o jogador clicou nessa Bandeira para começar o jogo se o jogador pressionou por exemplo alguma tecla pra gente fazer alguma ação ou até mesmo se alguma coisa aconteceu aqui no nosso palco até agora sempre que a gente queria executar algum comando a gente vinha aqui trazia o comando para essa região e ficava clicando nesse comando várias vezes só que quando o seu jogo estiver pronto o jogador nem vai ver isso que tá aqui a
única coisa que ele vai ver é isso aqui o que tá no palco então se ele quisesse mover o seu gatinho como ele faria exatamente ele usaria os eventos então eu posso falar que eu quero que o meu gatinho mova D espaço sempre que eu cli nessa Bandeira Verde aqui então para isso eu vou trazer esse comando para cá vou juntar esses dois comandos e agora Toda vez que eu clicar na bandeira Verde ele tá dando 10 passos pra direita então basicamente o que esse comando aqui faz ele fica verificando se essa bandeira fo tocada
e quando ela for tocada ele vai Executar tudo que tiver aqui embaixo e agora sim a gente começa a dar os primeiros passos para começar a criar realmente os nossos jogos porque esses comandos isolados como a gente estava vendo aqui não vão fazer nada eles só vão ter utilidade real mesmo quando eles tiverem blocos de comando e a gente não precisar ficar clicando para eles serem exados como essa bandeira Verde aqui indica que o nosso jogo começou em geral a gente vai usar esse comando de quando a bandeira Verde for clicada para colocar as condições
iniciais do meu jogo então se eu quero que o meu gatinho comece aqui no centro da tela em zero zero embaixo desse comando eu vou vir aqui em movimento e colocar vá pra X e Y com isso assim que o meu jogo começar Independente de Onde tiver o meu gatinho quando eu clico aqui ele vem pro centro da tela outro comando muito útil em eventos É esse aqui de quando a tecla espaço for pressionada porque é com esse comando que a gente vai conseguir criar a maior parte das interações que o usuário vai fazer com
o nosso jogo na maioria dos jogos se eu quiser movimentar o meu ator eu vou usar as teclas wasd quando eu pressionar a tecla D ele vai vir aqui pra direita a tecla ele vai pra esquerda o w ele vai paraa cima e o s para baixo e a gente já falou como a gente movimenta o nosso gatinho no Scratch a gente pode vir aqui movimento e pedir para ele adicionar 10 a x por exemplo para ir pra direita se eu quero fazer isso aqui quando a tecla D for pressionada é só vir aqui e
procurar pela tecla D agora quando eu tô apertando d o meu gatinho tá andando pra direita Agora eu quero fazer a mesma coisa com a tecla a só que eu quero que o nosso noo gatinho volte aqui para trás ou seja Ant pra esquerda eu posso clicar com o botão direito do mouse e pedir para duplicar aqui eu vou trocar o d pelo a em vez de adicionar 10 a x eu vou adicionar -10 AX com isso quando eu clico na bandeira verde o meu gatinho tá começando aqui no centro da tela toda vez que
eu aperto a tecla D ele vai pra direita quando eu aperto o a ele vai pra esquerda e para fazer ele se movimentar para cima e para baixo a gente vai seguir a mesma lógica Então vou duplicar Esse comando só que em vez de adicionar 10 a x eu vou adicionar 10 a y o d eu vou trocar por w vou novamente duplicar Esse comando aqui e para ele ir para baixo o w eu vou trocar por s e aqui eu vou pedir para ele adicionar menos 10 A Y com isso a gente consegue mover
esse gatinho por todo o palco como a gente tá vendo aqui Ah Lucas mas quando eu faço isso parece o gatinho tá meio que travando eu vou mostrar PR vocês que tem uma forma melhor de fazer isso mas a gente vai falar disso quando a gente falar de sensores esse outro evento aqui de quando esse ator for clicado Como o próprio nome diz vai fazer algo quando esse gatinho for clicado e eu posso usar por exemplo para fazer o meu gatinho sempre ficar mudando de posição na tela sempre que eu clicar nele para isso é
só eu vir aqui em movimento pedir para ele para uma posição aleatória e agora toda vez que eu clico nesse gatinho ele tá indo para uma nova posição aleatória esse outro comando aqui vai ficar esperando até o cenário mudar e quando isso acontecer ele vai executar alguma ação Então vamos supor que eu tenho esse ator aqui chamado sol e eu quero que esse ator apareça só se o meu cenário for por exemplo um cenário de deserto Então posso vir aqui em cenários vim aqui novamente clicar aqui em selecionar cenário e usar esse aqui de deserto
aqui eu também vou aproveitar para importar esse cenário de fazenda e esse outro cenário de floresta e vou apagar todos esses outros cenários que a gente já tinha Então vamos supor que eu quero fazer o meu gatinho como se ele tivesse passeando em diferentes lugares eu posso clicar aqui no sol e falar que quando o meu cenário for exatamente esse deserto eu quero mostrar esse ator então tô colocando aqui o mostre que a gente já falou só que se o cenário não for deserto eu não queria ter esse sol aqui então Posso duplicar Esse comando
e falar que se o cenário for Fazenda eu vou querer esconder esse ator e vou fazer a mesma coisa caso o cenário for Floresta agora quando eu venho aqui no gatinho e uso esse comando aqui de próximo cenário quando ele chega na fazenda não tá aparecendo o sol quando ele tá na Floresta o sol também não aparece mas quando a gente muda pro cenário do Deserto o sol Acabou de aparecer e só lembrando por que que eu criei os comandos aqui nesse ator e não criei no gatinho porque eu quero que o sol que Execute
esses comandos de mostrar ou se esconder E como eu falei no início dessa aula o comando é específico para cada ator então se eu quero que o sol faça algo os comandos precisam estar aqui nesse ator vou apagar esse sol e voltar pro cenário branco que a gente tinha inicialmente continuando com os comandos de evento vamos falar esse aqui de quando o ruído for maior que 10 que basicamente vai ser capaz de ouvir o nosso microfone e saber por exemplo se a gente tá gritando e isso aqui que vai ser super legal por exemplo quando
você quiser dar um Jump scare no seu jogo se eu quiser por exemplo que o meu gatinho ande dar espaço sempre que eu tiver gritando é só eu vi aqui no meu gatinho usar esse evento de quando o ruído for maior que 10 e agora o comando de mova 10 passos ah ah ah ah ah ah ah eu vou tirar isso aqui só para ele parar de andar mas observa o que eu acabei de fazer toda vez que eu gritava o meu gatinho dava 10 passos e andava pra direita uma coisa importante de entender sobre
Esse comando é que se você continuar gritando ele não vai continuar executando Esse comando aqui a observa que mesmo eu gritando durante muito tempo ele só executou uma única vez Ah Lucas e se eu quisesse por exemplo que ele continuasse se movendo enquanto eu tiver gritando e a gente vai falar sobre isso quando a gente tiver aqui em sensores Mas vamos voltar para cá e aqui é importante que vocês entendam que ele vai executar isso aqui quando o ruído for maior que 10 depois se você ficar em silêncio ou seja se o ruído for menor
que 10 e gritar de novo aí ele executa Esse comando novamente se a gente quiser aqui eu também posso trocar pelo cronômetro que basicamente marca quanto tempo tem desde que a gente clicou nessa Bandeira verde de novo vou detalhar isso melhor em sensores e agora só para fechar essa parte de eventos Eu quero falar desses três comandos aqui que são extremamente importantes vamos supor que eu tenho esses três atores aqui o meu gatinho que a gente já tinha a minha maçã e o meu balão no início da aula eu falei para vocês que os comandos
que tiverem aqui dentro do balão eles não vão fazer nada na minha maçã Nem no meu gatinho então se eu trago por exemplo Esse comando de mofa 10 passos para cá quando eu clico nele apenas o meu balão está andando mas Lucas e se eu quiser por exemplo que esse balão se comunique com o meu gatinho ou que que de alguma forma ele consiga disparar uma ação dentro dessa maçã aqui e é para isso que serve exatamente a transmissão de mensagens e é um conceito super importante do scratch vai ser muito útil e isso vai
ajudar a criar jogos muito mais complexos e muito mais legais aqui no jogo do pac-man que eu fiz em Scratch eu preciso que todos os pontinhos sejam gerados para só então o jogador poder começar a andar com pac-man senão imagina que eu tô gerando esses pontinhos e o jogador já tá caminhando aqui comendo eles isso faria o jogo ficar muito mais fácil então aqui no próprio pontinho eu pedi para primeiro ele executar isso daqui de criar todos os pontinhos aqui na tela e só então transmitir jogo Pronto já aqui no Pacman e também no meus
fantasmas eu espero receber essa mensagem para então permitir que o meu jogador movimente o meu pac-man e os meus fantasmas comecem a me perseguir então basicamente o que que acontece eu cliquei na bandeira Verde nesse momento eu preciso gerar todos os pontinhos aqui na tela então eu falo para esses pontinhos para ele gerando um a um cada um desses pontos aqui e eu peço para ele para assim que ele terminar ele mandar uma mensagem avisando pras outras pessoas tipo assim gente terminei depois eu posso usar essa mensagem de terminei em cada um dos meus atores
aqui para poder falar com eles Olha depois que você recebeu essa mensagem ou seja que o pontinho terminou de ser gerado Aí sim vocês podem começar a fazer o seu movimento Então por mais que eu não possa colocar aqui dentro do Pontinho um comando para mandar o Pacman fazer outra coisa eu posso me comunicar com cada um desses atores através da transmissão de mensagens como a gente vai ver agora vamos voltar aqui então vamos supor que eu quero que todo mundo comece nessa posição aqui em cima tanto o meu gatinho quanto o meu balão quanto
a maçã PR isso a gente sabe como a gente faz é só vir aqui em evento usar quando a bandeira Verde for clicada e eu vou usar o movimento para pedir para que ele vá para essa posição vou fazer o mesmo aqui no balão e vou fazer a mesma coisa aqui pro meu gatinho agora vamos supor que eu quero que nesse momento o meu gatinho vá até aqui e quando ele chegar aqui o meu balão Vá para cá e assim que o meu balão chegar nessa posição a minha maçã Vá para cá aqui no gatinho
para ele poder chegar até aqui basta eu vir no gatinho e pedir para ele deslizar por exemplo por um segundo até a nova posição que a gente chegou depois eu posso vir no balão e também pedir para ele deslizar por um segundo até essa posição e voltar aqui na maçã e pedir para ele deslizar por um segundo até essa outra posição aqui mas quando esse balão aqui vai fazer isso daqui porque se eu colocar isso aqui junto ele vai começar junto com o gatinho Então observa que os dois vieram aqui pro início e eles estão
andando ao mesmo tempo e não é o que eu queria Ah Lucas eu não poderia pedir pro balão esperar um segundo e depois começar a andar e até poderia o squatch tem aqui em controle a opção de pedir para esperar um segundo a gente vai falar sobre isso daqui a pouco mas isso aqui m momentaneamente resolveria o meu problema e eu poderia fazer exatamente a mesma coisa aqui pra maçã poderia pedir para esperar do segundos que aí daria o tempo do gatinho e do balão chegarem aqui então pedi para ela deslizar por um segundo até
essa outra posição aqui quando eu clico na bandeira verde o meu jogo tá funcionando como eu queria só que existe um problema muito grande quando a gente faz isso vamos supor que agora ao invés de demorar só um segundo eu queria que ele demorasse 1.5 segundos quando eu faço isso o meu jogo já parou de funcionar porque o meu gatinho não chegou aqui e o balão começou a andar aí eu teria que vi por exemplo aqui e mudar para 1.5 teria que vir aqui na maçã e mudar para 2.5 e quanto mais atores tiver mais
modificações eu vou precisar fazer e mais complicado vai ficando de ficar atualizando esses valores porque aqui eu tô dando um exemplo bem simples mas em jogos maiores isso envolve muito mais coisas e fica praticamente impossível a gente ficar fazendo essa manutenção um a um como a gente tá fazendo aqui então o que que eu poderia fazer eu poderia falar assim gatinho assim que você chegar aqui dá um aviso fala que você chegou que aí o balão vai poder começar a andar e como que esse gatinho poderia dar um aviso tem simplesmente transmitindo uma mensagem Ou
seja quando você chegar transmita a mensagem de gato chegou e agora no balão eu vou vir aqui vou tirar esse spé 1.5 segundos e eu posso falar que quando eu receber essa mensagem gato chegou aí sim eu posso começar a andar e como eu também quero que a maçã só comece a andar depois que o meu balão chegar eu posso aqui transmitir uma nova mensagem falando que o balão chegou e aqui na maçã pedir para esperar essa mensagem ser recebida Vou colocar aqui mensagem balão chegou e observa que agora o nosso jogo vai funcionar perfeitamente
meu gatinho tá vindo chegou o meu balão andou meu balão chegou a maçã andou se eu trocar esse valor aqui Independente de qual valor eu coloque então aqui eu troquei por dois o jogo tá funcionando perfeitamente sem nenhum problema e eu não precisei ficar vindo aqui ajustando nada então explicando o que que esse transmita faz ele manda uma mensagem que pode ser escutada por qualquer ator aqui no meu jogo e o que se quando eu receber mensagem um faz ele verifica se o ator recebeu essa mensagem então vai Executar tudo que tiver aqui embaixo Mas
Lucas e esse outro comando aqui transmita spere como o próprio nome diz ele vai transmitir uma mensagem então eu posso transmitir uma mensagem Como por exemplo o gato chegou só que aqui ele vai esperar até que todo mundo que tá usando o quando eu receber gato chegou que foi exatamente a mensagem que eu tinha colocado Executar tudo que tiver aqui então vamos supor que aqui eu quero que o meu gatinho volte para cá ele volte pra posição original posso vir aqui em movimento pedir novamente para ele deslizar aqui eu vou trocar dois Vou colocar aqui
o 171 que é o x de onde eu saí e aqui vou colocar o 120 que é o y de onde eu saí observa que quando a gente faz isso olha o que acontece o meu gatinho veio ele transmitiu a mensagem e ele já está voltando agora eu vou vir aqui no meu balão vou usar novamente o deslize e vou colocar pro valor inicial que o meu balão tava 16968 só que aqui eu vou pedir para ele transmitir e esperar ou seja transmita a mensagem de que o balão chegou só que espere até a maçã
Executar tudo isso que tiver aqui então quando eu clico na bandeira verde o gatinho tá indo e já volta logo o balão vai só que ele espera a maçã chegar aqui para então voltar se aqui na maçã Eu também tivesse pedido para ela voltar para essa posição inicial observa que agora o gatinho foi o gatinho tá voltando o balão foi o balão espera a maçã e voltar para só então ele voltar então basicamente o que esse comando fez ele mandou essa mensagem esperou tudo isso aqui ser executado para só então executar o comando que estava
embaixo dele e se eu tivesse usado aqui o quando eu receber balão chegou em mais 10 atores Esse comando aqui ia esperar todos os atores que usaram Esse comando executarem todos os blocos de comando para só então ele continuar aqui aqui embaixo então eu realmente sugiro que vocês tomem muito cuidado com esse SP Porque isso pode acabar travando seu jogo e só usem quando for realmente necessário e esperar que isso aqui seja executado para então continuar o seu código e agora que a gente terminou de falar de eventos a gente tem aqui todos os controles
mas se você observar na maioria desses comandos eles vão ter uma caixinha hexagonal aqui essa forma que tá aqui e essa caixinha ela serve pra gente colocar alguns comandos desse tipo aqui que são basicamente no mesmo formato só que um pouquinho mais alongados e quando a gente faz isso a gente consegue executar esses comandos aqui de controle se eu fosse explicar agora os comandos de controle a gente não conseguiria nem testar isso aqui eu não conseguiria nem mesmo mostrar para vocês o que tá acontecendo aqui então por isso a gente vai dar um pulinho bem
rápido agora para sensores a gente fala de sensores e depois a gente volta aqui para controle seguindo Essa ordem aqui para começar o que que é um sensor um sensor vai ser um comando capaz de verificar se alguma coisa tá acontecendo no nosso jogo como por exemplo tocando em ponteiro do mouse tocando em alguma cor ou até mesmo se alguma tecla foi pressionada e aqui em sensores vocês vão perceber que existem dois tipos de comando esses que são hexagonais nesse formato aqui e esses que são com as bordas arredondadas todos esses que forem hexagonais eles
vão dar apenas duas respostas ou true ou false ou seja ou Verdadeiro se isso aqui realmente está acontecendo ou false se isso não tiver acontecendo Então nesse caso aqui o meu mouse tá tocando no meu gatinho agora não como isso não está acontecendo ele retorna fals Ou seja é falso Isso daqui agora vamos supor que eu uso esse comando aqui e aqui eu vou vi por exemplo e buscar essa maçã de novo que a gente já tinha usado se eu eu coloco esse gatinho encostando na maçã e eu troco essa cor aqui pelo vermelho da
maçã e para fazer isso é só clicar aqui na cor e usar essa lupa se eu quiser pegar uma cor específica aqui do meu palco como o meu gatinho está tocando na maçã Esse comando aqui vai falar true Ou seja é verdade que o meu gatinho ou seja o ator onde tá esse comando está tocando nessa cor aqui que é exatamente a cor da maçã se eu tiro o meu gatinho daqui o meu gatinho não está mais tocando na maçã e agora quando eu clico nesse comando ele me fala que é false Ou seja é
falso é mentira que ele tá tocando na maçã como a gente tá vendo aqui já esses comandos com a borda arredondada aqui como por exemplo esse aqui distância até o ponteiro do mouse Ele não retorna esse verdadeiro ou esse falso ele vai retornar algum valor alguma informação como por exemplo esse aqui que retorna a distância até o meu ponteiro do mouse Ou seja a distância do meu gatinho até o meu mouse que tá aqui então aqui a gente praticamente já falou desses quatro primeiros comandos como eu falei esse primeiro verifica se o meu ator tá
tocando no ponteiro do mouse esse segundo aqui verifica se o meu ator tá tocando em alguma cor específica aqui no meu Palco que nesse caso tá tocando na maçã e ele retorna Sim esse terceiro aqui ele é muito legal porque ele verifica se alguma cor do meu ator está tocando em outra cor aqui no meu Palco então eu posso querer saber se o branco da calda do meu ator ele tá tocando nesse mesmo vermelho aqui da maçã e como isso não tá acontecendo ele vai retornar falso se agora qualquer branco do meu ator seja do
rosto seja da cauda tiver tocando ele vai retornar verdadeiro quando eu encosto a cauda aqui ele também retorna verdadeiro e se você tá perguntando para que que a gente usaria isso eu vou mostrar para vocês aqui no jogo do pac-man que eu usei para poder criar colisões aqui durante todo o jogo eu quero saber para onde meu fantasma pode ir ou seja se ele pode ir para cima para baixo ou pra direita ou pra esquerda E para isso eu preciso ver se esse fantasma tá tocando aqui nesses labirintos e para resolver isso eu criei essa
fantasia aqui que são quatro cores diferentes e aqui no meu código eu uso Exatamente isso se essa cor amarela tiver tocando nessa cor azul do labirinto ele não pode ir para cima essa cor verde aqui não tá tocando no labirinto Então ele pode pra direita então aqui usando essas duas informações a cor do meu ator e essa cor aqui do cenário eu consigo determinar para onde eu posso me mover E como eu tinha falado esse último comando aqui e diz a distância do meu gatinho até o ponteiro do mouse então é 369 só que eu
também posso trocar aqui por qualquer ator que eu tiver aqui então se eu quiser saber a distância do gatinho até a maçã é 57 se eu trago a maçã mais para cá essa distância aumenta e agora é 290 e a gente pode inclusive usar essa distância aqui para tomar decisões mas a gente fala sobre isso depois continuando aqui esse sensor ele vai perguntar algo pro seu jogador e vai esperar até que ele responda e essa informação que tá aqui embaixo vai ser exatamente a resposta do meu jogador então quando eu clico aqui ele perguntou qual
o seu nome eu vou colocar meu nome aqui Lucas Leal quando eu clico aqui essa informação aqui em cima já foi atualizada E se eu clicar aqui na resposta tem exatamente o mesmo valor Esse comando aqui como o próprio texto sugere ele verifica se uma tecla foi pressionada então verifico agora se espaço foi pressionado ele não tá sendo pressionado e essa outra aqui verifica se o mouse foi pressionado ou seja se a gente Tá clicando com algum botão do mouse e essas duas aqui de baixo me dizem a posição x do meu mouse que como
eu tô aqui fora da tela é -240 e a posição Y do meu mouse que é - 1880 porque eu tô abaixo do meu palco por mais que esses comandos eles pareçam meio simples e só verifiquem algumas coisas daqui a pouquinho a gente vai utilizar eles na prática e aí sim vocês vão ver o quanto eles são úteis inclusive Esse comando aqui de tecla espaço pressionada a gente vai utilizar Quando a gente fala em controles para poder criar a movimentação do meu gatinho de uma forma muito mais legal do que a gente tinha quando a
gente usou os eventos aqui a gente tem defina o modo de arrasto para ele de forma alguma se eu volto aqui e troco para que a gente ia falar sobre ruído e cronômetro e é exatamente sobre isso que a gente vai falar agora o ruído basicamente vai verificar o quanto de som que tá saindo do meu microfone e o cronômetro verifica quantos segundos se passaram desde que eu cliquei aqui na bandeira verde quando eu clico aqui na bandeira Verde ele volta a zero eu posso ver essas informações aqui ou posso arrastar para cá para poder
verificar as informações exatamente da mesma forma que elas aparecem aqui caso eu queira zerar esse cronômetro aqui eu posso usar esse outro comando e pronto agora também o meu cronômetro voltou a ser zero esse aqui é um super útil que a gente tem no Scratch porque muitas vezes a gente quer saber informações de outros atores para poder tomar nossas decisões por exemplo vamos supor que eu quero saber qual o x e o y dessa maçã eu poderia clicar nessa maçã olhar essa informação aqui só que eu não teria essa informação aqui dentro do gatinho e
esse comando aqui permite que a gente consiga saber de forma muito fácil várias informações de qualquer ator que tiver aqui ou até mesmo do nosso palco então do palco eu posso saber o número do cenário o nome do cenário qual o volume e até informações sobre variável que a gente vai falar daqui a pouco se eu troco aqui pelo meu ator eu tenho Qual é a posição x dele ou seja qual esse valor aqui da maçã e também a posição Y que é esse valor aqui quando eu venho aqui e clico - 1661 e pro
y98 como a gente acabou de ver além disso a gente poderia saber a direção da maçã o número e o nome da fantasia que ela tá atualmente qual o tamanho dela e o volume do som que tiver tocando nesse ator e eu posso até usar isso para comparar a posição x da maçã com a posição x do meu ator e a gente tem a posição x aqui dentro de movimento então aqui a posição x do meu gatinho 49 e a posição x da maçã é -161 E daqui a pouquinho quando a gente falar de controles
e de operadores eu vou mostrar para vocês como a gente pode usar essas duas informações para fazer o meu gatinho andar atrás da maçã assim como eu fiz pros Fantasminhas perseguirem o pac-man nesse jogo aqui do pac-man que eu criei só para fechar Vamos agora falar desses três últimos comandos aqui esse Primeiro Comando me fala sobre datas ou seja qual o ano atual qual mês atual qual o dia de hoje então hoje é dia 16 a gente também pode usar isso para saber hora minuto e segundo então se você quiser criar um jogo que fique
escuro se o jogador tiver jogando à noite você pode usar por exemplo a hora atual esse outro comando aqui me diz quantos dias se passaram desde 2000 e não é um comando que eu costumo usar muito os meus jogos então não vou focar muito nele e esse último me diz o nome do usuário que tá jogando e é exatamente o mesmo nome que aparece aqui e você pode utilizar Por exemplo quando você quiser fazer ranking ou seja quem foi o melhor jogador quem fez mais pontos e nesse caso o nome de usuário vai ser bem
útil com isso a gente fechou uma explicação rápida aqui dos sensores só que a gente vai voltar neles tanto agora quando a gente falar de controles quanto aqui quando a gente falar de operadores então Fiquem tranquilos que a gente vai revisar bastante tudo que a gente falou aqui e agora vamos falar desses comandos aqui de controle esse espere um segundo como a gente já falou vai esperar um segundo até executar o comando seguinte então vamos supor que eu tô aqui em movimento vou usar o mova da espaços vou pedir para ele esperar um segundo e
de novo usar o mova da espaços Então o que ele vai fazer ele executou esse Primeiro Comando esperou um segundo e depois executou esse aqui e o espera é super útil porque muitas vezes a gente precisa esperar alguma coisa acontecer ou a gente precisa dar um tempo pro usuário fazer alguma coisa agora vamos supor que eu tenho um gatinho aqui no meio da tela e eu quero que ele vá andando 10 passos a cada um segundo então eu posso usar de novo esse espere um segundo aqui e posso ficar duplicando Esse comando quantas vezes eu
quiser até conseguir chegar aqui no canto da tela só que agora vamos supor que em vez de dar 10 passos eu quero dar 20 Passos eu teria que mudar aqui aqui aqui aqui e Isso daria um trabalho enorme e não vai ser isso que a gente quer fazer se a gente tem um bloco de comandos como esse aqui E esse bloco tá se repetindo várias e várias vezes ao invés de ficar repetindo isso podemos usar os comandos de repetição como esse repita 10 vezes então aqui se eu tô executando uma 2 3 4 cinco vezes
esse bloco eu posso simplesmente pegar um único bloco desse trazer aqui para dentro e trocar esse 10 por 5 agora a gente tá fazendo a mesma coisa só que se eu precisar por exemplo mudar o número de Passos ou até mudar o tempo a gente só precisa fazer isso uma única vez e fica muito mais fácil caso a gente precise fazer qualquer ajuste no nosso código outro comando de repetição muito importante também é esse sempre porque vamos supor que eu quisesse que o meu gatinho ficasse andando aqui na tela durante todo o meu jogo eu
poderia simplesmente em vez de usar o repita usar o sempre e para ele poder andar um pouquinho mais rápido eu vou tirar esse espere dois segundos quando eu faço isso aqui ele fica travado aqui no canto e a gente sabe porque isso acontece porque a gente ainda não usou esse comando aqui de se tocar na borda volte quando a gente coloca esse comando aqui dentro ele tá batendo de um lado pro outro e se a gente mudar um pouquinho a direção observa que agora ele fica andando por toda a nossa tela e é exatamente essa
estrutura que a gente vai utilizar em jogos como esse aqui o pong onde a gente precisa que essa bolinha fique batendo para sempre aqui na tela até a gente fazer o número máximo de pontos ou encostar nessa linha Aqui de baixo e é exatamente isso que eu tô usando aqui e pra gente criar uma linha como essa aqui de baixo que vai fazer o meu gatinho parar quando ele encostar nela a gente vai usar esse si aqui e é uma estrutura de seleção que também é super importante na hora de criação dos seus jogos se
eu vi aqui buscar por um novo ator e usar esse ator Line aqui que é o mesmo que eu utilizei no meu jogo pong colocar ele aqui embaixo eu posso vir aqui no meu ator e aqui dentro do si eu vou falar que se esse gatinho tiver tocando nessa linha eu quero acabar o jogo PR saber se o gatinho tá tocando na linha A gente já falou como faz isso e é exatamente vindo aqui em sensores e usando tocando em e trocando esse ponteiro do mouse pelo nome desse ator para seguir as boas práticas aqui
eu vou chamar de linha e vou chamar esse gato aqui também de gatinho aqui eu vou trocar por linha e aqui em comandos eu posso usar esse pare todos aqui embaixo a gente já vai falar dele mas só para explicar de forma muito rápida o pare todos Como o próprio nome disse vai parar tudo que tiver acontecendo no meu jogo ou seja vai fazer o meu jogo acabar então se eu clico nesse bloquinho aqui assim que o gatinho encostar na linha vermelha acabou o meu jogo e agora eu quero relembrar quando a gente estava aqui
em eventos a gente usou esse evento de quando a tecla D for pressionada junto com adicione 10 AX para mover o meu gatinho pra direita então se eu volto ele para 90º e apago essa linha quando eu clico no dele tá indo pra direita a gente fez a mesma coisa aqui trocando por a e aqui por menos 10 para mover ele pra esquerda só que a gente tinha comentado que às vezes esse gatinho dá uma pequena travada como a gente tá vendo aqui e eu falei para vocês que quando a gente tivesse em controle eu
ia mostrar uma forma mais eficiente de fazer isso E para isso a gente pode vir aqui em controle usar o sempre primeiro e depois usar um si para verificar se alguma coisa tá acontecendo o que eu quero verificar se tá acontecendo é aqui em sensores ver se a tecla D foi pressionada então vou trocar aqui por D e se isso acontecer eu vou querer adicionar 10 a x observa que agora a gente tá fazendo a mesma coisa quando a tecla D for adicionada a gente tá adicionando o 10 AX aqui eu vou duplicar vou trocar
esse D por a e o 10 por -10 e agora a gente pode tirar esses dois comandos aqui e só para fechar eu vou vir aqui em cima e falar que quando a bandeira Verde for tocada eu quero executar para sempre essa verificação então o que que eu tô verificando primeiro se a tecla D tá sendo pressionada se isso acontecer eu vou ir pra direita e depois eu verifico se a tecla a for pressionada e se isso acontecer eu tô indo pra esquerda agora observa como o meu movimento tá muito mais suave do que a
gente tinha quando a gente usou os eventos com isso a gente já conseguiu dar uma melhorada na nossa movimentação do gatinho Mas agora vamos supor que a gente tá caminhando para trás e pra frente mas aqui eu quero criar uma área que ele vai andar um pouco mais devagar como se fosse sei lá uma área de lama onde o meu gatinho tem mais dificuldade para andar para isso eu posso vir aqui em cenários vir aqui em cima em cenários e aqui eu vou colocar uma cor tipo uma cor de lama esse marrom meio estranho aqui
vou criar esse retângulo no meio e vou ajustar aqui para ficar do jeito que eu quiser agora o que eu quero fazer aqui no meu código eu quero falar que se o meu gatinho tiver nessa região aqui eu quero que em vez de adicionar 10 AX eu adicione cin AX porque eu quero fazer o meu movimento ser um pouco mais lento então como eu posso fazer isso a gente sabe aqui em sensores que eu posso ver se o gatinho tá tocando nessa cor e para isso eu vou usar esse comando aqui vou clicar aqui nessa
cor clicar na lupa e clicar aqui na cor dessa lama depois eu vou vi aqui em controle e agora eu vou usar esse c senão basicamente o que ele vai fazer aqui a gente vai ter a condição da mesma forma que a gente tinha no SI então eu teria isso daqui eu verificaria se ele está tocando na cor da mesma forma que eu tô fazendo aqui só que nesse Esse comando aqui se isso aqui não tiver acontecendo ele não vai fazer absolutamente nada ou seja se o meu gatinho não tiver tocando na cor dessa lama
nada vai ser feito aqui embaixo mesmo que eu não esteja tocando tem uma região onde eu posso colocar os meus códigos que eu quero que sejam executados se essa condição aqui não acontecer então basicamente eu vou ver se ele tá tocando na lama se ele tocar eu quero que Ele ande mais devagar Então Posso duplicar Esse comando colocar aqui e pedir para adicionar cinco a x e se eu tivesse fazendo aqui em cima teria a mesma coisa agora se ele não tiver tocando se ele tiver nessa região branca aqui aí eu quero que ele continue
adicionando 10 AX PR ele andar na mesma velocidade que ele já estava andando e olha a diferença se eu tivesse somente Esse comando quando ele não tivesse encostando nessa cor ele não ia fazer absolutamente nada o meu gatinho ia est paralisado aqui ele só conseguiria se mover PR direita se ele tivesse dentro dessa região quando eu troco por esse si se não se ele tiver aqui desse lado ele vai andar com essa velocidade 10 aqui e se ele tiver aqui no meio indo pra direita ele anda com essa velocidade cinco então Esse comando é muito
legal que permite a a gente adicionar condições aqui embaixo caso essa condição que a gente tá verificando não seja satisfeita e a gente pode fazer a mesma coisa aqui embaixo Trocando tudo que é positivo para negativo Então vou duplicar Vou colocar aqui aqui eu coloco -5 aqui eu coloco -10 agora quando eu clico na bandeira verde quando ele tá aqui ele tá andando muito mais rápido e aqui ele anda bem mais devagarzinho só pra gente fechar essa parte garantindo que o movimento vai ficar muito mais bonitinho eu queria em vez do meu gatinho ficar dando
ré aqui ele olhar para lá ele olhar pra esquerda e quando ele tá vindo para cá ele realmente continuar olhando pra direita para fazer isso eu posso usar exatamente Esse comando de aponte pra direção se ele tá indo pra direita eu quero apontar pra direção 90 e se ele tiver indo pra esquerda eu quero apontar para essa direção aqui ou seja pra direção 90 quando eu clico na bandeira verde de novo ele tá vindo para cá se eu vou para outro lado ele tá indo de cabeça para baixo mas Lucas eu não quero que ele
fique de cabeça para baixo e só pra gente fechar essa parte a gente vai usar de novo esse defino estilo de rotação deixar aqui esquerda direita vou trazer ele aqui pro início e quando a gente clica nele observa que ele tá indo pra direita olhando para cá agora ele tá indo pra esquerda olhando para cá e toda vez que ele passa aqui ele anda bem mais devagarzinho só pra gente fechar essa parte de comandos eu quero criar agora uma bolinha tipo essa daqui pra explicação ficar mais fácil e vocês entenderem melhor esses últimos três comandos
aqui então vou clicar aqui e vou buscar na lupa pela bolinha aqui eu vou diminuir ela um pouquinho e dentro desse ator vou pedir para sempre para ele mover da espaços e se ele tocar na borda eu quero que ele volte só para garantir que a bolinha não vai ficar só indo pra direita e pra esquerda dessa forma aqui no início eu vou pedir para ele girar 15º como eu quero fazer isso assim que a bandeira Verde for clicada vou vir aqui em eventos e usar o quando a bandeira Verde for clicada com isso a
minha bolinha já tá se mexendo de forma aleatória aqui no meu jogo se eu quiser terminar o meu jogo assim que a bolinha encostar no meu gatinho eu posso usar esse outro comando aqui que exatamente Espere Até que alguma coisa aconteça e aqui na bolinha eu quero esperar exatamente que ela encoste no gatinho Então posso vir aqui em sensores e falar tocando hein eu vou trocar aqui pelo gatinho quando eu coloco esse evento de quando a bandeira Verde for clicada a assim que o meu jogo começar Ou seja que eu clicar aqui eu vou esperar
até que a bolinha esteja tocando no meu gatinho e quando isso acontecer eu vou executar todos os outros comandos que tiver aqui embaixo Então posso colocar comando de movimentar posso colocar por exemplo um som posso fazer o que eu quiser mas o que eu quero é terminar o meu jogo E para isso eu vou vir aqui em controle e usar esse pare todos quando eu uso esse pare todos todos os meus atores vão parar de executar qualquer coisa que eles estejam fazendo e com isso o nosso jogo acaba então agora quando eu clico na bandeira
verde eu tô movimentando o meu gatinho e eu vou tentar evitar essa bolinha não deixar que ela encoste em mim agora quando ela encostou aqui todo o meu jogo parou e mesmo eu clicando no d ou no a o meu gatinho não se move mais quando eu clico aqui novamente minha bolinha continua se mexendo e de novo quando ela encosta em mim o meu jogo acabou e aqui embaixo a gente tem mais um comando de repita um pouco diferente desses outros dois comandos aqui esse primeiro comando ele repete Exatamente esse número aqui de vezes então
a gente sabe quantas vezes ele vai se repetir já esse outro comando aqui vai repetir para sempre ou seja vai repetir durante todo o meu jogo já esse repita até aqui ele vai ficar executando até alguma coisa acontecer então por exemplo se eu quiser que essa bolinha fique se movimentando mas se quando eu apertar a tecla espaço ela pare eu posso pedir que esse comando aqui ele se repita Até que a tecla espaço seja pressionada e depois ele vai parar de executar então eu posso trazer isso aqui para dentro aqui nessa condição eu vou vir
aqui em sensores e usar esse tecla espaço pressionada posso tirar esse sempre daqui trazer esse comando para cá e agora a minha bolinha tá se movendo mas assim que eu apertar a tecla espaço ela parou de se mover só que eu ainda consigo o meu gatinho E observa que esse comando ainda tá em laranja porque minha bolinha ainda não tocou no gatinho Então ela tá esperando até agora que isso aqui aconteça e agora falando desse par e todos que a gente já utilizou a gente pode usar ele para parar todo o jogo como a gente
já estava fazendo a gente pode parar só o script que ele tiver Então se por exemplo eu parar somente esse script observa que ele parou de ser executado mas a bolinha ainda tá se mexendo porque eu não parei esse script aqui ou seja eu só parei o bloco de códigos onde ele está e é importante a gente entender O que é essa palavra aqui script script basicamente vai ser cada um dos blocos de código que a gente tem aqui no nosso ator Então esse aqui é um bloco de código esse aqui é um bloco de
códigos e sempre os blocos de códigos vão começar por um comando que tem um formato desse aqui como esses eventos que a gente tem aqui esse comando aqui de quando eu começar como um clone E observa que todos eles só tem esse encaixe Zinho aqui na parte de baixo e claro que todos os scripts vão executar alguma coisa então eles vão ter uma lista de comandos aqui embaixo fazendo o meu ator executar alguma ação Então isso é um inscrip isso é outro isso é outro quando eu troco aqui por pare este Script o que isso
aqui vai fazer é parar somente o script onde tá esse comando aqui então se eu tiver aqui executando a bolinha tá andando e quando ela encosta no gatinho ela só tá parando esse script que eu tô aqui e ela não para nenhum outro script desse ator e nem dos outros atores aqui no Scratch é bem legal que dá pra gente ver o que tá sendo executado por essa bordinha aqui em amarelo então tudo que tá em amarelo tá sendo executado nesse momento e tudo que não está em amarelo não está sendo do executado como eu
parei esse script aqui ele parou de ser executado agora se eu clico de novo nessa Bandeira Verde ele começou a ser executado e assim que a bola clica no gatinho ele não tá mais sendo executado se eu troco aqui por outros scripts no ator ele vai parar todos os outros scripts que tiverem aqui menos esse script aqui onde esse comando está e agora quando eu clico aqui assim que ele encosta no meu gatinho esse script aqui para de ser executado mas Lucas esse script aqui também parou de ser executado e isso só acontece porque o
script acabou Ele executou esse comando executou Esse comando não tinha mais nada para executar o script finalizou Se eu tivesse mais comandos aqui embaixo por exemplo pedindo para ele mudar a fantasia pedindo até mesmo para ele esperar algum tempo e eu posso colocar esper 10 segundos aqui observa que esse script aqui não vai parar porque aqui a gente pediu para ele parar os outros scripts no ator Então minha bolinha tá andando quando ela encosta no meu gatinho esse script parou e esse continuou sendo executado ele vai ser executado até esse último comando quando esse último
comando foi executado acabou meu script também uma observação importante é que aqui ele tá parando esse script aqui mas não faz nada com o script do gatinho se eu venho aqui agora e peço para parar esse script aqui quando o meu gatinho Encosta na bolinha ele parou esse script esse aqui continua mas o meu gatinho também não acontece nada a única forma de parar o script aqui desse gatinho é se eu trocar aqui por todos agora quando eu clico na bolinha realmente a gente parou todo mundo aqui da bolinha e todo mundo aqui do gatinho
também então só Relembrando quando eu troco aqui para todos ele vai parar o script de todos os atores quando eu troco aqui por este script ele só para o script onde esse comando tiver se eu troco aqui por outros scripts no ator ele vai parar todos os outros scripts Ou seja todos os outros blocos de comando que tiver no ator menos esse aqui onde esse comando estiver e agora só para fechar essa parte de controle vamos falar de Clones vamos supor que agora eu quero ter alguns bloquinhos desse aqui pra minha bolinha quebrar enquanto a
gente tá jogando e se eu conseguisse quebrar todos os bloquinhos eu ganharia o jogo eu posso fazer isso vindo aqui em selecionar um ator e buscando por exemplo por esse ator botão três PR mim tá bem legal aqui eu vou diminuir um pouquinho o tamanho dele e agora eu quero criar uma linha aqui com vários desses blocos e como eu faria isso eu clicaria aqui em duplicar e colocaria ele aqui clicaria aqui em duplicar e colocaria ele aqui só que isso vai dar muito trabalho Imagina você ter que ficar criando código para esse ator esse
ator esse ator isso seria realmente impossível de fazer e para facilitar esse processo que a gente tem exatamente Os Clones Então posso por exemplo pedir que esse bloco comece aqui em x = 200 e y = 20 e para ele sempre começar nessa posição vou vir aqui em movimento e pedir para ele ir para esse valor de x e de y agora para eu poder duplicar esse bloco eu vou vir aqui em controles vou pedir para criar um clone desse ator quando eu faço isso agora eu tenho dois atores iguais e o meu clone tá
aqui e o meu ator tá aqui eu poderia aqui por exemplo colocar o x = -160 pedi de novo para criar outro clone agora eu tenho três atores iguais e aqui o meu x tá igual a 120 e eu poderia criar um outro Clone e colocar aqui o meu xinho 80 porque eu tô aumentando de 40 em 40 Então esse aqui foi menos 200 esse menos 160 esse - 120 o próximo seria por exemplo -80 só que em vez de ficar clicando aqui e mexendo nesse ator eu posso aumentar o meu valor de X vindo
aqui em movimento e pedir para adicionar 40x para esses Clones sumirem aqui na tela é só eu clicar nesse botão aqui de pare agora quando eu clico aqui e clico várias vezes nesse comando eu tô criando essa linha aqui cheia de Clones então se eu contar quantos Clones eu tenho aqui 1 2 3 4 5 6 7 8 9 10 11 eu posso usar esse comando de repita juntar isso aqui aqui eu vou trocar por 11 juntar todo esse bloco e falar que assim que a bandeira Verde for clicada eu quero que tudo isso aqui
seja executado com isso assim que eu clico nessa Bandeira verde eu tenho uma linha completa de Clones e eu posso falar que quando a bolinha encostar nesse Clone quando ela passar por esse Clone eu quero que esse Clone suma e a gente vai tentar acabar com todos os clones que estão nessa linha aqui antes da bolinha encostar no meu gatinho e toda vez que eu crio um clone para eu poder colocar comandos para esse clone para eu poder mandar el fazer alguma uma coisa aqui em controle eu vou usar esse outro comando de quando eu
começar como um clone então aqui basicamente o que eu tô fazendo eu tô criando um clone desse ator quando esse Clone aparece aqui ele vai ter todos os comandos que tiverem aqui embaixo então eu posso pedir por exemplo que ele Espere Até que alguma coisa aconteça o que que eu quero que aconteça exatamente que ele esteja tocando na minha bolinha e quando isso acontecer eu quero que esse Clone suma eu não quero ver mais ele aqui E para isso eu vou vir aqui em controle novamente e pedir para apagar esse Clone então quando eu clico
na bandeira Verde já apareceu essa linha e toda vez que a bolinha tá encostando em algum desses Clones ele tá desaparecendo encostou no meu gatinho o meu jogo acabou então basicamente o que que é um clone um clone é uma cópia do meu ator que pode ter os seus próprios comandos e toda vez se eu quiser passar um comando para um clone eu vou colocar logo embaixo desse comando aqui de quando eu começar como um clone se eu não quiser mais que esse Clone exista se eu quiser apagar ele que ele suma aqui do meu
palco É só usar esse outro comando aqui de apaga esse Clone então basicamente o que a gente tá fazendo aqui a gente tá criando um clone deste ator tá passando aqui uma lista de comandos para ele executar assim que ele começar aqui no meu Palco e aqui no final a gente tá apagando esse Clone E com isso a gente finaliza a vida dele aqui no meu jogo e agora que a gente já falou sobre tudo isso Vamos criar essa versão aqui do pong com blocos que basicamente é a versão do pong que a gente já
conhece só que com esses blocos aqui em cima que a gente acabou de aprender como a gente pode fazer eu quero aproveitar para mostrar para vocês essa região aqui do scratch onde tem várias ideias para você poder começar a fazer seus próprios projetos Inclusive essa ideia do pong é uma das ideias que estão aqui então você pode clicar aqui e aqui em cartões de programação Você pode baixar esse PDF aqui que tem o passo a passo explicando tudo que você precisa fazer para criar o seu primeiro jogo então dá uma paradinha nesse vídeo tenta seguir
esse passo a passo e depois continua assistindo aqui comigo então vamos começar a fazer o nosso jogo para começar como eu não preciso do gatinho posso clicar na lixeira e apagar Ele e agora a gente vai vir aqui em selecionar o ator e buscar por essa bolinha aqui que a gente já usou mais cedo aqui na aula aqui eu vou diminuir um pouquinho o tamanho dela e para mim 50 tá legal a primeira coisa que eu quero fazer nesse jogo pong é fazer a bolinha ficar se movendo aqui no meu Palco E para isso a
gente sabe como a gente quer fazer toda vez que a gente for criar um bloco de comandos o nosso script a gente vai começar com evento indicando que alguma coisa aconteceu e nesse caso que eu quero que aconteça é que essa bandeira Verde tenha sido clicada então eu vou vir aqui em eventos e usar o quando a bandeira Verde for clicado depois eu quero que para sempre essa bolinha fique se movimentando aqui no meu Palco então aqui em controle eu vou usar o sempre em movimento vou usar o mova da espaços e colocar ele aqui
dentro agora quando eu clico na bandeira Verde minha bolinha se movimentou Mas ela ficou parada aqui isso porque a gente não tinha usado se tocar na borda volte e agora ela tá voltando e para ela não ficar só andando da direita pra esquerda aqui antes mesmo dela começar se movimentar eu vou usar um giro e 15º quando eu clico aqui novamente pronto a minha bolinha já tá se movendo no meu Palco depois disso aqui no meu jogo eu tenho essa raquete aqui que assim que a bolinha bate nela ela volta aqui para cima e para
fazer essa raquete eu vou vir aqui novamente vou clicar aqui embaixo em selecionar o ator e buscar aqui até encontrar esse ator aqui seguindo as boas práticas vou mudar esse nome aqui pra bolinha e esse nome pra raquete a primeira coisa é que eu só quero que essa raquete que se movimente nessa direção aqui ou seja só vá pra esquerda ou pra direita e eu não quero que ela vá nem para cima nem para baixo e para ela só se movimentar nessa direção a única coisa que a gente vai mudar é o valor de X
dessa raquete e para fazer isso é só a gente vir aqui em movimento e pedir para mudar a posição X dela e aqui eu vou usar esse Mood X para mas Lucas qual eu quero que seja o valor de X dessa raquete se eu quero que ela vá exatamente para onde está o meu mouse eu posso falar para mudar o x da raquete para a posição x do meu mouse e a gente tem essa informação exatamente aqui em sensores no posição x do meu mouse para fechar é só vir aqui em controles e pedir para
ele sempre fazer isso com isso agora a minha raquete Já tá andando perseguindo o meu mouse para ela fazer isso sempre que o meu jogo começar vou vir aqui em eventos e pedir para fazer isso quando a bandeira Verde for clicada só para fechar eu quero falar dois pontos com vocês aqui o meu valor de y é Men 133 Mas vamos supor que sem querer eu peguei essa raquete e coloquei ela aqui em cima no início de qualquer jogo é sempre legal a gente determinar Quais são as configurações iniciais do nosso jogo e nesse caso
as configurações iniciais da raquete seria que ela deveria começar aqui embaixo em menos 133 E para isso eu quero mudar Só o meu valor de y e vou fazer isso vindo aqui em movimento e pedir para mudar o Y para -133 agora Independente de Onde tiver essa raquete quando a bandeira verde é clicada ela volta aqui para baixo mas agora observa que a gente ainda tem um problema a bolinha não tá voltando ao clicar nessa raquete e para fazer isso aqui na bolinha eu vou verificar se alguma coisa aconteceu então para isso eu vou utilizar
o si e o que eu quero ver se aconteceu é exatamente se essa bolinha está tocando em raquete e se isso acontecer a gente pode pedir para que ela gire 180º porque se a bolinha tiver vindo nessa direção aqui quando ela girar 180º ela vai voltar seguindo essa mesma linha só que apontando pra outra direção Então vamos supor que essa Bolinha tá aqui apontando para Men 120º quando eu peço para ela girar 180º ela vai fazer exatamente isso daqui ou seja ela acabou de apontar pro lado oposto aonde a gente tava e para fazer isso
eu vou usar esse mesmo comando de gire vir em movimentos colocar aqui dentro e aqui eu vou trocar por 180 nesse caso quando eu começo o meu jogo minha bolinha toca na raquete ela tá voltando aqui para cima e não tá mais indo aqui para baixo e para criar essa linha vermelha a gente vai seguir a mesma lógica vou vir aqui em ator procurar por essa linha aqui chamada Line aqui eu vou trazer ela o mais baixo possível que eu consegui na minha tela e pedir para que o início do jogo ele vá para essa
posição de x e y aqui e de novo a gente vai fazer isso usando esse comando de vá pra x e y e aqui também eu vou trocar o nome pra linha aqui na bolinha além de verificar se ela tá tocando na raquete Eu também quero verificar se ele tocou nessa linha então eu vou duplicar Esse comando aqui aqui aqui eu vou trocar raquete por linha e aqui dentro eu vou usar o comando de par e todos porque eu realmente quero que o meu jogo acabe agora enquanto eu tô jogando você minha bolinha Encosta na
raquete ela volta aqui para cima mas se ela encosta nessa linha o meu jogo acabou para tornar esse jogo mais legal e a gente ter como ganhar esse jogo eu vou criar agora esses bloquinhos que estão aqui em cima e a gente já falou como faz isso quando a gente estava falando de Clones Então vou vir aqui em selecionar um ator vou usar esse botão três aqui eu vou mudar o tamanho para 40 e vou posicionar esse ator um pouco mais para cá e vou subir ele só um pouquinho aqui para cima só para esses
números aqui ficar ficarem mais redondos aqui eu vou colocar menos 200 e aqui eu vou colocar 30 para esse ator sempre começar nessa posição de novo eu vou vir aqui em eventos e usar o vá pra x e y agora eu vou criar um clone desse ator usando esse comando aqui e depois vou pedir para esse ator vim para cá mais ou menos aqui em 160 e para fazer isso bastava eu adicionar 40x como a gente acabou de falar trocando esse 10 aqui por 40 a gente consegue criar Clones nessa linha inteira Então como a
gente tem 11 bloquinhos aqui eu vou pedir para ele repetir esse comando 11 vezes quando eu clicar aqui todos esses Clones vão sumir se eu juntar Esse comando e clicar novamente na bandeira Verde Ele criou essa primeira linha só que agora eu queria criar mais de uma linha e para fazer isso eu posso pedir para que esse bloco volte aqui para cima e depois ele repita novamente Esse comando para criar uma nova linha depois pedir para ele voltar aqui para cima de novo e repetir novamente Esse comando e fazer isso para quantas linhas horizontais a
gente quiser Ah Lucas Mas como eu faria por exemplo para esse bloco vir aqui para cima então basicamente o que a gente fez foi tirar o bloquinho que tava aqui para pedir para ele passar aqui para cima observa que esse valor de X aqui é o mesmo o valor de X Inicial porque a posição x do meu novo bloco é a mesma posição x desse bloco aqui a única coisa que a gente tá mudando agora é que esse bloco tá indo para cima ou seja a gente tá se movendo nessa direção aqui e é exatamente
o meu Y Então esse primeiro bloco aqui tinha o valor de y = a 30 e agora a gente tem o y = 57 Ou seja a gente colocou o valor de x igual a esse valor que a gente já tinha aqui E esse valor aqui de y a gente aumentou 30 e para fazer isso é só a gente vir aqui em movimento pedir para mudar o x para esse mesmo valor aqui que a gente já tinha e no y a gente vai adicionar 30 com isso quando a gente Apagar todos esses blocos aqui eu
posso colocar esse bloquinho aonde eu quiser quando eu clicar nesse comando ele vem para cá agora eu já tô gerando a primeira linha e tô fazendo o bloquinho parar aqui em cima quando eu clico aqui novamente gerou a segunda linha o bloquinho veio para cá clicar novamente ele vem para cá e eu clico novamente ele vem para cá novamente e com isso eu já consegui criar essas quatro linhas que a gente tem aqui então basicamente o eu quero fazer agora é repetir esse bloco de comando aqui 1 2 3 quatro vezes então quando eu venho
aqui em controle e peço repita quatro vezes quando eu juntar todo esse bloquinho aqui e clicar novamente na bandeira Verde ele já tá gerando essas quatro primeiras linhas mas Lucas e esse bloco que tá aqui em cima todos esses blocos que estão aqui eles são clones e esse bloco aqui é o meu ator verdadeiro se eu não quiser que ele apareça é só a gente vir aqui em aparência e usar o esconda que eu já expliquei PR vocês Lembrando que quase sempre que a gente usar o esconda a gente vai precisar usar o mostre e
agora quando eu clico aqui novamente e clico na bandeira Verde ele já tá gerando essas quatro linhas aqui e o bloquinho não tá mais aparecendo aqui em cima Ah Lucas beleza feito isso agora eu queria que quando a bolinha encostasse aqui no Clone esse Clone desaparecesse E para isso eu vou vir aqui em controle usar o quando eu começar como um clone e assim como a gente acabou de fazer vou usar o spere Até que em sensores eu vou procurar o tocando em trocar aqui por bolinha e novamente aqui em controle vou usar o apaga
ess clone agora quando eu clico novamente assim que a minha bolinha tiver encostando nesses atores eles já estão sumindo mas Lucas quando eu clico aqui na bandeira a bolinha não tá nem esperando todos os clones serem gerados para já começar a pagar esses Clones e a gente pode melhorar esse jogo assim como eu falei para vocês que fiz o jogo do Pacman pedindo que primeiro ele Execute esse bloco de comandos aqui para gerar todos os nossos blocos aqui em cima e só então ele libera o nosso jogo para começar E para isso a gente vai
usar a transmissão de mensagens então vou vir aqui em eventos pedir para ele transmitir uma mensagem avisando que o jogo tá pronto e essa mensagem eu vou chamar exatamente de jogo pronto aqui na bolinha ao invés de começar o jogo assim que a bandeira verde foi clicada eu só quero começar quando eu receber jogo pronto e para isso eu vou usar esse comando aqui só que tem um problema vamos supor que eu comecei a Gerar os blocos e a bolinha tá aqui observa que os blocos já foram gerados e sumiram então para garantir que essa
bolinha não vai começar nessa região aqui onde vão ter os nossos blocos eu vou pedir para no início do jogo ela vir mais ou menos aqui e como a gente quer fazer isso quando o jogo começar eu vou usar esse evento aqui de quando a bandeira Verde for clicada e aqui em movimento eu vou usar esse vá pra x e y agora Independente de onde a bolinha tiver quando eu clicar na bandeira Verde ela vem aqui para baixo outra coisa que eu queria fazer é isso aqui evitar que a bolinha ficasse passando através de vários
blocos Ou seja quando ela bater num bloco ela voltar aqui para baixo e para isso a gente vai usar essa mesma lógica que a gente já tinha usado de pedir pra bolinha girar 180º Então vou duplicar esse bloco aqui tirar esse bloco Aqui de baixo vou colocar ele aqui embaixo e falar que se ele tiver tocando nesse ator aqui que eu vou trocar o nome para bloco seguindo as boas práticas que a gente já tá fazendo eu também quero que ele gire 180º Então pronto agora quando ele tá tocando ou na minha raquete ou nesses
bloquinhos aqui de cima a minha bolinha tá girando 180º com isso a gente já avançou bastante nesse jogo mas agora eu quero falar com você você sobre operadores e variáveis e aí sim a gente termina esse jogo com todas as melhorias que a gente fez aqui como por exemplo essa tela aqui que espera até que a gente aperte espaço para poder começar o jogo e esse bônus aqui que me dá uma bolinha Extra então pra gente começar vamos falar de operadores mas Lucas O que são operadores nessa região aqui do scratch é onde a gente
vai fazer basicamente todas as operações matemáticas como por exemplo a gente pode fazer uma soma colocando um valor aqui na esquerda um valor aqui na direita e quando eu clico nesse comando ele me dá o resultado dessa soma também posso fazer uma subtração fazendo exatamente a mesma coisa uma multiplicação usando esse comando aqui e uma divisão usando esse comando aqui de baixo outro comando super importante é esse aqui chamado número aleatório entre porque vai ser o comando que a gente sempre vai usar quando quiser colocar aleatoriedade no nosso jogo vamos supor que eu tenho esse
ator aqui que tem várias fantasias eu quero escolher de forma aleatória alguma dessas fantasias aqui para dar um bônus pro meu jogador para fazer isso primeiro eu vou vir aqui e pedir para ele mudar para alguma fantasia e depois é só vir aqui em operadores usar esse número aleatório entry nesse primeiro valor aqui eu vou colocar o número dessa primeira fantasia ou seja um que já tá aqui e nesse segundo valor eu vou colocar o número dessa última fantasia aqui embaixo ou seja sete então é só eu trocar aqui por sete e agora eu já
tô de forma aleatória escolhendo qual bônus esse jogador vai ganhar e a gente pode inclusive usar esse mesmo comando para tomar decisões de forma aleatória como por exemplo escolher de forma aleatória se eu quero que o meu fantasma persiga esse Packman de número um aqui ou esse Packman de número dois e aqui eu fiz isso usando exatamente Esse comando de número aleatório o si e o se não que a gente já falou aqui E esse outro comando aqui de menor que a gente vai falar agora então só recapitulando o que esse número aleatório faz ele
vai escolher de forma aleatória um número maior ou igual a esse valor aqui e menor ou igual a esse segundo valor então quando eu tô clicando aqui ele tá me dando 6 4 10 5 5 de novo quatro agora vamos falar desses outros três comandos aqui que vão verificar se alguma informação é verdadeira e basicamente o que ele vai verificar é se esse primeiro número é maior que esse segundo aqui ele verifica se esse primeiro número é menor que esse segundo já que ele verifica se esse número é exatamente igual a esse então se eu
coloco do aqui em todos esses valores 2 é maior que 50 e a gente sabe que não então ele retorna aqui falso mas só que 2 é menor que 50 então aqui ele retorna true que é verdade e claramente do não é igual a 50 então aqui ele também retorna falso se eu trocar aqui por 100 esses três números o 100 é maior que 50 então aqui ele tá retornando verdade aqui ele retorna falso porque o 100 não é menor que 50 e aqui ele também retorna falso porque o 100 não é igual a 50
para fechar eu vou trocar todos esses valores por 50 o 50 ele é maior que 50 não ele é igual a 50 Então tá falso 50 é menor que 50 também não o 50 Ele é igual a 50 então o único valor que vai retornar verdadeiro é exatamente esse aqui E como eu mostrei aqui para vocês a gente consegue utilizar esses operadores aqui junto com o número aleatório para tomar decisões do meu gatinho então se eu uso por exemplo esse número aleatório entre aqui desse lado e coloco aqui por exemplo seis Esse comando aqui número
aleatório vai me dar os valores 1 2 3 4 5 6 7 8 9 10 ou seja os valores maiores que esse primeiro valor aqui que é um incluindo esse um e os valores menores que esse segundo valor aqui que é o 10 também incluindo esse 10 agora quando eu faço essa verificação aqui se o valor é menor que 6 basicamente Eu Tô verificando se ele é 1 2 3 4 ou 5 se isso aqui realmente acontecer ele vai retornar a verdade ou seja o número aleatório é menor que 6 agora se esse comando aqui
retornar os valores 6 7 8 9 ou 10 Isso aqui vai retornar falso porque o número aleatório não é menor que seis e a gente pode usar isso aqui junto com si para tomar decisões Então posso falar por exemplo que se isso aqui for verdade eu quero que o meu gatinho ande pra direita e Se isso for falso Se isso for mentira eu quero que o meu gatinho ande pra esquerda e para fazer isso eu vou vir aqui utilizar um C sinão que a gente já utilizou colocar essa condição aqui dentro PR andar pra direita
eu posso pedir para que ele aponte pra direção 90º ou seja ele tá apontando aqui pra direita e se eu quiser que ele ande pra esquerda eu vou pedir PR ele apontar pra direção menos 90 para garantir que ele não vai ficar de cabeça para baixo eu vou definir o estilo da rotação esquerda a direita aqui eu vou colocar um sempre e depois vou pedir para ele mover dar espaço com isso de forma aleatória a gente tá mandando o nosso gatinho ir ou pra esquerda ou pra direita aqui ele foi pra direita aqui ele tá
indo pra esquerda eu cliquei de novo ele foi pra direita cliquei de novo ele continuou pra direita cliquei novamente e agora ele tá indo pra esquerda e durante a criação dos jogos a gente vai falar bem mais de aleatoriedade porque esse conceito é extremamente importante em qualquer jogo que você queira criar voltando aqui em operadores Vamos falar agora desses outros três comandos o e o ou e o não e o que esses comandos vão fazer vão ser analisar várias informações por exemplo se eu quiser analisar se o número é maior que 10 mas ele é
menor que 30 aqui eu vou estar verificando duas condições a primeira delas é se o valor é maior que 10 e a segunda é se o valor é menor que 30 como eu quero analisar essas duas informações ao mesmo tempo eu poderia usar o e que é exatamente esse operador aqui ou por exemplo aqui no nosso jogo que a gente verificou se o gatinho estava tocando na raquete ou se o gatinho estava tocando no bloco e nesses dois casos a gente tá fazendo a mesma coisa girar 180º então aqui eu não precisaria verificar isso aqui
primeiro e depois verificar isso daqui eu poderia ver se ou ele tá tocando na raquete ou ele tá tocando no bloco se algum uma dessas duas coisas acontecerem eu quero girar 180º então para isso bastava usar o ow aqui se ele tá tocando na raquete ou tocando no bloco eu quero executar Esse comando com isso eu não preciso mais esse outro comando e eu vou eliminar ele aqui do meu jogo e agora visualmente tá muito mais fácil de entender o que o nosso jogo tá fazendo e a gente não precisa ficar repetindo Esse comando de
ser várias vezes Então nesse comando aqui Eu Tô verificando se essa condição aqui é verdadeira e essa daqui também é verdadeira se isso acontecer ele vai retornar verdadeiro se uma dessas duas condições forem falsas ou essa daqui ou ou essa daqui ele vai retornar falso então basicamente o que ele faz se as duas forem verdadeiras ele retorna verdadeira se a primeira for verdadeiro e a segunda for falso ele retorna falso se a primeira for falso e a segunda verdadeiro ele também retorna falso e se a primeira e a segunda forem falso ele também retorna falso
já nesse segundo comando aqui ele só precisa que um dos dois seja verdade para ele retornar a verdade então se essa primeira condição for verdadeira e a segunda for verdadeira ele vai retornar verdadeiro se a primeira condição for verdadeira e a segunda for falsa ainda assim ele tá retornando verdadeiro a mesma mesma coisa se a primeira for falsa e a segunda for verdadeiro ele também retorna verdadeiro a única condição para esse comando aqui retornar falso é se as duas condições que estão aqui forem falsas e esse quadrinho aqui de operações lógicas e o outro que
eu também acabei de mostrar são extremamente importantes não só aqui no squatch mas em qualquer outro jogo que você for fazer e agora só para fechar esse último comando aqui se eu venho aqui e falo que o dois é menor que C A gente sabe que isso aqui é verdade então isso aqui tá true isso aqui é verdade se eu coloco ele aqui dentro ele vai negar essa informação então A negação da Verdade é falsa então basicamente se o que tiver aqui dentro for verdade ele vai retornar falso e se for falso ele vai retornar
verdade Já já a gente vai usar essas operações lógicas de forma prática então isso aqui vai ficar muito mais tranquilo de entender vindo agora para esses outros quatro comandos aqui esses aqui são comandos de texto que vão ser muito úteis sempre que a gente quiser analisar alguma coisa no nosso jogo criar rankings ou criar jogos até mais complexos esse primeiro aqui Vai juntar essa palavra com essa aqui então quando eu junto maçã com banana ele retorna maçã banana observa que só retornou com esse espaço aqui porque aqui na frente do maçã eu tenho espaço se
eu apago esse espaço fica tudo junto esse segundo comando aqui vai me dar a letra Na primeira posição dessa palavra aqui maçã Então como aqui em maçã eu ten letra 1 2 3 e 4 quando eu faço isso ele retorna a letra Na primeira posição e nesse caso é exatamente o m se eu passar aqui um número maior que o número de letras ele vai retornar vazio esse outro comando aqui me dá quantas letras tem nessa palavra que nesse caso é quatro e esse último aqui vai retornar verdadeiro ou falso se essa palavra contém essa
letra aqui como A Maçã contém a letra M ele retor torna true se eu troco aqui por B ele vai retornar falso pra gente terminar os operadores vamos falar do resto d arredondamento de e módulo D se a gente tivesse por exemplo fazendo uma divisão de 5 por 2 5 di 2 É 2 e sobra um aqui embaixo se eu colocar esse 5 aqui E esse dois aqui o resto da divisão de 5 por 2 é exatamente esse valor um aqui então se eu coloco aqui cinco e aqui eu coloco dois o resto é um
como eu acabei de mostrar para vocês esse outro comando aqui quando a gente faz a divisão por exemplo de 5 por 2 essa divisão dá 2.5 quando eu peço um arredondamento do número ele vai procurar o número inteiro mais próximo desse número aqui e o que que são números inteiros são números sem vírgula ou seja 1 2 3 4 5 6 e por aí vai então esse 2,5 aqui ele tá mais próximo de Que número ele tá mais próximo do três Então nesse caso quando eu coloco aqui dentro a gente tem exatamente três e para
finalizar esse último comando aqui que tem várias opções que a gente pode colocar e vamos começar com esse arredondamento para baixo d vamos supor que você não quer que dê você queria pegar o dois que é o número inteiro Antes desse 2,5 quando você coloca essa operação aqui você tem exatamente o dois o arredondamento para cima daria o três da mesma forma outra coisa bem útil também é que vamos supor que você fez essa operação aqui 10 - 15 isso aqui retorna -5 Mas vamos supor que você não quer saber desse menos você só quer
saber do cinco e para conseguir pegar apenas o número a gente pode usar o módulo quando eu coloco aqui dentro e clico nesse comando a gente tem exatamente o cinco essa parte aqui de operadores ela envolve muito operação matemática e lógica eu não tô entr entrando aqui porque o meu foco aqui é falar muito mais da parte de programação do scratch Mas se vocês quiserem coloca suas dúvidas aqui nos comentários que eu posso trazer um vídeo Extra explicando cada um dos conceitos que vocês tiverem em dúvida beleza fechamos aqui os operadores vamos falar de variáveis
mas Lucas O que são variáveis variável basicamente é um espacinho que você tem dentro do seu jogo para armazenar alguma informação É como se você tivesse várias gavetinhas onde você pode guardar a vida do jogador quantas moedas ele já ganhou e até algumas propriedades dele como por exemplo a velocidade que ele vai correr e o mais importante é que e cada uma dessas gavetinhas vai ter o seu nome então aqui eu tenho vida aqui moedas e aqui velocidade e se eu quiser eu posso usar o valor que tá aqui nessa gavetinha posso mudar esse valor
e até mesmo possa pagar se eu não quiser usar mais e no Scratch para criar uma variável a gente vai clicar aqui em criar uma variável aqui eu vou chamar essa variável de vidas e vou marcar aqui para todos os atores Lucas Mas qual a diferença de para todos os atores e apenas para esse ator quando eu coloco aqui para todos os atores quando eu criar essa variável qualquer novo ator que eu tiver aqui por exemplo esse morcego aqui ele vai conseguir ver essa variável e pode usá-la já se eu venho aqui no gatinho e
peço para criar uma nova variável por exemplo chamado velocidade e peço que essa variável seja apenas para esse ator observa que aqui no gatinho eu tô vendo essa variável e quando eu clico no morcego ela não aparece aqui então aqui não tem nem como eu utilizar essa variável aqui para esse morcego inclusive se eu quiser vir aqui criar uma nova variável com o mesmo nome eu posso e não vai fazer diferença nenhuma toda vez que a gente cria uma variável aqui no meu Palco já aparece essa variável e olha a diferença quando a variável é
para todos os atores ela aparece dessa forma aqui já quando a gente sele prona somente para esse ator aparece a variável E qual é o ator onde essa variável está então aqui eu tenho a variável velocidade do ator um que é o meu gatinho e aqui eu tenho a variável velocidade do meu segundo ator que é esse morcego aqui se eu não quiser visualizar essas variáveis aqui é só eu clicar nesse checkin Lembrando que a variável que a gente criou só pro gatinho eu preciso clicar nele então selecionar esse check outra forma de mostrar e
esconder a variável é usar esses dois comandos aqui E lembrando que aqui eu sempre tenho que trocar pra variável que eu quiser usar quando eu clico aqui eu mostro essa variável E se eu clicar aqui eu vou esconder essa variável novamente uma coisa legal é que se a gente der dois cliques nessa variável ela fica bem mais bonitinha e a gente pode colocar ela onde a gente quiser aqui no nosso palco e além desse MSE e desse esconda aqui nessa variável a gente pode escolher qual vai ser o valor dela eu posso pedir para que
essa variável vida seja 10 e quando eu clico aqui esse valor acabou de mudar para 10 ou eu posso adicionar um valor a minha variável então aqui eu tô adicionando um essa variável e posso adicionar valores negativos para reduzir o valor da minha variável então agora ela tá reduzindo até chegar a zero e só para fechar você também pode utilizar essas informações aqui de variáveis para poder colocar em qualquer outro comando Então vamos supor que eu quero colocar aqui que a minha velocidade vai ser 10 e eu quero usar essa velocidade para poder mover 10
passos eu vou clicar aqui só para ver o valor da velocidade observa que é a velocidade do ator um ou seja do nosso gatinho quando eu clico nesse comando a velocidade agora é 10 se eu venho aqui em movimento peço para mover 10 passos e coloco a velocidade aqui dentro agora o meu gatinho tá se movendo com essa velocidade aqui e se eu colocar esse mesmo comando aqui no morcego quando eu venho aqui e clico novamente o morcego não tá se movendo porque essa variável velocidade é só do meu gatinho se eu clicar aqui a
variável velocidade do meu morcego é zero como eu tô vendo aqui se eu mudar agora essa variável para 100 e clicar aqui novamente o meu morcego tá movendo muito mais rápido e observa que essa mudança aqui não alterou em nada nessa variável que só existe pro ator um Então beleza fechamos essa parte de variáveis Só que ainda não acabou vamos criar uma lista que eu posso chamar por exemplo de jogadores assim que a gente clica nesse comando observa que surgiu vários comandos aqui nesse Primeiro Comando a gente pode visualizar ou parar de ver essa lista
aqui a gente pode adicionar um valor a essa lista por exemplo se eu quiser colocar o Lucas Leal como primeiro jogador Ele veio para cá se eu quiser colocar o Jean como segundo jogador ele acabou de vi para cá e a gente pode adicionar quantas pessoas a gente quiser na nossa lista Então posso adicionar por exemplo o Ted o Felipe Neto ou qualquer outra pessoa que vocês quiserem além de adicionar pessoas a essa lista eu também posso apagar nesse caso aqui eu vou apagar aqui dessa lista quem tiver por exemplo na posição quatro então acabei
de apagar o Felipe Neto se eu quiser apagar alguém que tá na posição um ou seja Lucas Leal eu apaguei e agora a minha lista só tem duas pessoas Ah Lucas mas agora eu queria limpar essa lista aqui só usar esse outro comando para apagar todos os registros que estão aqui nessa lista se eu quiser adicionar alguém numa posição específica dessa lista por exemplo eu quero adicionar o alanzoca entre o Jean e o Ted eu posso vir aqui e pedir para adicionar o alanzoka na posição três dessa lista Então o que ele vai fazer é
pegar quem tá nessa posição três e jogar aqui para baixo e colocar o alanzoca exatamente nessa posição aqui Existe uma grande diferença entre esse comando aqui de sira e esse comando aqui de substitua aqui a gente adicionou mais uma pessoa na lista a lista tinha quatro pessoas agora ela tem cinco esse substitua ele vai trocar o registro que tiver nessa posição aqui por um novo registro então por exemplo se eu quiser trocar o alanzoka por Jess Ghost agora eu substituí o alanzoca e eu não adicionei nenhum novo registro da minha lista agora esse comando aqui
vai me falar o registro que tá na posição um Qual o registro um Lucas Leal Qual o registro na posição três just Ghost enquanto esse outro aqui vai me falar a posição desse registro ISO nessa lista então Em qual posição Lucas Leal está nessa lista posição um qual posição o Ted está nessa lista posição quatro e se eu colocar aqui alguém que não está nessa lista por exemplo colocar aqui Core ele vai informar zero outra coisa que a gente pode saber também é o tamanho dessa lista ou seja aqui tem cinco pessoas e até mesmo
se essa lista tem alguma pessoa por exemplo essa lista tem o Core não tem o Core essa lista tem o Jean sim é verdadeiro que essa lista tem o Jean o que a gente tá vendo aqui e só para fechar esse comando aqui vai esconder a lista já Esse comando aqui vai mostrar ela novamente e só para mostrar como as listas ajudam a gente criar jogos super complexos Nessa versão aqui do that's not my neighbor que eu criei usando Scratch eu tenho duas listas essa primeira lista que eu chamei de personagens assim que eu clico
na bandeira ela coloca todo mundo aqui que pode entrar no meu prédio ou seja todas as pessoas que eu adicionei aqui depois eu vou tirar pessoas dessa lista aqui para trazer para essa nova lista aqui de visitantes que vão ser as pessoas que vão entrar hoje no meu prédio quando eu clico aqui eu acabei de fazer isso e essa lista aqui de visitantes é exatamente as pessoas que estão aqui aqui então eu só consegui criar esse dinamismo do meu jogo de selecionar quem aparecer aqui de forma aleatória porque eu usei listas agora para fechar mesmo
vamos falar de outro conceito super importante que é o de blocos vamos supor que aqui no seu gatinho tem um bloco de comandos que você vai executar várias vezes por exemplo Ah eu tenho que mover 10 espaços tem que mudar pra próxima fantasia e tenho que tocar o somal em vez de ficar duplicando isso aqui colocando isso em vários scripts diferentes a gente pode criar um bloco por exemplo que eu vou chamar de movimento e quando eu clico em Ok e coloco isso daqui agora ao invés de precisar ficar repetindo esse script várias vezes é
só a gente usar isso daqui o meu gatinho vai Executar tudo que tiver aqui nesse bloco então quando eu cliquei em movimento ele andou da espaos foi pra próxima fantasia e tocou o somal eu clico novamente e ele executou de novo e novamente mostrando um exemplo onde isso vai ser muito útil aqui no jogo do pac-man que eu criei eu tenho todo esse bloco aqui para definir para onde eu posso andar e tanto nesse script aqui quanto nesse outro script eu tô usando esse bloco Então imagina se eu não fizesse isso eu teria que pegar
tudo isso aqui colocar para cá depois fazer a mesma coisa para lá e se eu precisasse mudar qualquer coisa eu ia ter que mudar em vários lugares então esses blocos permitem que a gente crie jogos muito maiores e muito mais complexos de uma forma muito mais escalável e uma observação legal é que se você quiser editar o bloco é só clicar aqui em editar e você pode inclusive adicionar entradas por exemplo eu posso adicionar aqui qual vai ser a velocidade que eu quero andar quando eu clique em ok aqui no movimento eu tenho essa variável
e eu poderia colocar ela aqui dentro e agora eu posso andar com a velocidade 10 Posso trazer o meu gatinho para cá e andar por exemplo com a velocidade 50 e até mesmo mesmo com a velocidade 100 mudando em apenas um lugar essa informação e aqui eu adicionei uma entrada numérica Mas você pode adicionar verdadeiro falso textos e com isso a gente acabou de fechar todos os comandos de Scratch explicados passo a passo e agora vamos finalizar esse jogo pong aqui fazendo as melhorias utilizando operadores e variáveis que a gente acabou de ver para começar
eu queria conseguir acabar o jogo assim que não tivesse mais nenhum bloquinho aqui E para isso eu preciso conseguir contar quantos blocos a gente tem e a gente vai utilizar uma variável chamada blocos aqui no início assim que o jogo começar eu vou falar que o blocos é zero ou seja a gente não tem nenhum bloquinho aqui e toda vez que um clone for criado eu vou pedir para adicionar uma blocos depois antes de apagar esse Clone eu vou adicionar menos um esse bloco e a gente vai saber exatamente quantos blocos a gente tem aqui
quando eu clico nessa Bandeira Verde ele tá gerando os blocos agora a gente tem 43 porque a gente quebrou o primeiro agora a gente vai ter 42 e cada bloco que a gente quebrar esse número aqui vai diminuindo até chegar a zero Então nesse caso aqui na bolinha eu quero esperar até que o número de bloco seja zero então terminar o meu jogo então aqui eu vou em eventos e falar novamente quando eu receber jogo pronto e o que eu quero fazer Agora é esperar até que alguma coisa aconteça e o que eu quero que
aconteça é exatamente essa variável blocos aqui chegue a zero e aqui em operadores a gente viu essa igualdade aqui então quando o blocos for igual a zero eu vou querer terminar o meu jogo só que em vez de mandar parar todo mundo eu quero criar uma tela aqui escrita você venceu para ficar um pouco mais bonitinho então eu vou aqui em pintar um ator para eu poder escrever alguma coisa é só clicar aqui nesse t e digitar o que eu quiser aqui então eu vou digitar você venceu aqui em cima eu posso mudar o tipo
de texto e aqui eu posso mudar a cor desse texto se você quiser mexer no tamanho é só usar essas bolinhas que estão aqui do lado pronto ajustei aqui no centro da tela aqui eu também vou colocar em zero zero para ficar Centralizado e o nome desse ator eu vou chamar de tela então como eu criei o comando de esperar até que os pontos sejam zero aqui dentro dessa bolinha e eu quero que quando isso acontecer esse ator aqui seja exibido a gente sabe que para fazer isso a gente vai ter que usar transmissão de
mensagem então aqui na bolinha eu vou pedir para ela transmitir essa mensagem aqui chamada fim de jogo e aqui nesse ator eu vou falar duas coisas assim que a bandeira Verde for clicada ele não venceu ainda então eu quero esconder esse ator e aqui eu vou falar que quando eu receber fim de jogo eu quero mostrar essa tela aqui indicando que a gente ganhou Então agora eu vou jogar um pouquinho para mostrar a vocês o que vai acontecer quando eu clico na bandeira Verde esse ator aparece e agora quando eu chegar a zero blocos vai
aparecer você venceu mas antes disso observa que toda vez que a gente encosta a bolinha aqui na raquete ela tá sempre saindo pra mesma direção mesmo se eu encostar aqui no cantinho ela não tá indo pra direita ou Se eu encostar no canto esquerdo ela não tá indo pra esquerda como jogo de p que a gente já conhece e o legal aqui do scratch é que a gente consegue fazer isso basicamente comparando Qual é a posição x da minha bolinha com a posição x da minha raquete se a minha bolinha bater bem aqui no meio
da raquete ela vai voltar mais aqui para cima se ela vier mais aqui pra direita ela vai vir mais para cá e se vier mais pra esquerda ela vem PR esse lado aqui então a gente já tinha falado que na bolinha a gente tem essa informação de posição x e para saber a posição x da raquete É só usar esse outro comando aqui trocar aqui por raquete e agora a gente consegue comparar essas duas informações porque se eu venho aqui em operadores e fa faço um menos o outro eu consigo saber se a bolinha Tá
mais pra direita mais pra esquerda ou aqui no meio se a bolinha tiver bem aqui no meio esse valor vai ser muito próximo de zero como a gente tá vendo aqui quanto mais pra direita maior esse valor e quanto mais pra esquerda menor esse valor então aqui tá -38 valores negativos a gente tá à esquerda valores positivos a gente tá à direita então aqui a gente vai usar esse conceito de direção que a gente já falou lá no início dessa aula se eu quiser que ela vá para cima é só apontar para essa direção aqui
próximo a zero Ou seja quando ela tá aqui eu quero que a direção seja próxima de zero se eu quiser que ela vá aqui pra direita é só eu apontar para valores positivos como aqui e se eu quiser ir pra esquerda é só apontar para valores negativos então basicamente se eu vou aqui em movimento e uso esse ap Ponte Pra direção e coloco essa informação aqui agora minha bolinha vai bater nessa raquete de uma forma muito mais dinâmica a única coisa é que eu quero que ele faça isso somente quando ele tiver tocando na raquete
então para quando ele tiver tocando no bloco eu vou voltar com esse si aqui e novamente vou pedir para ele girar 180º vou colocar isso aqui e olha como o nosso jogo agora vai ficar muito muito mais dinâmico porque agora a gente consegue controlar Aonde a bolinha tá batendo outra melhoria que eu quero fazer também é que se eu tiver pressionando o botão esquerdo do meu mouse eu quero que essa bolinha vá um pouco mais rápido e para isso eu vou vir aqui em controle usar novamente o si e o sen não aqui dentro eu
vou verificar se o meu mouse tá a pressionado se ele não tiver pressionado eu vou continuar movendo 10 passos mas se ele tiver pressionado eu quero andar um pouco mais rápido então eu vou andar 15 Passos vou voltar com esse comando para cá e pronto toda vez que eu pressiono meu mouse a minha bolinha tá indo muito mais rápido aqui eu soltei o meu mouse Mouse agora eu pressionei ele de novo e ela já acelera outra coisa que eu fiz nesse jogo Que eu mostrei para vocês foi criar esse botão aqui de vida Extra então
para fazer isso eu vou vir aqui novamente a tô selecionar pintar aqui eu vou usar esse círculo para criar uma bolinha redonda como essa vou mudar aqui a cor para verde porque é uma coisa positiva e vou clicar aqui em texto Vou colocar aqui esse preto e aqui eu vou colocar mais um para mostrar que a gente vai ganhar um ponto aqui eu tô aumentando e ajustando para ficar um pouco melhor a visualização e pronto o que eu quero fazer é que esse ator apareça em uma posição aleatória aqui em cima depois ele vá descendo
ou até encostar na minha raquete ou até encostar nessa linha vermelha se ele encostar na minha raquete a gente ganha uma bolinha Extra se ele encostar nessa linha vermelha acabou a nossa chance a gente não tem vida extra só para ficar um pouco mais visual eu vou diminuir um pouquinho o tamanho dele e para ele chegar aqui em cima a gente sabe que o Y tem que ser mais ou menos 180 e o valor de X pode ser qualquer valor então a gente vai usar exatamente o conceito de número aleatório que a gente tinha falado
então aqui em códigos eu vou falar que assim que a bandeira Verde for clicada eu quero que primeiro o meu valor de y mude para 180 e depois o meu valor de X mude para qualquer valor aleatório entre aqui esse -220 e esse mais 220 que esse Bônus ainda tá bem visível na nossa tela então eu troco aqui por Men 220 e aqui por mais 220 e agora Toda vez que eu clico aqui ele tá indo para uma posição aleatória diferente aqui em cima depois disso eu quero que ele vá descendo aqui até encostar nessa
linha vermelha e para isso eu vou vir aqui em controle e usar o repita até que e eu quero fazer isso até que ele esteja encostando nessa linha vermelha aqui que a gente chamou de linha e para ele descer aqui para baixo é só a gente vir aqui em movimento e pedir para adicionar um valor negativo a y e eu posso colocar aqui -10 se ele tiver indo muito rápido ou muito devagar É só a gente mudar esse valor aqui então por exemplo eu coloquei -8 ele tá indo um pouquinho mais devagar e se eu
colocar por exemplo -20 ele vai vir correndo aqui para baixo vou deixar aqui menos o que acho que já tá legal agora eu quero verificar se ele tá tocando nessa raquete aqui ou se ele tá tocando nessa linha então novamente eu vou vir aqui em eventos e pedir para esperar até que uma dessas coisas aconteça Então vou vir aqui em controle pedir Espere Até que e vou usar esse ou aqui que a gente já falou E aqui o que a gente quer que aconteça ou que ele esteja tocando na minha raquete ou que ele esteja
tocando nessa linha vermelha aqui e quando uma dessas coisas aqui acontecer a gente vai querer esconder esse ator Lembrando que quase sempre que a gente usa o esconda a gente vai usar o mostre e agora quando ele aparece se ele Encosta na minha raquete ele sumiu e se ele encosta nessa linha aqui de baixo ele sumiu também mas Lucas se o jogador encostar nesse bônus eu não queria dar uma bolinha exra para ele então é só a gente vir aqui usar o si e falar que se ele tiver tocando na raquete a gente vai mandar
uma outra mensagem e aqui eu posso chamar por exemplo de bônus seguindo as boas práticas aqui também eu vou chamar de bônus e não tem nenhum problema esse ator aqui essa mensagem ter o mesmo nome e só mais uma coisa eu não queria que esse bônus começasse Logo no início do jogo porque o jogo nem começou e a gente já ganhou uma bolinha Extra Na verdade eu queria que o jogador só ganhasse esse bônus se ele conseguisse chegar aqui a 20 blocos então aqui eu vou vir em controle e pedir para ele esperar até que
eu quero esperar até que o valor de bloco seja igual a 20 Então vou colocar aqui do lado esquerdo blocos e aqui do lado direito eu coloco 20 e se eu clicar na bandeira Verde agora observa que enquanto ele estava gerando os blocos esse valor foi 20 e isso aqui foi executado E como eu quero que esses comandos aqui só sejam executados depois de todos esses blocos aqui serem gerados eu também vou trocar aqui o quando a bandeira Verde for clicada por quando eu receber jogo pronto e agora eu comecei o meu jogo eu tô
jogando aqui tô esperando esse número aqui em blocos chegar em 20 chegou em 20 esse bônus desceu agora aqui na bolinha quando eu recebi a mensagem em bônus eu quero trazer a bolinha aqui para cima como se fosse uma bolinha Extra então eu vou tirar esse Blocos para cá vou colocar aqui na direita e o que eu quero fazer é ter um clone dessa bolinha aqui em cima então para isso eu vou vir em controle pedir para criar um clone e vou falar que quando eu começar como um clone Eu queria que a bolinha fosse
para essa posição aqui vou colocar aqui 220 só para ficar um número mais Redondo vou vir aqui em movimento e usar o vá PR X e Y só pra gente não ter que ficar jogando até chegar em 20 blocos eu vou mudar aqui para 42 e agora quando a gente quebrar dois blocos esse bônus já vai aparecer 1 dois apareceu o bônus e a minha bolinha veio aqui para cima igual eu queria e como eu tenho uma bolinha Extra Se eu encostar nessa lha vermelha aqui embaixo eu não queria terminar o jogo eu queria usar
essa bolinha Extra que eu tinha aqui em cima e para fazer isso quando ele encostar nessa linha aqui de baixo eu quero tomar uma decisão ou seja se eu tiver essa bolinha aqui em cima eu não quero terminar o jogo eu quero continuar jogando Mas se eu não tiver a bolinha aqui em cima aí sim eu posso acabar com o jogo e para isso a gente vai criar uma variável chamado vida para saber quantas vidas a gente tem no início do jogo assim que o jogo começar eu vou mudar minha vida para um porque eu
só vou ter uma vida mas se eu receber essa informação aqui de bônus eu vou adicionar um a minha variável vida porque a agora eu vou ter duas vidas Ou seja eu tenho duas bolinhas para jogar e aqui nesse outro si quando ele estiver tocando na linha eu vou ter que tomar uma decisão E para isso eu vou usar novamente o cis não se eu tiver somente uma vida eu quero continuar parando todos ou seja o meu jogo realmente vai acabar então aqui do lado direito eu coloquei um e do lado esquerdo eu vou colocar
essa variável vida e para continuar acabando o jogo eu vou trazer esse comando para cá já se ele tiver mais de uma vida eu vou usar esse adicione menos um a vidas para poder tirar a vida que ele tinha eu vou pedir para essa bolinha vim pra posição aqui onde a gente teria o nosso Clone Então eu queria pagar esse Clone porque eu tô usando exatamente agora a bolinha Extra que estava aqui PR minha bolinha vir para essa posição é só duplicar Esse comando aqui e aqui enquando eu começar como um clone eu vou pedir
primeiro para ele esperar até que aconteça alguma coisa eu quero esperar até que vida seja igual a um também e para fechar eu vou apagar esse Clone ou seja o que que eu fiz aqui assim que eu pegar o bônus eu vou criar um clone do ator aqui se a bolinha que eu tiver jogando encostar aqui nessa linha vermelha é como se essa bolinha tivesse desaparecido e essa bolinha aqui tá como um clone ela vai entrar novamente em jogo e só para vocês verem isso acontecendo eu vou colocar esse comando aqui cliquei na bandeira verde
quando eu quebro dois blocos eu ganho esse Clone aqui a minha bolinha apareceu ali em cima quando encostou aqui na linha vermelha a minha bolinha começou a se mexer e agora eu continuo o meu jogo Se eu encostar na linha vermelha novamente o meu jogo acabou e o meu jogo acabou Exatamente porque essa variável vida aqui era um só para ficar mais bonitinho a gente não precisa de nenhuma dessas variáveis Então posso clicar aqui para elas sumirem e eu queria continuar vendo todos esses blocos aqui mesmo quando o jogo acabar então eu não posso utilizar
esse par todos e o que eu vou fazer é trocar esse par todos por novamente a mesma mensagem fim de jogo que a gente já usou aqui e agora em cada um dos atores quando eu receber esse fim de jogo eu vou usar aqui em controle o par os outros scripts no ator eu vou usar isso pra minha bolinha porque eu não quero que ela continue se movendo eu posso arrastar aqui pra raquete porque eu também quero usar aqui na raquete e eu posso fazer a mesma coisa aqui com bônus e aqui eu vou trazer
para cá Só para ficar um pouco mais bonitinho o único ator que eu não posso fazer isso é aqui no bloco que eu quero que ele continue executando para deixar os bloquinhos aparecendo aqui só que tem um problema se eu encostar nessa linha vermelha aqui vai aparecer você venceu porque aqui nesse ator eu falei que quando eu receber Fim de jogo eu quero mostrar ele para evitar que isso aconteça eu posso falar que eu só vou mostrar se o valor dessa minha variável aqui blocos for igual a zero Então vou usar aqui novamente o igual
vou colocar o blocos aqui do lado esquerdo e do lado direito eu boto zero agora quando eu encosto aqui nessa linha vermelha não apareceu a mensagem os blocos continuaram aqui e a gente já tem o jogo exatamente como a gente queria a única coisa que tá faltando é essa tela aqui de pressione a tecla espaço pro jogo começar e pra fechar isso nessa tela aqui eu vou criar outra tela então aqui eu vou chamar essa fantasia de venceu e vou criar uma nova fantasia que eu vou chamar de espaço eu vou usar esse retângulo aqui
para deixar um fundo totalmente branco então vou vir aqui em preencher e trocar essa cor aqui por branco e novamente Vou colocar aqui em preto e vou clicar aqui no t para escrever aperte espaço para começar então quando eu receber jogo pronto eu quero mostrar essa tela de aperte espaço para começar para isso eu vou vir aqui em eventos Vou colocar aqui quando eu receber jogo pronto eu vou pedir para mudar exatamente para essa fantasia aqui e para ficar um pouquinho mais transparente eu vou definir o efeito fantasma como 20 depois eu quero mostrar essa
fantasia e quando eu faço isso agora o único problema é que parece que essa raquete e essa bolinha estão na frente do nosso texto e para resolver isso é só pedir para vi pra camada da frente e pronto quando eu clico aqui essa aqui é a camada mais da frente como eu quero esperar que ele aperte espaço para começar eu vou vir aqui em controle Pedir para que ele Espere Até que aqui eu vou verificar se a tecla espaço tá pressionada e quando isso acontecer eu vou esconder essa tela e como a gente quer que
ele só comece quando ele apertar espaço aqui na bolinha eu também vou usar a mesma coisa vou vir em controle Pedir para que ele Espere até Q E aqui dentro eu vou colocar tecla espaço pressionada com isso a gente tá criando todos os bloquinhos a bolinha tá parada aqui e somente quando eu apertar o espaço que a gente começa o nosso jogo aqui eu vou voltar PR 20 vou mudar aqui o nome para pong com blocos e aqui quando eu clico em compartilhar Você pode enviar esse jogo para quem você quiser aqui você pode colocar
algumas instruções como por exemplo T de quebrar todos os blocos e aqui em notas e créditos eu vou deixar o meu perfil no YouTube e vou pedir para você já deixar um like nesse vídeo se eu quiser voltar para onde eu tava é só clicar aqui em ver interior e aqui eu posso tirar esse blocos e se eu quiser ver novamente a página do projeto é só clicar aqui agora quando eu clico na bandeira verde eu já tem um jogo pronto eu posso jogar aqui e se você quiser enviar isso aqui pros seus amigos é
só clicar aqui em Copiar link e mandar esse link aqui para ele ou até mesmo mandar o link que tá aqui no navegador e pronto agora você aprendeu todos os comandos do scratch e já tem um jogo pronto pronto