void SetWorkShopGridItemInfo(SteamPreFileAndVoteDetail del, UIWorkShopGridItem item) { if (item == null) { return; } item.gameObject.SetActive(true); if (del != null) { item.SetIsoName(del.m_rgchTitle); item.SetDownloaded(UIWorkShopCtrl.CheckDownloadExist(del.m_rgchTitle + VCConfig.s_IsoFileExt)); if (del.m_aPreFileData != null) { VCIsoHeadData headData = new VCIsoHeadData(); headData.SteamPreview = del.m_aPreFileData; item.SetAuthor(PELocalization.GetString(8000696)); Texture2D texture = new Texture2D(4, 4); texture.LoadImage(headData.IconTex); item.SetIco(texture); } else { item.SetIco(null); } } else { item.SetIco(null); item.SetIsoName(PELocalization.GetString(8000695)); item.SetAuthor(PELocalization.GetString(8000695)); } item.ActiveLoadingItem(false); }
void GetItemDetailCallBack(PublishedFileId_t p_id, SteamPreFileAndVoteDetail detail, bool bOK) { if (isActve == false) { return; } if (bOK) { mItemsMap[p_id] = detail; } else { if (!mGetCountMap.ContainsKey(p_id)) { mGetCountMap[p_id] = 0; } if (mGetCountMap[p_id] <= 3) { GetItemDetail(p_id); return; } mItemsMap[p_id] = null; } if (e_GetItemDetail != null) { e_GetItemDetail(p_id, detail); } }
void Finish(PublishedFileId_t publishedFileId, SteamPreFileAndVoteDetail detail, bool bOK) { if (CallBackGetPreFileResult != null) { CallBackGetPreFileResult(publishedFileId, detail, bOK); } ProcessList.Remove(this); }
public bool DeleteMyIsoFile(SteamPreFileAndVoteDetail detail) { if (null == detail || !mItemsMap.ContainsKey(detail.m_nPublishedFileId)) { return(false); } SteamProcessMgr.Instance.DeleteFile(DeleteMyIsoFileCallBack, detail.m_pchFileName, detail.m_nPublishedFileId); return(true); }
void UpdateDownLoadState() { int starIndex = Convert.ToInt32(mWorkShopMgr.mGetIdStarIndex); for (int i = 0; i < mWorkShopGridCtrl.mUIItems.Count; i++) { if (mWorkShopGridCtrl.mUIItems[i].gameObject.activeSelf == false) { continue; } if (mWorkShopMgr.mIndexMap.ContainsKey(starIndex + i)) { PublishedFileId_t p_id = mWorkShopMgr.mIndexMap[starIndex + i]; if (mWorkShopMgr.mItemsMap.ContainsKey(p_id)) { SteamPreFileAndVoteDetail detail = mWorkShopMgr.mItemsMap[p_id]; if (detail != null && mWorkShopGridCtrl.mUIItems[i].gameObject.activeSelf) { int loadByte, totleByte; if (SteamProcessMgr.Instance.GetDownProgress(detail.m_hFile, out loadByte, out totleByte)) { int value = 0; if (totleByte != 0) { value = Convert.ToInt32((loadByte * 100) / totleByte); } if (value > 0) { mWorkShopGridCtrl.mUIItems[i].UpdteUpDownInfo(value.ToString() + "%"); mWorkShopMgr.mDownMap[p_id] = value; } } else { if (mWorkShopMgr.mDownMap.ContainsKey(p_id)) { if (mWorkShopMgr.mDownMap[p_id] <= 0) { mWorkShopGridCtrl.mUIItems[i].UpdteUpDownInfo(PELocalization.GetString(8000911)); // "Failed!" } else if (mWorkShopMgr.mDownMap[p_id] >= 100) { mWorkShopGridCtrl.mUIItems[i].SetDownloaded(true); } else { mWorkShopGridCtrl.mUIItems[i].UpdteUpDownInfo(mWorkShopMgr.mDownMap[p_id].ToString() + "%"); } this.UpdateDownloadBtnState(); } } } } } } }
void OnClickWorkShopItem(int index) { mSelectedDetail = null; if (!mMyWorkShopMgr.mIndexMap.ContainsKey(index)) { mVCERightPanel.SetActive(false); return; } PublishedFileId_t p_id = mMyWorkShopMgr.mIndexMap[index]; if (p_id.m_PublishedFileId == 0) { mVCERightPanel.SetActive(false); return; } SteamPreFileAndVoteDetail del; if (mMyWorkShopMgr.mItemsMap.ContainsKey(p_id)) { del = mMyWorkShopMgr.mItemsMap[p_id]; } else { del = null; } mSelectedDetail = del; if (del == null) { mVCERightPanel.SetActive(false); return; } mVCERightPanel.SetActive(true); VCIsoHeadData headData = new VCIsoHeadData(); headData.SteamPreview = del.m_aPreFileData; Texture2D texture = new Texture2D(4, 4); texture.LoadImage(headData.IconTex); mRinghtPanelCtrl.m_NonEditorIcon = headData.IconTex; mRinghtPanelCtrl.m_NonEditorISODesc = del.m_rgchDescription; mRinghtPanelCtrl.m_NonEditorISOName = del.m_rgchTitle; mRinghtPanelCtrl.m_NonEditorRemark = headData.Remarks; mRinghtPanelCtrl.m_NonEditorISOVersion = del.m_rgchTags;//Log: lz-2016.05.13 Add version field mRinghtPanelCtrl.SetIsoIcon(); mRinghtPanelCtrl.OnCreationInfoRefresh(); this.UpdateDeleteBtnState(); this.UpdateDownloadBtnState(); }
void OnDownLoadFileCallBack(byte[] fileData, PublishedFileId_t p_id, bool bOK, int index = -1, int dungeonId = -1) { if (isActve == false) { return; } //bool DonLoadSucess = false; if (bOK) { if (mItemsMap.ContainsKey(p_id)) { if (mItemsMap[p_id] != null) { SteamPreFileAndVoteDetail detail = mItemsMap[p_id]; VCIsoHeadData headData; string creation = "Object"; if (VCIsoData.ExtractHeader(fileData, out headData) > 0) { creation = headData.Category.ToString(); creation = creation.Substring(2, creation.Length - 2); } string downLoadFilePath = VCConfig.s_IsoPath + string.Format("/Download/{0}/", creation); string netCacheFilePath = VCConfig.s_CreationNetCachePath; string downLoadFileName = detail.m_rgchTitle; string netCacheFileName = CRC64.Compute(fileData).ToString(); if (SaveToFile(fileData, downLoadFileName, downLoadFilePath, VCConfig.s_IsoFileExt)) { UIWorkShopCtrl.AddDownloadFileName(mItemsMap[p_id].m_rgchTitle + VCConfig.s_IsoFileExt, mIsPrivate); mDownMap[p_id] = 100; } //lz-2016.05.30 保存一份到NetCache路径下,避免NetCache重复下载 SaveToFile(fileData, netCacheFileName, netCacheFilePath, VCConfig.s_CreationNetCacheFileExt); } } } else { mDownMap[p_id] = -1; MessageBox_N.ShowOkBox(PELocalization.GetString(8000493)); } // if (e_DownLoadFile != null) // e_DownLoadFile(filePath,DonLoadSucess); }
public bool DownLoadFile(SteamPreFileAndVoteDetail detail) { if (mDownMap.ContainsKey(detail.m_nPublishedFileId)) { if (mDownMap[detail.m_nPublishedFileId] >= 0) { return(false); } } mDownMap[detail.m_nPublishedFileId] = 0; // 已经下载过的 SteamProcessMgr.Instance.GetPrimaryFile(OnDownLoadFileCallBack, detail.m_hFile, detail.m_nPublishedFileId); return(true); }
void GetGridItemDetail(PublishedFileId_t p_id, SteamPreFileAndVoteDetail detail) { int findIndex = FindIndexInGrid(p_id); if (findIndex == -1) { return; } int i = findIndex % mWorkShopGridCtrl.mMaxGridCount; if (i > mWorkShopGridCtrl.mMaxGridCount || i < 0) { return; } SetWorkShopGridItemInfo(detail, mWorkShopGridCtrl.mUIItems[i]); }
void OnVoteCallBack(PublishedFileId_t p_id, bool bFor) { int findIndex = FindIndexInGrid(p_id); if (findIndex == -1) { return; } int i = findIndex % mWorkShopGridCtrl.mMaxGridCount; if (i > mWorkShopGridCtrl.mMaxGridCount || i < 0) { return; } if (mWorkShopMgr.mItemsMap.ContainsKey(p_id)) { SteamPreFileAndVoteDetail detail = mWorkShopMgr.mItemsMap[p_id]; if (bFor) { detail.m_VoteDetail.m_nVotesFor++; } else { detail.m_VoteDetail.m_nVotesAgainst++; } if (mWorkShopGridCtrl.mUIItems[i] == null) { return; } mWorkShopGridCtrl.mUIItems[i].SetDingText(detail.m_VoteDetail.m_nVotesFor.ToString()); mWorkShopGridCtrl.mUIItems[i].SetCaiText(detail.m_VoteDetail.m_nVotesAgainst.ToString()); } }
// event 回调 void UpdateWorkShopGrid(int index_0) { if (index_0 < 0) { index_0 = 0; } mSelectedDetail = null; mVCERightPanel.SetActive(false); mWorkShopMgr.mGetIdStarIndex = Convert.ToUInt32(index_0); if (!mWorkShopMgr.mIndexMap.ContainsKey(index_0)) { for (int i = 0; i < mWorkShopGridCtrl.mUIItems.Count; i++) { mWorkShopGridCtrl.mUIItems[i].gameObject.SetActive(false); mWorkShopGridCtrl.mUIItems[i].ActiveUpDown(false); } this.GetPageGrid(); } else { for (int i = 0; i < mWorkShopGridCtrl.mUIItems.Count; i++) { if (mWorkShopMgr.mIndexMap.ContainsKey(index_0 + i)) { PublishedFileId_t p_id = mWorkShopMgr.mIndexMap[index_0 + i]; mWorkShopGridCtrl.mUIItems[i].gameObject.SetActive(true); if (mWorkShopMgr.mItemsMap.ContainsKey(p_id)) { SteamPreFileAndVoteDetail del = mWorkShopMgr.mItemsMap[p_id]; if (mWorkShopMgr.mDownMap.ContainsKey(p_id)) { if (mWorkShopMgr.mDownMap[p_id] > 0) { mWorkShopGridCtrl.mUIItems[i].ActiveUpDown(true); } else { mWorkShopGridCtrl.mUIItems[i].ActiveUpDown(false); } } else { mWorkShopGridCtrl.mUIItems[i].ActiveUpDown(false); } SetWorkShopGridItemInfo(del, mWorkShopGridCtrl.mUIItems[i]); } else { SetWorkShopGridItemInfo(null, mWorkShopGridCtrl.mUIItems[i]); continue; } } else { mWorkShopGridCtrl.mUIItems[i].gameObject.SetActive(false); } mWorkShopGridCtrl.mUIItems[i].SetSelected(false); } } }