Example #1
0
/****************************************************************************
 *
 * DISPLAY EFFECTS
 *
 ****************************************************************************/
void eject_effect_deff(void) {
	U16 fno;
	dmd_clean_page_high ();//
	dmd_clean_page_low ();//
	switch (++ejectDeffCounter % 2) {
		default:
		case 0:
					for (fno = IMG_EYE_B_START; fno <= IMG_EYE_B_END; fno += 2) {
							dmd_alloc_pair ();
							frame_draw(fno);
							dmd_show2 ();
							task_sleep (TIME_66MS);
						}//end of inner loop

					for (fno = IMG_EYE_B_END - 2; fno >= IMG_EYE_B_START + 6; fno -= 2) {
							dmd_alloc_pair ();
							frame_draw(fno);
							dmd_show2 ();
							task_sleep (TIME_66MS);
						}//end of inner loop

					for (fno = IMG_EYE_B_START + 4; fno >= IMG_EYE_B_START + 2; fno -= 2) {
						dmd_map_overlay ();
						dmd_clean_page_low ();
							font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "RETINA");
							font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Bot, "SCAN");
						dmd_text_outline ();
						dmd_alloc_pair ();
						frame_draw(fno);
						dmd_overlay_outline ();
						dmd_show2 ();
						task_sleep (TIME_66MS);
					}//end of inner loop
			break;
		case 1:
					for (fno = IMG_EYE_START; fno <= IMG_EYE_27; fno += 2) {
						dmd_alloc_pair ();
						frame_draw(fno);
						dmd_show2 ();
						task_sleep (TIME_66MS);
					}//end of inner loop

				dmd_alloc_pair_clean ();// Clean both pages
				for (fno = IMG_EYE_28; fno <= IMG_EYE_END; fno += 2) {
					dmd_map_overlay ();
					dmd_clean_page_low ();
						font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "RETINA");
						font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Bot, "SCAN");
					dmd_text_outline ();
					dmd_alloc_pair ();
					frame_draw(fno);
					dmd_overlay_outline ();
					dmd_show2 ();
					task_sleep (TIME_66MS);
				}//end of inner loop
			break;
		}//end of switch
	deff_exit ();
}//end of mode_effect_deff
Example #2
0
void cryoprison_start_effect_deff(void) {
	U16 fno;
	dmd_alloc_pair_clean ();// Clean both pages
	cryoprison_animation_display_effect (IMG_CRYOPRISON_E1_START, IMG_CRYOPRISON_E1_END);

	cryoprison_frame_bitfade_fast(IMG_CRYOPRISON_E2_START);

	cryoprison_animation_display_effect (IMG_CRYOPRISON_E2_START, IMG_CRYOPRISON_E2_END);

	cryoprison_frame_bitfade_fast(IMG_CAPSIMON_C_START);

		dmd_alloc_pair_clean ();// Clean both pages
	for (fno = IMG_CAPSIMON_C_START; fno <= IMG_CAPSIMON_C_END; fno += 2) {
		dmd_map_overlay ();
		dmd_clean_page_low ();
		font_render_string_center (&font_steel, DMD_MIDDLE_X - 30, DMD_BIG_CY_Top, "CRYO");
		font_render_string_center (&font_steel, DMD_MIDDLE_X - 20, DMD_BIG_CY_Bot, "PRISON");
		dmd_text_outline ();
		dmd_alloc_pair ();
		frame_draw(fno);
		dmd_overlay_outline ();
		dmd_show2 ();
		task_sleep (TIME_100MS);
	}//end of inner loop
	task_sleep_sec (2);
	deff_exit ();
}//end of mode_effect_deff
Example #3
0
/****************************************************************************
 *
 * display effects
 *
 ****************************************************************************/
