/// <summary> /// 刷新显示用户物品 /// </summary> private unsafe void RefShowUserItem() { int i; ListViewItem ListItem; TUserItem UserItem; TUserItem * pUserItem; const string sItemValue = "{0}-{1}-{2}-{3}-{4}-{5}-{6}-{7}-{8}-{9}-{10}-{11}-{12}-{13}"; ListViewUserItem.Items.Clear(); byte[] HumItems; fixed(byte *buff = m_ChrRcd.Data.HumItemsBuff) { HumItems = HUtil32.BytePtrToByteArray(buff, 9 * 74); } for (i = 0; i < HumItems.Length; i = i + 74) { fixed(byte *buff = &HumItems[i]) { pUserItem = (TUserItem *)buff; } UserItem = *pUserItem; ListItem = new ListViewItem(); ListItem.Text = (i).ToString(); ListItem.SubItems.Add((UserItem.MakeIndex).ToString()); ListItem.SubItems.Add((UserItem.wIndex).ToString()); ListItem.SubItems.Add(DBShare.GetStdItemName(UserItem.wIndex)); ListItem.SubItems.Add(string.Format("{0}/{1}", UserItem.Dura, UserItem.DuraMax)); ListItem.SubItems.Add(string.Format(sItemValue, UserItem.btValue[0], UserItem.btValue[1], UserItem.btValue[2], UserItem.btValue[3], UserItem.btValue[4], UserItem.btValue[5], UserItem.btValue[6], UserItem.btValue[7], UserItem.btValue[8], UserItem.btValue[9], UserItem.btValue[10], UserItem.btValue[11], UserItem.btValue[12], UserItem.btValue[13])); ListViewUserItem.Items.Add(ListItem); } byte[] HumAddItems;//下面四个格子 fixed(byte *buff = m_ChrRcd.Data.HumAddItemsBuff) { HumAddItems = HUtil32.BytePtrToByteArray(buff, 4 * 74); } for (i = 0; i < HumAddItems.Length; i += 74) { fixed(byte *buff = &HumAddItems[i]) { pUserItem = (TUserItem *)buff; } UserItem = *pUserItem; ListItem = new ListViewItem(); ListItem.Text = i.ToString(); ListItem.SubItems.Add((UserItem.MakeIndex).ToString()); ListItem.SubItems.Add((UserItem.wIndex).ToString()); ListItem.SubItems.Add(DBShare.GetStdItemName(UserItem.wIndex)); ListItem.SubItems.Add(string.Format("{0}/{1}", UserItem.Dura, UserItem.DuraMax)); ListItem.SubItems.Add(string.Format(sItemValue, UserItem.btValue[0], UserItem.btValue[1], UserItem.btValue[2], UserItem.btValue[3], UserItem.btValue[4], UserItem.btValue[5], UserItem.btValue[6], UserItem.btValue[7], UserItem.btValue[8], UserItem.btValue[9], UserItem.btValue[10], UserItem.btValue[11], UserItem.btValue[12], UserItem.btValue[13])); ListViewUserItem.Items.Add(ListItem); } }
/// <summary> /// 刷新显示仓库信息 /// </summary> private unsafe void RefShowStorage() { int i; ListViewItem ListItem; TUserItem UserItem; TUserItem * pUserItem; ListViewStorage.Items.Clear(); byte[] StorageItems;//46 * 74 fixed(byte *buff = m_ChrRcd.Data.StorageItemsBuff) { StorageItems = HUtil32.BytePtrToByteArray(buff, 46 * 74); } for (i = 0; i <= StorageItems.Length; i += 74) { fixed(byte *buff = &StorageItems[i]) { pUserItem = (TUserItem *)buff; } UserItem = *pUserItem; if (UserItem.wIndex == 0) { continue; } ListItem = new ListViewItem(); ListItem.Text = i.ToString(); ListItem.SubItems.Add((UserItem.MakeIndex).ToString()); ListItem.SubItems.Add((UserItem.wIndex).ToString()); ListItem.SubItems.Add(DBShare.GetStdItemName(UserItem.wIndex)); ListItem.SubItems.Add(string.Format("{0}/{1}", UserItem.Dura, UserItem.DuraMax)); ListItem.SubItems.Add(string.Format("{0}/{1}/{2}/{3}/{4}/{5}/{6}/{7}/{8}/{9}/{10}/{11}/{12}/{13}", UserItem.btValue[0], UserItem.btValue[1], UserItem.btValue[2], UserItem.btValue[3], UserItem.btValue[4], UserItem.btValue[5], UserItem.btValue[6], UserItem.btValue[7], UserItem.btValue[8], UserItem.btValue[9], UserItem.btValue[10], UserItem.btValue[11], UserItem.btValue[12], UserItem.btValue[13])); ListViewStorage.Items.Add(ListItem); } }