From f715861f142a3aee106993526c34b9f3d1894d12 Mon Sep 17 00:00:00 2001 From: Colin McMillen Date: Thu, 10 Jun 2021 16:34:33 -0400 Subject: [PATCH] clean restart for picogora --- picogora.p8 | 115 ++++++---------------------------------------------- 1 file changed, 12 insertions(+), 103 deletions(-) diff --git a/picogora.p8 b/picogora.p8 index 86042d7..30ce8c8 100644 --- a/picogora.p8 +++ b/picogora.p8 @@ -4,12 +4,12 @@ __lua__ -- game code function init_world() - drops = {} - frozen_drops = {} player = {} player.x = 64 player.y = 16 player.spr = 1 + + drops = {} end function _init() @@ -21,8 +21,8 @@ function _init() end function _update() - update_drops() update_player() + update_drops() end function update_player() @@ -43,76 +43,20 @@ function update_player() if (player.x < 0) player.x = 0 if (player.x > 127) player.x = 127 - if (btnp(🅾️)) then + if btnp(🅾️) then drop = {} drop.x = player.x drop.y = player.y - drop.momentum = 0 - drop.fall_time = 0 - found_drop = false - for i=1,#drops do - if (drops[i].x == player.x and drops[i].y == player.y) then - found_drop = true - break - end - end - if (not found_drop) then - add(drops, drop) - end + add(drops, drop) end end function update_drops() - cls() - draw_drops() - for i=1,#drops do - drop = drops[i] - try_left = rnd() < 0.5 - if drop.momentum == 0 then - if try_left then - drop.momentum = -1 - else - drop.momentum = 1 - end - end - if pget(drop.x, drop.y+1) == black then - drop.y += 1 - drop.momentum = 0 - drop.fall_time = 0 - elseif try_left and drop.x > 0 and - pget(drop.x-1, drop.y+1) == black then - drop.x -= 1 - drop.y += 1 - drop.fall_time = 0 - elseif drop.x < 127 and - pget(drop.x+1, drop.y+1) == black then - drop.x += 1 - drop.y += 1 - drop.fall_time = 0 - elseif drop.momentum == -1 then - drop.fall_time += 1 - if drop.x > 0 and pget(drop.x-1, drop.y) == black then - drop.x -= 1 - else - drop.momentum = 0 - end - elseif drop.momentum == 1 then - drop.fall_time += 1 - if drop.x < 127 and pget(drop.x+1, drop.y) == black then - drop.x += 1 - else - drop.momentum = 0 - end - end - if drop.y > 127 then drop.y = 127 end - end - new_drops = {} for i=1,#drops do drop = drops[i] - if drop.fall_time > 64 then - add(frozen_drops, drop) - else + drop.y += 1 + if drop.y < 128 then add(new_drops, drop) end end @@ -120,52 +64,17 @@ function update_drops() end function _draw() - cls() - draw_drops() - draw_player() - --print("cpu: "..stat(1), 0, 0, light_gray) - --print("drops: "..#drops, 0, 6, light_gray) - --print("frozen: "..#frozen_drops, 0, 12, light_gray) -end - -function draw_player() + cls(blue) + foreach(drops, draw_drop) spr(player.spr,player.x-1,player.y-1) -end - -function draw_drops() - foreach(frozen_drops,draw_drop) - foreach(drops,draw_drop) - circfill(94, 94, 3, green) - circfill(98, 105, 2, orange) - line(98, 115, 98, 122, pink) - line(105, 122) - line(105, 115) - - line(70, 64, 90, 60, dark_purple) - line(70, 65, 90, 61, dark_purple) - - line(60, 30, 80, 50, indigo) - line(60, 31, 80, 51, indigo) - - line(64, 90, 74, 90) - line(70, 86) - line(68, 86, 64, 90) - - ovalfill(54, 95, 74, 100, pink) - - line(70, 116, 93, 112, green) - line(70, 115, 93, 111, green) - line(70, 116, 60, 112, green) - line(70, 115, 60, 111, green) - - print("hello everybody", 63, 58, yellow) - + print("drops: "..#drops, 1, 6, white) end function draw_drop(drop) - pset(drop.x, drop.y, blue) + pset(drop.x, drop.y, white) end + -->8 -- library