Exemple #1
0
void rules_powerfield_leff (void)
{
	for (;;)
	{
		triac_enable (GI_POWERFIELD);
		task_sleep_sec (2);
		triac_disable (GI_POWERFIELD);
		leff_start (LEFF_MPF_HIT);
		task_sleep_sec (2);
	}
}
Exemple #2
0
void rules_ramp_battle_leff (void)
{
	for (;;)
	{
		triac_disable (GI_POWERFIELD);
		lamp_tristate_flash (LM_RAMP_BATTLE);
		task_sleep_sec (4);
		lamp_tristate_off (LM_RAMP_BATTLE);
		triac_enable (GI_POWERFIELD);
		task_sleep_sec (3);
	}
}
Exemple #3
0
void rules_sssmb_leff (void)
{
	triac_disable (TRIAC_GI_MASK);
	for (;;)
	{
		lamp_tristate_off (LM_BONUS_X);
		lamp_tristate_flash (LM_SUPER_SKILL);
		task_sleep (TIME_500MS);
		lamp_tristate_off (LM_SUPER_SKILL);
		lamp_tristate_flash (LM_MULTIBALL);
		task_sleep (TIME_500MS);
		lamp_tristate_off (LM_MULTIBALL);
		lamp_tristate_flash (LM_BONUS_X);
		task_sleep (TIME_500MS);
	}
}
Exemple #4
0
void rules_rollover_leff (void)
{
	triac_disable (TRIAC_GI_MASK);
	for (;;)
	{
		lamp_tristate_off (LM_RIGHT_INLANE);
		lamp_tristate_on (LM_LEFT_INLANE1);
		task_sleep_sec (1);
		lamp_tristate_off (LM_LEFT_INLANE1);
		lamp_tristate_on (LM_LEFT_INLANE2);
		task_sleep_sec (1);
		lamp_tristate_off (LM_LEFT_INLANE2);
		lamp_tristate_on (LM_RIGHT_INLANE);
		task_sleep_sec (1);
	}
}
Exemple #5
0
CALLSET_ENTRY (tilt, sw_tilt)
{
	extern U8 in_tilt;

	/* Ignore tilt switch activity while already in tilt state.
	 * But restart the timer that tells us that the tilt is still
	 * moving, so we can delay endball. */
	if (in_tilt)
	{
		free_timer_restart (TIM_IGNORE_TILT, TIME_2S);
		return;
	}

	/* IDEA : Disable tilt while a ball search is in progress? */

	else if (++tilt_warnings == system_config.tilt_warnings)
	{
		/* Warnings exceeded... tilt the current ball */
		sound_reset ();
		triac_disable (TRIAC_GI_MASK);
		deff_start (DEFF_TILT);
		leff_start (LEFF_TILT);
		free_timer_restart (TIM_IGNORE_TILT, TIME_2S);
		in_tilt = TRUE;
		task_remove_duration (TASK_DURATION_LIVE);
		task_duration_expire (TASK_DURATION_LIVE);
		flipper_disable ();
		set_valid_playfield ();
		audit_increment (&system_audits.tilts);
		audit_increment (&system_audits.plumb_bob_tilts);
		callset_invoke (tilt);
	}
	else
	{
		/* Give a warning this time */
		deff_start (DEFF_TILT_WARNING);
		leff_start (LEFF_TILT_WARNING);
		callset_invoke (tilt_warning);
	}
}
Exemple #6
0
static void rule_begin (void)
{
	lamp_all_off ();
	triac_disable (PINIO_GI_STRINGS);
}
Exemple #7
0
void rules_deff (void)
{
	music_disable ();
	leff_stop_all ();

	rule_begin ();
	triac_disable (TRIAC_GI_MASK);
	rule_msg ("BACK TO THE ZONE", "", "HOW TO PLAY", "");
	rules_sleep_sec (5);
	rule_complete ();

	rule_begin ();
	rule_msg ("SPIRALAWARD", "EITHER LEFT INLANE STARTS", "A 3 SECOND TIMER", "");
	task_create_gid1 (GID_RULES_LEFF, rules_spiralaward_leff);
	rules_sleep_sec (6);
	rule_complete ();
	
	rule_begin ();
	rule_msg ("SPIRALAWARD", "SHOOT A RIGHT LOOP TO COLLECT", "A RANDOM AWARD" , "20M FOR COLLECTING ALL");
	task_create_gid1 (GID_RULES_LEFF, rules_spiralaward2_leff);
	rules_sleep_sec (5);
	rule_complete ();
	lamplist_apply (LAMPLIST_SPIRAL_AWARDS, lamp_flash_off);
	lamp_tristate_off (LM_RIGHT_SPIRAL);
	lamp_tristate_off (LM_RIGHT_POWERBALL);

	rule_begin ();
	rule_msg ("ROLLOVERS", "USE FLIPPER BUTTONS TO STEP", "INLANE LIGHTS", "1M FOR COLLECTING ALL");
	task_create_gid1 (GID_RULES_LEFF, rules_rollover_leff);
	rules_sleep_sec (9);
	rule_complete ();
	
	rule_begin ();
	rule_msg ("SUPER SKILL MB", "SHOOT LEFT RAMP", "AND HIT SKILL SHOT", "DURING MULTIBALL");
	task_create_gid1 (GID_RULES_LEFF, rules_sssmb_leff);
	rules_sleep_sec (9);
	rule_complete ();

	rule_begin ();
	rule_msg ("CHAOS MULTIBALL", "HIT CLOCK TO LIGHT JACKPOTS", "JACKPOTS MOVE", "AROUND THE TABLE");
	task_create_gid1 (GID_RULES_LEFF, rules_chaosmb_leff);
	rules_sleep_sec (9);
	rule_complete ();
	
	rule_begin ();
	rule_msg ("FASTLOCK", "SHOOT FAST LOOPS TO", "BUILD UP JACKPOTS", "HIT LOCK TO COLLECT");
	task_create_gid1 (GID_RULES_LEFF, rules_fastlock_leff);
	rules_sleep_sec (9);
	rule_complete ();

	rule_begin ();
	rule_msg ("HITCHHIKER", "SHOOT THE HOLE BETWEEN", "THE FLASHING LAMPS", "TO SCORE A HITCHHIKER");
	task_create_gid1 (GID_RULES_LEFF, rules_hitchhiker_leff);
	rules_sleep_sec (9);
	rule_complete ();

	
	rule_begin ();
	rule_msg ("POWERFIELD", "HITCHHIKERS UNLOCK", "THE RIGHT RAMP", "TO THE POWERFIELD");
	task_create_gid1 (GID_RULES_LEFF, rules_ramp_battle_leff);
	rules_sleep_sec (9);
	rule_complete ();

	rule_begin ();
	rule_msg ("POWERFIELD", "PRESS THE FLIPPER BUTTONS", "TO SHOOT THE BALL INTO", "THE TOP OF THE POWERFIELD");
	task_create_gid1 (GID_RULES_LEFF, rules_powerfield_leff);
	rules_sleep_sec (9);
	triac_disable (GI_POWERFIELD);
	rule_complete ();

	rule_begin ();
	rule_msg ("DOINK MODE", "SHOOT THE LEFT RAMP", "FROM THE RIGHT INLANE", "TO START DOINK MODE");
	task_create_gid1 (GID_RULES_LEFF, rules_doinks_leff);
	rules_sleep_sec (9);
	rule_msg ("DOINK MODE", "HIT THE FLIPPER BUTTONS", "WHILST THE BALL IS BEING HELD", "TO SCORE POINTS");
	rules_sleep_sec (9);
	rule_complete ();
	
	rule_begin ();
	rule_msg ("ODDCHANGE", "HITTING THE YELLOW", "TARGETS RANDOMLY BUILDS", "THE ODDCHANGE POT");
	task_create_gid1 (GID_RULES_LEFF, rules_oddchange1_leff);
	rules_sleep_sec (9);
	rule_complete ();

	rule_begin ();
	rule_msg ("ODDCHANGE", "HIT THE PIANO OR", "THE SLOT MACHINE WHEN", "UNLIT TO COLLECT");
	task_create_gid1 (GID_RULES_LEFF, rules_oddchange2_leff);
	rules_sleep_sec (9);
	rule_complete ();

	rule_begin ();
	rule_msg ("THANKS", "WE HOPE YOU", "ENJOY PLAYING","WWW.ODDCHANGE.COM/FREEWPC");
	rules_sleep_sec (4);
	rule_complete ();
	
	music_enable ();
	leff_start (LEFF_AMODE);
	deff_exit ();
}