コード例 #1
0
ファイル: cryoprison.c プロジェクト: CardonaPinball/freewpc
/****************************************************************************
 *
 * DMD display and sound effects
 *
 ****************************************************************************/
void cryoprison_super_jackpot_deff (void) {
	U8 i;

	for (i = 0; i < 8; i++) {
		switch (i) {
				case 0: sound_start (ST_SPEECH, SPCH_AHHHGGG, SL_2S, PRI_GAME_QUICK5); break;
				case 4: sound_start (ST_SPEECH, SPCH_HURRY_UP, SL_2S, PRI_GAME_QUICK5); break;
				case 8: sound_start (ST_SPEECH, SPCH_CLOSE_ENOUGH, SL_2S, PRI_GAME_QUICK5); break;
				case 1:
				case 3:
				case 5:
				case 7: sound_start (ST_ANY, EXPLOSION1_SHORT, SL_2S, PRI_GAME_QUICK5);
			}//END OF SWITCH
			dmd_sched_transition (&trans_scroll_up);
		dmd_alloc_low_clean ();
		font_render_string_center (&font_fireball, 64, 8, "SUPER");
		font_render_string_center (&font_fireball, 64, 24, "JACKPOT");
		dmd_show_low ();
	}//end of loop
	sample_start (MACHINE14_LONG, SL_1S);
	task_sleep (TIME_500MS);

	speech_start (SPCH_SUPER_JACKPOT, SL_1S);
	task_sleep_sec (1);
	deff_exit ();
}//end of function
コード例 #2
0
ファイル: wasteland.c プロジェクト: CardonaPinball/freewpc_DM
void wasteland_frame_bitfade_fast (U16 frame){
	dmd_sched_transition (&trans_bitfade_fast);
	dmd_alloc_pair ();
	frame_draw(frame);
	dmd_show2 ();
	task_sleep (TIME_100MS);
}//end of function
コード例 #3
0
void prison_break_frame_bitfade_fast (U16 frame){
	dmd_sched_transition (&trans_bitfade_fast);
	dmd_alloc_pair ();
	frame_draw(frame);
	dmd_show2 ();
	task_sleep (TIME_100MS);
}
コード例 #4
0
void car_chase_frame_bitfade_fast (U16 frame){
	dmd_sched_transition (&trans_bitfade_fast);
	dmd_alloc_pair ();
	frame_draw(frame);
	dmd_show2 ();
	task_sleep (TIME_100MS);
}//end of mode_effect_deff
コード例 #5
0
ファイル: tz_amode.c プロジェクト: SonnyJim/freewpc
/* 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);
}
コード例 #6
0
ファイル: diag.c プロジェクト: CardonaPinball/freewpc
static void
diag_message_scroll (void)
{
	dmd_sched_transition (&trans_scroll_left);
	dmd_show_low ();
	task_sleep_sec (5);
	barrier ();
}
コード例 #7
0
ファイル: rules.c プロジェクト: SonnyJim/freewpc
static void rule_msg (const char *line1, const char *line2, const char *line3, const char *line4)
{
	dmd_alloc_pair_clean ();
	font_render_string_left (&font_fixed6, 2, 2, line1)
	font_render_string_center (&font_var5, 64, 15, line2)
	font_render_string_center (&font_var5, 64, 22, line3)
	font_render_string_center (&font_var5, 64, 29, line4)
	dmd_sched_transition (&trans_sequential_boxfade);
	dmd_show_low ();
}
コード例 #8
0
ファイル: deadend.c プロジェクト: CardonaPinball/freewpc
void inlane_lights_dead_end_deff (void)
{
	dmd_alloc_low_clean ();
	dmd_sched_transition (&trans_scroll_right);	
	font_render_string_center (&font_quadrit, 64, 10, "RIGHT INLANE");
	font_render_string_center (&font_quadrit, 64, 22, "LIGHTS DEAD END");
	dmd_show_low ();
	task_sleep_sec (1);
	deff_exit ();
}
コード例 #9
0
ファイル: master.c プロジェクト: SonnyJim/freewpc
void combo_master_entry_deff (void)
{
	dmd_alloc_pair_clean ();
	font_render_string_center (&font_mono5, 64, 8, "CONGRATULATIONS");
	font_render_string_center (&font_mono5, 64, 16, "NEW COMBO MASTER");
	font_render_string_center (&font_var5, 64, 22, "ENTER INITIALS");
	dmd_sched_transition (&trans_scroll_up);
	sound_send (SND_GLASS_BREAKS);
	dmd_show_low ();
	task_sleep_sec (3);
	deff_exit ();
}
コード例 #10
0
ファイル: corvette_amode.c プロジェクト: hydra/freewpc
/**
 * Scroll two cars, one after the other, from left to right.
 *
 * Note: Car graphics use a white background.
 */