void superjets_effect_deff(void) {
	U8 sj_swap = 0;
	U8 TOGGLE = 0;
	dmd_alloc_pair_clean ();// Clean both pages
	for (;;) {
		dmd_map_overlay ();
		dmd_clean_page_low ();
//right side status display
		ll_score_draw_ball ();

//left side display
		sprintf_score (superjets_mode_score);
		font_render_string_right (&font_var5, 98, 25, sprintf_buffer);

		if (ballsave_test_active()) {
			sprintf ("%d BALL SAVE", ballsave_get_timer());
		}
		else {
		sprintf ("%d SEC,  %d TO GOAL", superjets_mode_timer, superjets_goal - superjets_mode_shots_made);
		}
		font_render_string_right (&font_var5, 98, 0, sprintf_buffer);
		dmd_text_outline ();
		dmd_alloc_pair ();
		sj_counter++;
		if (sj_counter % 3 == 1) 	frame_draw(IMG_SUPERJETS_1);
		if (sj_counter % 3 == 2)	frame_draw(IMG_SUPERJETS_2);
		if (sj_counter % 3 == 0) 	frame_draw(IMG_SUPERJETS_3);
		dmd_overlay_outline ();
		dmd_show2 ();
		task_sleep (TIME_500MS);
		if (++sj_swap % 4 == 0) { if (++TOGGLE > 1) TOGGLE = 0; } //change TOGGLE once xx second
		dmd_alloc_pair_clean ();// Clean both pages
	}//END OF ENDLESS LOOP
	deff_exit();
}//end of mode_effect_deff
Example #4
0
void tnf_exit_deff (void)
{	
	dmd_alloc_pair_clean ();
	U16 fno;
	sound_send (SND_CLOCK_CHAOS_END_BOOM);
	for (fno = IMG_EXPLODE_START; fno <= IMG_EXPLODE_END; fno += 2)
	{
		dmd_map_overlay ();
		dmd_clean_page_low ();
		
		sprintf_score (tnf_score);
		font_render_string_center (&font_fixed6, 64, 8, sprintf_buffer);
		font_render_string_center (&font_var5, 64, 20, "POINTS EARNED FROM DOINKS");
		dmd_text_outline ();
		dmd_alloc_pair ();
		frame_draw (fno);
		dmd_overlay_outline ();
		dmd_show2 ();
		task_sleep (TIME_33MS);
	}
	if (tnf_buttons_pressed >= tnf_target)
		sound_send (SND_OOH_GIMME_SHELTER);
	else
		sound_send (SND_RETURN_TO_YOUR_HOMES);
	dmd_alloc_pair_clean ();
	sprintf_score (tnf_score);
	font_render_string_center (&font_fixed6, 64, 8, sprintf_buffer);
	font_render_string_center (&font_var5, 64, 20, "POINTS EARNED FROM DOINKS");
	dmd_copy_low_to_high ();
	dmd_show2 ();
	task_sleep_sec (2);
	deff_exit ();
}
Example #5
0
void shoot_camera_deff (void)
{
	if (timed_mode_running_p (&hitch_mode))
			sprintf ("SHOOT HITCH");
		else
			sprintf ("SHOOT CAMERA");

	if (event_did_follow (loop, ball_grab))
	{
		dmd_alloc_pair_clean ();
		U16 fno;
		for (fno = IMG_LOOP_START; fno < IMG_LOOP_END; fno += 2)
		{
			dmd_map_overlay ();
			dmd_clean_page_low ();
			font_render_string_center (&font_bitoutline, 64, 16, sprintf_buffer);
			dmd_text_outline ();
			dmd_alloc_pair ();
			frame_draw (fno);
			dmd_overlay_outline ();
			dmd_show2 ();
			task_sleep (TIME_66MS);
		}
		/* Get rid of the last dirty frame */
		dmd_alloc_pair_clean ();
		font_render_string_center (&font_bitoutline, 64, 16, sprintf_buffer);
		dmd_copy_low_to_high ();
		dmd_show2 ();
		flash_and_exit_deff2 (10, TIME_66MS);
	}
	else
	{
		flash_and_exit_deff2 (15, TIME_66MS);
	}
}
Example #6
0
/* We have to inline these so the return skips the page properly */
static inline void show_silverball (const char *line1, const char *line2)
{
	amode_page_start ();
	U16 fno;
	for (fno = IMG_SILVERBALL_START; fno <= IMG_SILVERBALL_END; fno += 2)
	{
		dmd_alloc_pair ();
		frame_draw (fno);
		dmd_show2 ();
		task_sleep (TIME_66MS);
		if (amode_page_changed)
			break;
	}
	amode_sleep_sec (1);
	for (fno = 0; fno < 7; fno++)
	{
		dmd_alloc_pair_clean ();
		dmd_map_overlay ();
		dmd_clean_page_low ();
		font_render_string_center (&font_steel, 64, 12, line1);
		if (fno > 2)
			font_render_string_center (&font_var5, 64, 24, line2);
		dmd_text_outline ();
		dmd_alloc_pair ();
		frame_draw (IMG_SILVERBALL_END);
		dmd_overlay_outline ();
		dmd_show2 ();
		amode_sleep_sec (1);
	}
	dmd_sched_transition (&trans_bitfade_slow);
}
Example #7
0
void sslot_mode_deff (void)
{
	U16 fno;
	dmd_alloc_pair_clean ();
	for (;;)
	{
		for (fno = IMG_REELSTRIP_START; fno <= IMG_REELSTRIP_END; fno += 2)
		{
			dmd_map_overlay ();
			dmd_clean_page_low ();
		
			font_render_string_center (&font_nayupixel10, 64, 5, "SHOOT SLOT MACHINE");
			sprintf_current_score ();
			font_render_string_center (&font_cowboy, 64, 14, sprintf_buffer);
			font_render_string_center (&font_bitcube10, 64, 25, sslot_award_names[sslot_award_index]);
			sprintf ("%d", sslot_mode_timer);
			font_render_string (&font_var5, 8, 16, sprintf_buffer);
			font_render_string_right (&font_var5, 120, 16, sprintf_buffer);
			
			dmd_text_outline ();
			dmd_alloc_pair ();
			frame_draw (fno);
			dmd_overlay_outline ();
			dmd_show2 ();
			task_sleep (TIME_66MS);
		}
	}
	deff_exit ();

}
Example #8
0
void lock_powerball_deff (void)
{
	sound_send (SND_TOO_HOT_TO_HANDLE);
	U16 fno;
	dmd_alloc_pair_clean ();
	timer_restart_free (GID_LOCK_POWERBALL, TIME_5S);
	while (task_find_gid (GID_LOCK_POWERBALL))
	{
		ball_search_timer_reset ();
		for (fno = IMG_POWERBALL_START; fno <= IMG_POWERBALL_END; fno += 2)
		{
			dmd_map_overlay ();
			dmd_clean_page_low ();
			font_render_string_center (&font_fireball, 64, 9, "LOCK BALL");
			font_render_string_left (&font_var5, 10, 24, "LEFT: NO");
			font_render_string_right (&font_var5, 118, 24, "RIGHT: YES");
			dmd_text_outline ();

			dmd_alloc_pair ();
			frame_draw (fno);
			dmd_overlay_outline ();
			dmd_show2 ();
			task_sleep (TIME_33MS);
		}
	}
	deff_exit ();
}
void laser_shot_deff(void) {
	U16 fno;
	dmd_alloc_pair_clean ();// Clean both pages
	task_create_gid1 (GID_laser_shot_SOUND, laser_shot_sounds_task);

	for (fno = IMG_LASER_SHOT1; fno <= IMG_LASER_SHOT6; fno += 2) {
				dmd_alloc_pair ();
				frame_draw(fno);
				dmd_show2 ();
				task_sleep (TIME_100MS);
	}//end of for loop

	for (fno = IMG_LASER_SHOT4; fno <= IMG_LASER_SHOT6; fno += 2) {
				dmd_alloc_pair ();
				frame_draw(fno);
				dmd_show2 ();
				task_sleep (TIME_100MS);
	}//end of for loop

	dmd_map_overlay ();
	dmd_clean_page_low ();
	font_render_string_center (&font_fixed6, DMD_MIDDLE_X, DMD_BIG_CY_Top, "LASER");
	font_render_string_center (&font_fixed6, DMD_MIDDLE_X, DMD_BIG_CY_Bot, "SHOT");
		dmd_text_outline ();
		dmd_alloc_pair ();
		frame_draw(IMG_LASER_SHOT6);
		dmd_overlay_outline ();
		dmd_show2 ();

		task_sleep (TIME_500MS);
	deff_exit ();
}//end of deff
Example #10
0
void vm_effect_deff(void) {
	U16 fno;
	sound_start (ST_EFFECT, SUBWAY2, SL_2S, SP_NORMAL);
	for (fno = IMG_COMBO1_START; fno <= IMG_COMBO1_END; fno += 2) {
				dmd_alloc_pair ();
				frame_draw(fno);
				dmd_show2 ();
				task_sleep (TIME_100MS);
	}//end of for loop
	sound_start (ST_EFFECT, SUBWAY2, SL_2S, SP_NORMAL);

	dmd_map_overlay ();
			dmd_clean_page_low ();
			font_render_string_center (&font_term6, DMD_MIDDLE_X - 20, DMD_MED_CY_2 + 6, "VIDEO MODE");
			font_render_string_center (&font_term6, DMD_MIDDLE_X + 45, DMD_MED_CY_3, "READY");

			sprintf ("%d", combo_counter);
			font_render_string_center (&font_fixed10, DMD_MIDDLE_X - 15, DMD_MED_CY_1 + 4, sprintf_buffer);

			dmd_text_outline ();
				dmd_alloc_pair ();
				frame_draw(IMG_COMBO1_END);
				dmd_overlay_outline ();
				dmd_show2 ();
				task_sleep_sec (2);
	deff_exit ();
}//end of deff
Example #11
0
void huxley_info_effect_deff(void) {
	U16 fno;
	dmd_alloc_pair_clean ();
	for (fno = IMG_HUXLEY_E_START; fno <= IMG_HUXLEY_E_END; fno += 2) {
				dmd_alloc_pair ();
				frame_draw(fno);
				dmd_show2 ();
				task_sleep (TIME_100MS);
	}//end of for loop

			dmd_map_overlay ();
			dmd_clean_page_low ();
				font_render_string_center (&font_halobold12, DMD_MIDDLE_X - 20, DMD_BIG_CY_Top, "HUXLEY");
				if (flag_test (FLAG_IS_HUXLEY_ENABLED) )
					font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Bot, "READY");
				else
					font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Bot, "1 MILLION");
				dmd_text_outline ();
				dmd_alloc_pair ();
				frame_draw(IMG_HUXLEY_E_END);
				dmd_overlay_outline ();
				dmd_show2 ();
				task_sleep (TIME_1S);
	deff_exit ();
}//end of mode_effect_deff
Example #12
0
void clock_millions_explode_deff (void)
{	
	dmd_alloc_pair_clean ();
	U16 fno;
	sound_send (SND_GREED_MODE_BOOM);
	for (fno = IMG_EXPLODE_START; fno <= IMG_EXPLODE_END; fno += 2)
	{
		dmd_map_overlay ();
		dmd_clean_page_low ();
		font_render_string_center (&font_fixed6, 64, 10, "CLOCK DESTROYED");
		font_render_string_center (&font_var5, 64, 21, "20 MILLION");
		dmd_text_outline ();
		dmd_alloc_pair ();
		frame_draw (fno);
		dmd_overlay_outline ();
		dmd_show2 ();
		task_sleep (TIME_33MS);
	}
	dmd_alloc_pair_clean ();
	font_render_string_center (&font_fixed6, 64, 10, "CLOCK DESTROYED");
	font_render_string_center (&font_var5, 64, 21, "20 MILLION");
	dmd_copy_low_to_high ();
	dmd_show2 ();
	task_sleep_sec (2);
	deff_exit ();
}
Example #13
0
void fortress_frame_with_words_display_steel_effect (U16 frame, U8 x, U8 y, char *words){
	dmd_alloc_pair_clean ();// Clean both pages
	dmd_map_overlay ();
	dmd_clean_page_low ();
		font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top,  "FORTRESS");
		font_render_string_center (&font_halobold12, x, y, words);
	dmd_text_outline ();
	dmd_alloc_pair ();
	frame_draw(frame);
	dmd_overlay_outline ();
	dmd_show2 ();
}
Example #14
0
void frame_with_words_display_v5prc_effect (U16 frame, U8 x, U8 y, char *words){
	dmd_alloc_pair_clean ();// Clean both pages
	dmd_map_overlay ();
	dmd_clean_page_low ();
		font_render_string_center (&font_halobold12, x, y, words);
	dmd_text_outline ();
	dmd_alloc_pair ();
	frame_draw(frame);
	dmd_overlay_outline ();
	dmd_show2 ();
	task_sleep (TIME_100MS);
}
Example #15
0
void clock_millions_hit_deff (void)
{	
	U16 fno;
	U16 img_start = 0;
	U16 img_end = 0;
	dmd_alloc_pair_clean ();
	switch (random_scaled (3))
	{
		case 0:
			img_start = IMG_FLASH_START;
			img_end = IMG_FLASH_END;
			break;
		case 1:
			img_start = IMG_FLASHCENTRE_START;
			img_end = IMG_FLASHCENTRE_END;
			break;
		case 2:
			img_start = IMG_FLASHLEFT_START;
			img_end = IMG_FLASHLEFT_END;
			break;
	}

	for (fno = img_start; fno < img_end; fno += 2)
	{
		U8 x = random_scaled (4);
		U8 y = random_scaled (4);
		dmd_map_overlay ();
		dmd_clean_page_low ();

		psprintf ("CLOCK HIT %d TIME", "CLOCK HIT %d TIMES", clock_mode_hits);
		font_render_string_center (&font_fixed6, 64 + x, 10 + y, sprintf_buffer);
		sprintf_score (clock_mode_score);
		font_render_string_center (&font_var5, 64, 21, sprintf_buffer);
	
		dmd_text_outline ();
		dmd_alloc_pair ();
		frame_draw (fno);
		dmd_overlay_outline ();
		dmd_show2 ();
		task_sleep (TIME_33MS);
	}
	/* Redraw it so the 'HITS' text is centred */
	dmd_clean_page_low ();
	dmd_clean_page_high ();
	dmd_alloc_low ();
	psprintf ("CLOCK HIT %d TIME", "CLOCK HIT %d TIMES", clock_mode_hits);
	font_render_string_center (&font_fixed6, 64, 10, sprintf_buffer);
	sprintf_score (clock_mode_score);
	font_render_string_center (&font_var5, 64, 21, sprintf_buffer);
	dmd_show_low ();	
	task_sleep_sec (2);
	deff_exit ();
}
Example #16
0
void car_frame_with_words_display_fipps_effect (U16 frame, U8 x, U8 y, char *words){
	dmd_alloc_pair_clean ();// Clean both pages
	dmd_map_overlay ();
	dmd_clean_page_low ();
	font_render_string_center (&font_fipps, x, y, words);
	dmd_text_outline ();
	dmd_alloc_pair ();
	frame_draw(frame);
	dmd_overlay_outline ();
	dmd_show2 ();
	task_sleep (TIME_100MS);
}//end of mode_effect_deff
Example #17
0
void cryoprison_frame_with_words_display_steel_effect (U16 frame, U8 x, U8 y, char *words){
	dmd_alloc_pair_clean ();// Clean both pages
	dmd_map_overlay ();
	dmd_clean_page_low ();
	font_render_string_center (&font_var5, DMD_MIDDLE_X, DMD_SMALL_CY_1, "CRYOPRISON");
	font_render_string_center (&font_steel, x, y, words);
	dmd_text_outline ();
	dmd_alloc_pair ();
	frame_draw(frame);
	dmd_overlay_outline ();
	dmd_show2 ();
	task_sleep (TIME_100MS);
}
Example #18
0
void wasteland_frame_with_words_display_steel_effect (U16 frame, U8 x, U8 y, char *words){
	dmd_alloc_pair_clean ();// Clean both pages
	dmd_map_overlay ();
	dmd_clean_page_low ();
		font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "WASTELAND");
		font_render_string_center (&font_halobold12, x, y, words);
	dmd_text_outline ();
	dmd_alloc_pair ();
	frame_draw(frame);
	dmd_overlay_outline ();
	dmd_show2 ();
	task_sleep (TIME_500MS);
}//end of function
Example #19
0
/****************************************************************************
 *
 * display effects
 *
 ****************************************************************************/
