|
| 1 | +--- |
| 2 | +title: Minecraft 2D |
| 3 | +level: Python 2 |
| 4 | +language: pt-BR |
| 5 | +stylesheet: python |
| 6 | +embeds: "*.png" |
| 7 | +materials: ["Project Resources/*.*"] |
| 8 | +... |
| 9 | + |
| 10 | +# Introdução { .intro} |
| 11 | + |
| 12 | +Neste projeto, você desenhará e fará melhorias no código de uma versão 2D do Minecraft. |
| 13 | + |
| 14 | +# Passo 1: Jogando o jogo { .activity} |
| 15 | + |
| 16 | +## Lista de Atividades { .check} |
| 17 | + |
| 18 | + + Execute o arquivo Minecraft2D.py e você verá uma tela que se parece com esta: |
| 19 | + |
| 20 | +  |
| 21 | + |
| 22 | + + Seu personagem é o círculo amarelo que estará no alto e do lado esquerdo da sua tela de jogo! Use as setas para movê-lo pelo mundo, que, como você pode ver, é cheio de recursos diferentes: sujeira (os quadrados marrons), grama (os quadrados verdes) e água (os azuis). |
| 23 | + |
| 24 | + + Você pode pressionar a barra de espaço para coletar recursos. Por exemplo, se você mover para um quadrado de água e pressionar a barra de espaço, você verá que agora você tem mais água no seu estoque. Pegue um pouco de cada tipo de recurso. |
| 25 | + |
| 26 | +  |
| 27 | + |
| 28 | + + Pressione os números de 1 a 4 para colocar um recurso no mapa. Por exemplo, pressione 3 para colocar mais água no mapa. Isso só vai funcionar se você tiver água no seu estoque. |
| 29 | + |
| 30 | +  |
| 31 | + |
| 32 | + + Você pode fabricar um item mantendo pressionada a tecla Shift e pressionando um número. Esse processo de fabricação significa que você combinará items que você já tem em seu estoque para criar outros items novos. Tente manter pressionada a tecla Shift e pressionar o número 4 para criar um novo tijolo (desde que você tenha 2 sujeiras e 1 água no seu estoque). |
| 33 | + |
| 34 | +  |
| 35 | + |
| 36 | + + À medida em que você joga, você notará que você pode manter apenas um máximo de 20 unidades de cada recurso no seu estoque. Se você quiser aumentar este limite, você pode mudar o valor de uma variável chamada `MAXTILES` que está no arquivo variables.py. |
| 37 | + |
| 38 | + ```python |
| 39 | + # a quantidade máxima de cada recurso que você pode manter no seu estoque |
| 40 | + # ---------------------------------------------------- |
| 41 | +
|
| 42 | + MAXTILES = 20 |
| 43 | + ``` |
| 44 | + |
| 45 | + Mude este número e clique 2 vezes no arquivo Minecraft.py para armazenar uma quantia maior de cada recurso. |
| 46 | + |
| 47 | +## Salve Seu Projeto {.save} |
| 48 | + |
| 49 | +## Desafio: Construa seu mundo { .challenge} |
| 50 | + |
| 51 | +Brinque com o jogo e veja o que você consegue construir. Você consegue construir uma casa, com um jardim e um lago? Uma piscina? O que mais você consegue criar? |
| 52 | + |
| 53 | +Aqui temos um exemplo simples: |
| 54 | + |
| 55 | + |
| 56 | + |
| 57 | +## Salve Seu Projeto {.save} |
| 58 | + |
| 59 | +# Passo 2: Melhorando o visual { .activity} |
| 60 | + |
| 61 | +Apenas ter blocos coloridos para cada recurso não é muito interessante, então vamos tentar mudar os gráficos de cada recurso. |
| 62 | + |
| 63 | +## Lista de Atividades { .check} |
| 64 | + |
| 65 | + + Na pasta de Minecraft2D você verá que existem muitas imagens, uma para cada recurso. Se você clicar com o botão direito em uma dessas imagens e abrí-la no editor de imagem, você poderá mudar o gráfico de um recurso. |
| 66 | + |
| 67 | + Aqui temos alguns gráficos melhorados para a grama. Eu acrescentei diferentes tons de grama e até algumas flores: |
| 68 | + |
| 69 | +  |
| 70 | + |
| 71 | + + Salve a imagem e carregue novamente o jogo. Você verá o novo gráfico: |
| 72 | + |
| 73 | +  |
| 74 | + |
| 75 | +## Salve Seu Projeto {.save} |
| 76 | + |
| 77 | +## Desafio: Melhorando o gráfico { .challenge} |
| 78 | + |
| 79 | +Abra as imagens de sujeira, água e tijolo, e veja se você consegue melhorar o gráfico destes recursos. |
| 80 | + |
| 81 | +## Salve Seu Projeto {.save} |
| 82 | + |
| 83 | +## Desafio: Customizando o jogo { .challenge} |
| 84 | + |
| 85 | +Abra o arquivo de variáveis variables.py e você encontrará alguns códigos para configurar a imagem e as legendas para a janela de jogo: |
| 86 | + |
| 87 | +```python |
| 88 | +# o texto da barra de título/imagem |
| 89 | +# ---------------------------------- |
| 90 | +
|
| 91 | +pygame.display.set_caption('pygame window') |
| 92 | +pygame.display.set_icon(pygame.image.load('player.png')) |
| 93 | +``` |
| 94 | + |
| 95 | +Edite estas 2 linhas de código para customizar o jogo. Lembre-se que se você mudar o ícone para um novo arquivo, você terá que criá-lo! |
| 96 | + |
| 97 | +## Salve Seu Projeto {.save} |
| 98 | + |
| 99 | +# Passo 3: Acrescentando novos recursos { .activity} |
| 100 | + |
| 101 | +Você tem apenas 4 recursos no seu jogo; sujeria, grama, água e tijolo. Vamos acrescentar mais! |
| 102 | + |
| 103 | +## Lista de Atividades { .check} |
| 104 | + |
| 105 | + + Vamos primeiramente criar um gráfico para um novo recurso chamado ‘madeira’. Você pode fazer uma cópia de uma imagem que já existe e renomeá-la. Você pode então editar uma imagem para que ela se pareça com madeira: |
| 106 | + |
| 107 | +  |
| 108 | + |
| 109 | + + Quando você tiver sua imagem de madeira, você pode acrescentar este recurso ao seu jogo. Abra o arquivo variables.py e acrescente madeira como um recurso: |
| 110 | + |
| 111 | + ```python |
| 112 | + # variáveis representando os diferentes recursos |
| 113 | + # ---------------------------------------------- |
| 114 | +
|
| 115 | + DIRT = 0 |
| 116 | + GRASS = 1 |
| 117 | + WATER = 2 |
| 118 | + BRICK = 3 |
| 119 | + WOOD = 4 |
| 120 | +
|
| 121 | + ``` |
| 122 | + |
| 123 | + + No mesmo arquivo, existe também uma lista de todos os recursos. Você deve acrescentar madeira a esta lista também: |
| 124 | + |
| 125 | + ```python |
| 126 | + # uma lista de todos os recursos de jogo |
| 127 | + # --------------------------------------- |
| 128 | +
|
| 129 | + resources = [DIRT,GRASS,WATER,BRICK,WOOD] |
| 130 | + ``` |
| 131 | + |
| 132 | + + Você também precisará configurar a imagem para o recurso madeira no dicionário de texturas, desta maneira o gráfico correto será mostrado: |
| 133 | + |
| 134 | + ```python |
| 135 | + # um dicionário ligando os recursos com as texturas |
| 136 | + # ------------------------------------------------- |
| 137 | +
|
| 138 | + textures = { |
| 139 | + DIRT : pygame.image.load('dirt.png'), |
| 140 | + GRASS : pygame.image.load('grass.png'), |
| 141 | + WATER : pygame.image.load('water.png'), |
| 142 | + BRICK : pygame.image.load('brick.png'), |
| 143 | + WOOD : pygame.image.load('wood.png') |
| 144 | + } |
| 145 | + ``` |
| 146 | + |
| 147 | + Note que você precisa acrescentar uma vírgula (`,`) depois da imagem do tijolo na linha acima. |
| 148 | + |
| 149 | + + Você pode também acrescentar madeira ao dicionário do estoque. Você pode escolher com quantas unidade de madeira você inicia o jogo: |
| 150 | + |
| 151 | + ```python |
| 152 | + # A quantidade de cada recurso que você tem no início do jogo |
| 153 | + # ----------------------------------------------------------- |
| 154 | +
|
| 155 | + inventory = { |
| 156 | + DIRT : 10, |
| 157 | + GRASS : 10, |
| 158 | + WATER : 10, |
| 159 | + BRICK : 0, |
| 160 | + WOOD : 5 |
| 161 | + } |
| 162 | + ``` |
| 163 | + |
| 164 | + + Se você rodar o jogo, você verá que agora você tem madeira que você pode colocar no mapa, e você verá também que no início, ainda não existe nenhuma madeira no mapa: |
| 165 | + |
| 166 | +  |
| 167 | + |
| 168 | + + Para iniciar o jogo com alguma madeira, você precisa editar o arquivo Minecraft2D.py. Abra o arquivo e acrescenta as linhas abaixo: |
| 169 | + |
| 170 | + ```python |
| 171 | + # pegue um número aleatório entre 0 e 9 |
| 172 | + randomNumber = random.randint(0,10) |
| 173 | + # AGUA se o número aleatório for 1 ou 2 |
| 174 | + if randomNumber in [1,2]: |
| 175 | + tile = WATER |
| 176 | + # GRAMA se o número aleatório for 3 ou 4 |
| 177 | + elif randomNumber in [3,4]: |
| 178 | + tile = GRASS |
| 179 | + # ACRESCENTE ESSAS 2 LINHAS: MADEIRA se o número aleatório for 5 |
| 180 | + elif randomNumber in [5]: |
| 181 | + tile = WOOD |
| 182 | + # caso contrário será SUJEIRA |
| 183 | + else: |
| 184 | + tile = DIRT |
| 185 | + ``` |
| 186 | + |
| 187 | + Você sabe o que este código faz? Para cada espaço no mapa, o programa escolhe um número aleatório entre 0 e 9. Sempre que o número aleatório for 5, será colocada madeira no mapa. Depois que você acrescentar este código, você verá madeira no seu jogo: |
| 188 | + |
| 189 | +  |
| 190 | + |
| 191 | +## Salve Seu Projeto {.save} |
| 192 | + |
| 193 | +## Desafio: Acrescentado recursos { .challenge} |
| 194 | + |
| 195 | +Use as intruções acima para acrescentar seus próprios recursos. Você pode acrescentar lava, metal, areia ou qualquer outra coisa que você conseguir imaginar! |
| 196 | + |
| 197 | +## Salve Seu Projeto {.save} |
| 198 | + |
| 199 | +# Passo 4: Criando novos recursos { .activity} |
| 200 | + |
| 201 | +Você pode acrescentar mais recursos ao seu jogo que o jogador poderá ter apenas se ele os fabricar. Vamos criar um novo recurso chamado prancha. O jogador poderá combinar 3 unidades de madeira para fazer uma linda prancha brilhante! |
| 202 | + |
| 203 | +## Lista de Atividades { .check} |
| 204 | + |
| 205 | + + Siga as instruções do Passo 3 acima para criar o novo recurso ‘prancha’. No entanto, garanta que não exista nenhuma prancha no estoque do jogador, e que não exista nenhuma prancha no mapa no início do jogo. |
| 206 | + |
| 207 | +  |
| 208 | + |
| 209 | + + Para permitir que o jogador fabrique pranchas de madeira, você precisará adicionar uma regra de fabricação no seu jogo. Abra o arquivo variables.py e acrescente o seguinte código ao dicionário de regras de fabricação: |
| 210 | + |
| 211 | + ```python |
| 212 | + # regras para fabricar novos objetos |
| 213 | + # ---------------------------------- |
| 214 | +
|
| 215 | + craft = { |
| 216 | + BRICK : { WATER : 1, DIRT : 2 }, |
| 217 | + PLANK : { WOOD : 3 } |
| 218 | + } |
| 219 | + ``` |
| 220 | + |
| 221 | + Este código diz ao jogo que uma prancha pode ser criada se houver 3 madeiras no estoque do jogador. Não esqueça a vírgula depois da linha acima. |
| 222 | + |
| 223 | + + Você precisar garantir que o jogador saiba como fabricar pranchas, para isso adicione novas instruções à lista: |
| 224 | + |
| 225 | + ```python |
| 226 | + # lista de intruções |
| 227 | + # ----------------- |
| 228 | +
|
| 229 | + instructions = [ |
| 230 | + "Minecraft 2D", |
| 231 | + "Instructions:", |
| 232 | + " ARROW KEYS = move", |
| 233 | + " SPACE = Pick up tile", |
| 234 | + " NUMBER KEYS = Place tile", |
| 235 | + " SHIFT + NUMBER KEYS = Craft tile", |
| 236 | + "", |
| 237 | + "Crafting Rules:", |
| 238 | + " BRICK = 2xDIRT + 1xWATER", |
| 239 | + " PLANK = 3xWOOD" |
| 240 | + ] |
| 241 | + ``` |
| 242 | + |
| 243 | + + Se você coletar 3 madeiras e segurar a tecla shift e pressionar 6, você verá uma nova prancha no seu estoque. Após isto você poderá adicionar a prancha de madeira ao seu mapa! |
| 244 | + |
| 245 | +  |
| 246 | + |
| 247 | +## Salve Seu Projeto {.save} |
| 248 | + |
| 249 | +## Desafio: Desenvolva seu próprio jogo { .challenge} |
| 250 | + |
| 251 | +Use o que você aprendeu para fabricar seus próprios recursos e sua próprias regras de fabricação. Por exemplo, você poderia criar regras de fabricação para produzir vidro (a partir de areia), diamante (a partir de vidro), ou árvores (a partir de madeira, água e sujeira). |
| 252 | + |
| 253 | +## Salve Seu Projeto {.save} |
0 commit comments