How do I create a endless circular map?

Started by
2 comments, last by cybrgeek 22 years, 8 months ago
I''m writing a space shooter game where your ship flys around and shoots other ships. On the bottom there is a map showing the location of all the ships, including yours. I need to make it so the ship can reach the end of the map on one side and wrap around to the other side. I was thinking of making it so when your ship reached one side it''s x pos would be brought back to the otherside, but then the other ships would also have to move if they were on the screen at the time of the move. The game is going to be simmilar to the game Aquatron if that helps anybody.
Advertisement
Well.... I don''t know how are you implementing it but is not that dificult...

when your map reaches the edge of the map (say the right edge) you just have to start drawing the left part of the map...

I don''t see any problem with any ships anywhere... (?)

nice day

jakovo
"lots of shoulddas, coulddas, woulddas in the air, thinking about things they shouldda couldda wouldda donne, however all those shoulddas coulddas woulddas ran away when they saw the little did to come"
The map consists of 32 sections each representing 1 screen width. The game is running at 800x600, so the total width of the playing area is 25600 pixels. When the ship reaches that point I could put the ship back at 0 for an x posistion, but when the ship moves back to 0 any other ships that were on screen at the time, but have not crossed the right edge of the map, would not be drawn on the screen after you crossed the edge. Is there another method of doing this?
I''m assuming, that since your whole map is bigger than your screen, you''re just following the ship around, and that ship is always drawn in the middle of your screen. Well, how do you currently determine whether or not to draw the other stuff? You check to see if it''s near you right, or are you just drawing everything?

Basically, you want to see if a ship is within ''sight'', in your case within 400 horizontal units and 300 vertical units...if it''s within that box, draw it. So if you''re on one end of the map, and the ship is on the other, you can just add the map size to your location, or subtract the map size from the other ship.

Ship.X -> 100, Enemy.X-> 25500

Ship.X += 25600 -> 25700, which is only 200 away from the Enemy, so draw it 200 units away from you...

I had to do this years ago for an asteroids game a few years back...easy stuff ; )

G''luck,
-Alamar

This topic is closed to new replies.

Advertisement