Composição - Python Orientado a Objetos - Aula 43

  Рет қаралды 14,193

Otávio Miranda

Otávio Miranda

Күн бұрын

Пікірлер: 21
5 жыл бұрын
Este curso não está completo. São apenas algumas aulas liberadas gratuitamente por amor a comunidade Python. O curso completo encontra-se na Udemy e tem mais de 200 aulas, link na descrição do vídeo.
@samferreira5651
@samferreira5651 4 жыл бұрын
Dps de assistir esse vídeo consegui fazer um "mini rpg em texto", consegui fazer uns sistemas legais, então, quem quiser dá uma olhada, tá aqui o código: from random import randint from time import sleep class Player: def __init__(self, hp, dano, var_dano, velocidade_projeteis): self.hp = hp self.dano = dano self.var_dano = var_dano self.projeteis = [] self.velocidade_projeteis = velocidade_projeteis def disparar(self, distancia): self.projeteis.append(Projetil(self.dano, self.var_dano, distancia, self.velocidade_projeteis)) class Projetil: def __init__(self, dano_base, var_dano, distancia, velocidade): self.dano = randint(dano_base - var_dano, dano_base + var_dano) self.distancia = distancia self.velocidade = velocidade class Inimigo: def __init__(self, hp, distancia, dano_min, dano_max, chance_crit, espera): self.hp = hp self.distancia = distancia self.dano_min = dano_min self.dano_max = dano_max self.chance_crit_base = chance_crit self.chance_crit = chance_crit self.espera = espera self.espera_atual = espera def atacar(self): dano = randint(self.dano_min, self.dano_max) if randint(0, 100) < self.chance_crit: dano *= 4 return dano def update_crit(self): if self.distancia < 100: self.chance_crit = self.chance_crit_base + (100 - self.distancia) else: self.chance_crit = self.chance_crit_base jogador = Player(300, 20, 7, 50) inimigo_1 = Inimigo(600, 200, 15, 45, 5, 3) turno = 1 largura_caixa = 60 print(' RPG em texto '.center(largura_caixa, '='), ' ') while True: print(f' Turno {turno} '.center(largura_caixa, '-')) print(f' HP: {jogador.hp} Projeteis: {len(jogador.projeteis)} HP Inimigo: {inimigo_1.hp} Distância: {inimigo_1.distancia}') print(''' O que fazer: 1 - Disparar; 2 - Aumentar Dano em 5 em troca de 25 de vida 3 - Distância do inimigo 4 - Auto-destruir''') sleep(1) acao = str(input('>>> ')) try: acao = int(acao) except: print('Ação inválida;') continue print() if acao == 1: jogador.disparar(inimigo_1.distancia) print('Um projetil foi disparado') sleep(1) elif acao == 2: print(f'HP: {jogador.hp} > {jogador.hp - 25} Dano: {jogador.dano} > {jogador.dano + 5}') jogador.hp -= 25 jogador.dano += 5 sleep(1) elif acao == 3: var_dis = str(input('Variação de distância: ')) try: var_dis = int(var_dis) except: print('Variação inválida') else: if inimigo_1.distancia - var_dis > 0: inimigo_1.distancia -= var_dis inimigo_1.update_crit() else: print('Não pode ultrapassar o inimigo') sleep(1) elif acao == 4: print('Você se auto-destruiu') sleep(2) print('Não entendemos o porquê') sleep(2) print('Você nem tentou') sleep(2) break for projetil in jogador.projeteis: projetil.distancia -= projetil.velocidade if projetil.distancia
@arenakinbate5826
@arenakinbate5826 Жыл бұрын
calma garoto ta querendo destruir o mundo.
@haospagamer8523
@haospagamer8523 10 ай бұрын
cara ta muito legal boa
@LuizHenrique-sf6mh
@LuizHenrique-sf6mh 2 жыл бұрын
a melhor didática que já vi na minha vida, nunca aprendi tão bem quanto contigo, todo sucesso do mundo pra ti, assisti a playlist toda e consegui aprender muita coisa com você, muito obrigado!
@igorsantosbotelho2890
@igorsantosbotelho2890 3 жыл бұрын
Muito bom! Dois anos depois e ainda ajudando!
@murilosoares5777
@murilosoares5777 4 жыл бұрын
Esses vídeos são sensacionais! Parabéns e obrigado!
@islanvicthor2135
@islanvicthor2135 5 жыл бұрын
Muito bom, quero mais aulas
@mateusfonseca9915
@mateusfonseca9915 Жыл бұрын
Vc percebe que o mundo está indo pra trás quando o cara tem que explicar porque colocou 'APAGADO' no masculino (10:06)
@rcamis
@rcamis 5 жыл бұрын
muito bom
@francisco.meirelles
@francisco.meirelles 2 жыл бұрын
Boa tarde! ficou ótimo compreendo, entretanto, tenho uma dúvida pontual. Como ficaria a composição de um questionário? Onde temos um questionário, perguntas e respostas
@AugustoRobertoSouza
@AugustoRobertoSouza 3 жыл бұрын
Otávio vc fornece esse curso em pen drive..como doação .tenho 63 a nós e vc sabe as coisa estão difíceis para idosos como jovens. Tipo doação!
@marcelonicastro
@marcelonicastro 4 жыл бұрын
Eu estou usando Idle 3.6 no final não deleta os arquivos automáticamente no final do código, só funciona se eu mandar deletar um cliente manualmente.
@xdzn3765
@xdzn3765 4 жыл бұрын
Que plugin de AutoComplete para VsCode vc Usa?
@asimov2884
@asimov2884 4 жыл бұрын
ele n tá usando o vscode
@xdzn3765
@xdzn3765 4 жыл бұрын
@@asimov2884 Eu sei que ele está usando o PyCharm, mas ele tb usa o VsCode, por isso perguntei.
@jefersonfeitosa8
@jefersonfeitosa8 4 жыл бұрын
No 4:49 Não entendi como o append funcionou nesse caso, vc poderia me explicar?
@alexf.pereira3803
@alexf.pereira3803 4 жыл бұрын
está com dúvida ainda?
@brunotdasilva9038
@brunotdasilva9038 Жыл бұрын
@@alexf.pereira3803 eu estou
@brunotdasilva9038
@brunotdasilva9038 Жыл бұрын
@@alexf.pereira3803 se puder me ajudar fico muito agradecido
@colosra9147
@colosra9147 Жыл бұрын
@@brunotdasilva9038 opa mano o append adiciona um elemento a uma lista se vc olha na video self.endereço = [] ou seja self.endereço é umas lista vazia, por isso ele precisa do append para adicionar elementos a essas lista tambem por isso ele usa o for para mostrar os elementos no lista_enderecos
Herança simples - Python Orientado a Objetos - Aula 44
10:44
Otávio Miranda
Рет қаралды 24 М.
Métodos de Classes - Python Orientado a Objetos - Aula 36
11:09
Otávio Miranda
Рет қаралды 46 М.
А я думаю что за звук такой знакомый? 😂😂😂
00:15
Денис Кукояка
Рет қаралды 4,7 МЛН
Ice Cream or Surprise Trip Around the World?
00:31
Hungry FAM
Рет қаралды 22 МЛН
Curso Power BI para Iniciantes
3:49:16
Hashtag Treinamentos
Рет қаралды 391 М.
Orientação a Objetos em Python - Encapsulamento Privado
19:59
Programador Lhama
Рет қаралды 15 М.
Composição (de Objetos) // Dicionário do Programador
6:30
Código Fonte TV
Рет қаралды 16 М.
List Comprehension em Python - (Compreensão de lista) - Aula 23
15:35
Orientação a Objetos em Python - Introdução à Herança
12:39
Programador Lhama
Рет қаралды 6 М.
Programação Orientada a Objetos com Python & Dataclass
50:49
Programador Python
Рет қаралды 17 М.
Orientação a Objetos em Python - Associação de Classes
11:38
Programador Lhama
Рет қаралды 7 М.
Encapsulamento - Python Orientado a Objetos - Aula 40
27:11
Otávio Miranda
Рет қаралды 28 М.
super/MRO, Python's most misunderstood feature.
21:07
mCoding
Рет қаралды 220 М.
А я думаю что за звук такой знакомый? 😂😂😂
00:15
Денис Кукояка
Рет қаралды 4,7 МЛН