Beispiel #1
0
static void gr_ubox12(grs_canvas &canvas, const int left, const int top, const int right, const int bot, const uint8_t color)
{
	gr_uline(canvas, i2f(left), i2f(top), i2f(right), i2f(top), color);
	gr_uline(canvas, i2f(right), i2f(top), i2f(right), i2f(bot), color);
	gr_uline(canvas, i2f(left), i2f(top), i2f(left), i2f(bot), color);
	gr_uline(canvas, i2f(left), i2f(bot), i2f(right), i2f(bot), color);
}
Beispiel #2
0
void gr_line(grs_canvas &canvas, fix a1, fix b1, fix a2, fix b2, const uint8_t color)
{
	int x1, y1, x2, y2;
	x1 = i2f(MINX);
	y1 = i2f(MINY);
	x2 = i2f(canvas.cv_bitmap.bm_w - 1);
	y2 = i2f(canvas.cv_bitmap.bm_h - 1);

	CLIPLINE(a1,b1,a2,b2,x1,y1,x2,y2,return,, FIXSCALE );
	gr_uline(canvas, a1, b1, a2, b2, color);
}
Beispiel #3
0
void gr_ubox12(int left,int top,int right,int bot)
{
#if 0	// the following shifts the box up 1 unit in OpenGL
	int i;

	for (i=top; i<=bot; i++ )
	{
		gr_upixel( left, i );
		gr_upixel( right, i );
	}

	for (i=left; i<=right; i++ )
	{
		gr_upixel( i, top );
		gr_upixel( i, bot );
	}
#endif
	gr_uline(i2f(left), i2f(top), i2f(right), i2f(top));
	gr_uline(i2f(right), i2f(top), i2f(right), i2f(bot));
	gr_uline(i2f(left), i2f(top), i2f(left), i2f(bot));
	gr_uline(i2f(left), i2f(bot), i2f(right), i2f(bot));
}
Beispiel #4
0
int gr_line(fix a1, fix b1, fix a2, fix b2) {
	int x1, y1, x2, y2;
	int clipped = 0;

	x1 = i2f(MINX);
	y1 = i2f(MINY);
	x2 = i2f(MAXX);
	y2 = i2f(MAXY);

	CLIPLINE(a1, b1, a2, b2, x1, y1, x2, y2, return 2, clipped = 1, FSCALE);

	gr_uline(a1, b1, a2, b2);

	return clipped;

}
Beispiel #5
0
Datei: radar.c Projekt: btb/d1x
void radar_render_frame()	
{
	int i,color;
	object * objp;

// added 7/5/99 - Owen Evans - radar resizes with screen size
        switch (Cockpit_mode)
        {
                case CM_FULL_SCREEN:
                        Hostage_monitor_size = Game_window_w / 6;
                        Hostage_monitor_x = (grd_curscreen->sc_w - Game_window_w) / 2;
                        Hostage_monitor_y = (grd_curscreen->sc_h - Game_window_h) / 2;
                        break;
                case CM_FULL_COCKPIT:
                        Hostage_monitor_size = 40;
                        Hostage_monitor_x = 0;
                        Hostage_monitor_y = 80;
                        break;
                case CM_STATUS_BAR:
                        Hostage_monitor_size = Game_window_w / 6;
                        Hostage_monitor_x = (grd_curscreen->sc_w - Game_window_w) / 2;
                        Hostage_monitor_y = (max_window_h - Game_window_h) / 2;
                        break;
                case CM_REAR_VIEW: //no radar in rear view or letterbox!
                case CM_LETTERBOX:
                        return;
        }
//end added - OE

	if (hostage_is_vclip_playing())
		return;

	gr_set_current_canvas(NULL);

	gr_setcolor( BM_XRGB( 0, 31, 0 ) );
	
        gr_ucircle( i2f(Hostage_monitor_x+Hostage_monitor_size/2), i2f(Hostage_monitor_y+Hostage_monitor_size/2),     i2f(Hostage_monitor_size)/2);

     //other stuff added 9/14/98 by Victor Rachels for fun.
        gr_circle( i2f(Hostage_monitor_x+Hostage_monitor_size/2), i2f(Hostage_monitor_y+Hostage_monitor_size/2),     i2f(Hostage_monitor_size) / 8 );
        gr_upixel((Hostage_monitor_x+Hostage_monitor_size/2), (Hostage_monitor_y+Hostage_monitor_size/2) );
        gr_uline(i2f(Hostage_monitor_x+Hostage_monitor_size/10),i2f(Hostage_monitor_y+Hostage_monitor_size/2),i2f(Hostage_monitor_x+Hostage_monitor_size*2/10),i2f(Hostage_monitor_y+Hostage_monitor_size/2));
        gr_uline(i2f(Hostage_monitor_x+Hostage_monitor_size-Hostage_monitor_size/10),i2f(Hostage_monitor_y+Hostage_monitor_size/2),i2f(Hostage_monitor_x+Hostage_monitor_size-Hostage_monitor_size*2/10),i2f(Hostage_monitor_y+Hostage_monitor_size/2));


//killed 7/5/99 - Owen Evans - make radar much more useable
//        // Erase old blips
//        for (i=0; i<N_blips; i++ )      {
//                gr_setcolor(gr_gpixel( &GameBitmaps[cockpit_bitmap[0].index], Blips[i].x, Blips[i].y ));
//                gr_upixel( Blips[i].x, Blips[i].y );
//        }
//end killed - OE

        N_blips = 0;

//	if ( !(Players[Player_num].flags & (PLAYER_FLAGS_RADAR_ENEMIES | PLAYER_FLAGS_RADAR_POWERUPS  )) ) return;

        radx = i2f(Hostage_monitor_size*4)/2;
        rady = i2f(Hostage_monitor_size*4)/2;
        cenx = i2f(Hostage_monitor_x)+i2f(Hostage_monitor_size)/2;
        ceny = i2f(Hostage_monitor_y)+i2f(Hostage_monitor_size)/2;

	rox = fixdiv( cenx, radx );
	roy = fixdiv( ceny, rady );

	objp = Objects;
	for (i=0;i<=Highest_object_index;i++) {
		switch( objp->type )	{
		case OBJ_PLAYER:
			if ( i != Players[Player_num].objnum )	{
#ifdef NETWORK
				if (Game_mode & GM_TEAM)
					color = get_team(i);
				else
#endif
                                        color = i;
				radar_plot_object( objp, gr_getcolor(player_rgb[color].r,player_rgb[color].g,player_rgb[color].b) );
			}
			break;
              case OBJ_HOSTAGE:
                      radar_plot_object( objp, BM_XRGB(0,31,0) );
                      break;
              case OBJ_POWERUP:
                      //if ( Players[Player_num].flags & PLAYER_FLAGS_RADAR_POWERUPS )
                       if(!(Game_mode & GM_MULTI))
                        radar_plot_object( objp, BM_XRGB(0,0,31) );
                      break;
	      case OBJ_ROBOT:
//			//if ( Players[Player_num].flags & PLAYER_FLAGS_RADAR_ENEMIES )
		      radar_plot_object( objp, BM_XRGB(31,0,0) );
		      break;
// added 7/5/99 - Owen Evans - reactor is now shown on radar
              case OBJ_CNTRLCEN:
                      radar_plot_object( objp, BM_XRGB(31,31,31) );
                      break;
// end added - OE
		default:
			break;
		}
		objp++;
	}

	// Draw new blips...
	for (i=0; i<N_blips; i++ )	{
		gr_setcolor( Blips[i].c );
		gr_upixel( Blips[i].x, Blips[i].y );
	}
}