Working to normalize interface diffs between store and plauer info screens.

This commit is contained in:
Martin Haye 2017-05-24 08:51:06 -07:00
parent 58d3386dff
commit 29a72ac5b3
2 changed files with 22 additions and 2 deletions

View File

@ -2372,6 +2372,11 @@ def initCmds()
cmdTbl[','] = @moveBackward
cmdTbl['M'] = @strafeLeft
cmdTbl['.'] = @strafeRight
cmdTbl[11] = @moveForward // up-arrow
cmdTbl[8] = @rotateLeft // left-arrow
cmdTbl[21] = @rotateRight // right-arrow
cmdTbl[10] = @moveBackward // down-arrow
else
cmdTbl['W'] = @moveNorth
cmdTbl['D'] = @moveEast
@ -2384,6 +2389,11 @@ def initCmds()
cmdTbl['L'] = @moveEast
cmdTbl['K'] = @moveSouth
cmdTbl[','] = @moveSouth
cmdTbl[11] = @moveNorth // up-arrow
cmdTbl[8] = @moveWest // left-arrow
cmdTbl[21] = @moveEast // right-arrow
cmdTbl[10] = @moveSouth // down-arrow
fin
end

View File

@ -33,6 +33,7 @@ const TYPE_DROP = $0103
// Tab positions
const CHAR_WND_INVLBL_X = 10
const CHAR_WND_INV_X = 25
const CHAR_WND_INV_RT = 140
const CHAR_WND_STAT_X = 174
const CHAR_WND_STATLBL_X = 182
@ -341,6 +342,12 @@ def doDrop(player, i_page, i_rows)
return FALSE
end
def clearInvRect
setWindow(19, 183, 14, CHAR_WND_INV_RT) // Top, Bottom, Left, Right
clearWindow()
setOversizeWindow()
end
// Show player sheet and accept command. If using an item (not just for stats gain)
// the item is returned; else NULL is returned.
def _doPlayerSheet(num)
@ -349,7 +356,6 @@ def _doPlayerSheet(num)
byte i_page, redisplay
setOversizeWindow()
clearWindow()
// Get size of inventory pane in chars
i_rows = (OVERSIZE_WINDOW_HEIGHT / 9) - 4 // 9 rows per line; minus 4 lines for header/footer
@ -359,14 +365,16 @@ def _doPlayerSheet(num)
player = numToPlayer(num)
if !player; return; fin // Invalid player
if redisplay
// First, display the player's name at the top
clearWindow()
rawDisplayf1("^Y^I %s ^N\n", player=>s_name)
showStats(player)
redisplay = FALSE
else
clearInvRect()
fin
showInventory(player, i_page, i_rows, 0)
showMenu()
// Get a key, do something
when getUpperKey()
// Select another player to show
@ -389,12 +397,14 @@ def _doPlayerSheet(num)
break
// Next inventory page
is '>'
is 21 // right-arrow
if countList(player=>p_items) > (i_page + 1) * i_rows
i_page++
fin
break
// Previous inventory page
is '<'
is 8 // left-arrow
if i_page
i_page--
fin