clean midi, delete trail
This commit is contained in:
parent
50821bbb8f
commit
23afbdfdbe
@ -86,7 +86,7 @@ lod_min_hysteresis = 0.0
|
|||||||
lod_max_distance = 0.0
|
lod_max_distance = 0.0
|
||||||
lod_max_hysteresis = 0.0
|
lod_max_hysteresis = 0.0
|
||||||
emitting = false
|
emitting = false
|
||||||
amount = 1000
|
amount = 800
|
||||||
lifetime = 2.0
|
lifetime = 2.0
|
||||||
one_shot = true
|
one_shot = true
|
||||||
preprocess = 0.0
|
preprocess = 0.0
|
||||||
|
@ -35,7 +35,7 @@ const SCORES = [
|
|||||||
const LINES_CLEARED_NAMES = ["", "SINGLE", "DOUBLE", "TRIPLE", "TETRIS"]
|
const LINES_CLEARED_NAMES = ["", "SINGLE", "DOUBLE", "TRIPLE", "TETRIS"]
|
||||||
const T_SPIN_NAMES = ["", "T-SPIN", "MINI T-SPIN"]
|
const T_SPIN_NAMES = ["", "T-SPIN", "MINI T-SPIN"]
|
||||||
|
|
||||||
const MIDI_MOVE_CHANNELS = [] #[7, 8, 9, 11, 12]
|
const LINE_CLEAR_MIDI_CHANNELS = [2, 6]
|
||||||
|
|
||||||
var next_piece = random_piece()
|
var next_piece = random_piece()
|
||||||
var current_piece
|
var current_piece
|
||||||
@ -85,7 +85,6 @@ func random_piece():
|
|||||||
func new_piece():
|
func new_piece():
|
||||||
current_piece = next_piece
|
current_piece = next_piece
|
||||||
current_piece.translation = START_POSITION
|
current_piece.translation = START_POSITION
|
||||||
current_piece.emit_trail(true)
|
|
||||||
autoshift_action = ""
|
autoshift_action = ""
|
||||||
next_piece = random_piece()
|
next_piece = random_piece()
|
||||||
next_piece.translation = NEXT_POSITION
|
next_piece.translation = NEXT_POSITION
|
||||||
@ -205,15 +204,14 @@ func line_clear():
|
|||||||
print(T_SPIN_NAMES[current_piece.t_spin], ' ', LINES_CLEARED_NAMES[lines_cleared], " Score ", score)
|
print(T_SPIN_NAMES[current_piece.t_spin], ' ', LINES_CLEARED_NAMES[lines_cleared], " Score ", score)
|
||||||
|
|
||||||
if lines_cleared == Tetromino.NB_MINOES:
|
if lines_cleared == Tetromino.NB_MINOES:
|
||||||
for channel in $MidiPlayer.line_clear_notes:
|
for channel in LINE_CLEAR_MIDI_CHANNELS:
|
||||||
$MidiPlayer.channel_status[channel].vomume = 127
|
$MidiPlayer.channel_status[channel].vomume = 127
|
||||||
$MidiPlayer/LineCLearTimer.wait_time = 0.86
|
$MidiPlayer/LineCLearTimer.wait_time = 0.86
|
||||||
else:
|
else:
|
||||||
for channel in $MidiPlayer.line_clear_notes:
|
for channel in LINE_CLEAR_MIDI_CHANNELS:
|
||||||
$MidiPlayer.channel_status[channel].vomume = 100
|
$MidiPlayer.channel_status[channel].vomume = 100
|
||||||
$MidiPlayer/LineCLearTimer.wait_time = 0.43
|
$MidiPlayer/LineCLearTimer.wait_time = 0.43
|
||||||
$MidiPlayer.mute_midi_channels($MidiPlayer.line_clear_notes, false)
|
$MidiPlayer.unmute_channels(LINE_CLEAR_MIDI_CHANNELS)
|
||||||
$MidiPlayer.play_line_clear()
|
|
||||||
$MidiPlayer/LineCLearTimer.start()
|
$MidiPlayer/LineCLearTimer.start()
|
||||||
if goal <= 0:
|
if goal <= 0:
|
||||||
new_level()
|
new_level()
|
||||||
@ -222,13 +220,11 @@ func line_clear():
|
|||||||
|
|
||||||
func hold():
|
func hold():
|
||||||
if not current_piece_held:
|
if not current_piece_held:
|
||||||
current_piece.emit_trail(false)
|
|
||||||
if held_piece:
|
if held_piece:
|
||||||
var tmp = held_piece
|
var tmp = held_piece
|
||||||
held_piece = current_piece
|
held_piece = current_piece
|
||||||
current_piece = tmp
|
current_piece = tmp
|
||||||
current_piece.translation = START_POSITION
|
current_piece.translation = START_POSITION
|
||||||
current_piece.emit_trail(true)
|
|
||||||
else:
|
else:
|
||||||
held_piece = current_piece
|
held_piece = current_piece
|
||||||
new_piece()
|
new_piece()
|
||||||
@ -240,7 +236,7 @@ func resume():
|
|||||||
$DropTimer.start()
|
$DropTimer.start()
|
||||||
$LockDelay.start()
|
$LockDelay.start()
|
||||||
$MidiPlayer.resume()
|
$MidiPlayer.resume()
|
||||||
$MidiPlayer.mute_midi_channels($MidiPlayer.line_clear_notes, true)
|
$MidiPlayer.mute_channels(LINE_CLEAR_MIDI_CHANNELS)
|
||||||
print("RESUME")
|
print("RESUME")
|
||||||
|
|
||||||
func pause():
|
func pause():
|
||||||
@ -261,4 +257,4 @@ func _notification(what):
|
|||||||
resume()
|
resume()
|
||||||
|
|
||||||
func _on_LineCLearTimer_timeout():
|
func _on_LineCLearTimer_timeout():
|
||||||
$MidiPlayer.mute_midi_channels($MidiPlayer.line_clear_notes, true)
|
$MidiPlayer.mute_channels(LINE_CLEAR_MIDI_CHANNELS)
|
||||||
|
@ -15,8 +15,9 @@ subdivide_width = 0
|
|||||||
subdivide_height = 0
|
subdivide_height = 0
|
||||||
subdivide_depth = 0
|
subdivide_depth = 0
|
||||||
|
|
||||||
[node name="GridMap" type="GridMap"]
|
[node name="GridMap" type="GridMap" index="0"]
|
||||||
|
|
||||||
|
editor/display_folded = true
|
||||||
theme = ExtResource( 1 )
|
theme = ExtResource( 1 )
|
||||||
cell_size = Vector3( 1, 1, 1 )
|
cell_size = Vector3( 1, 1, 1 )
|
||||||
cell_octant_size = 8
|
cell_octant_size = 8
|
||||||
@ -60,7 +61,7 @@ autostart = false
|
|||||||
[node name="AutoShiftTimer" type="Timer" parent="." index="3"]
|
[node name="AutoShiftTimer" type="Timer" parent="." index="3"]
|
||||||
|
|
||||||
process_mode = 1
|
process_mode = 1
|
||||||
wait_time = 0.02
|
wait_time = 0.03
|
||||||
one_shot = false
|
one_shot = false
|
||||||
autostart = true
|
autostart = true
|
||||||
|
|
||||||
|
@ -1,117 +1,10 @@
|
|||||||
[gd_scene load_steps=9 format=2]
|
[gd_scene load_steps=4 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://Tetrominos/Mino/MinoMesh.tscn" type="PackedScene" id=1]
|
[ext_resource path="res://Tetrominos/Mino/MinoMesh.tscn" type="PackedScene" id=1]
|
||||||
[ext_resource path="res://Tetrominos/Mino/MinoMesh.tres" type="CubeMesh" id=2]
|
[ext_resource path="res://Tetrominos/Mino/MinoMesh.tres" type="CubeMesh" id=2]
|
||||||
[ext_resource path="res://Tetrominos/Mino/TrailMaterial.tres" type="Material" id=3]
|
[ext_resource path="res://Tetrominos/Mino/SpotLight.tscn" type="PackedScene" id=3]
|
||||||
[ext_resource path="res://Tetrominos/Mino/SpotLight.tscn" type="PackedScene" id=4]
|
|
||||||
|
|
||||||
[sub_resource type="SpatialMaterial" id=1]
|
[node name="Mino" type="Spatial" index="0"]
|
||||||
|
|
||||||
render_priority = 0
|
|
||||||
flags_transparent = true
|
|
||||||
flags_unshaded = false
|
|
||||||
flags_vertex_lighting = false
|
|
||||||
flags_no_depth_test = false
|
|
||||||
flags_use_point_size = false
|
|
||||||
flags_world_triplanar = false
|
|
||||||
flags_fixed_size = false
|
|
||||||
flags_albedo_tex_force_srgb = false
|
|
||||||
vertex_color_use_as_albedo = false
|
|
||||||
vertex_color_is_srgb = false
|
|
||||||
params_diffuse_mode = 0
|
|
||||||
params_specular_mode = 0
|
|
||||||
params_blend_mode = 1
|
|
||||||
params_cull_mode = 0
|
|
||||||
params_depth_draw_mode = 0
|
|
||||||
params_line_width = 1.0
|
|
||||||
params_point_size = 1.0
|
|
||||||
params_billboard_mode = 0
|
|
||||||
params_grow = false
|
|
||||||
params_use_alpha_scissor = false
|
|
||||||
albedo_color = Color( 0.601563, 0.775878, 1, 0.270275 )
|
|
||||||
metallic = 0.68
|
|
||||||
metallic_specular = 1.0
|
|
||||||
metallic_texture_channel = 0
|
|
||||||
roughness = 0.0
|
|
||||||
roughness_texture_channel = 0
|
|
||||||
emission_enabled = false
|
|
||||||
normal_enabled = false
|
|
||||||
rim_enabled = false
|
|
||||||
clearcoat_enabled = false
|
|
||||||
anisotropy_enabled = false
|
|
||||||
ao_enabled = false
|
|
||||||
depth_enabled = false
|
|
||||||
subsurf_scatter_enabled = false
|
|
||||||
transmission_enabled = false
|
|
||||||
refraction_enabled = false
|
|
||||||
detail_enabled = false
|
|
||||||
uv1_scale = Vector3( 1, 1, 1 )
|
|
||||||
uv1_offset = Vector3( 0, 0, 0 )
|
|
||||||
uv1_triplanar = false
|
|
||||||
uv1_triplanar_sharpness = 1.0
|
|
||||||
uv2_scale = Vector3( 1, 1, 1 )
|
|
||||||
uv2_offset = Vector3( 0, 0, 0 )
|
|
||||||
uv2_triplanar = false
|
|
||||||
uv2_triplanar_sharpness = 1.0
|
|
||||||
proximity_fade_enable = true
|
|
||||||
proximity_fade_distance = 1.0
|
|
||||||
distance_fade_enable = false
|
|
||||||
_sections_unfolded = [ "Albedo", "Emission", "Metallic", "NormalMap", "Proximity Fade" ]
|
|
||||||
|
|
||||||
[sub_resource type="GradientTexture" id=2]
|
|
||||||
|
|
||||||
flags = 4
|
|
||||||
width = 2048
|
|
||||||
|
|
||||||
[sub_resource type="ParticlesMaterial" id=3]
|
|
||||||
|
|
||||||
render_priority = 0
|
|
||||||
trail_divisor = 1
|
|
||||||
emission_shape = 0
|
|
||||||
flag_align_y = false
|
|
||||||
flag_rotate_y = false
|
|
||||||
flag_disable_z = true
|
|
||||||
spread = 0.0
|
|
||||||
flatness = 0.0
|
|
||||||
gravity = Vector3( 0, 0, 0 )
|
|
||||||
initial_velocity = 0.0
|
|
||||||
initial_velocity_random = 0.0
|
|
||||||
angular_velocity = 0.0
|
|
||||||
angular_velocity_random = 0.0
|
|
||||||
orbit_velocity = 0.0
|
|
||||||
orbit_velocity_random = 0.0
|
|
||||||
linear_accel = 0.0
|
|
||||||
linear_accel_random = 0.0
|
|
||||||
radial_accel = 0.0
|
|
||||||
radial_accel_random = 0.0
|
|
||||||
tangential_accel = 0.0
|
|
||||||
tangential_accel_random = 0.0
|
|
||||||
damping = 0.0
|
|
||||||
damping_random = 0.0
|
|
||||||
angle = 0.0
|
|
||||||
angle_random = 0.0
|
|
||||||
scale = 1.0
|
|
||||||
scale_random = 0.0
|
|
||||||
color_ramp = SubResource( 2 )
|
|
||||||
hue_variation = 0.0
|
|
||||||
hue_variation_random = 0.0
|
|
||||||
anim_speed = 0.0
|
|
||||||
anim_speed_random = 0.0
|
|
||||||
anim_offset = 0.0
|
|
||||||
anim_offset_random = 0.0
|
|
||||||
anim_loop = false
|
|
||||||
_sections_unfolded = [ "Color", "Gravity" ]
|
|
||||||
|
|
||||||
[sub_resource type="CubeMesh" id=4]
|
|
||||||
|
|
||||||
material = ExtResource( 3 )
|
|
||||||
custom_aabb = AABB( 0, 0, 0, 0, 0, 0 )
|
|
||||||
size = Vector3( 0.9, 0.9, 0.9 )
|
|
||||||
subdivide_width = 0
|
|
||||||
subdivide_height = 0
|
|
||||||
subdivide_depth = 0
|
|
||||||
|
|
||||||
[node name="Mino" type="Spatial"]
|
|
||||||
|
|
||||||
_sections_unfolded = [ "Pause", "Transform", "Visibility" ]
|
_sections_unfolded = [ "Pause", "Transform", "Visibility" ]
|
||||||
|
|
||||||
@ -121,38 +14,10 @@ mesh = ExtResource( 2 )
|
|||||||
material/0 = null
|
material/0 = null
|
||||||
_sections_unfolded = [ "Geometry", "Transform", "material" ]
|
_sections_unfolded = [ "Geometry", "Transform", "material" ]
|
||||||
|
|
||||||
[node name="Trail" type="Particles" parent="." index="1"]
|
[node name="SpotLight" parent="." index="1" instance=ExtResource( 3 )]
|
||||||
|
|
||||||
layers = 1
|
|
||||||
material_override = SubResource( 1 )
|
|
||||||
cast_shadow = 1
|
|
||||||
extra_cull_margin = 0.0
|
|
||||||
use_in_baked_light = false
|
|
||||||
lod_min_distance = 0.0
|
|
||||||
lod_min_hysteresis = 0.0
|
|
||||||
lod_max_distance = 0.0
|
|
||||||
lod_max_hysteresis = 0.0
|
|
||||||
emitting = false
|
|
||||||
amount = 4
|
|
||||||
lifetime = 0.1
|
|
||||||
one_shot = false
|
|
||||||
preprocess = 0.0
|
|
||||||
speed_scale = 1.0
|
|
||||||
explosiveness = 0.0
|
|
||||||
randomness = 0.0
|
|
||||||
fixed_fps = 0
|
|
||||||
fract_delta = true
|
|
||||||
visibility_aabb = AABB( -0.5, -0.5, -0.5, 1, 1, 1 )
|
|
||||||
local_coords = false
|
|
||||||
draw_order = 0
|
|
||||||
process_material = SubResource( 3 )
|
|
||||||
draw_passes = 1
|
|
||||||
draw_pass_1 = SubResource( 4 )
|
|
||||||
_sections_unfolded = [ "Draw Passes", "Drawing", "Geometry", "LOD", "Process Material", "Time", "Transform" ]
|
|
||||||
|
|
||||||
[node name="SpotLight" parent="." index="2" instance=ExtResource( 4 )]
|
|
||||||
|
|
||||||
transform = Transform( 1, 0, 0, 0, -4.37114e-008, 1, 0, -1, -4.37114e-008, 0, 0, 1 )
|
transform = Transform( 1, 0, 0, 0, -4.37114e-008, 1, 0, -1, -4.37114e-008, 0, 0, 1 )
|
||||||
light_energy = 4.0
|
light_energy = 4.0
|
||||||
|
light_cull_mask = -1
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,59 +0,0 @@
|
|||||||
[gd_resource type="SpatialMaterial" format=2]
|
|
||||||
|
|
||||||
[resource]
|
|
||||||
|
|
||||||
render_priority = 0
|
|
||||||
flags_transparent = true
|
|
||||||
flags_unshaded = false
|
|
||||||
flags_vertex_lighting = false
|
|
||||||
flags_no_depth_test = false
|
|
||||||
flags_use_point_size = false
|
|
||||||
flags_world_triplanar = false
|
|
||||||
flags_fixed_size = false
|
|
||||||
flags_albedo_tex_force_srgb = false
|
|
||||||
vertex_color_use_as_albedo = false
|
|
||||||
vertex_color_is_srgb = false
|
|
||||||
params_diffuse_mode = 0
|
|
||||||
params_specular_mode = 0
|
|
||||||
params_blend_mode = 1
|
|
||||||
params_cull_mode = 0
|
|
||||||
params_depth_draw_mode = 0
|
|
||||||
params_line_width = 1.0
|
|
||||||
params_point_size = 1.0
|
|
||||||
params_billboard_mode = 0
|
|
||||||
params_grow = false
|
|
||||||
params_use_alpha_scissor = false
|
|
||||||
albedo_color = Color( 0.67451, 1, 0.988235, 0.108118 )
|
|
||||||
metallic = 0.22
|
|
||||||
metallic_specular = 1.0
|
|
||||||
metallic_texture_channel = 0
|
|
||||||
roughness = 0.49
|
|
||||||
roughness_texture_channel = 0
|
|
||||||
emission_enabled = true
|
|
||||||
emission = Color( 0.700471, 1, 0.98947, 1 )
|
|
||||||
emission_energy = 0.2
|
|
||||||
emission_operator = 0
|
|
||||||
emission_on_uv2 = false
|
|
||||||
normal_enabled = false
|
|
||||||
rim_enabled = false
|
|
||||||
clearcoat_enabled = false
|
|
||||||
anisotropy_enabled = false
|
|
||||||
ao_enabled = false
|
|
||||||
depth_enabled = false
|
|
||||||
subsurf_scatter_enabled = false
|
|
||||||
transmission_enabled = false
|
|
||||||
refraction_enabled = false
|
|
||||||
detail_enabled = false
|
|
||||||
uv1_scale = Vector3( 1, 1, 1 )
|
|
||||||
uv1_offset = Vector3( 0, 0, 0 )
|
|
||||||
uv1_triplanar = false
|
|
||||||
uv1_triplanar_sharpness = 1.0
|
|
||||||
uv2_scale = Vector3( 1, 1, 1 )
|
|
||||||
uv2_offset = Vector3( 0, 0, 0 )
|
|
||||||
uv2_triplanar = false
|
|
||||||
uv2_triplanar_sharpness = 1.0
|
|
||||||
proximity_fade_enable = true
|
|
||||||
proximity_fade_distance = 1.0
|
|
||||||
distance_fade_enable = false
|
|
||||||
_sections_unfolded = [ "Albedo", "Emission", "Metallic", "Parameters" ]
|
|
||||||
|
|
@ -1,55 +0,0 @@
|
|||||||
[gd_resource type="SpatialMaterial" format=2]
|
|
||||||
|
|
||||||
[resource]
|
|
||||||
|
|
||||||
render_priority = 0
|
|
||||||
flags_transparent = true
|
|
||||||
flags_unshaded = false
|
|
||||||
flags_vertex_lighting = false
|
|
||||||
flags_no_depth_test = false
|
|
||||||
flags_use_point_size = false
|
|
||||||
flags_world_triplanar = false
|
|
||||||
flags_fixed_size = false
|
|
||||||
flags_albedo_tex_force_srgb = false
|
|
||||||
vertex_color_use_as_albedo = false
|
|
||||||
vertex_color_is_srgb = false
|
|
||||||
params_diffuse_mode = 0
|
|
||||||
params_specular_mode = 0
|
|
||||||
params_blend_mode = 1
|
|
||||||
params_cull_mode = 0
|
|
||||||
params_depth_draw_mode = 0
|
|
||||||
params_line_width = 1.0
|
|
||||||
params_point_size = 1.0
|
|
||||||
params_billboard_mode = 0
|
|
||||||
params_grow = false
|
|
||||||
params_use_alpha_scissor = false
|
|
||||||
albedo_color = Color( 0.601563, 0.775878, 1, 0.0196078 )
|
|
||||||
metallic = 0.68
|
|
||||||
metallic_specular = 1.0
|
|
||||||
metallic_texture_channel = 0
|
|
||||||
roughness = 0.0
|
|
||||||
roughness_texture_channel = 0
|
|
||||||
emission_enabled = false
|
|
||||||
normal_enabled = false
|
|
||||||
rim_enabled = false
|
|
||||||
clearcoat_enabled = false
|
|
||||||
anisotropy_enabled = false
|
|
||||||
ao_enabled = false
|
|
||||||
depth_enabled = false
|
|
||||||
subsurf_scatter_enabled = false
|
|
||||||
transmission_enabled = false
|
|
||||||
refraction_enabled = false
|
|
||||||
detail_enabled = false
|
|
||||||
uv1_scale = Vector3( 1, 1, 1 )
|
|
||||||
uv1_offset = Vector3( 0, 0, 0 )
|
|
||||||
uv1_triplanar = false
|
|
||||||
uv1_triplanar_sharpness = 1.0
|
|
||||||
uv2_scale = Vector3( 1, 1, 1 )
|
|
||||||
uv2_offset = Vector3( 0, 0, 0 )
|
|
||||||
uv2_triplanar = false
|
|
||||||
uv2_triplanar_sharpness = 1.0
|
|
||||||
proximity_fade_enable = true
|
|
||||||
proximity_fade_distance = 1.0
|
|
||||||
distance_fade_enable = false
|
|
||||||
_sections_unfolded = [ "Albedo", "Emission", "Proximity Fade" ]
|
|
||||||
|
|
@ -121,7 +121,3 @@ func rotate(direction):
|
|||||||
translate(movement)
|
translate(movement)
|
||||||
return true
|
return true
|
||||||
return false
|
return false
|
||||||
|
|
||||||
func emit_trail(emit):
|
|
||||||
for mino in minoes:
|
|
||||||
mino.get_node("Trail").emitting = emit
|
|
@ -144,4 +144,19 @@ data = {
|
|||||||
"cells": PoolIntArray( )
|
"cells": PoolIntArray( )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[node name="HUD" type="Control" parent="." index="3"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_right = 40.0
|
||||||
|
margin_bottom = 40.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
|
||||||
|
|
||||||
|
@ -38,8 +38,7 @@ var audio_stream_players = []
|
|||||||
|
|
||||||
var _used_program_numbers = []
|
var _used_program_numbers = []
|
||||||
|
|
||||||
var line_clear_notes = {2: {}, 6: {}}
|
var muted_events = []
|
||||||
var line_clear_notes_to_stop
|
|
||||||
var paused_position = 0
|
var paused_position = 0
|
||||||
|
|
||||||
signal changed_tempo( tempo )
|
signal changed_tempo( tempo )
|
||||||
@ -181,6 +180,7 @@ func _init_channel( ):
|
|||||||
"drum_track": drum_track,
|
"drum_track": drum_track,
|
||||||
"pan": 0.5,
|
"pan": 0.5,
|
||||||
})
|
})
|
||||||
|
self.muted_events.append({})
|
||||||
|
|
||||||
"""
|
"""
|
||||||
再生
|
再生
|
||||||
@ -278,12 +278,11 @@ func _process_track( ):
|
|||||||
|
|
||||||
match event.type:
|
match event.type:
|
||||||
SMF.MIDIEventType.note_off:
|
SMF.MIDIEventType.note_off:
|
||||||
if event_chunk.channel_number in line_clear_notes:
|
muted_events[event_chunk.channel_number].erase(event.note)
|
||||||
line_clear_notes[event_chunk.channel_number].erase(event.note)
|
|
||||||
self._process_track_event_note_off( channel, event )
|
self._process_track_event_note_off( channel, event )
|
||||||
SMF.MIDIEventType.note_on:
|
SMF.MIDIEventType.note_on:
|
||||||
if event_chunk.channel_number in line_clear_notes:
|
if self.channel_mute[event_chunk.channel_number]:
|
||||||
line_clear_notes[event_chunk.channel_number][event.note] = event
|
muted_events[event_chunk.channel_number][event.note] = event
|
||||||
self._process_track_event_note_on( channel, event )
|
self._process_track_event_note_on( channel, event )
|
||||||
SMF.MIDIEventType.program_change:
|
SMF.MIDIEventType.program_change:
|
||||||
channel.program = event.number
|
channel.program = event.number
|
||||||
@ -412,13 +411,12 @@ func get_now_playing_polyphony( ):
|
|||||||
func resume():
|
func resume():
|
||||||
play(position)
|
play(position)
|
||||||
|
|
||||||
func play_line_clear():
|
func mute_channels(channels):
|
||||||
line_clear_notes_to_stop = {2: {}, 6:{}}
|
|
||||||
for channel in line_clear_notes:
|
|
||||||
for note in line_clear_notes[channel]:
|
|
||||||
_process_track_event_note_on(channel_status[channel], line_clear_notes[channel][note])
|
|
||||||
line_clear_notes_to_stop[channel][note] = line_clear_notes[channel][note]
|
|
||||||
|
|
||||||
func mute_midi_channels(channels, muted):
|
|
||||||
for channel_id in channels:
|
for channel_id in channels:
|
||||||
channel_mute[channel_id] = muted
|
channel_mute[channel_id] = true
|
||||||
|
|
||||||
|
func unmute_channels(channels):
|
||||||
|
for channel_id in channels:
|
||||||
|
channel_mute[channel_id] = false
|
||||||
|
for note in muted_events[channel_id]:
|
||||||
|
_process_track_event_note_on(channel_status[channel_id], muted_events[channel_id][note])
|
Loading…
x
Reference in New Issue
Block a user