()
| 71 | static final int DISPLAY_ITEMS = 17; |
| 72 | |
| 73 | static void DrawInventory() { |
| 74 | int i, j; |
| 75 | int num, selected_num, item; |
| 76 | int[] index = new int[Defines.MAX_ITEMS]; |
| 77 | String string; |
| 78 | int x, y; |
| 79 | String binding; |
| 80 | String bind; |
| 81 | int selected; |
| 82 | int top; |
| 83 | |
| 84 | selected = ClientGlobals.cl.frame.playerstate.stats[Defines.STAT_SELECTED_ITEM]; |
| 85 | |
| 86 | num = 0; |
| 87 | selected_num = 0; |
| 88 | for (i = 0; i < Defines.MAX_ITEMS; i++) { |
| 89 | if (i == selected) |
| 90 | selected_num = num; |
| 91 | if (ClientGlobals.cl.inventory[i] != 0) { |
| 92 | index[num] = i; |
| 93 | num++; |
| 94 | } |
| 95 | } |
| 96 | |
| 97 | // determine scroll point |
| 98 | top = selected_num - DISPLAY_ITEMS / 2; |
| 99 | if (num - top < DISPLAY_ITEMS) |
| 100 | top = num - DISPLAY_ITEMS; |
| 101 | if (top < 0) |
| 102 | top = 0; |
| 103 | |
| 104 | x = (ClientGlobals.viddef.getWidth() - 256) / 2; |
| 105 | y = (ClientGlobals.viddef.getHeight() - 240) / 2; |
| 106 | |
| 107 | // repaint everything next frame |
| 108 | SCR.DirtyScreen(); |
| 109 | |
| 110 | ClientGlobals.re.DrawPic(x, y + 8, "inventory"); |
| 111 | |
| 112 | y += 24; |
| 113 | x += 24; |
| 114 | Inv_DrawString(x, y, "hotkey ### item"); |
| 115 | Inv_DrawString(x, y + 8, "------ --- ----"); |
| 116 | y += 16; |
| 117 | for (i = top; i < num && i < top + DISPLAY_ITEMS; i++) { |
| 118 | item = index[i]; |
| 119 | // search for a binding |
| 120 | //Com_sprintf (binding, sizeof(binding), "use %s", |
| 121 | // cl.configstrings[CS_ITEMS+item]); |
| 122 | binding = "use " + ClientGlobals.cl.configstrings[Defines.CS_ITEMS + item]; |
| 123 | bind = ""; |
| 124 | for (j = 0; j < 256; j++) |
| 125 | if (ClientGlobals.keybindings[j] != null && ClientGlobals.keybindings[j].equals(binding)) { |
| 126 | bind = Key.KeynumToString(j); |
| 127 | break; |
| 128 | } |
| 129 | |
| 130 | string = Com.sprintf("%6s %3i %s", new Vargs(3).add(bind).add(ClientGlobals.cl.inventory[item]).add( |
no test coverage detected