mirror of
https://github.com/bryanthaboi/gen1recomp.git
synced 2026-08-12 16:31:05 +02:00
33 lines
1.1 KiB
Lua
33 lines
1.1 KiB
Lua
-- Bill's PC vs player's PC top-menu origin/size (#176).
|
|
-- ROM-free: uses the fixture dataset so CI (no data/generated/) stays green.
|
|
package.path = "./?.lua;./?/init.lua;" .. package.path
|
|
|
|
local T = require("tests.modkit")
|
|
local Data = T.fixtures.load()
|
|
|
|
local SaveData = require("src.core.SaveData")
|
|
local BoxMenu = require("src.ui.BoxMenu")
|
|
local PlayerPC = require("src.ui.PlayerPC")
|
|
|
|
local game = {
|
|
data = Data,
|
|
save = SaveData.newGame(),
|
|
stack = { push = function() end },
|
|
}
|
|
|
|
local bills = BoxMenu.new(game)
|
|
local player = PlayerPC.new(game)
|
|
|
|
T.eq(bills.tx, 0, "Bill's PC TextBoxBorder at x=0")
|
|
T.eq(player.tx, 0, "Player's PC TextBoxBorder at x=0")
|
|
T.eq(player.ty, 0, "Player's PC at y=0")
|
|
T.eq(player.tw, 16, "Player's PC width (players_pc.asm c=$e +2)")
|
|
T.eq(player.th, 10, "Player's PC height (players_pc.asm b=$8 +2)")
|
|
T.check(player.tx == bills.tx and player.ty == bills.ty,
|
|
"both PC menus share the same top-left origin")
|
|
local labelTiles = 2 + #"WITHDRAW ITEM"
|
|
T.check(player.tx + labelTiles <= player.tx + player.tw - 1,
|
|
"WITHDRAW ITEM fits inside the Player's PC border")
|
|
|
|
T.finish("pc_menu_sides")
|