Giter Site home page Giter Site logo

proyect_smash_bros's Introduction

馃幃 Proyect_Smash_Bros

Freshmen Fair Project: Interactive Smash Bros Game

Project Description

This project is an interactive game developed for the Freshmen Fair, using a database with detailed information about Smash Bros characters. The game displays character cards and features a trivia game where participants answer questions about each character to earn points.

Key Features

  • Character Database: Includes detailed information about Smash Bros characters, accessible to players during the game.
  • Trivia Game: Participants answer questions about the characters to accumulate points.
  • Informative Cards: Displays cards with important data about each character, facilitating learning and participation.
  • Gamification: Integration of game elements to incentivize competition and user engagement.

Objectives

  • Provide an educational and entertaining tool for freshmen.
  • Promote knowledge about Smash Bros characters interactively.
  • Encourage active participation and enthusiasm among new students.

Technologies Used

  • Database: To store and manage character information.
  • Frontend: User interface developed to display the cards and handle player interaction.
  • Backend: Trivia game logic and score management.

How to Play

  1. Start: Players enter the game and select a character from the database.
  2. Trivia: They answer a series of questions related to the selected character.
  3. Scoring: Points are awarded based on correct answers and displayed on a leaderboard.

Expected Outcomes

  • Greater knowledge and familiarity with Smash Bros characters among participants.
  • Increased interest and participation in the freshmen fair.
  • Creation of a fun and educational environment for new students.

Team Contributions

  • Database Development: Collection and organization of character information.
  • Interface Design: Creation of an intuitive and attractive user experience.
  • Trivia Game Implementation: Development of game logic and rules.

Conclusion

This project not only provides a fun and competitive platform but also serves as an educational tool, helping new students integrate and learn in a playful and effective way.

proyect_smash_bros's People

Contributors

aszurita avatar nhn2004 avatar darvier88 avatar lromeror avatar jlchong3 avatar miguelmejia25 avatar jonthz avatar 2dsa3 avatar

Stargazers

 avatar Mariu Andrade Veloz avatar Andr茅s Salazar avatar Annabella Noelia S谩nchez Guzm谩n avatar  avatar Juan Munizaga avatar Jorge Apolo Acosta avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

proyect_smash_bros's Issues

Issue: Refactorizaci贸n de switch Statements en la Clase Personaje

Descripci贸n del Problema:
Se ha identificado un problema en el c贸digo del proyecto dentro de la clase Personaje, donde se utiliza un switch statement para manejar diferentes tipos de movimientos (NORMAL, LAT, UP, DOWN). El uso de este switch statement es problem谩tico porque dificulta la extensi贸n del c贸digo y viola el principio de responsabilidad 煤nica, lo que incrementa la posibilidad de errores al agregar nuevos tipos de movimientos.

Recomendaci贸n:
Se recomienda aplicar la t茅cnica de refactorizaci贸n Replace Type Code with Subclasses. Esta t茅cnica consiste en crear subclases espec铆ficas para cada tipo de movimiento, como NormalMove, LatMove, UpMove, y DownMove, que heredan de una clase base Move. Posteriormente, se reemplaza el switch statement con un mapa de subclases que asocia cada tipo de movimiento con su correspondiente subclase, permitiendo que la l贸gica espec铆fica de cada tipo est茅 encapsulada en una clase propia.

Beneficios:
Extensibilidad: Permite agregar nuevos tipos de movimientos f谩cilmente sin modificar el flujo principal del c贸digo.
Mantenibilidad: Mejora la estructura del c贸digo al encapsular la l贸gica espec铆fica en subclases, lo que facilita su comprensi贸n y mantenimiento.
Eliminaci贸n de C贸digo Repetitivo: Reduce la duplicaci贸n de c贸digo y mejora la coherencia del sistema al manejar cada tipo de movimiento de forma independiente.

Im谩genes del C贸digo Despu茅s de la Refactorizaci贸n:
image_2024-08-10_212419822
image_2024-08-10_212429795
image_2024-08-10_212438819

Encapsulate Collection en Personaje

La clase Personaje del juego incluye un Hashmap, el cual puede obtenerse y ser modificado directamente por cualquiera con el m茅todo getPreguntaRespuestas(), esto no deber铆a ser posible, ya que no deber铆amos ser capaces de operar directamente esta colecci贸n como si fuera un mapa fuera de la clase respectiva a la que pertenece, ya que esto incumple con el principio de encapsulaci贸n.

Screenshot 2024-08-10 221009

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.