diff --git a/d1x-rebirth/main/endlevel.c b/d1x-rebirth/main/endlevel.c index 738defad6..74f6157f6 100644 --- a/d1x-rebirth/main/endlevel.c +++ b/d1x-rebirth/main/endlevel.c @@ -102,16 +102,16 @@ object *endlevel_camera; #define FLY_SPEED i2f(50) -#define FLY_ACCEL i2f(5) - -fix cur_fly_speed,desired_fly_speed; - -static void generate_starfield(); +static void do_endlevel_flythrough(int n); static void draw_stars(); static int find_exit_side(object *obj); -static void do_endlevel_flythrough(int n); +static void generate_starfield(); static void start_endlevel_flythrough(int n,object *obj,fix speed); +#define FLY_ACCEL i2f(5) + +static fix cur_fly_speed,desired_fly_speed; + grs_bitmap *satellite_bitmap,*station_bitmap,*terrain_bitmap; //!!*exit_bitmap, vms_vector satellite_pos,satellite_upvec; //!!grs_bitmap **exit_bitmap_list[1]; @@ -202,10 +202,6 @@ static int endlevel_data_loaded=0; void start_endlevel_sequence() { -#ifndef NDEBUG - int last_segnum; -#endif - int exit_side,tunnel_length; reset_rear_view(); //turn off rear view if set - NOTE: make sure this happens before we pause demo recording!! @@ -230,6 +226,10 @@ void start_endlevel_sequence() PlayerFinishedLevel(0); //don't do special sequence return; } +#ifndef NDEBUG + int last_segnum; +#endif + int exit_side,tunnel_length; { int segnum,old_segnum,entry_side,i; @@ -401,10 +401,10 @@ static void get_angs_to_object(vms_angvec *av,const vms_vector *targ_pos,vms_vec void do_endlevel_frame() { static fix timer; + static fix bank_rate; vms_vector save_last_pos; static fix explosion_wait1=0; static fix explosion_wait2=0; - static fix bank_rate; static fix ext_expl_halflife; save_last_pos = ConsoleObject->last_pos; //don't let move code change this @@ -506,8 +506,8 @@ void do_endlevel_frame() //create little explosion on wall - vm_vec_copy_scale(&tpnt,&ConsoleObject->orient.rvec,(d_rand()-D_RAND_MAX/2)*100); - vm_vec_scale_add2(&tpnt,&ConsoleObject->orient.uvec,(d_rand()-D_RAND_MAX/2)*100); + vm_vec_copy_scale(&tpnt,&ConsoleObject->orient.rvec,(d_rand()-D_RAND_MAX/2)*100); + vm_vec_scale_add2(&tpnt,&ConsoleObject->orient.uvec,(d_rand()-D_RAND_MAX/2)*100); vm_vec_add2(&tpnt,&ConsoleObject->pos); if (Endlevel_sequence == EL_FLYTHROUGH) @@ -898,14 +898,14 @@ static void render_external_scene(fix eye_offset) vms_vector stars[MAX_STARS]; -void generate_starfield() +static void generate_starfield() { int i; for (i=0;iorient.rvec,(d_rand()-RAND_MAX/2)*100); - vm_vec_scale_add2(&tpnt,&ConsoleObject->orient.uvec,(d_rand()-RAND_MAX/2)*100); + vm_vec_copy_scale(&tpnt,&ConsoleObject->orient.rvec,(d_rand()-D_RAND_MAX/2)*100); + vm_vec_scale_add2(&tpnt,&ConsoleObject->orient.uvec,(d_rand()-D_RAND_MAX/2)*100); vm_vec_add2(&tpnt,&ConsoleObject->pos); if (Endlevel_sequence == EL_FLYTHROUGH) @@ -667,7 +642,8 @@ void do_endlevel_frame() if (PLAYING_BUILTIN_MISSION && endlevel_movie_played != MOVIE_NOT_PLAYED) stop_endlevel_sequence(); - else { + else + { int objnum; //songs_play_song( SONG_ENDLEVEL, 0 ); @@ -942,7 +918,7 @@ void draw_exit_model() int exit_point_bmx,exit_point_bmy; -fix satellite_size = i2f(400); +static fix satellite_size = i2f(400); #define SATELLITE_DIST i2f(1024) #define SATELLITE_WIDTH satellite_size @@ -1024,14 +1000,14 @@ static void render_external_scene(fix eye_offset) vms_vector stars[MAX_STARS]; -void generate_starfield() +static void generate_starfield() { int i; for (i=0;iorient,Render_zoom); - render_mine(start_seg_num,eye_offset, 0); + render_mine(start_seg_num,eye_offset,0); } void render_endlevel_frame(fix eye_offset) @@ -1451,7 +1427,7 @@ try_again: if ((p=strchr(line,';'))!=NULL) *p = 0; //cut off comment - for (p=line+strlen(line);p>line && isspace(*p);*p--=0); + for (p=line+strlen(line)-1;p>line && isspace(*p);*p--=0); for (p=line;isspace(*p);p++); if (!*p) //empty line @@ -1463,10 +1439,7 @@ try_again: int iff_error; ubyte pal[768]; - if (terrain_bm_instance.bm_data) - d_free(terrain_bm_instance.bm_data); - - Assert(terrain_bm_instance.bm_data == NULL); + gr_free_bitmap_data (&terrain_bm_instance); iff_error = iff_read_bitmap(p,&terrain_bm_instance,BM_LINEAR,pal); if (iff_error != IFF_NO_ERROR) { @@ -1504,8 +1477,7 @@ try_again: int iff_error; ubyte pal[768]; - if (satellite_bm_instance.bm_data) - d_free(satellite_bm_instance.bm_data); + gr_free_bitmap_data (&satellite_bm_instance); iff_error = iff_read_bitmap(p,&satellite_bm_instance,BM_LINEAR,pal); if (iff_error != IFF_NO_ERROR) {