TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

A Orientação a Objetos com Python

Por:   •  21/2/2023  •  Trabalho acadêmico  •  932 Palavras (4 Páginas)  •  65 Visualizações

Página 1 de 4

FACULDADE DE COMPUTAÇÃO E INFORMÁTICA

Jogos Digitais

Orientação a Objetos com Python

Orientação a Objetos é um paradigma de programação em que representamos elementos de forma a capturar suas características (atributos) e comportamento (métodos).

Em um jogo, por exemplo, podemos querer representar um asteroide, um tanque, uma partícula de uma explosão, etc. Todos os elementos de um jogo podem ser um objeto.

Ao criar um objeto normalmente começando identificando suas propriedades, pensando quais características ele deveria ter. Vamos iniciar com os seguintes atributos:

- Position: onde o tanque está?

- direction: para qual direção o tanque esta voltado?

- Speed: qual a velocidade do tanque?

- Armor: qual o nível de blindagem do tanque

- Ammo: quantos projéteis o tanque tem?

Agora que temos as informações que descrevem o tanque e o que ele está fazendo, devemos proporcionar capacidade de realizar todas as ações que um tanque deveria executar. Em POO, isto significa que implementaremos os métodos da classe tanque. Inicialmente podemos pensar nos seguintes métodos:

- move: mover o tanque para frente

- turn: girar o tanque para a esquerda ou direita

- fire: lançar um míssel

- hit: essa é ação executada quando um míssel do inimigo atingir o tanque

- explode: substitui o taque por uma animação de explosão.

Definindo uma classe Tanque como modelo no qual todos os objetos tanques de nosso jogo serão baseados (instanciados):

class Tank(object):

    def __init__(self, name):

        self.name = name

        self.alive=True

        self.ammo=5

        self.armor=60

Criando um objeto tanque

Agora que temos a definição de uma Tanque, podemos criar um novo tanque como por exemplo:

meuTanque = Tank("Bob")

Essa linha cria um novo objeto chamado Bob e chama o método __init__ para inicializa-lo. Este objeto é então atribuído à variável meuTanque, chamada agora de instância de Tanque.

Agora podemos manipular este objeto, colocando-o em lista, acessando seus atributos e podendo altera-los também. Por exemplo meuTanque.name exibirá Bob

Incrementando a classe Tanque:

class Tank(object):

    def __init__(self, name):

        self.name = name

        self.alive=True

        self.ammo=5

        self.armor=60

    def __str__(self):

        if self.alive:

            return "%s (%i armor, %i shells)" % (self.name, self.armor, self.ammo)

        else:

            return "%s (DEADE)" % self.name

    def fire_at(self, enemy):

        if self.ammo >=1:

            self.ammo -=1

            print(self.name, "fires on", enemy.name)

            enemy.hit()

        else:

            print(self.name, "has no shells!")

    def hit(self):

        self.armor -=20

        print(self.name, "is hit")

        if self.armor <=0:

...

Baixar como (para membros premium)  txt (4.9 Kb)   pdf (61.7 Kb)   docx (11.3 Kb)  
Continuar por mais 3 páginas »
Disponível apenas no TrabalhosGratuitos.com