void extra_ball_effect_deff(void) {
	U8 eb_rnd_sound;
	U16 fno;
	dmd_alloc_pair_clean ();// Clean both pages

	if (system_config.swear_sounds == YES) {
		//this doubles the chance that a swear would occur
		eb_rnd_sound = random_scaled(5);
		if (eb_rnd_sound == 4) eb_rnd_sound = 3;
	}
	else if (system_config.extra_sounds == YES) 	eb_rnd_sound = random_scaled(3);
	else 											eb_rnd_sound = random_scaled(2);

	sound_start (ST_EFFECT, EXTRA_BALL_SOUND, SL_2S, SP_NORMAL);

	for (fno = IMG_FREEZER1_START; fno <= IMG_FREEZER1_END; fno += 2) {
				dmd_alloc_pair ();
				frame_draw(fno);
				dmd_show2 ();
				task_sleep (TIME_66MS);
	}//end of for loop

	for (fno = IMG_FREEZER2_START; fno <= IMG_FREEZER2_END; fno += 2) {
				dmd_alloc_pair ();
				frame_draw(fno);
				dmd_show2 ();
				task_sleep (TIME_66MS);
	}//end of for loop

	switch (eb_rnd_sound) {
		case 0: 	sound_start (ST_SPEECH, SPCH_EXTRABALL_WES, SL_4S, 3); break;
		case 1: 	sound_start (ST_SPEECH, SPCH_EXTRABALL_SLY, SL_4S, PRI_GAME_QUICK3); break;
		case 2: 	sound_start (ST_SPEECH, SPCH_LOVE_THOSE_EXTRA_BALLS_GIRL, SL_4S, PRI_GAME_QUICK3); break;
		case 3: 	sound_start (ST_SPEECH, SPCH_VLGR_REALLY_LICKED_AS_SNDRA, SL_4S, PRI_GAME_QUICK3); break;
}//end of switch

	for (fno = IMG_FREEZER3_START; fno <= IMG_FREEZER3_END; fno += 2) {
					dmd_map_overlay ();
					dmd_clean_page_low ();
						font_render_string_center (&font_halobold12, DMD_MIDDLE_X - 15, DMD_BIG_CY_Top, "EXTRA");
						font_render_string_center (&font_halobold12, DMD_MIDDLE_X - 15, DMD_BIG_CY_Bot, "BALL");
						dmd_text_outline ();
						dmd_alloc_pair ();
						frame_draw(fno);
						dmd_overlay_outline ();
						dmd_show2 ();
						task_sleep (TIME_66MS);
			}//end of for loop

	deff_exit ();
}//end of mode_effect_deff
Example #20
0
void sslot_award_deff (void)
{
	sprintf_score (score_deff_get ());
	U16 fno;
	U8 y = 20;
	for (fno = IMG_ODDCHANGE_START; fno < IMG_ODDCHANGE_END; fno += 2)
	{
		dmd_alloc_pair_clean ();
		y--;
		dmd_map_overlay ();
		dmd_clean_page_low ();
		font_render_string_center (&font_var5, 64, y, "SLOT MACHINE AWARD");
		dmd_text_outline ();
		dmd_alloc_pair ();
		frame_draw (fno);
		dmd_overlay_outline ();
		dmd_show2 ();
		task_sleep (TIME_16MS);
	}

	for (fno = IMG_FLASHCENTRE_START; fno < IMG_FLASHCENTRE_END; fno += 2)
	{
		dmd_alloc_pair_clean ();
		dmd_map_overlay ();
		dmd_clean_page_low ();
		font_render_string_center (&font_var5, 64, y, "SLOT MACHINE AWARD");
		font_render_string_center (&font_bitcube10, 64, 20, sslot_award_names[sslot_award_index_stored]);
		dmd_text_outline ();
		dmd_alloc_pair ();
		frame_draw (fno);
		dmd_overlay_outline ();
		dmd_show2 ();
		task_sleep (TIME_16MS);
	}
	task_sleep_sec (2);
	deff_exit ();
}
Example #21
0
void huxley_effect_deff(void) {
	U8 frame = 0;
	U8 frame_counter = 0;
	for (;;) {
		//change the background every 5 seconds or so
		if (++frame_counter % 10 == 0) { if (frame >= 11) frame = 0; else frame ++; 	play_huxley_sounds(); }
		dmd_alloc_pair_clean();
		dmd_map_overlay ();
		dmd_clean_page_low ();
		dmd_draw_thin_border (dmd_low_buffer);

		sprintf_score(current_score);
		font_render_string_center (&font_var5, DMD_MIDDLE_X, DMD_SMALL_CY_1, sprintf_buffer);

		sprintf ("%d", huxley_mode_timer);
		font_render_string_center (&font_var5, DMD_MIDDLE_X - 50, DMD_SMALL_CY_5, sprintf_buffer);
		font_render_string_center (&font_var5, DMD_MIDDLE_X + 50, DMD_SMALL_CY_5, sprintf_buffer);
		sprintf_score (huxley_mode_score);
		font_render_string_center (&font_var5, DMD_MIDDLE_X, DMD_SMALL_CY_5, sprintf_buffer);
		switch (frame) {
			case 0:	font_render_string_center (&font_fipps, DMD_MIDDLE_X + 35, DMD_BIG_CY_Top + 5, "HUXLEY"); break; //ok
			case 2:	font_render_string_center (&font_fipps, DMD_MIDDLE_X + 35, DMD_BIG_CY_Bot, "HUXLEY"); break; //ok
			case 4:	font_render_string_center (&font_fipps, DMD_MIDDLE_X + 35, DMD_BIG_CY_Bot, "HUXLEY"); break; //ok
			case 6:	font_render_string_center (&font_fipps, DMD_MIDDLE_X + 35, DMD_BIG_CY_Bot, "HUXLEY"); break; //ok
			case 8:	font_render_string_center (&font_fipps, DMD_MIDDLE_X + 35, DMD_BIG_CY_Top + 5, "HUXLEY"); break; //ok
			case 10: font_render_string_center (&font_fipps, DMD_MIDDLE_X - 35, DMD_BIG_CY_Top + 5, "HUXLEY"); break; //ok
		}//end of switch
		dmd_text_outline ();
		dmd_alloc_pair ();
		switch (frame) {
			default:
			case 0:		frame_draw(IMG_HUXLEY_END_SCENE_START); break;
			case 1:		frame_draw(IMG_HUXLEY_END_SCENE_1); 	break;
			case 2:		frame_draw(IMG_HUXLEY_END_SCENE_2); 	break;
			case 3:		frame_draw(IMG_HUXLEY_END_SCENE_3); 	break;
			case 4:		frame_draw(IMG_HUXLEY_END_SCENE_4); 	break;
			case 5:		frame_draw(IMG_HUXLEY_END_SCENE_5); 	break;
			case 6:		frame_draw(IMG_HUXLEY_END_SCENE_6); 	break;
			case 7:		frame_draw(IMG_HUXLEY_END_SCENE_7); 	break;
			case 8:		frame_draw(IMG_HUXLEY_END_SCENE_8); 	break;
			case 9:		frame_draw(IMG_HUXLEY_END_SCENE_9); 	break;
			case 10:	frame_draw(IMG_HUXLEY_END_SCENE_10); 	break;
			case 11:	frame_draw(IMG_HUXLEY_END_SCENE_11); 	break;
		}//end of switch
		dmd_overlay_outline ();
		dmd_show2 ();
		task_sleep (TIME_500MS);
	}//END OF ENDLESS LOOP
}//end of mode_effect_deff
Example #22
0
void car_chase_animation_display_effect_w_words (U16 start_frame, U16 end_frame){
	U16 fno;
	dmd_alloc_pair_clean ();// Clean both pages
	for (fno = start_frame; fno <= end_frame; fno += 2) {
			dmd_map_overlay ();
			dmd_clean_page_low ();
			font_render_string_center (&font_fipps, DMD_MIDDLE_X - 20, DMD_BIG_CY_Top, "CAR_CHASE");
			dmd_text_outline ();
			dmd_alloc_pair ();
			frame_draw(fno);
			dmd_overlay_outline ();
			dmd_show2 ();
			task_sleep (TIME_100MS);
	}//end of inner loop
}//end of mode_effect_deff
Example #23
0
void huxley_info_effect_deff(void) {
	U16 fno;
	dmd_alloc_pair_clean ();
	dmd_sched_transition (&trans_bitfade_slow);

	for (fno = IMG_HUXLEY_B2_START; fno <= IMG_HUXLEY_B2_END; fno += 2) {
			dmd_map_overlay ();
			dmd_clean_page_low ();
					font_render_string_center (&font_fipps, DMD_MIDDLE_X - 20, DMD_BIG_CY_Bot, "HUXLEY");
				dmd_text_outline ();
				dmd_alloc_pair ();
				frame_draw(fno);
				dmd_overlay_outline ();
				dmd_show2 ();
				task_sleep (TIME_100MS);
	}//end of for loop
	deff_exit ();
}//end of mode_effect_deff
Example #24
0
void jets_level_up_deff (void)
{
	dmd_alloc_pair_clean ();
	U16 fno;
	sound_send (SND_GLASS_BREAKS);
	for (fno = IMG_EXPLODE_START; fno < IMG_EXPLODE_END; fno += 2)
	{
		dmd_map_overlay ();
		dmd_clean_page_low ();
		
		if (fno > 4)
		{
			sprintf ("TOWN SQUARE LEVEL %d", jets_bonus_level);
			font_render_string_center (&font_mono5, 64, 7, sprintf_buffer);
			/* We don't use scoreget as it's likely another score
			 * has been awarded */
			sprintf("%d MILLION", jetscore);
			font_render_string_center (&font_fireball, 64, 20, sprintf_buffer);
		}
		dmd_text_outline ();
		dmd_alloc_pair ();
		frame_draw (fno);
		callset_invoke (score_overlay);
		dmd_overlay_outline ();
		dmd_show2 ();
		task_sleep (TIME_33MS);
	}
	for (fno = 0; fno < 10; fno++)
	{
		dmd_alloc_pair_clean ();
		sprintf ("TOWN SQUARE LEVEL %d", jets_bonus_level);
		font_render_string_center (&font_mono5, 64, 7, sprintf_buffer);
		/* We don't use scoreget as it's likely another score
		 * has been awarded */
		sprintf("%d MILLION", jetscore);
		font_render_string_center (&font_fireball, 64, 20, sprintf_buffer);
		dmd_copy_low_to_high ();
		callset_invoke (score_overlay);
		dmd_show2 ();	
		task_sleep (TIME_100MS);
	}
	deff_exit ();
}
Example #25
0
void tsm_mode_total_deff (void)
{
	dmd_alloc_pair_clean ();
	dmd_map_overlay ();
	dmd_clean_page_low ();

	font_render_string_center (&font_fixed6, 64, 5, "TSM OVER");
	sprintf_score (tsm_mode_total);
	font_render_string_center (&font_fixed6, 64, 16, sprintf_buffer);
	font_render_string_center (&font_var5, 64, 27, "POINTS EARNED FROM MODE");
	dmd_text_outline ();
	dmd_alloc_pair ();
	frame_draw (IMG_CITY);
	dmd_overlay_outline ();
	dmd_show2 ();
	task_sleep_sec (2);
	dmd_sched_transition (&trans_bitfade_fast);
	deff_exit ();
}
Example #26
0
void sssmb_running_deff (void)
{
	U16 fno;
	for (;;)
	{

		for (fno = IMG_BOLT_TESLA_START; fno <= IMG_BOLT_TESLA_END; fno += 2)
		{
			dmd_alloc_pair_clean ();
			dmd_map_overlay ();
			dmd_clean_page_low ();

			font_render_string_left (&font_bitoutline, 1, 1, "SKILL");
			font_render_string_left (&font_quadrit, 54, 2, "MULTIBALL");
			sprintf_current_score ();
			font_render_string_center (&font_cowboy, 64, 16, sprintf_buffer);
	
			if (timer_find_gid (GID_SSSMB_DIVERT_DEBOUNCE))
			{
				sprintf ("SKILL SHOT SCORES JACKPOT");
			}
			else if (sssmb_ramps_to_divert == 0)
			{
				sprintf ("SHOOT LEFT RAMP NOW");
				}
			else if (sssmb_ramps_to_divert == 1)
			{
				sprintf ("1 RAMP FOR SKILL SHOT");
			}
			else
			{
				sprintf ("%d RAMPS FOR SKILL SHOT", sssmb_ramps_to_divert);
			}
			font_render_string_center (&font_var5, 64, 26, sprintf_buffer);
			dmd_text_outline ();
			dmd_alloc_pair ();
			frame_draw (fno);
			dmd_overlay_outline ();
			dmd_show2 ();
			task_sleep (TIME_66MS);
		}	
	}
}
Example #27
0
void fortress_effect_deff (void) {
	dmd_alloc_pair_clean();
	for (;;) {
			dmd_map_overlay ();
			dmd_clean_page_low ();
			dmd_draw_thin_border (dmd_low_buffer);

			if (fortress_ballsave) {
				sprintf ("BS");
				font_render_string_center (&font_var5, 6, 12, sprintf_buffer);
			}

			sprintf_score(current_score);
			font_render_string_center (&font_var5, DMD_MIDDLE_X, DMD_SMALL_CY_3+1, sprintf_buffer);
				font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "FORTRESS");
			if (fortress_display_counter % 10 != 0) { //draw for 9/10 and blank for 1/10
				if (FORT_TOGGLE == 0) 		{ sprintf ("10 MILLION"); font_render_string_center (&font_fixed6, DMD_MIDDLE_X, DMD_BIG_CY_Bot+1, sprintf_buffer); }
				else if (FORT_TOGGLE == 1)	{ sprintf ("JACKPOT LIT"); font_render_string_center (&font_fixed6, DMD_MIDDLE_X, DMD_BIG_CY_Bot+1, sprintf_buffer); }
				else if (FORT_TOGGLE == 2)	{
					sprintf ("%d JACKPOTS MADE", fortress_jackpot_shots_made);
					font_render_string_center (&font_var5, DMD_MIDDLE_X, DMD_SMALL_CY_4, sprintf_buffer);

					if (get_is_super_jackpot_lit()) sprintf ("SUPER JACKPOT LIT");
					else sprintf ("SHOOT %d TO LIGHT SUPER", 5 - (fortress_jackpot_shots_made % 5) );
					font_render_string_center (&font_var5, DMD_MIDDLE_X, DMD_SMALL_CY_BOTTOM_LINE, sprintf_buffer);
				}
			} else 						  sprintf ("");

			dmd_text_outline ();
			dmd_alloc_pair ();
			frame_draw(IMG_FORTRESS_RUN_0 + fortress_effect_deff_table[fortress_display_counter]);
			dmd_overlay_outline ();
			dmd_show2 ();
		task_sleep (TIME_200MS);

		if (++fortress_display_counter >= 30) fortress_display_counter  = 0;
		if (fortress_display_counter % 20 == 0) {
			if (++FORT_TOGGLE > 2) FORT_TOGGLE = 0; //change FORT_TOGGLE once per
			if (DM_IN_DMD_TEST) 	score (FORTRESS_MB_SCORE);
		}
	}//END OF ENDLESS LOOP
}//end of function
Example #28
0
static inline void show_sonny_jim (void)
{
	amode_page_start ();
	dmd_alloc_pair_clean ();
	/* Draw a 'white' background for the transition */
	dmd_invert_page (dmd_low_buffer);
	dmd_invert_page (dmd_high_buffer);
	dmd_show2 ();
	/* sonny_jim should emerge from the bottom */
	dmd_sched_transition (&trans_scroll_up);
	dmd_alloc_pair ();
	frame_draw (IMG_SONNY_JIM);
	/* Start the transition */
	dmd_show2 ();
	/* Paint the text on */
	dmd_map_overlay ();
	dmd_clean_page_low ();
	font_render_string_right (&font_var5, 126, 7, "NOT AN ORDINARY DAY OR");
	font_render_string_right (&font_var5, 122, 18, "AN ORDINARY PLAYER");
	dmd_text_outline ();
	dmd_alloc_pair ();
	frame_draw (IMG_SONNY_JIM);
	dmd_overlay_outline ();
	dmd_show2 ();
	task_create_anon (amode_talking_task);
	amode_sleep_sec (4);
	/* Now just draw sonny_jim again */
	dmd_alloc_pair ();
	frame_draw (IMG_SONNY_JIM);
	dmd_show2 ();
	/* Exit stage right */
	dmd_sched_transition (&trans_scroll_down);
	/* Draw a 'white' background for the transition again */
	dmd_alloc_pair_clean ();
	dmd_invert_page (dmd_low_buffer);
	dmd_invert_page (dmd_high_buffer);
	dmd_show2 ();
	
	dmd_sched_transition (&trans_bitfade_slow);
}
/****************************************************************************
 *
 * display effects
 *
 ****************************************************************************/
