X-Git-Url: https://jasonwoof.com/gitweb/?p=vor.git;a=blobdiff_plain;f=main.c;h=ad3ab56930e833f72170b39de65a98959d18b2a1;hp=be5ae97d21f794424319be6b88f4f991e62145bb;hb=2bea0659b8edff14f1554d2540780f54ccdc21c9;hpb=5bc27bd36ff9d698e4e757a5dd8f981b31cfaeab diff --git a/main.c b/main.c index be5ae97..ad3ab56 100644 --- a/main.c +++ b/main.c @@ -26,6 +26,7 @@ #include "config.h" #include "file.h" #include "score.h" +#include "shape.h" #include "sound.h" #include @@ -52,6 +53,7 @@ struct rock_struct { int dead; // has been blown out of the way // to make room for a new ship appearing. SDL_Surface *image; + struct shape *shape; int type_number; }; struct black_point_struct { @@ -96,6 +98,8 @@ SDL_Surface *surf_rock[NROCKS], // THE ROCKS *surf_font_big; // The big font +struct shape rock_shapes[NROCKS]; + SFont_Font *g_font; // Structure global variables @@ -109,6 +113,7 @@ struct spacedot sdot[MAXSPACEDOTS]; char topline[1024]; char *initerror = ""; +struct shape shipshape; float shipx,shipy = 240.0; // X position, 0..XSIZE float shipdx,shipdy; // Change in X position per tick. float rockrate,rockspeed; @@ -467,6 +472,7 @@ drawdots(SDL_Surface *s) { SDL_UnlockSurface(s); } + char a[MAX_PATH_LEN]; int init(int fullscreen) { @@ -538,6 +544,7 @@ init(int fullscreen) { // Load the spaceship graphic. NULLERROR(temp = IMG_Load(add_path("sprites/ship.png"))); NULLERROR(surf_ship = SDL_DisplayFormat(temp)); + get_shape(surf_ship, &shipshape); // Load the life indicator (small ship) graphic. NULLERROR(temp = IMG_Load(add_path("indicators/life.png"))); @@ -563,11 +570,11 @@ init(int fullscreen) { // Load all our lovely rocks for(i = 0; ipixels; // Check that the black points on the ship are @@ -741,6 +755,7 @@ draw() { } } SDL_UnlockSurface(surf_screen); + */ } // Draw all the little ships @@ -881,6 +896,7 @@ gameloop() { rockptr->dy = rnd()-0.5; rockptr->type_number = random() % NROCKS; rockptr->image = surf_rock[rockptr->type_number];// [random()%NROCKS]; + rockptr->shape = &rock_shapes[rockptr->type_number]; rockptr->active = 1; rockptr->y = rnd()*(YSIZE + rockptr->image->h); }