hi ,i dont speak very well english(i speak spanish) so i will try be very puntual in the things that i need help.
I need to do sometime like the game geometry wars.
The first problem is that i have adaptet de diagonal movent but i can't adapt the movent to diagonal imagenes, i dont know how do it, the second problem is that i need that when the users press the arrow keys, a shot go in the direction of the arrow key, the problem is that i dont know how make that the shot continue in the direction that the arrow key indicates, i think that i need like use the timer but i haven“t seen a example for that, please help, and sorry for my english;D
The first problem is that i have adaptet de diagonal movent but i can't adapt the movent to diagonal imagenes, i dont know how do it,
You need to keep track of position, speed, and the angle of your object :
Example usage :
Moveable m = NewMoveable(x , y , 25.0f/60.0f , 45.0);// Moves 25 pixels per second down and right
I can't really figure out what you are doing at the moment, but it seems you use a fixed set of bitmaps. And you seem to have player input combined with updating the ship.
What you'll want to do is something like:
detect input;
update world (use input; move according to time passed; handle collisions/other game events);
blit to screen;
repeat;
You might want to look into storing the player's (and bullet's) directions as an angle and using rotate_sprite. Then it will also get a speed. (And only in the 'update' part of the program, the speed will have effect.)
Some other remarks.
if(x==0){rest(50);}
Very bad way to handle boundaries, at a very bad place in your code (player input != collision detection). Also don't use rest...
[edit]Beaten by 20 minutes WTF I didn't use so much time writing this.
There are enough examples of timers. Search for 'timer' & 'speed', or 'game loop'.
I didn't see the attached file before, but after looking at it I have a few comments :
Don't use delete on a pointer that you didn't use new to create. Use destroy_bitmap on imagenes[0] thru imagenes[8] instead.
Your MoverX and MoverY functions should not draw anything to the screen, they should only change the position of your objects.
Separate logic and drawing.
You don't clear_to_color on your buffer, so your program must look pretty messy right now.
You use draw_sprite to draw the buffer, but you should use blit instead.
Thanks Edgar Reynaldo, That code that you posted helped me
I was trying to do this too but as normal I use Search and Recent on these boards to see if it's been covered else I was just about to post 
Thanks again
thanks Edgar Reynaldo and weapon_S, i am reading the articles of the angles and i am editing my code, thanks a lot