Skip to content

It's an Object-Oriented Programming (OOP) based game! This project is all about creating a Bomberman game using OOP concepts like classes and objects. The beauty of OOP lies in the fact that it enhances code reusability and makes programming much more efficient by breaking down complex codes into smaller modules.

License

Notifications You must be signed in to change notification settings

Nhathuy1305/OOP-based-Bomberman-game

Banner

Contributors Forks Stargazers Issues


Logo

OOP BOMBERMAN PROJECT

Team Name: 404 NOT FOUND

A Java game created with JavaFX for OOP course in International University - VNUHCM!

View Demo

Table of contents 📍

  1. Introduction
  2. Game
  3. UML-class-diagram
  4. Features
  5. Challenges
  6. Acknowledgments
  7. References

Introduction 🧱

This is our game project for our final lab in our Object-Oriented Programming course in semester 2 (2020 - 2021). Bomberman is an individual game that does not require players have excellent skills or advanced technology. It's a straightforward game that may be enjoyed by people of all ages. As a result of all of these factors, we developed a program that is user-friendly and assists users in having the greatest possible experiences. So, what are we waiting for? Let the story begin!

Team Members 👨‍❤️‍💋‍👨

Order Name ID Email Github account
1 Dang Nhat Huy ITITIU20043 dnhuy.ityu@gmail.com Nhathuy1305
2 Pham Gia Bao ITITIU20166 Phamgiabao1862001@gmail.com giabao18
3 Phan Nguyen Hoang Bao ITITIU20165 hoangbao15082002@gmail.com Mr@JEY
4 Nguyen Luan Cong Bang ITITIU20163 bangnguyen.071102@gmail.com congbangitiu

Installation 🎯

  1. Open the terminal on your IDE
  2. Clone the repo
    git clone https://github.com/Nhathuy1305/OOP_BOMBERMAN_GAME
  3. Check the file status
    git status
  4. Change branch
    git checkout 'branch_name'

Motivation 🦾

As a fresher developer, we assume that the Bomberman game is one of the most simple game which helps us in practicing coding with OOP also some significant aspects of the front-end such as: How to render the game? , How frame working in UX/UI? , ….

Task Allocation 🙆‍♂️

Order Task Person Contribution
1 Graphics, Bot , Github Management Nhat Huy 25
2 Level, Utility Gia Bao 25
3 Control, Ui Hoang Bao 25
4 Entities, PowerPoint Cong Bang 25

Game 🕹️

Technologies 🌐

How to play ? 🎮

Players will direct the character's movement in order to place bombs to killing the enemy. After the player has killed all of the monsters of this level a portal will open for the character to enter in order to advance to the next level (we have 3 levels).

Game logic 💡

  • Character: The character is controlled by the arrow key combination, only one bomb can be placed at a time.Moreover ,The character will gain speed change if the value is SpeedItem.

  • Bomb : When the bomb explodes, it will create a fire trail, if the character or the enemy hits the fire trail, they will all be destroyed. The length of the flame will increase if the character eats flameitem

  • Enemy: includes 4 types and is divided by level, each type has its own attribute.

  • Brick : it Can be broken by bombs and can contain items

  • Wall : it cannot be broken to limit the movement of characters and enemies

UML Class Diagram📋

1. CONTROL


------------------------------------

2. ENTITY

a) Animal

b) Intelligent with "Doll" enemy

c) Block

d) Items

e) Items with Entity

f) Animal with Entity

------------------------------------

3. FEATURES


------------------------------------

4. GAMERUNNER


------------------------------------

5. GRAPHICS


------------------------------------

6. LEVELS


------------------------------------

Features 🚩

  • Completed: UX/UI, sound of game, enhancing algorithms
  • Incompleted: Minvo, 2 players, multiple characters for choosing, …

Challenges‼️

  • Task allocation for each team member
  • Using platform for communication (Trello)
  • Working environment (Github)

Acknowledgments🧠

We would want to express our gratitude to Tom for providing us with the chance to participate in this project and apply what we learned in theory into practice. This project's learning curve was steep, but it was well worth it for all of us. We have learned more about interface technologies to construct a functioning application that interacts with our project. Tom, we want to thank you again for all the hard work and expertise that you have put into your teaching. We'll make sure that all we've learned doesn't go to waste, and that we can master them better from now on ❤️

  1. phuctd99
  2. carlosflorencio
  3. minhnq410
  4. JavaFx Tutorial
  5. A* Intelligent

(Back to top)

About

It's an Object-Oriented Programming (OOP) based game! This project is all about creating a Bomberman game using OOP concepts like classes and objects. The beauty of OOP lies in the fact that it enhances code reusability and makes programming much more efficient by breaking down complex codes into smaller modules.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Languages