make vehicles flow from right dont just spawn
This commit is contained in:
+23
-4
@@ -86,6 +86,8 @@ program2_drain_counter = 0
|
|||||||
program2_done = False
|
program2_done = False
|
||||||
program2_scroll_progress = 0
|
program2_scroll_progress = 0
|
||||||
program2_spacing_counter = 0
|
program2_spacing_counter = 0
|
||||||
|
program2_draw_col = 0
|
||||||
|
program2_current_vehicle = None
|
||||||
|
|
||||||
VEHICLES = [
|
VEHICLES = [
|
||||||
[[0,0,0,0,0,0,0,0],[0,0,1,1,1,1,1,0],[1,1,1,1,1,1,1,1],[0,1,0,0,0,0,1,0]],
|
[[0,0,0,0,0,0,0,0],[0,0,1,1,1,1,1,0],[1,1,1,1,1,1,1,1],[0,1,0,0,0,0,1,0]],
|
||||||
@@ -363,16 +365,20 @@ def draw_vehicle(index, pos_x, pos_y):
|
|||||||
def reset_program2():
|
def reset_program2():
|
||||||
global program2_scroll_progress, program2_spacing_counter
|
global program2_scroll_progress, program2_spacing_counter
|
||||||
global program2_vehicles_spawned, program2_drain_counter, program2_done
|
global program2_vehicles_spawned, program2_drain_counter, program2_done
|
||||||
|
global program2_draw_col, program2_current_vehicle
|
||||||
program2_scroll_progress = 0
|
program2_scroll_progress = 0
|
||||||
program2_spacing_counter = 0
|
program2_spacing_counter = 0
|
||||||
program2_vehicles_spawned = 0
|
program2_vehicles_spawned = 0
|
||||||
program2_drain_counter = 0
|
program2_drain_counter = 0
|
||||||
program2_done = False
|
program2_done = False
|
||||||
|
program2_draw_col = 0
|
||||||
|
program2_current_vehicle = None
|
||||||
|
|
||||||
|
|
||||||
def handle_program2(spacing=4, scroll_slowness=1, y=0, max_vehicles=0):
|
def handle_program2(spacing=4, scroll_slowness=1, y=0, max_vehicles=0):
|
||||||
global program2_scroll_progress, program2_spacing_counter
|
global program2_scroll_progress, program2_spacing_counter
|
||||||
global program2_vehicles_spawned, program2_drain_counter, program2_done
|
global program2_vehicles_spawned, program2_drain_counter, program2_done
|
||||||
|
global program2_draw_col, program2_current_vehicle
|
||||||
|
|
||||||
if scroll_slowness > program2_scroll_progress:
|
if scroll_slowness > program2_scroll_progress:
|
||||||
program2_scroll_progress += 1
|
program2_scroll_progress += 1
|
||||||
@@ -387,10 +393,23 @@ def handle_program2(spacing=4, scroll_slowness=1, y=0, max_vehicles=0):
|
|||||||
program2_done = True
|
program2_done = True
|
||||||
return
|
return
|
||||||
|
|
||||||
program2_spacing_counter -= 1
|
if program2_spacing_counter > 0:
|
||||||
if program2_spacing_counter <= 0:
|
program2_spacing_counter -= 1
|
||||||
draw_vehicle(random.randint(0, 11), config.DISPLAY_MAX_X - 7, y)
|
return
|
||||||
program2_spacing_counter = 8 + spacing
|
|
||||||
|
veh = VEHICLES[random.randint(0, 11)] if program2_draw_col == 0 else program2_current_vehicle
|
||||||
|
if program2_draw_col == 0:
|
||||||
|
program2_current_vehicle = veh
|
||||||
|
|
||||||
|
vr, vg, vb = config.VEHICLE_COLOR
|
||||||
|
for row in range(4):
|
||||||
|
if veh[row][program2_draw_col]:
|
||||||
|
low_level.set_pixel(config.DISPLAY_MAX_X, y + row, vr, vg, vb)
|
||||||
|
|
||||||
|
program2_draw_col += 1
|
||||||
|
if program2_draw_col >= 8:
|
||||||
|
program2_draw_col = 0
|
||||||
|
program2_spacing_counter = spacing
|
||||||
if max_vehicles > 0:
|
if max_vehicles > 0:
|
||||||
program2_vehicles_spawned += 1
|
program2_vehicles_spawned += 1
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user