void corvette_amode_scroll_two_cars( void ) {

	dmd_alloc_pair();
	dmd_clean_page_high();
	dmd_clean_page_low();
	dmd_invert_page (dmd_low_buffer);
	dmd_invert_page (dmd_high_buffer);
	dmd_show2();
	task_sleep_sec(1);

	dmd_alloc_pair();
	frame_draw (IMG_CORVETTE_1979);
	dmd_sched_transition (&trans_scroll_right);
	dmd_show2 ();

	dmd_alloc_pair();
	dmd_clean_page_high();
	dmd_clean_page_low();
	dmd_invert_page (dmd_low_buffer);
	dmd_invert_page (dmd_high_buffer);
	dmd_sched_transition (&trans_scroll_right);
	dmd_show2();
	task_sleep_sec(1);

	dmd_alloc_pair();
	frame_draw (IMG_CORVETTE_1986);
	dmd_sched_transition (&trans_scroll_right);
	dmd_show2 ();

	dmd_alloc_pair();
	dmd_clean_page_high();
	dmd_clean_page_low();
	dmd_invert_page (dmd_low_buffer);
	dmd_invert_page (dmd_high_buffer);
	dmd_sched_transition (&trans_scroll_right);
	dmd_show2();
	task_sleep_sec(1);


}
コード例 #11
0
ファイル: tz_amode.c プロジェクト: SonnyJim/freewpc
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);
}
コード例 #12
0
ファイル: tz_amode.c プロジェクト: SonnyJim/freewpc
static inline void show_bcd (void)
{
	amode_page_start ();
	dmd_sched_transition (&trans_random_boxfade);
	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 ();
	/* bcd should emerge from the right */
	dmd_sched_transition (&trans_scroll_left);
	dmd_alloc_pair ();
	frame_draw (IMG_BCD);
	/* Start the transition */
	dmd_show2 ();
	/* Paint the text on */
	dmd_map_overlay ();
	dmd_clean_page_low ();
	font_render_string_center (&font_var5, 38, 10, "HEY ITS ONLY");
	font_render_string_center (&font_steel, 38, 20, "PINBALL");
	dmd_text_outline ();
	dmd_alloc_pair ();
	frame_draw (IMG_BCD);
	dmd_overlay_outline ();
	dmd_show2 ();
	sound_send (SND_HEY_ITS_ONLY_PINBALL);
	amode_sleep_sec (3);
	/* Now just draw bcd again */
	dmd_alloc_pair ();
	frame_draw (IMG_BCD);
	dmd_show2 ();
	/* Exit stage right */
	dmd_sched_transition (&trans_scroll_right);
	/* 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 ();
}
コード例 #13
0
ファイル: factoids.c プロジェクト: CardonaPinball/freewpc
void random_factoid_deff (void)
{
	U8 i;
	for (i = 0; i < NUM_FACTOIDS; i++)
	{
		dmd_alloc_pair_clean ();
		factoid_msg(i);
		dmd_copy_low_to_high ();
		dmd_show2 ();
		task_sleep_sec (6);
		dmd_sched_transition (&trans_scroll_up_slower);
	}
	deff_exit ();
}
コード例 #14
0
ファイル: amode.c プロジェクト: CardonaPinball/freewpc
void amode_logo_page (void)
{
    U16 fno;

    for (fno = IMG_FREEWPC_SMALL; fno <= IMG_FREEWPC; fno += 2)
    {
        dmd_alloc_pair ();
        frame_draw (fno);
        dmd_show2 ();
        task_sleep (TIME_66MS);
    }
    dmd_sched_transition (&trans_bitfade_slow);
    amode_page_end (1);
}
コード例 #15
0
ファイル: tz_amode.c プロジェクト: SonnyJim/freewpc
static inline void scroll_text (void)
{
	amode_page_start ();
	dmd_sched_transition (&trans_bitfade_slow);
	/* Clean the low screen for the transition scroll*/
	dmd_alloc_low_clean ();
	if (amode_show_scores_long || amode_page_changed)
		return;
	dmd_show_low ();

	dmd_alloc_low_clean ();
	font_render_string_center (&font_var5, 64, 5, "FREEWPC WAS DESIGNED");
	font_render_string_center (&font_var5, 64, 12, "BY BRIAN DOMINY AND IS");
	font_render_string_center (&font_var5, 64, 19, "RELEASED UNDER THE GNU");
	font_render_string_center (&font_var5, 64, 26, "GENERAL PUBLIC LICENSE.");
	
	dmd_sched_transition (&trans_scroll_up_slower);
	if (amode_show_scores_long || amode_page_changed)
		return;
	dmd_show_low ();

	dmd_alloc_low_clean ();
	font_render_string_center (&font_var5, 64, 5, "VISIT WWW.ODDCHANGE.COM");
	font_render_string_center (&font_var5, 64, 12, "FOR MORE INFORMATION.");
	
	dmd_sched_transition (&trans_scroll_up_slower);
	if (amode_show_scores_long || amode_page_changed)
		return;
	dmd_show_low ();

	dmd_alloc_low_clean ();
	
	dmd_sched_transition (&trans_scroll_up_slow);
	if (amode_show_scores_long || amode_page_changed)
		return;
	dmd_show_low ();
}
コード例 #16
0
ファイル: huxley.c プロジェクト: CardonaPinball/freewpc_DM
void huxley_start_effect_deff(void) {
	dmd_alloc_pair_clean ();
	sound_start (ST_SAMPLE, EXPLOSION, SL_2S, PRI_GAME_QUICK3);
		font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "LENINA");
		font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Bot, "HUXLEY");
	dmd_show_low();
	task_sleep (TIME_1S);

	U8 i;
	for (i = 0; i < 5; i++) {
			if (i == 0) sound_start (ST_SPEECH, SPCH_SOME_ACTION, SL_4S, PRI_GAME_QUICK3);
			if (i == 1) sound_start (ST_SPEECH, SPCH_WEEAHOO, SL_4S, PRI_GAME_QUICK3);
			if (i == 2)	sound_start (ST_SPEECH, SPCH_EXCUSE_ME, SL_4S, PRI_GAME_QUICK3);
			if (i == 3) sound_start (ST_SPEECH, SPCH_WHAT_ARE_YOU_DOING, SL_4S, PRI_GAME_QUICK3);
			if (i == 4) sound_start (ST_SPEECH, SPCH_I_GOT_IT, SL_4S, PRI_GAME_QUICK3);
			dmd_sched_transition (&trans_scroll_down);
			dmd_alloc_pair_clean ();
			if (i == 0) huxley_animation_display_effect (IMG_HUXLEY_A_START, IMG_HUXLEY_A_END);
			if (i == 1) huxley_animation_display_effect (IMG_HUXLEY_B1_START, IMG_HUXLEY_B1_END);
			if (i == 2) huxley_animation_display_effect (IMG_HUXLEY_B2_START, IMG_HUXLEY_B2_END);
			if (i == 3) huxley_animation_display_effect (IMG_HUXLEY_D_START, IMG_HUXLEY_D_END);
			if (i == 4) huxley_animation_display_effect (IMG_HUXLEY_A_START, IMG_HUXLEY_A_END);
			sound_start (ST_SAMPLE, EXPLOSION, SL_2S, PRI_GAME_QUICK3);
			dmd_sched_transition (&trans_scroll_down);
			dmd_alloc_pair_clean ();
			if (i == 0) font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "STANDUPS");
			if (i == 1) font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "REBOUNDS");
			if (i == 2) font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "ORBITS");
			if (i == 3) font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "RAMPS");
			if (i == 4) font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Top, "SUBWAY");
			font_render_string_center (&font_halobold12, DMD_MIDDLE_X, DMD_BIG_CY_Bot, "1 MILLION");
			dmd_show_low();
			task_sleep (TIME_1S);
	}
	deff_exit ();
}//end of mode_effect_deff
コード例 #17
0
ファイル: master.c プロジェクト: SonnyJim/freewpc
CALLSET_ENTRY (master, amode_page)
{
	if (amode_show_scores_long)
		return;
	dmd_sched_transition (&trans_vstripe_left2right);
	dmd_map_overlay ();
	dmd_clean_page_high ();
	dmd_clean_page_low ();
	//sprintf ("LOOP MASTER: %s %d LOOPS", loop_master_initials, loop_master_hi);
	psprintf ("LOOP MASTER: %d LOOP", "LOOP MASTER: %d LOOPS", loop_master_hi);
	font_render_string_center (&font_var5, 64, 10, sprintf_buffer);
	//sprintf ("COMBO MASTER: %s %d COMBOS", combo_master_initials, combo_master_hi);
	psprintf ("COMBO MASTER: %d COMBO", "COMBO MASTER: %d COMBOS", combo_master_hi);
	font_render_string_center (&font_var5, 64, 20, sprintf_buffer);
	show_text_on_stars ();
}
コード例 #18
0
void car_chase_effect_deff(void) {
	U8 i = 0;
	for (;;) {
		if (++i % 5 == 0) 	{
			sound_start (ST_SAMPLE, CAR_SKID, SL_2S, PRI_GAME_QUICK5);
			dmd_sched_transition (&trans_scroll_left_fast);
		}
		dmd_alloc_low_clean ();
		font_render_string_center (&font_fipps, DMD_MIDDLE_X, DMD_BIG_CY_Top, "CAR_CHASE");
		sprintf ("%d SEC LEFT,  %d HIT", car_chase_mode_timer, car_chase_mode_shots_made);
		font_render_string_center (&font_var5, DMD_MIDDLE_X, DMD_SMALL_CY_3, sprintf_buffer);
		sprintf_score (car_chase_mode_score);
		font_render_string_center (&font_term6, DMD_MIDDLE_X, DMD_MED_CY_3, sprintf_buffer);
		dmd_show_low ();
		task_sleep (TIME_500MS);
	}//END OF ENDLESS LOOP
}//end of mode_effect_deff
コード例 #19
0
ファイル: rightramp.c プロジェクト: SonnyJim/freewpc
void shoot_hitch_deff (void)
{
	dmd_alloc_low_clean ();
	dmd_sched_transition (&trans_scroll_left);	
	if (hurryup_active ())
	{
		font_render_string_center (&font_fireball, 64, 8, "SHOOT");
		font_render_string_center (&font_quadrit, 64, 22, "POWER PAYOFF");
	}
	else
	{
		font_render_string_center (&font_quadrit, 64, 6, "SHOOT HITCHHIKER");
		font_render_string_center (&font_quadrit, 64, 22, "TO UNLOCK POWER");
	}
	dmd_show_low ();
	task_sleep_sec (1);
	deff_exit ();
}
コード例 #20
0
ファイル: huxley.c プロジェクト: CardonaPinball/freewpc
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
コード例 #21
0
void car_chase_start_effect_deff(void) {
	sound_start (ST_SAMPLE, CAR_SKID, SL_2S, PRI_GAME_QUICK5);

	car_chase_animation_display_effect (IMG_CARCHASE_A_START, IMG_CARCHASE_A_END);
	car_chase_animation_display_effect (IMG_CARCHASE_B_START, IMG_CARCHASE_B_END);
	car_chase_animation_display_effect (IMG_CARCHASE_C_START, IMG_CARCHASE_C_END);
	car_chase_animation_display_effect (IMG_CARCHASE_D_START, IMG_CARCHASE_D_END);

	dmd_sched_transition (&trans_scroll_left_fast);
	dmd_alloc_low_clean ();

	sound_start (ST_SAMPLE, CAR_SKID, SL_2S, PRI_GAME_QUICK5);

	font_render_string_center (&font_fipps, DMD_MIDDLE_X, DMD_BIG_CY_Cent, "SHOOT RAMPS");
	dmd_show_low ();
	task_sleep_sec (1);
	deff_exit ();
}//end of mode_effect_deff
コード例 #22
0
ファイル: jets.c プロジェクト: SonnyJim/freewpc
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 ();
}
コード例 #23
0
ファイル: effect.c プロジェクト: Dmilo/freewpc
/** Display effect that runs during the extra ball buyin */
void buyin_offer_deff (void)
{
	U8 prev_timer;
	extern U8 buyin_offer_timer;

#if (MACHINE_DMD == 1)
	dmd_sched_transition (&trans_bitfade_slow);
#else
	seg_sched_transition (&seg_trans_fast_center_out);
#endif
	while (buyin_offer_timer > 0)
	{
		prev_timer = buyin_offer_timer;
		dmd_alloc_low_clean ();
		dmd_draw_border (dmd_low_buffer);
		font_render_string_center (&font_term6, 64, 5, "CONTINUE GAME");
#if (MACHINE_DMD == 1)
		sprintf ("%d", buyin_offer_timer);
		font_render_string_left (&font_mono5, 4, 3, sprintf_buffer);
		font_render_string_right (&font_mono5, 123, 3, sprintf_buffer);
		if (buyin_offer_timer % 2)
		{
			font_render_string_center (&font_bitmap8, 64, 16, "INSERT COINS");
			font_render_string_center (&font_bitmap8, 64, 26, "FOR EXTRA BALL");
		}
		else
		{
			font_render_string_center (&font_bitmap8, 64, 16, "THEN PRESS");
			font_render_string_center (&font_bitmap8, 64, 26, "BUY EXTRA BALL");
		}
#else
		sprintf ("%d SECS", buyin_offer_timer);
		seg_write_row_center (1, sprintf_buffer);
#endif
		dmd_show_low ();
		while (prev_timer == buyin_offer_timer)
			task_sleep (TIME_133MS);
	}
	task_sleep (TIME_1500MS);
	deff_exit ();
}
コード例 #24
0
ファイル: amode.c プロジェクト: aeneas-flippers-be/freewpc
CALLSET_ENTRY (bigfoot_amode, amode_page)
{

	dmd_alloc_pair ();
	frame_draw (IMG_BFOOTLOGO);
	dmd_sched_transition (&trans_scroll_up_slow);
	dmd_show2 ();
	task_sleep_sec (2);

	dmd_alloc_low_clean ();
	font_render_string_center (&font_var5, 64, 5, "BIGFOOT");
	font_render_string_center (&font_var5, 64, 12, "NEW GAME RULES");
	font_render_string_center (&font_var5, 64, 19, "DESIGNED BY");
	font_render_string_center (&font_var5, 64, 26, "AENEAS VERHE");
	dmd_sched_transition (&trans_scroll_up_slow);
	dmd_show_low ();
	task_sleep_sec (2);

	dmd_alloc_pair ();
	frame_draw (IMG_FLIPLOGO);
	dmd_sched_transition (&trans_scroll_up_slow);
	dmd_show2 ();
	task_sleep_sec (2);

	dmd_alloc_pair ();
	frame_draw (IMG_BFOOTLOGO);
	dmd_sched_transition (&trans_scroll_up_slow);
	dmd_show2 ();
	task_sleep_sec (2);

	dmd_alloc_low_clean ();
	font_render_string_center (&font_var5, 64, 5, "PROGRAMMED IN");
	font_render_string_center (&font_var5, 64, 12, "FREEWPC AND");
	font_render_string_center (&font_var5, 64, 19, "RELEASED UNDER THE GNU");
	font_render_string_center (&font_var5, 64, 26, "GENERAL PUBLIC LICENSE.");
	dmd_sched_transition (&trans_scroll_up_slow);
	dmd_show_low ();
	task_sleep_sec (1);

	dmd_alloc_pair ();
	frame_draw (IMG_BFOOTLOGO);
	dmd_sched_transition (&trans_scroll_up_slow);
	dmd_show2 ();
	task_sleep_sec (2);

}
コード例 #25
0
ファイル: deadend.c プロジェクト: CardonaPinball/freewpc
void dead_end_deff (void)
{
	dmd_alloc_low_clean();
	sound_send (SND_DEAD_END_SCREECH);
	dmd_sched_transition (&trans_scroll_left);	
	frame_draw (IMG_NEWCAR);
	dmd_show2 ();
	dmd_alloc_pair_clean ();
	U16 fno;
	sound_send (SND_DEAD_END_CRASH);
	for (fno = IMG_EXPLODE_START; fno < IMG_EXPLODE_END; fno += 2)
	{
		dmd_map_overlay ();
		dmd_clean_page_low ();
		
		U8 x = random_scaled (4);
		U8 y = random_scaled (4);
		psprintf ("1 DEAD END", "%d DEAD ENDS", dead_end_count);
		font_render_string_center (&font_fireball, 64+x, 7+y, sprintf_buffer);
	
		dmd_text_outline ();
		dmd_alloc_pair ();
		frame_draw (fno);
		dmd_overlay_outline ();
		dmd_show2 ();
		task_sleep (TIME_66MS);
	}

	dmd_alloc_pair_clean ();
	psprintf ("1 DEAD END", "%d DEAD ENDS", dead_end_count);
	font_render_string_center (&font_fireball, 64, 7, sprintf_buffer);
	
	if (extra_ball_lit_from_deadend == FALSE && can_award_extra_ball())
	{
		if (dead_end_count < 3 )
			sprintf ("EXTRA BALL AT 3");
		else if (dead_end_count == 3)
		{
			sound_send (SND_GET_THE_EXTRA_BALL);
			sprintf ("EXTRA BALL LIT");
		}
	}
	else if (dead_end_count < 3)
	{
		sprintf ("10M AT 3");
	}
	else if (dead_end_count == 3)
	{
		sprintf ("10 MILLION");
	}
	else
	{
		sprintf ("");
	}
	
	font_render_string_center (&font_nayupixel10, 64, 21, sprintf_buffer);
	dmd_copy_low_to_high ();
	dmd_show2 ();
	task_sleep_sec (2);
	deff_exit ();
}
コード例 #26
0
ファイル: rollovers.c プロジェクト: CardonaPinball/freewpc
void rollovers_effect_deff(void) {
	rollovers_mtl_effect();

	rollover_SoundCounter = random_scaled(3);//from kernal/random.c

	if ( rollover_SoundCounter  == 0 ) 		sound_start (ST_EFFECT, MACHINE1_SHORT, SL_2S, PRI_GAME_QUICK5);
	else if ( rollover_SoundCounter  == 1 ) sound_start (ST_EFFECT, MACHINE1_MED, SL_2S, PRI_GAME_QUICK5);
	else if ( rollover_SoundCounter  == 2 ) sound_start (ST_EFFECT, MACHINE1_LONG, SL_2S, PRI_GAME_QUICK5);

	dmd_alloc_pair_clean ();// Clean both pages

	if (IN_TEST) {	if (++rollover_MessageCounter > 2) rollover_MessageCounter = 0; }
	else			rollover_MessageCounter = random_scaled(3);

	switch (rollover_MessageCounter) {
			default:
			case 0:
					dmd_map_overlay ();
					dmd_clean_page_low ();
					dmd_sched_transition (&trans_bitfade_slow);
					font_render_string_center (&font_term6, DMD_MIDDLE_X, DMD_MED_CY_1, "LIGHT M T L");
					font_render_string_center (&font_var5, DMD_MIDDLE_X, DMD_SMALL_CY_3, "TO");
					font_render_string_center (&font_bitcube10, DMD_MIDDLE_X, DMD_MED_CY_3, "ADVANCE BONUS X");
					dmd_text_outline ();
					dmd_alloc_pair ();
					frame_draw(IMG_GUN_END);
					dmd_overlay_outline ();
					dmd_show2 ();
					break;
			case 1:
				dmd_map_overlay ();
				dmd_clean_page_low ();
				dmd_sched_transition (&trans_bitfade_slow);
				font_render_string_center (&font_term6, DMD_MIDDLE_X, DMD_MED_CY_1, "LIGHT M T L");
				font_render_string_center (&font_var5, DMD_MIDDLE_X, DMD_SMALL_CY_3, "TO");
				font_render_string_center (&font_bitcube10, DMD_MIDDLE_X, DMD_MED_CY_3, "LIGHT CRYOCLAW");
				dmd_text_outline ();
				dmd_alloc_pair ();
				frame_draw(IMG_GUN_END);
				dmd_overlay_outline ();
				dmd_show2 ();
				break;
			case 2:
					dmd_map_overlay ();
					dmd_clean_page_low ();
					dmd_sched_transition (&trans_bitfade_slow);
					font_render_string_center (&font_term6, DMD_MIDDLE_X, DMD_MED_CY_1, "LIGHT M T L");
					font_render_string_center (&font_var5, DMD_MIDDLE_X, DMD_MED_CY_2, "5 TIMES TO");
					font_render_string_center (&font_bitcube10, DMD_MIDDLE_X, DMD_MED_CY_3, "LIGHT EXTRA BALL");
					dmd_text_outline ();
					dmd_alloc_pair ();
					frame_draw(IMG_GUN_END);
					dmd_overlay_outline ();
					dmd_show2 ();
					break;
			}//end of switch

	rollover_SoundCounter = random_scaled(3);//from kernal/random.c

	if ( rollover_SoundCounter  == 0 ) 		sound_start (ST_EFFECT, MACHINE1_SHORT, SL_2S, PRI_GAME_QUICK5);
	else if ( rollover_SoundCounter  == 1 ) sound_start (ST_EFFECT, MACHINE1_MED, SL_2S, PRI_GAME_QUICK5);
	else if ( rollover_SoundCounter  == 2 ) sound_start (ST_EFFECT, MACHINE1_LONG, SL_2S, PRI_GAME_QUICK5);

	task_sleep_sec (1);
	deff_exit ();
}//end of mode_effect_deff
コード例 #27
0
ファイル: tz_amode.c プロジェクト: SonnyJim/freewpc
CALLSET_ENTRY (tz_amode, amode_page)
{
	if (amode_show_scores_long)
		return;
	show_popups ();

	if (random_scaled (4) == 1)
		show_silverball ("PINBALL", "HAVE YOU GOT THE BALLS?");
	else
		show_silverball ("FREEWPC", "MAKING OLD NEW AGAIN");
	
	if (amode_show_scores_long)
		return;

	map_and_clean ();
	font_render_string_center (&font_fireball, 64, 22, "THE ZONE");
	dmd_text_blur ();
	font_render_string_center (&font_fireball, 64, 7, "BACK TO");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;

	map_and_clean ();
	font_render_string_center (&font_nayupixel10, 64, 7, "SOFTWARE BY");
	font_render_string_center (&font_bitoutline, 64, 21, "BCD");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_nayupixel10, 64, 7, "AND");
	font_render_string_center (&font_bitoutline, 64, 20, "SONNY JIM");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_nayupixel10, 64, 7, "ARTWORK AND");
	font_render_string_center (&font_nayupixel10, 64, 20, "ANIMATIONS BY");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_steel, 64, 16, "HIGHRISE");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_steel, 64, 16, "OPEN GAME ART");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_steel, 64,16, "POW STUDIOS");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_nayupixel10, 64, 16, "THANKS GO TO");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_cowboy, 64, 10, "HYDRA");
	font_render_string_center (&font_nayupixel10, 64, 23, "(FREEWPC CORVETTE)");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_cowboy, 64, 10, "METALLIK");
	font_render_string_center (&font_nayupixel10, 64, 23, "(HARDWARE TESTING)");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_cowboy, 64, 10, "LITZ");
	font_render_string_center (&font_nayupixel10, 64, 23, "(RULES AND IDEAS)");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_nayupixel10, 64, 7, "AND EVERYBODY IN");
	font_render_string_center (&font_fireball, 64, 20, "#PINBALL");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_bitcube10, 64, 7, "PRESS BUYIN BUTTON");
	font_render_string_center (&font_bitcube10, 64, 20, "TO DISPLAY RULES");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;

	map_and_clean ();
	font_render_string_center (&font_bitcube10, 64, 7, "HOLD LEFT FLIPPER");
	font_render_string_center (&font_bitcube10, 64, 20, "FOR TOURNAMENT");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	map_and_clean ();
	font_render_string_center (&font_bitcube10, 64, 7, "HOLD RIGHT FLIPPER");
	font_render_string_center (&font_bitcube10, 64, 20, "TO SHOW LAST SCORES");
	show_text_on_stars ();
	if (amode_show_scores_long)
		return;
	
	show_random_factoid ();
	if (amode_show_scores_long)
		return;
	
	draw_bttzwave ();
	if (amode_show_scores_long)
		return;
	
	dmd_sched_transition (&trans_scroll_left);
	show_driver_animation ();
	if (amode_show_scores_long)
		return;
	
	scroll_text ();
	if (amode_show_scores_long)
		return;

	//draw_bttzmelt ();
	//if (amode_show_scores_long)
	//	return;
}