- Snake is a game in which the players need to think about controlling snake to explore an map and catch the appples and handle the situation to avoid hitting with the any obstacle or itself.
- Every time the snake catches an apple, its size increases and score of user will also be added 1 point.
- If the snake hits its tail or a wall, the game will be ended.
Action | Reward |
---|---|
Catch the apple | + 1 |
Hits bomb | - 1 |
Hits tail or wall | game-over |
- The final project on labory in my school. It request is use any language programming to make a game or application. My team have 2 student and we try hard to complete them in 3 week.
- Make report speech format in docx or pdf.
- Have PowperPoint presentation slides.
- Show detail diagram of project structure.
- I sometimes make refer on the internet but they seem like very difficult.
- Java Core 8 and Java Swing basic.
- Function, loop, algorithms, implement, extend, Thread in Java.
- UML diagram in programming.
- Design pattern (although it hasn't really been applied completely, but overall I'm trying to make it happen).
- Refferent on StackOverflow and Youtube BroCode chanel.
- Thank you @TP-O supported us in this project.
- Explore and learn how the Java language works through libraries and methods.
- Familiarize yourself with object oriented programming and its working principle.
- Introduce the Java Swing and java.awt libraries through implementation and method inheritance its.
- An overview of Design patterns and their operation diagrams.
- Using the UML diagram to analys codes and information processing.
- Understand how multithreading works and manage it.
- Improve your skills to resolve the problems in programming.
- Practice and complete assignment Java OOP projects in a university lab.
- Fork and clone this project to local destop.
- Run it by IDE for Java which JRE and JDK installed.
- Choose level at level button and click new game button to play new.
- Start playing and control the snake with the arrows keys "UP", "DOWN", "LEFT" and "RIGHT", simulating a user interaction with the game.
β |
β |
β |
β |
---|---|---|---|
UP | DOWN | LEFT | RIGHT |
- Experience the beautiful interface and attractive sound.
- If you over the game. Please press the start new button to start playing again or press the red x button to exit.
- Benefits: Scope, Clarity, Collaboration, Consistency.
- General overview folder of a project.
- With proposing that everyone can quickly to understand the logic behind which they need.
- Easily for manage the project progression.
root
βββββββββββββββββββββββββββββββββββββ src
βββ circleci βββ icons (folder)
β βββ config.yml βββ background (folder)
| βββ buttons (folder)
βββ .github βββ images (folder)
| βββ workflows (folder) βββ musics (folder)
| βββ FUNDING.yml β
| βββ utils
βββ ScreenShots (folder) β βββ version
βββ Reported Speech β βββ refer
βββ UML Diagram β βββ ImageResizer
βββ Slide PowerPoint β βββ DataType
βββ CONTRIBUTING β
βββ README.MD βββ root
β βββ ArrowKey
β βββ ISnake
β βββ Root
β
βββ files
β βββ Read
β βββ Write
β βββ Item
β βββ DownLoad
β βββ licenseText
β βββ writeData
β βββ dataScore
β
βββ testing
β βββ testPanel
β βββ testCustomerPane
β βββ testMediaLoader
β
βββ thuongtruong1009
βββ GamePanel
βββ CustomerPane
βββ mediaLoader
βββ SetupData
βββ Frame
βββ Main
Want to add your project to the repo?
Don't worry... there is no need to know any programming language-related knowledge. You only have to know the Git and GitHub, and that's it... You can contribute to this project very easily by following a few guidelines. Now we are let's start.
- Star this repository (Click the star button in the top right of this page).
- Fork this repository (Click the Fork button in the top right of this page, after click to your profile image).
- Clone your forked copy down to your local machine.
git clone https://github.com/<your_username>/Snake-Game-OOP.git
- Navigate to the project directory
cd Snake-Game-OOP
- Add a reference(remote) to the original repository.
git remote add upstream https://github.com/thuongtruong1009/Snake-Game-OOP.git
- Check the remotes for this repository.
git remote -v
- Always take a pull from the upstream repository to your master branch to keep it at par with the main project(updated repository).
git pull upstream main
- Create a new branch
git checkout -b <your_branch-name>
- Track your changes β. (The task is described below)
git add .
Commit your changes .
git commit -m "Commit message"
- Push the committed changes in your feature branch to your remote repo.
git push -u origin <your_branch_name>
![]() Step 1 |
![]() Step 2 |
(After open this file you have a interface like the below image).
![]() Step 3 |
There are 4 table-field, you must added in the correct format of them. (First one is for order, the second one is for your Github display name, the third one is for your link to github username & the fourth is for your activity for this project)
(After propose commit, you must create new Pull request to be approvaled)
![]() Step 4 |
c) Finally
-
To create a pull request, click on
Create Pull Request
(Click the New Pull Request button located at the top of your repo). -
Add appropriate title and description to your pull request explaining your changes and efforts done.
-
--> You have made a PR to this projects-showcase π₯ .
-
--> π Wait a few times for your submission to be accepted, if your PR will be reviewed and merged approval, then you will be added on list contributors. See at CONTRIBUTING.
-
Visit the CODE_OF_CONDUCT to see more about guidelines...
-
Stay safe & keep contributing.
-
Any problem, should contact me via email.
- Snake image at here.
- IDE or text-editor: Visual Studio Code, Eclipse, Netbeans, IntelliJ IDEA...
- Java runtime enviroments installed. Refer at Oracle.
- Learning front-end web full course at front-end course.
- Get support about Java language at Oracle.
- Following the version updates at build.
Thanks goes to these wonderful people (emoji key):
Codev TA π€ |
Tran Nguyen Thuong Truong π» π€ |
Imgbot π£ π§ |
PhΓ‘t Δα» π€ |
tung01673641696 π€ |
Codacy Badger |
Raydelto Hernandez π π§βπ« |
wpolanco π€ οΈοΈοΈοΈβΏοΈ |
This project follows the all-contributors specification. Contributions of any kind welcome!
β€οΈ Support me
We are looking for sponsors to join us to have better community reach and impact.
π° License
-
This project is distributed under the ECL-2.0 License.
-
Copyright of @thuongtruong1009, 2021.