walle1doctor1who / snake4j Goto Github PK
View Code? Open in Web Editor NEWA customizable, modifiable version of the game Snake, written in Java.
License: GNU General Public License v3.0
A customizable, modifiable version of the game Snake, written in Java.
License: GNU General Public License v3.0
Add the ability to save the program's current settings to file when closing and to be able to load the settings from file when starting up. This would allow for the settings to persist between instances of the program.
Currently the play field and overlays are all displayed via a layered pane, with each overlay having it's own layer. However, since only one overlay if any should be visible at any given time, the other overlays currently need to be hidden when not in use. And when no overlays are to be visible, they all need to be hidden. If the overlays were all cards displayed on a single general overlay layer, then switching to a different overlay would be a matter of switching which card is currently displayed. Hiding all the overlays during gameplay would also be easier, since only one component will need to be hidden instead of multiple components.
Add a two player mode. The means to do so are already there, with the play field already supporting showing snake tiles in two different colors, and a second snake could be used for the second player. There is also a graphic that shows the arrow keys which could be used to show the controls for a second player. All that remains is implementing the second player in the main game.
With the settings being now being saved, a high score can now be kept. The high score should store the length of the snake, along with the relevant game settings used when acquiring the high score.
The snake repair methods (repair, repairSegment, and repairAfterRemoval) need to be finished and tested so as to allow snakes to repair themselves. Finishing and testing the repairAfterRemoval method will also finish the tile removal functionality (currently the only tiles that can be removed without risking something breaking are the snake's head and tail).
As the title says, the game should play a demo on the main menu when you first start the game or when no game is currently in play.
Implement a custom UI for the swing components to give the game its own appearance instead of just using the Nimbus UI.
The snake addAll method currently has the same restrictions as the offer method when it comes to the tiles it allows. The plan is to allow the addAll method to allow tiles with two (maybe more) directions set, so as to make it easier to be used to populate a snake with a collection of tiles, possibly even with another snake. This would allow for greater flexibility and could be used for different game modes.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.