/// @function:									scr_pattern_fire( _pattern, _speed, _bullet );
/// @param _pattern	{real}
/// @param _speed	{real}
/// @param _bullet	{object}


function scr_pattern_fire( _pattern, _speed, _bullet ) {
	switch ( _pattern ) {
		case PATTERN_STREAM:
			exy = instance_create_layer( x, y, "enemy", _bullet );
			with (exy) {
				speed = _speed;
				friction = -.05 * obj_wriggle.hyper_tier;
				direction = point_direction( x, y, obj_wriggle.x, obj_wriggle.y );
			}
			if ( obj_wriggle.hyper_tier > HYPER_TIER_1 ) {
				exy = instance_create_layer( x, y, "enemy", _bullet );
				with (exy) {
					speed = _speed;
					friction = -.05 * obj_wriggle.hyper_tier;
					direction = point_direction( x, y, obj_wriggle.x, obj_wriggle.y ) + 20;
				}
				exy = instance_create_layer( x, y, "enemy", _bullet );
				with (exy) {
					speed = _speed;
					friction = -.05 * obj_wriggle.hyper_tier;
					direction = point_direction( x, y, obj_wriggle.x, obj_wriggle.y ) - 20;
				}
			}
			break;
		case PATTERN_AIMED_WAVE:
			for ( var i = 0; i < 5 + (obj_wriggle.hyper_tier * 2); i++ ) {
				exy = instance_create_layer( x, y, "enemy", _bullet );
				with (exy) {
					speed = _speed;
					friction = -.05 * obj_wriggle.hyper_tier;
					direction = point_direction( x, y, obj_wriggle.x, obj_wriggle.y ) 
					- (30 + 10 * obj_wriggle.hyper_tier) + ( i * (60 + 10 * obj_wriggle.hyper_tier) / (5 + obj_wriggle.hyper_tier * 2) );
				}
			}
			break;
		default:
			break;
	}
}