draw rearm pane; exit behavior is broken
Nil transparency has screwed me over; I am uploading this version as an illustrative example
This commit is contained in:
		| @@ -185,7 +185,7 @@ function call_move(x) | ||||
| end | ||||
|  | ||||
| function updategame() | ||||
|  if primary_ship.xp >= primary_ship.xptarget and lframe - primary_ship.last_xp_frame > 0x0.000F then | ||||
|  if (primary_ship.xp >= primary_ship.xptarget) and (lframe - primary_ship.last_xp_frame > 0x0.000f) then | ||||
|   mode = rearm_mode.new() | ||||
|   return _update60() | ||||
|  end | ||||
| @@ -275,6 +275,7 @@ function _draw() | ||||
| end | ||||
|  | ||||
| function drawgame_top() | ||||
|  camera() | ||||
|  fillp(0) | ||||
|  drawgame() | ||||
|  if (game_state == game) fadelvl = -45 | ||||
| @@ -1828,32 +1829,37 @@ function rearm_mode:shuffle() | ||||
|  -- is a thing that exists | ||||
|  self.options = {{ | ||||
|   s=1, | ||||
|   hdr="hull", | ||||
|   hdr=" hull", | ||||
|   body = "\n    +1\n   max\n  health", | ||||
|   action = function() end, | ||||
|  },{ | ||||
|   s=2, | ||||
|   hdr="vulc", | ||||
|   body = "\n  placeholder", | ||||
|   s=37, | ||||
|   hdr=" vulc", | ||||
|   body = "\nplaceholder", | ||||
|   action = function() end, | ||||
|  }} | ||||
| end | ||||
|  | ||||
| function rearm_mode:draw() | ||||
|  drawgame_top() | ||||
|  local frac = self:pos_frac() | ||||
|  camera(frac * 55, 0) | ||||
|  self:draw_option(1) | ||||
|  camera(frac * -128 + (1-frac) * -56, 0) | ||||
|  self:draw_option(2) | ||||
|   | ||||
|  -- TODO: draw rearm pane | ||||
|  drawhud() | ||||
|  camera(0, -28 * frac) | ||||
|  self:glow_box(0,101,111,127,self:frame_col(self.sel < 0),1) | ||||
|  spr(96,15,107,4,2) | ||||
|  print("full ammo\nfull shield\n+50% health",54, 106, 6) | ||||
| end | ||||
|  | ||||
| function rearm_mode:update_pos() | ||||
|  local pos = self.pos | ||||
|  if (not pos or pos == 0) return | ||||
|  if (pos <= 0 and primary_ship.xp < primary_ship.xptarget) self.pos += 1 | ||||
|  if (not pos) return | ||||
|  if (pos == 0) then | ||||
|   if (primary_ship.xp < primary_ship.xptarget) self.pos = 1 | ||||
|   return | ||||
|  end | ||||
|  if (pos < 0) pos = min(pos + 0x0.05, 0) | ||||
|  if pos > 0 then | ||||
|   pos -= 0x0.1 | ||||
| @@ -1949,6 +1955,26 @@ c1111111111d0000c1111111111d0000c1111111111d0000c111eeee111d0000c11e2222e11d0000 | ||||
| c1111111111d0000c1111111111d0000c1111111111d0000c1111111111d0000c111eeee111d0000c1ee2222ee1d0000ce22111122ed0000c2111111112d0000 | ||||
| c1111111111d0000c1111111111d0000c1111111111d0000c1111111111d0000c1111111111d0000c111eeee111d0000ceee2222eeed0000c2221111222d0000 | ||||
| cddddddddddd0000cddddddddddd0000cddddddddddd0000cddddddddddd0000cddddddddddd0000cddddddddddd0000cddddddddddd0000cddddddddddd0000 | ||||
| 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 04444400044444440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 447777700477777a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 477aaa7a0477aaaa0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 47a0047a047a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 47a0447a047a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 47a4477a047a44400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 477777a00477777a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 477770000422aaaa2222000200000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 47a77700022ee0002eeee002e00022e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 47a4777002ea2e002e002e02ee022ee0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 47a0477a22ea2e002e002e02e2e2e2e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 47a0047a2e2222e02e222e02e02e02e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 47a0047a2eeeeeea2eeee002e02e02e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 0aa000aa2e7aa2ea2e00e002e02e02e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 000000002e0002e02e002e02e02e02e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| 000000000e0000e00e000e00e00e00e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | ||||
| __label__ | ||||
| 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007777777777777777 | ||||
| 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007666666666666665 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user