Replace void build3dScreenMenu() with this:
Code:private void build3dScreenMenu() { if(itemSelected == 0 && spellSelected == 0) { menuActionName[menuActionRow] = "Walk here"; menuActionID[menuActionRow] = 516; menuActionCmd2[menuActionRow] = super.mouseX; menuActionCmd3[menuActionRow] = super.mouseY; menuActionRow++; } int j = -1; for(int k = 0; k < Model.anInt1687; k++) { int l = Model.anIntArray1688[k]; int i1 = l & 0x7f; int j1 = l >> 7 & 0x7f; int k1 = l >> 29 & 3; int l1 = l >> 14 & 0x7fff; if(l == j) continue; j = l; if(k1 == 2 && worldController.method304(plane, i1, j1, l) >= 0) { ObjectDef class46 = ObjectDef.forID(l1); if(class46.childrenIDs != null) class46 = class46.method580(); if(class46 == null) continue; if(itemSelected == 1) { menuActionName[menuActionRow] = "Use " + selectedItemName + " with @[email protected]" + class46.name; menuActionID[menuActionRow] = 62; menuActionCmd1[menuActionRow] = l; menuActionCmd2[menuActionRow] = i1; menuActionCmd3[menuActionRow] = j1; menuActionRow++; } else if(spellSelected == 1) { if((spellUsableOn & 4) == 4) { menuActionName[menuActionRow] = spellTooltip + " @[email protected]" + class46.name; menuActionID[menuActionRow] = 956; menuActionCmd1[menuActionRow] = l; menuActionCmd2[menuActionRow] = i1; menuActionCmd3[menuActionRow] = j1; menuActionRow++; } } else { if(class46.actions != null) { for(int i2 = 4; i2 >= 0; i2--) if(class46.actions[i2] != null) { menuActionName[menuActionRow] = class46.actions[i2] + " @[email protected]" + class46.name; if(i2 == 0) menuActionID[menuActionRow] = 502; if(i2 == 1) menuActionID[menuActionRow] = 900; if(i2 == 2) menuActionID[menuActionRow] = 113; if(i2 == 3) menuActionID[menuActionRow] = 872; if(i2 == 4) menuActionID[menuActionRow] = 1062; menuActionCmd1[menuActionRow] = l; menuActionCmd2[menuActionRow] = i1; menuActionCmd3[menuActionRow] = j1; menuActionRow++; } } //menuActionName[menuActionRow] = "Examine @[email protected]" + class46.name + " @[email protected](@[email protected]" + l1 + "@[email protected]) (@[email protected]" + (i1 + baseX) + "," + (j1 + baseY) + "@[email protected])"; menuActionName[menuActionRow] = "Examine @[email protected]" + class46.name; menuActionID[menuActionRow] = 1226; menuActionCmd1[menuActionRow] = class46.type << 14; menuActionCmd2[menuActionRow] = i1; menuActionCmd3[menuActionRow] = j1; menuActionRow++; } } if(k1 == 1) { NPC npc = npcArray[l1]; if(npc.desc.aByte68 == 1 && (npc.x & 0x7f) == 64 && (npc.y & 0x7f) == 64) { for(int j2 = 0; j2 < npcCount; j2++) { NPC npc2 = npcArray[npcIndices[j2]]; if(npc2 != null && npc2 != npc && npc2.desc.aByte68 == 1 && npc2.x == npc.x && npc2.y == npc.y) buildAtNPCMenu(npc2.desc, npcIndices[j2], j1, i1); } for(int l2 = 0; l2 < playerCount; l2++) { Player player = playerArray[playerIndices[l2]]; if(player != null && player.x == npc.x && player.y == npc.y) buildAtPlayerMenu(i1, playerIndices[l2], player, j1); } } buildAtNPCMenu(npc.desc, l1, j1, i1); } if(k1 == 0) { Player player = playerArray[l1]; if((player.x & 0x7f) == 64 && (player.y & 0x7f) == 64) { for(int k2 = 0; k2 < npcCount; k2++) { NPC class30_sub2_sub4_sub1_sub1_2 = npcArray[npcIndices[k2]]; if(class30_sub2_sub4_sub1_sub1_2 != null && class30_sub2_sub4_sub1_sub1_2.desc.aByte68 == 1 && class30_sub2_sub4_sub1_sub1_2.x == player.x && class30_sub2_sub4_sub1_sub1_2.y == player.y) buildAtNPCMenu(class30_sub2_sub4_sub1_sub1_2.desc, npcIndices[k2], j1, i1); } for(int i3 = 0; i3 < playerCount; i3++) { Player class30_sub2_sub4_sub1_sub2_2 = playerArray[playerIndices[i3]]; if(class30_sub2_sub4_sub1_sub2_2 != null && class30_sub2_sub4_sub1_sub2_2 != player && class30_sub2_sub4_sub1_sub2_2.x == player.x && class30_sub2_sub4_sub1_sub2_2.y == player.y) buildAtPlayerMenu(i1, playerIndices[i3], class30_sub2_sub4_sub1_sub2_2, j1); } } buildAtPlayerMenu(i1, l1, player, j1); } if(k1 == 3) { NodeList class19 = groundArray[plane][i1][j1]; if(class19 != null) { for(Item item = (Item)class19.getFirst(); item != null; item = (Item)class19.getNext()) { ItemDef itemDef = ItemDef.forID(item.ID); if(itemSelected == 1) { menuActionName[menuActionRow] = "Use " + selectedItemName + " with @[email protected]" + itemDef.name; menuActionID[menuActionRow] = 511; menuActionCmd1[menuActionRow] = item.ID; menuActionCmd2[menuActionRow] = i1; menuActionCmd3[menuActionRow] = j1; menuActionRow++; } else if(spellSelected == 1) { if((spellUsableOn & 1) == 1) { menuActionName[menuActionRow] = spellTooltip + " @[email protected]" + itemDef.name; menuActionID[menuActionRow] = 94; menuActionCmd1[menuActionRow] = item.ID; menuActionCmd2[menuActionRow] = i1; menuActionCmd3[menuActionRow] = j1; menuActionRow++; } } else { for(int j3 = 4; j3 >= 0; j3--) if(itemDef.groundActions != null && itemDef.groundActions[j3] != null) { menuActionName[menuActionRow] = itemDef.groundActions[j3] + " @[email protected]" + itemDef.name; if(j3 == 0) menuActionID[menuActionRow] = 652; if(j3 == 1) menuActionID[menuActionRow] = 567; if(j3 == 2) menuActionID[menuActionRow] = 234; if(j3 == 3) menuActionID[menuActionRow] = 244; if(j3 == 4) menuActionID[menuActionRow] = 213; menuActionCmd1[menuActionRow] = item.ID; menuActionCmd2[menuActionRow] = i1; menuActionCmd3[menuActionRow] = j1; menuActionRow++; } else if(j3 == 2) { menuActionName[menuActionRow] = "Take @[email protected]" + itemDef.name; menuActionID[menuActionRow] = 234; menuActionCmd1[menuActionRow] = item.ID; menuActionCmd2[menuActionRow] = i1; menuActionCmd3[menuActionRow] = j1; menuActionRow++; } //menuActionName[menuActionRow] = "Examine @[email protected]" + itemDef.name + " @[email protected](@[email protected]" + item.ID + "@[email protected])"; menuActionName[menuActionRow] = "Examine @[email protected]" + itemDef.name; menuActionID[menuActionRow] = 1448; menuActionCmd1[menuActionRow] = item.ID; menuActionCmd2[menuActionRow] = i1; menuActionCmd3[menuActionRow] = j1; menuActionRow++; } } } } } }








