diff --git a/vacuum_gambit.p8 b/vacuum_gambit.p8 index ff7efce..cb86a3e 100644 --- a/vacuum_gambit.p8 +++ b/vacuum_gambit.p8 @@ -791,6 +791,7 @@ zap_gun_e = mknew(gun_base.new{ }) zap_gun_p = mknew(zap_gun_e.new{ + icon = 19, munition = zap_p, hdr = "mAIN gUN", }) @@ -1026,6 +1027,7 @@ player = mknew(ship_m.new{ xptarget = 0x0.0004, last_xp_frame = 0, level = 1, + magnet = 10, -- gun main_gun = nil, -- assign at spawn time @@ -1106,6 +1108,17 @@ steer faster]], self.thrust += 0.0625 self.drag += 0.03125 end, + },{ + icon=20, + hdr="hull", + body=[[ magnet + + pick up xp +from further + away]], + action=function () + self.magnet += 2 + end, }} if cdr > 0 then @@ -1698,6 +1711,16 @@ function xp_gem:draw() ) end +function xp_gem:move() + if abs(self.x + 1 - primary_ship.x - primary_ship.hurt.x_off) <= primary_ship.magnet and abs(self.y + 1 - primary_ship.y - primary_ship.hurt.y_off) <= primary_ship.magnet then + if (self.x < primary_ship.x + 3) self.x += 1 + if (self.x > primary_ship.x + 5) self.x -= 1 + if (self.y < primary_ship.y + 3) self.y += 1 + if (self.y > primary_ship.y + 5) self.y -= 1 + end + return bullet_base.move(self) +end + -- todo: "magnetic" behavior -- when near player ship @@ -1943,14 +1966,14 @@ __gfx__ 0070070065666765000000000ddddd100b33355009444220c000000c03333350b7000000a800000008888820048488203bbaabb3288aa8820000000000000000 000000006506506500000000001111000b0b5050090920200c0000c00055550037000000a2000000008882000048420003bbbb30028888200000000000000000 00000000650000650000000000000000000b50000009200000c0cc00000000003b00000082000000000820000008200000333300002222000000000000000000 -00000000000650000006500000000000b000000b80000000700000000bb0000008800000000000000009200000000000cccccccd000650000000000000000000 -0000000000675000000765000000000000bbbb0080000000b0000000b76300008a920000000000009009200200000000c111111d006765000000000000000000 -00000000006d6500006d6500000000000b0000b09000000030000000b663000089920000000550009994444200000000c111111d006d65000000000000000000 -00000000067c6650067c6650000000000b0bb0b0a000000030000000033000000220000000576d009446544200000000c111111d067c66500000000000000000 -00000000067d6650067d6650000000000b0bb0b00000000000000000000000000000000000566d009244442200000000c111111d067d66500000000000000000 -000000005666657576667650000000000b0000b000000000000000000000000000000000000dd0009092220200000000c111111d656667650000000000000000 -0000000056565066665656500000000000bbbb0000000000000000000000000000000000000000000090020000000000c111111d650650650000000000000000 -00000000565000566500065000000000b000000b000000000000000000000000000000000000000000a00a0000000000cddddddd650000650000000000000000 +0000000000065000000650000003b0000070070080000000700000000bb0000008800000000000000009200000000000cccccccd000650000000000000000000 +000000000067500000076500000370000005500080000000b0000000b76300008a920000000000009009200200000000c111111d006765000000000000000000 +00000000006d6500006d6500000b7000700660079000000030000000b663000089920000000550009994444200000000c111111d006d65000000000000000000 +00000000067c6650067c6650000b7000056ccd50a000000030000000033000000220000000576d009446544200000000c111111d067c66500000000000000000 +00000000067d6650067d6650000b7000056ccd500000000000000000000000000000000000566d009244442200000000c111111d067d66500000000000000000 +000000005666657576667650000b7000700dd00700000000000000000000000000000000000dd0009092220200000000c111111d656667650000000000000000 +000000005656506666565650000370000005500000000000000000000000000000000000000000000090020000000000c111111d650650650000000000000000 +0000000056500056650006500003b00000700700000000000000000000000000000000000000000000a00a0000000000cddddddd650000650000000000000000 060007000600070006600770766c777c0000000000a0008000000000000000000000000000000000000000000000000000000000000000000000000000000000 6cd07cd06cd07cd06ccd7ccd6ccd7ccd000000000090008000000000000000000000000000000000000000000000000000000000000000000000000000000000 0d000d006cd07cd06ccd7ccd6ccd7ccd0000000000800a0000000000000000000000000000000000000000000000000000000000000000000000000000000000