Java-Gaming.org Hi !
 Featured games (91) games approved by the League of Dukes Games in Showcase (756) Games in Android Showcase (229) games submitted by our members Games in WIP (842) games currently in development
 News: Read the Java Gaming Resources, or peek at the official Java tutorials
Pages: [1]
 ignore  |  Print
 Maze Game Advice  (Read 1959 times) 0 Members and 1 Guest are viewing this topic.
_Scyth_

Junior Devvie

 « Posted 2013-01-09 17:17:14 »

Hey again, I have another noobie question

It's not so much a coding one but I may need help with that in the end. Also, something that might be necessary is that I'm using the BlackBerry JDE 5.0.0 so I'm restricted to using the Graphics package that comes with it. I'm sure a lot of you probably do not have these libraries however like I said my question isn't really a coding one.

1. Is it practical to create a bunch of tiles, and define the walkable pathways using a certain number, so that i wouldn't have to worry about collision detection for a simple maze game.
2. How would I store the co-ordinates of the walkable tiles, so that I can iterate through like an array to see in what directions the player can walk.

PandaMoniumHUN

JGO Coder

Medals: 32
Exp: 3 years

White-bearded OGL wizard

 « Reply #1 - Posted 2013-01-09 17:58:37 »

Hi.
1. Yes, it's a good idea to make your mazes tile based. It will be useful when you would like to generate random mazes.
2. You can do it by dozens of different ways, however here is a pretty primitive solution:
Refer numbers to your tiles so it'll be like:
0 = Nothing
1 = Wall
2 = Player
And to store these values create a multidimensional array (int[][] level = new level[100][100] <- Here's the code to create 100*100 level).
After this all you have to do on movement is to check if the position where you want to move is a wall or not, with something like this:
 1  2  3  4  5  6  7 `int playerPosition_x = 10;int playerPosition_y = 10;if(Keys.Right.isPressed()){   if(level[playerPosition_x+1][playerPosition_y] == 0){      //You can move here because there's nothing   }}`

Please keep in my that I don't know how you have to handle inputs on BlackBerry JDE so Keys.Right.isPressed() is just an example.
Also don't forget to check if playerPosition_x+1 (or whatever tile you want to move to) is out of your array's bounds. (e.g. level[101][100], this will throw an OutOfBoundException since our level in my example is only 100 by 100 and not 101 by 100).
If you didn't understand anything just let me know and I'll try to explain it.

My Blog | Jumpbutton Studio - INOP Programmer
Can't stress enough: Don't start game development until you haven't got the basics of programming down!
_Scyth_

Junior Devvie

 « Reply #2 - Posted 2013-01-09 18:12:43 »

Thanks that helped a lot! The code example is excellent! Thanks a lot
Pages: [1]
 ignore  |  Print

 DesertCoockie (59 views) 2018-05-13 18:23:11 nelsongames (88 views) 2018-04-24 18:15:36 nelsongames (78 views) 2018-04-24 18:14:32 ivj94 (763 views) 2018-03-24 14:47:39 ivj94 (95 views) 2018-03-24 14:46:31 ivj94 (647 views) 2018-03-24 14:43:53 Solater (108 views) 2018-03-17 05:04:08 nelsongames (189 views) 2018-03-05 17:56:34 Gornova (430 views) 2018-03-02 22:15:33 buddyBro (1090 views) 2018-02-28 16:59:18
 Java Gaming Resourcesby philfrei2017-12-05 19:38:37Java Gaming Resourcesby philfrei2017-12-05 19:37:39Java Gaming Resourcesby philfrei2017-12-05 19:36:10Java Gaming Resourcesby philfrei2017-12-05 19:33:10List of Learning Resourcesby elect2017-03-13 14:05:44List of Learning Resourcesby elect2017-03-13 14:04:45SF/X Librariesby philfrei2017-03-02 08:45:19SF/X Librariesby philfrei2017-03-02 08:44:05
 java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org