Coder Social home page Coder Social logo

cc3002-tarea1's Introduction

Pokemon TCG

Resumen

Se implemento una version base del juego de cartas de pokemon, para esto se debio seguir algunas ideas que cimentaron la construccion del programa. En primera instancia nos definimos cuales serian los elementos que estarian en esta version del programa. Una instancia de Entrenador, el cual mantiene los datos de un jugador. Cartas las cuales se dividieron en energias, pokemones, objetos, estadio y soporte, las cuales llaman a un visitor para realizar sus distintas funciones. Y un controlador, el cual verifica el funcionamiento del juego, el paso de los turnos, y el elemento con elcual se controla el flujo del juego.

Hablaremos un poco acerca del controlador primero, este es el elemento que será entregado al usuario, con una instancia de este se puede simular un juego completo con los cambios de turno, algunas de las reglas básicas y manteniendo siempre la información necesaria.

El entrenador es una instancia que permite mantener información acerca de las cartas que tiene un jugador, mano, mazo, pila de descarte, banca, pokemon activo. Toda esta información la mantiene la instancia de entrenador y es capaz de jugar cartas si es que el controlador se lo permite, como también activar una habilidad de su pokemon activo.

Pokemon, estos mantiene información acerca de su vida, sus contadores de daño, habilidades que posee y energias a su disposición. Los pokemones son capaces de utilizar sus habilidades en contra de un pokemon objetivo. También dependiendo de si es un pokemon básico, fase 1 o fase 2, son jugados de distinta manera por el visitor. Tanto los fase 1 como los fase 2 mantienen el id del pokemon que es su anteevolución.

Objeto, son cartas que llaman al visitor para realizar un efecto sobre el pokemon objetivo del entrenador que la jugó.

Soporte, al igual que las objeto realizan un efecto sobre el pokemon objetivo del entrenador que la jugó, pero solo puede jugarse una de estas por turno.

Energía, cartas que le permiten a los pokemones realizar sus habilidades.

Estadio, durante un juego solo puede haber un estadio activo, por lo que el visitor al ver una nueva carta de estadio reemplaza la ya existente. El controlador es capaz de llamar al efecto del estadio sobre el entrenador que esta jugando el turno.

Patrones utilizados

Se utilizó mucho el patrón de template, ya que muchos elementos compartian similitudes. Como lo son por ejemplo los distintos pokemones.

También se utilizó el visitor pattern para realizar el llamado a distintos metodos dependiendo de la carta que el entrenador jugaba.

Se utilizó un observer en el controlador, el cual observa a las habilidades de los pokemons que son jugados. Si un pokemon utiliza un ataque, esto informa al observer para que termine el turno del jugador y pase al siguiente turno.

Por último el controlador se puede ver como un gran adapter que proporciona control sobre el entrenador y sus metodos.

cc3002-tarea1's People

Contributors

fernandomaron avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.