1. How do you rotate a sprite to point to the cursor? I don't know much trigonometry, so keep it sorta simple please.
It'l require some trig to actually do it(easy to find on the net), but the basic logic goes something like this:
1) Get XY of Mouse Cursor
2) Get XY of Sprite
3) Get current angle of sprite
4) Calculate "Vector" between the cursor and sprite's XY (this is where the trig happens)
5) Figure out the difference between the angle your sprite is facing and the vector to the cursor
6) Figure out which direction to turn (i.e. which angle is smaller? Do i turn left 20 degrees or do i turn Right 340 degrees? left of course)
7) Turn sprite
I have an AI routine in my project that performs this kindof tracking. If you're interested, I can pull it out. Or if you'd prefer to figure it out first, thats cool too.
2. Basic lighting effects with XNA? A good 2d tutorial link would be great, and google is turning up nothing. I haven't read much about this.
Theres an absolutely SICK lighting 'tutorial' on YouTube but it's anything but basic. You can simulate shadows by drawing the sprite again, offset a bit, black and somewhat transparent.
As for GameState handling, i feel bad but i didnt actually read through that article hehe. I'm experimenting with gamestates at the moment as well. It's amazingly helpfull to be enlightened to the concept of GameStates. What I'd suggest is a case switch statement in your "Update" or "Draw" routines, and they have seperate instructions they carry out based on which gamestate your in. like, case: "MainMenu"... *insert main menu logic here*.. case: "MainGameLoop" *insert main game loop logic here* ETC.
1. Isometric/2.5d: I have next to no idea how to implement this, but it could end up with very pretty results.
Isometric is just top town 2d with sprite directions (Ne/SW/etc) and some very clever Layer Depth coding. Im not actually sure how its done, never looked into it. But I think the challenge is in working out the layer depths, which change dynamically.
2. 2D-top down; non-tile based: Is this even feasible for say, walking around a large city? Making a map editor for this would be hell... Opinions?
Perfectly feasable. Map editor wouldn't be hell. Before much longer, I'l be writing one for my game. Because everything is viewed in terms of X,Y co-ords, you can generate a MASSIVE map with an actual map file that is incredibly small.
3. 2D-top down; tile-based: This seems like the easiest and most feasible option, but can it look good?
Most of the tile-based games I've seen looked like crap, especially the sci-fi ones (which I'm trying to make).
Is your game turn based or real time? If it's turn based, tile-based mapping would be easy. You'd need a multidimensioned array to store which objects/chars are on which tiles. Or more than one array. Well programmatically theres many ways to do it, doesnt matter. If it's real time, tile-based could be very tricky.
Anyways, Hope this helps!
"None are more hopelessly enslaved than those who falsely believe they are free."
"It is no measure of health to be well adjusted to a profoundly sick society."
"Hope is the first step on the road to dissapointment." -Jonah Orionhttp://tankzgame.blogspot.com