void fd_interpret(player *user)
{

	//////////////////////////					Testing
	static int first_pass = 0;

	if(first_pass == 0){

		set_up_test("FD Suite (Interpreting)", "Test of fd_interpret()", test_fd_interpret);

		++first_pass;

	}
	//////////////////////////

	if(user -> constant_checker == on){

		draw_angled_line(user, user -> current_constant);

	}
	else if(user -> variable_checker == on){

		check_variable(user);
		draw_angled_line(user, user -> variable_values[ user -> current_variable ]);

	}
	else{

		clear_screen();
		ERROR("\nNeither a constant nor variable was assigned before attempting to move forward.\n\n");

	}

}
void fd_interpret(player *user)
{

	if(user -> constant_checker == on){

		draw_angled_line(user, user -> current_constant);
	}
	else if(user -> variable_checker == on){

		check_variable(user);

		draw_angled_line(user, user -> variable_values[ user -> current_variable ]);
	}

}
Пример #3
0
static void draw_electronic_level(int angle, int prev_angle, int force_redraw)
{
    if (!force_redraw && angle == prev_angle) return;

    int x0 = os.x0 + os.x_ex/2;
    int y0 = os.y0 + os.y_ex/2;
    int r = 200;
    int prev_dx = (prev_angle % 1800 >= 450 && prev_angle % 1800 < 1350);
    int prev_dy = 1 - prev_dx;
    int dx = (angle % 1800 >= 450 && angle % 1800 < 1350);
    int dy = 1 - dx;
    draw_angled_line(x0, y0, r, prev_angle, 0);
    draw_angled_line(x0 + prev_dx, y0 + prev_dy, r, prev_angle, 0);
    draw_angled_line(x0, y0, r, angle, (angle % 900) ? COLOR_BLACK : COLOR_GREEN1);
    draw_angled_line(x0 + dx, y0 + dy, r, angle, (angle % 900) ? COLOR_WHITE : COLOR_GREEN2);
}