void freeze_effect_deff(void) {
	U16 fno;
	dmd_alloc_pair_clean ();
	sound_start (ST_EFFECT, SIREN, SL_4S, PRI_GAME_QUICK5);

		for (fno = IMG_CONTROLLER_START; fno <= IMG_FREEZE_A_END; fno += 2) {
			dmd_alloc_pair_clean ();
			frame_draw(fno);
			dmd_show2 ();
			task_sleep (TIME_100MS);
		}//end of inner loop
		task_sleep (TIME_300MS);

		dmd_alloc_pair_clean ();// Clean both pages
			dmd_map_overlay ();
			dmd_clean_page_low ();
			if ( flag_test(FLAG_IS_MULTIBALL_ENABLED) ) {
						font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "MULTIBALL");
						font_render_string_center (&font_halobold12, DMD_MIDDLE_X + 10, DMD_BIG_CY_Bot, "READY");
			}
			else {
						font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "FREEZE");
			}
			dmd_text_outline ();
			dmd_alloc_pair ();
			frame_draw(IMG_FREEZE_A_END);
			dmd_overlay_outline ();
			dmd_show2 ();

	if (DM_IN_DMD_TEST) freeze_MessageCounter++;
	if (flag_test(FLAG_IS_MULTIBALL_ENABLED)) {
		if ( (lock_SoundCounter++ % 2) == 0 )//check if even
			sound_start (ST_SPEECH, SPCH_MULTIBALL_ACTIVATED, SL_4S, PRI_GAME_QUICK5);
		else
			sound_start (ST_SPEECH, SPCH_SHOOT_LEFT_LOOP, SL_4S, PRI_GAME_QUICK5);
	}

	task_sleep_sec (1);
	deff_exit ();
}//end of mode_effect_deff
Example #30
0
void extra_ball_effect_deff(void) {
	U8 eb_rnd_sound;
	U16 fno;
	dmd_alloc_pair_clean ();// Clean both pages
	eb_rnd_sound = random_scaled(2);
	sound_start (ST_EFFECT, EXTRA_BALL_SOUND, SL_2S, SP_NORMAL);

	for (fno = IMG_FREEZER1_START; fno <= IMG_FREEZER1_END; fno += 2) {
				dmd_alloc_pair ();
				frame_draw(fno);
				dmd_show2 ();
				task_sleep (TIME_66MS);
	}//end of for loop

	for (fno = IMG_FREEZER2_START; fno <= IMG_FREEZER2_END; fno += 2) {
				dmd_alloc_pair ();
				frame_draw(fno);
				dmd_show2 ();
				task_sleep (TIME_66MS);
	}//end of for loop

	if (eb_rnd_sound) 	sound_start (ST_SPEECH, SPCH_EXTRABALL_WES, SL_2S, SP_NORMAL);
	else 				sound_start (ST_SPEECH, SPCH_EXTRABALL_SLY, SL_2S, SP_NORMAL);

	for (fno = IMG_FREEZER3_START; fno <= IMG_FREEZER3_END; fno += 2) {
					dmd_map_overlay ();
					dmd_clean_page_low ();
					font_render_string_center (&font_fireball, DMD_MIDDLE_X - 25, DMD_BIG_CY_Top, "EXTRA");
					font_render_string_center (&font_fireball, DMD_MIDDLE_X - 25, DMD_BIG_CY_Bot, "BALL");
						dmd_text_outline ();
						dmd_alloc_pair ();
						frame_draw(fno);
						dmd_overlay_outline ();
						dmd_show2 ();
						task_sleep (TIME_66MS);
			}//end of for loop

	deff_exit ();
}//end of mode_effect_deff